; Orphie

; Constants -------------------------

[Constants]
global $active = 0
global $creditinfo = 0
global persist $up = 0
global persist $altup = 0
global persist $low = 0
global persist $altlow = 0
global persist $right = 0
global persist $altright = 0
global persist $left = 0
global persist $altleft = 0

[KeySwapUP]
condition = $active == 1
key = no_alt VK_UP
type = cycle
$up = 0,1

[KeySwapaltUP]
condition = $active == 1
key = alt VK_UP
type = cycle
$altup = 0,1

[KeySwapDOWN]
condition = $active == 1
key = no_alt VK_DOWN
type = cycle
$low = 0,1

[KeySwapaltDOWN]
condition = $active == 1
key = alt VK_DOWN
type = cycle
$altlow = 0,1

[KeySwapRIGHT]
condition = $active == 1
key = no_alt VK_RIGHT
type = cycle
$right = 0,1

[KeySwapaltRIGHT]
condition = $active == 1
key = alt VK_RIGHT
type = cycle
$altright = 0,1

[KeySwapLEFT]
condition = $active == 1
key = no_alt VK_LEFT
type = cycle
$left = 0,1

[KeySwapaltLEFT]
condition = $active == 1
key = alt VK_LEFT
type = cycle
$altleft = 0,1

[Present]
post $active = 0
run = CommandListCreditInfo

; Overrides -------------------------

[TextureOverrideOrphieHairBlend]
hash = bb2a1769
handling = skip
vb2 = ResourceOrphieHairBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieHairPosition
	draw = 17149, 0

	$active = 1
endif

[TextureOverrideOrphieHairTexcoord]
hash = c721249c
vb1 = ResourceOrphieHairTexcoord

[TextureOverrideOrphieHairVertexLimitRaise]
hash = 9f1dfc45
override_vertex_count = 17149
override_byte_stride = 40

[TextureOverrideOrphieBodyBlend]
hash = b823fb44
handling = skip
vb2 = ResourceOrphieBodyBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieBodyPosition
	draw = 16418, 0

	$active = 1
endif

[TextureOverrideOrphieBodyTexcoord]
hash = d31ae32f
vb1 = ResourceOrphieBodyTexcoord

[TextureOverrideOrphieBodyVertexLimitRaise]
hash = d4b12374
override_vertex_count = 16418
override_byte_stride = 40

[TextureOverrideOrphieLegsBlend]
hash = 5ca9ed4e
handling = skip
vb2 = ResourceOrphieLegsBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieLegsPosition
	draw = 13402, 0

	$active = 1
endif

[TextureOverrideOrphieLegsTexcoord]
hash = f74b4cea
vb1 = ResourceOrphieLegsTexcoord

[TextureOverrideOrphieLegsVertexLimitRaise]
hash = f7b4360a
override_vertex_count = 13402
override_byte_stride = 40

[TextureOverrideOrphieMagusTailBlend]
hash = 203664d5
handling = skip
vb2 = ResourceOrphieMagusTailBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieMagusTailPosition
	draw = 3259, 0

	$active = 1
endif

[TextureOverrideOrphieMagusTailTexcoord]
hash = f33946ec
vb1 = ResourceOrphieMagusTailTexcoord

[TextureOverrideOrphieMagusTailVertexLimitRaise]
hash = fea2bd55
override_vertex_count = 3259
override_byte_stride = 40

[TextureOverrideOrphieMagusNozzleBlend]
hash = 6fba1f7b
handling = skip
vb2 = ResourceOrphieMagusNozzleBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieMagusNozzlePosition
	draw = 2201, 0

	$active = 1
endif

[TextureOverrideOrphieMagusNozzleTexcoord]
hash = 5662dd65
vb1 = ResourceOrphieMagusNozzleTexcoord

[TextureOverrideOrphieMagusNozzleVertexLimitRaise]
hash = 27b14e70
override_vertex_count = 2201
override_byte_stride = 40

[TextureOverrideOrphieMagusDrumBlend]
hash = 17077e99
handling = skip
vb2 = ResourceOrphieMagusDrumBlend
if DRAW_TYPE == 1
	vb0 = ResourceOrphieMagusDrumPosition
	draw = 2461, 0

	$active = 1
endif

[TextureOverrideOrphieMagusDrumTexcoord]
hash = 43b63f81
vb1 = ResourceOrphieMagusDrumTexcoord

[TextureOverrideOrphieMagusDrumVertexLimitRaise]
hash = 49393f27
override_vertex_count = 2461
override_byte_stride = 40

[TextureOverrideOrphieHairIB]
hash = 6988bfcd
handling = skip

[TextureOverrideOrphieHairA]
hash = 6988bfcd
match_first_index = 0
ib = ResourceOrphieHairAIB
Resource\ZZMI\Diffuse = ref ResourceOrphieHairADiffuse
Resource\ZZMI\NormalMap = ref ResourceOrphieHairANormalMap
Resource\ZZMI\LightMap = ref ResourceOrphieHairALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieHairAMaterialMap
run = CommandList\ZZMI\SetTextures
; BaseXXBody.Feet (3538)
drawindexed = 16860, 0, 0
; BaseXXBody.Hands (2054)
if $up == 1
drawindexed = 9186, 16860, 0
endif
; Boots (1200)
drawindexed = 4188, 26046, 0
; Hair (2195)
drawindexed = 7632, 30234, 0
; Hands (1991)
if $up == 0
drawindexed = 8712, 37866, 0
endif
; Hands.001 (1281)
if $up == 0
drawindexed = 3150, 46578, 0
endif
; Hat (319)
drawindexed = 1302, 49728, 0
; Hood (853)
if $up == 0 && $altup == 0
drawindexed = 3024, 51030, 0
endif
; Horns (668)
if $altleft == 0
drawindexed = 3516, 54054, 0
endif
; Pokets (864)
if $up == 0
drawindexed = 1932, 57570, 0
endif
; Shells (336)
if $up == 0
drawindexed = 864, 59502, 0
endif

[TextureOverrideOrphieHairB]
hash = 6988bfcd
match_first_index = 34074
ib = ResourceOrphieHairBIB
Resource\ZZMI\NormalMap = ref ResourceOrphieHairBNormalMap
run = CommandList\ZZMI\SetTextures
; Hair.001 (1850)
drawindexed = 6675, 0, 0

[TextureOverrideOrphieBodyIB]
hash = a5eac582
handling = skip

[TextureOverrideOrphieBodyA]
hash = a5eac582
match_first_index = 0
ib = ResourceOrphieBodyAIB
Resource\ZZMI\Diffuse = ref ResourceOrphieBodyADiffuse
Resource\ZZMI\NormalMap = ref ResourceOrphieBodyANormalMap
Resource\ZZMI\LightMap = ref ResourceOrphieBodyALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieBodyAMaterialMap
run = CommandList\ZZMI\SetTextures
; BaseXXBody.Body (5129)
drawindexed = 27822, 0, 0
; BaseXXBody.Body.Nipp (362)
if $up == 1 || $low == 1
drawindexed = 2034, 27822, 0
endif
; Boots.Acc (476)
drawindexed = 1500, 29856, 0

; MetalPlate (74)
if $up == 0 && $altright == 0
drawindexed = 210, 31404, 0
endif
; Neck (1201)
drawindexed = 4356, 31614, 0
; Ring (340)
if $up == 0
drawindexed = 1152, 35970, 0
endif
; Suit (1104)
if $up == 0 && $low == 0
drawindexed = 4350, 37122, 0
endif
; Suit.Base (3787)
if $up == 0 
drawindexed = 11259, 41472, 0
endif
; Suit.Base.001 (228)
if $up == 0 && $low == 0
drawindexed = 600, 52731, 0
endif
; Suit.Base.Hood.add (122)
if $up == 0 && $altup == 0
drawindexed = 366, 53331, 0
endif
; Suit.Long.Sleeves (1616)
if $up == 0 && $left == 0
drawindexed = 6210, 53697, 0
endif
; Suit.Short.Sleeves (1274)
if $up == 0 && $left == 1
drawindexed = 4866, 59907, 0
endif
; Suit.Skirt (685)
if $altlow == 0
drawindexed = 2268, 64773, 0
endif
Resource\ZZMI\Diffuse = ref ResourceOrphieLegsADiffuse
Resource\ZZMI\NormalMap = ref ResourceOrphieLegsANormalMap
Resource\ZZMI\LightMap = ref ResourceOrphieLegsALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieLegsAMaterialMap
run = CommandList\ZZMI\SetTextures
; Legs.Straps (20)
if $up == 0 && $right == 0
drawindexed = 48, 31356, 0
endif

[TextureOverrideOrphieLegsIB]
hash = 80017921
handling = skip

[TextureOverrideOrphieLegsA]
hash = 80017921
match_first_index = 0
ib = ResourceOrphieLegsAIB
Resource\ZZMI\Diffuse = ref ResourceOrphieLegsADiffuse
Resource\ZZMI\NormalMap = ref ResourceOrphieLegsANormalMap
Resource\ZZMI\LightMap = ref ResourceOrphieLegsALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieLegsAMaterialMap
run = CommandList\ZZMI\SetTextures
; BaseXXBody.Legs.N (6648)
if $right == 1
drawindexed = 36114, 0, 0
endif
; BaseXXBody.Legs.S (4766)
if $right == 0
drawindexed = 25110, 36114, 0
endif
; St (1118)
if $right == 0
drawindexed = 4839, 61224, 0
endif
; St.Straps (76)
if $up == 0 && $right == 0
drawindexed = 222, 66063, 0
endif
Resource\ZZMI\Diffuse = ref ResourceOrphieBodyADiffuse
Resource\ZZMI\NormalMap = ref ResourceOrphieBodyANormalMap
Resource\ZZMI\LightMap = ref ResourceOrphieBodyALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieBodyAMaterialMap
run = CommandList\ZZMI\SetTextures
; Suit.001 (794)
if $up == 0 && $low == 0
drawindexed = 2688, 66285, 0
endif

[TextureOverrideOrphieMagusTailIB]
hash = 3766fa59
handling = skip

[TextureOverrideOrphieMagusTailA]
hash = 3766fa59
match_first_index = 0
ib = ResourceOrphieMagusTailAIB
Resource\ZZMI\Diffuse = ref ResourceOrphieMagusTailADiffuse
Resource\ZZMI\LightMap = ref ResourceOrphieMagusTailALightMap
Resource\ZZMI\MaterialMap = ref ResourceOrphieMagusTailAMaterialMap
run = CommandList\ZZMI\SetTextures
; MagusTail (3259)
if $altright == 0
drawindexed = 8745, 0, 0
endif

[TextureOverrideOrphieMagusNozzleIB]
hash = 389256d8
handling = skip

[TextureOverrideOrphieMagusNozzleA]
hash = 389256d8
match_first_index = 0
ib = ResourceOrphieMagusNozzleAIB
run = CommandList\ZZMI\SetTextures
; MagusNozzle (2185)
if $altright == 0
drawindexed = 4653, 0, 0
endif

[TextureOverrideOrphieMagusNozzleB]
hash = 389256d8
match_first_index = 4665
ib = ResourceOrphieMagusNozzleBIB
run = CommandList\ZZMI\SetTextures
; MagusNozzle.001 (16)
if $altright == 0
drawindexed = 36, 0, 0
endif

[TextureOverrideOrphieMagusDrumIB]
hash = 2935f885
handling = skip

[TextureOverrideOrphieMagusDrumA]
hash = 2935f885
match_first_index = 0
ib = ResourceOrphieMagusDrumAIB
run = CommandList\ZZMI\SetTextures
; MagusDrum (2461)
if $altright == 0
drawindexed = 5628, 0, 0
endif

[TextureOverrideOrphieFaceADiffuse]
hash = 0df52ae7
this = ResourceOrphieFaceADiffuse

[TextureOverrideOrphieMaguseyeA]
hash = e63d22c3
if $altright == 1
handling = skip
endif

; CommandList -----------------------

[CommandListCreditInfo]
if $creditinfo == 0 && $active > 0
	pre Resource\ShaderFixes\help.ini\Notification = ResourceCreditInfo
	pre run = CustomShader\ShaderFixes\help.ini\FormatText
	pre $\ShaderFixes\help.ini\notification_timeout = time + 5.0
	$creditinfo = 1
endif

; Resources -------------------------

[ResourceOrphieHairPosition]
type = Buffer
stride = 40
filename = OrphieHairPosition.buf

[ResourceOrphieHairBlend]
type = Buffer
stride = 32
filename = OrphieHairBlend.buf

[ResourceOrphieHairTexcoord]
type = Buffer
stride = 20
filename = OrphieHairTexcoord.buf

[ResourceOrphieHairAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieHairA.ib

[ResourceOrphieHairBIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieHairB.ib

[ResourceOrphieBodyPosition]
type = Buffer
stride = 40
filename = OrphieBodyPosition.buf

[ResourceOrphieBodyBlend]
type = Buffer
stride = 32
filename = OrphieBodyBlend.buf

[ResourceOrphieBodyTexcoord]
type = Buffer
stride = 20
filename = OrphieBodyTexcoord.buf

[ResourceOrphieBodyAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieBodyA.ib

[ResourceOrphieLegsPosition]
type = Buffer
stride = 40
filename = OrphieLegsPosition.buf

[ResourceOrphieLegsBlend]
type = Buffer
stride = 32
filename = OrphieLegsBlend.buf

[ResourceOrphieLegsTexcoord]
type = Buffer
stride = 20
filename = OrphieLegsTexcoord.buf

[ResourceOrphieLegsAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieLegsA.ib

[ResourceOrphieMagusTailPosition]
type = Buffer
stride = 40
filename = OrphieMagusTailPosition.buf

[ResourceOrphieMagusTailBlend]
type = Buffer
stride = 32
filename = OrphieMagusTailBlend.buf

[ResourceOrphieMagusTailTexcoord]
type = Buffer
stride = 20
filename = OrphieMagusTailTexcoord.buf

[ResourceOrphieMagusTailAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieMagusTailA.ib

[ResourceOrphieMagusNozzlePosition]
type = Buffer
stride = 40
filename = OrphieMagusNozzlePosition.buf

[ResourceOrphieMagusNozzleBlend]
type = Buffer
stride = 4
filename = OrphieMagusNozzleBlend.buf

[ResourceOrphieMagusNozzleTexcoord]
type = Buffer
stride = 28
filename = OrphieMagusNozzleTexcoord.buf

[ResourceOrphieMagusNozzleAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieMagusNozzleA.ib

[ResourceOrphieMagusNozzleBIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieMagusNozzleB.ib

[ResourceOrphieMagusDrumPosition]
type = Buffer
stride = 40
filename = OrphieMagusDrumPosition.buf

[ResourceOrphieMagusDrumBlend]
type = Buffer
stride = 4
filename = OrphieMagusDrumBlend.buf

[ResourceOrphieMagusDrumTexcoord]
type = Buffer
stride = 20
filename = OrphieMagusDrumTexcoord.buf

[ResourceOrphieMagusDrumAIB]
type = Buffer
format = DXGI_FORMAT_R32_UINT
filename = OrphieMagusDrumA.ib

[ResourceOrphieHairADiffuse]
filename = OrphieHairADiffuse.dds

[ResourceOrphieHairANormalMap]
filename = OrphieHairANormalMap.dds

[ResourceOrphieHairALightMap]
filename = OrphieHairALightMap.dds

[ResourceOrphieHairAMaterialMap]
filename = OrphieHairAMaterialMap.dds

[ResourceOrphieHairBNormalMap]
filename = OrphieHairBNormalMap.dds

[ResourceOrphieBodyADiffuse]
filename = OrphieBodyADiffuse.dds

[ResourceOrphieBodyANormalMap]
filename = OrphieBodyANormalMap.dds

[ResourceOrphieBodyALightMap]
filename = OrphieBodyALightMap.dds

[ResourceOrphieBodyAMaterialMap]
filename = OrphieBodyAMaterialMap.dds

[ResourceOrphieLegsADiffuse]
filename = OrphieLegsADiffuse.dds

[ResourceOrphieLegsANormalMap]
filename = OrphieLegsANormalMap.dds

[ResourceOrphieLegsALightMap]
filename = OrphieLegsALightMap.dds

[ResourceOrphieLegsAMaterialMap]
filename = OrphieLegsAMaterialMap.dds

[ResourceOrphieMagusTailADiffuse]
filename = OrphieMagusTailADiffuse.dds

[ResourceOrphieMagusTailALightMap]
filename = OrphieMagusTailALightMap.dds

[ResourceOrphieMagusTailAMaterialMap]
filename = OrphieMagusTailAMaterialMap.dds

[ResourceOrphieFaceADiffuse]
filename = OrphieFaceADiffuse.dds

[ResourceCreditInfo]
type = Buffer
data = "Created by Exce - patreon.com/Exce"

; .ini generated by XXMI (XX-Model-Importer) v1.6.3
; If you have any issues or find any bugs, please open a ticket at https://github.com/leotorrez/XXMI-Tools/issues
