[Constants]
global persist $Bra = 0
global $mod_active = 0
global $slot_active = 0
global $id = 5775052


[Present]
post $mod_active = 0


[KeySwitchSlot1]
condition = $\mods\_id\id.ini\swimsuit1 == $id && $mod_active == 1
key = ctrl no_shift no_alt 1
type = cycle
$slot_active = 1, 0
run = CommandListSlot1, CommandListSlot0
[KeySwitchSlot2]
condition = $\mods\_id\id.ini\swimsuit2 == $id && $mod_active == 1
key = ctrl no_shift no_alt 2
type = cycle
$slot_active = 1, 0
run = CommandListSlot1, CommandListSlot0


[CommandListSlot1]
Resource\ShaderFixes\help.ini\Notification = ref ResourceSlot1
run = CustomShader\ShaderFixes\help.ini\FormatText
$\ShaderFixes\help.ini\notification_timeout = time + 2.0
[CommandListSlot0]
Resource\ShaderFixes\help.ini\Notification = ref ResourceSlot0
run = CustomShader\ShaderFixes\help.ini\FormatText
$\ShaderFixes\help.ini\notification_timeout = time + 2.0


[ResourceSlot0]
type = Buffer
data = "ZipLine ~Reveal~ : Off"
[ResourceSlot1]
type = Buffer
data = "ZipLine ~Reveal~ : On"


[CommandListID]
$\mods\_id\id.ini\swimsuit2 = $\mods\_id\id.ini\swimsuit1
$\mods\_id\id.ini\swimsuit1 = $id



[TextureOverrideBody]
if $\mods\_id\id.ini\swimsuit1 != $id && $\mods\_id\id.ini\swimsuit2 != $id
	run = CommandListID
endif
match_priority = 0
hash = b07e3596
if $Bra >= 1 && $Bra <= 3
	handling = skip
	vb0 = ResourceBodyVB unless_null
	ib = ResourceBodyIB unless_null
	drawindexed = auto
elif $Bra == 4
	handling = skip
	vb0 = ResourceBody2VB unless_null
	ib = ResourceBody2IB unless_null
	drawindexed = auto
elif $Bra == 5
	handling = skip
	vb0 = ResourceBodyVB unless_null
	ib = ResourceBodyIB unless_null
	drawindexed = auto
endif
$mod_active = 1

[ResourceBodyVB]
type = Buffer
stride = 80
filename = Body.vb
[ResourceBodyIB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Body.ib

[ResourceBody2VB]
type = Buffer
stride = 80
filename = Body2.vb
[ResourceBody2IB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Body2.ib



[Key Bra]
condition = $mod_active == 1 && $slot_active == 1
key = no_modifiers s
back =  no_modifiers a
type = cycle
$Bra = 0, 1, 2, 3, 4, 5


[TextureOverrideBikini]
if $\mods\_id\id.ini\swimsuit1 != $id && $\mods\_id\id.ini\swimsuit2 != $id
	run = CommandListID
endif	
match_priority = 0
hash = 5e5e2466
match_first_index = 19308
if $Bra >= 1 && $Bra <= 3
	handling = skip
	vb0 = ResourceBikiniVB unless_null
	ib = ResourceBikiniIB unless_null
	drawindexed = auto
elif $Bra == 4
	handling = skip
	vb0 = ResourceBikini2VB unless_null
	ib = ResourceBikini2IB unless_null
	drawindexed = auto
elif $Bra == 5
	handling = skip
	vb0 = ResourceBikiniVB unless_null
	ib = ResourceBikiniIB unless_null
	drawindexed = auto
endif
$mod_active = 1

[ResourceBikiniVB]
type = Buffer
stride = 76
filename = Bikini.vb
[ResourceBikiniIB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Bikini.ib

[ResourceBikini2VB]
type = Buffer
stride = 76
filename = Bikini2.vb
[ResourceBikini2IB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Bikini2.ib


[TextureOverrideBra]
if $\mods\_id\id.ini\swimsuit1 != $id && $\mods\_id\id.ini\swimsuit2 != $id
	run = CommandListID
endif	
match_priority = 1
hash = 5e5e2466
match_first_index = 19308
if $Bra == 1
	handling = skip
	vb0 = ResourceBraVB unless_null
	ib = ResourceBraIB unless_null
	run = CustomShaderTransparency1
elif $Bra == 2
	handling = skip
	vb0 = ResourceBraVB unless_null
	ib = ResourceBraIB unless_null
	run = CustomShaderTransparency2
elif $Bra == 3
	handling = skip
	vb0 = ResourceBraVB unless_null
	ib = ResourceBraIB unless_null
	run = CustomShaderTransparency3
elif $Bra >= 4
	handling = skip
	vb0 = ResourceBra2VB unless_null
	ib = ResourceBra2IB unless_null
	drawindexed = auto
endif
$mod_active = 1

[ResourceBraVB]
type = Buffer
stride = 76
filename = Bra.vb
[ResourceBraIB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Bra.ib

[ResourceBra2VB]
type = Buffer
stride = 76
filename = Bra2.vb
[ResourceBra2IB]
type = Buffer
format = DXGI_FORMAT_R16_UINT
filename = Bra2.ib



[CustomShaderTransparency1]
blend[0] = ADD BLEND_FACTOR INV_BLEND_FACTOR
blend_factor[0] = 0.7
blend_factor[1] = 0.7
blend_factor[2] = 0.7
blend_factor[3] = 1
handling = skip
Draw = from_caller
drawindexed=auto

[CustomShaderTransparency2]
blend[0] = ADD BLEND_FACTOR INV_BLEND_FACTOR
blend_factor[0] = 0.5
blend_factor[1] = 0.5
blend_factor[2] = 0.5
blend_factor[3] = 1
handling = skip
Draw = from_caller
drawindexed=auto

[CustomShaderTransparency3]
blend[0] = ADD BLEND_FACTOR INV_BLEND_FACTOR
blend_factor[0] = 0.3
blend_factor[1] = 0.3
blend_factor[2] = 0.3
blend_factor[3] = 1
handling = skip
Draw = from_caller
drawindexed=auto
