[Statedef -3]

;This controller plays a sound everytime KFM lands from a jump, or
;from his back-dash.
[State -3, Landing Sound]
type = PlaySnd
triggerall = Time = 1
trigger1 = stateno = 52 ;Jump land
trigger2 = stateno = 106 ;Run-back land
value = 40, 0


[State 0, ]
type = VarAdd
trigger1 = command = "parry"
trigger1 = movetype != A
trigger1 = statetype != A
v = 23
value = 8
ignorehitpause = 1

[State 0, ]
type = VarAdd
trigger1 = var(23)
v = 23
value = -1
ignorehitpause = 1

[State 0, ]
type = HitOverride
trigger1 = var(23)
trigger1 = ctrl
trigger1 = statetype != A
trigger1 = command != "holdback"
trigger1 = command != "holddown"
slot = 0
attr = SCA,AA,AP
stateno = 950
ignorehitpause = 1

[State 0, ]
type = HitOverride
trigger1 = var(23)
trigger1 = ctrl
trigger1 = statetype = A
trigger1 = command != "holdback"
trigger1 = command != "holddown"
slot = 0
attr = SCA,AA,AP
stateno = 960
ignorehitpause = 1


;---------------------------------------------------------------------------
; Without Life Bars - Intro/Wins

[state -3, 1]
type = assertspecial
trigger1 = roundstate < 2
trigger2 = stateno = [180,185]
trigger3 = WinKo = 1
trigger4 = (Var(25) = 1) && (NumExplod(8420) != 0) && (RoundState = 3)
flag = NoBarDisplay
ignorehitpause = 1

;---------------------------------------------------------------------------
; Super Jump - Variable Set



[State -2, 1]
type = VarSet
trigger1 = StateNo = 0
trigger2 = StateNo = 52
v = 10
value = 0

[State -3, Dashing Sound]
type = PlaySnd
triggerall = Time = 1
trigger1 = stateno = 5080
trigger2 = stateno = 5090
trigger3 = stateno = 5100
value = 5,1

[State -3, Dashing Sound]
type = PlaySnd
triggerall = Time = 1
trigger1 = stateno = 100
trigger2 = stateno = 105
value = 120,120

[State -2, 5]
type = palfx
triggerall = MoveType != H
trigger1 = var(5) = 1
trigger1 = TimeMod = 60,0
add = 224,128,60
mul = 224,128,60
blink = 1
time = 3
value = 1

;------------------------
;DANGER
;------------------------

[State 9990, Danger Left]
triggerall = !NumHelper(1338000000)
trigger1 = RoundState = 2
trigger1 = var(37) = 0
trigger1 = Life <= 500
type = Explod
anim = 1308
ID = 1308
pos = -500,50
postype = left
facing = 1
vfacing = 1
bindtime = 1
vel = 5,0
removetime = 200
supermovetime = 65535
pausemovetime = 65535
scale = 1,1
ontop = 1
ownpal = 1
ignorehitpause = 1


[State -2, Dangerous!]
type = VarSet
triggerall = !NumHelper(1338000000)
trigger1 = RoundState = 2
trigger1 = var(37) = 0
trigger1 = Life <= 500
var(37) = 1


[State 0, ]
type = PlaySnd
triggerall = anim = 5120 || anim = 5121
trigger1 = time = 1
trigger1 = random < 500
value = 5100,0+random%9
channel = 0
volume = 255

;---------------------------------------------------------------------------



[State -3]
type = helper
trigger1 = !numhelper(33000)
helpertype = normal
name = "AIconfig"
ID = 33000
stateno = 33000
postype = p1
pos = 0,0
facing = -1
ownpal = 1
Ignorehitpause = 1
pausemovetime=2147483647
supermovetime=2147483647
SprPriority = 7
persistent = 0

[State -3]
type = changestate
Trigger1= ishelper(33000)&&stateno != 33000
value = 33000


;Counter
[State -1, Stand Light Punch]
type = ChangeState
value = 200
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -66
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-3
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 22+3*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -50
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 210
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -62
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-9
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -40
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 220
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 10*enemynear,vel y >= -91
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-10
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [59,96+10*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -54
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 229
trigger2 = screenpos x = [0,320]
trigger3 = stateno = 200 || stateno = 210 || stateno = 230 || stateno = 240
trigger3 = stateno = 400 || stateno = 410 || stateno = 430 || stateno = 440
trigger3 = movecontact
trigger4 = stateno = [120,169]
trigger4 = power >= 500
trigger4 = statetype != A



[State -1, Stand Light Kick]
type = ChangeState
value = 230
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -55
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-4
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+4*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -22
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Standing Strong Kick]
type = ChangeState
value = 240
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -82
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-5
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 67+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -27
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  
trigger3 = (stateno = 21) && movecontact



[State -1, Crouching Light Punch]
type = ChangeState
value = 400
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -38
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-3
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+3*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = movecontact




[State -1, Crouching Strong Punch]
type = ChangeState
value = 410
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -159
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-5
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,31+5*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -110
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Light Kick]
type = ChangeState
value = 430
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 2*enemynear,vel y >= -16
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-2
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 43+2*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Strong Kick]
type = ChangeState
value = 440
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -18
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-4
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-45,49+4*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Jump Light Punch]
type = ChangeState
value = 600
triggerall = p2bodydist y - 4*(vel y - enemynear,vel y) = [-94,57]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-4
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 49+4*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Punch]
type = ChangeState
value = 610
triggerall = p2bodydist y = [-81,-24]
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-9,19]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Light Kick]
type = ChangeState
value = 630
triggerall = p2bodydist y - 3*(vel y - enemynear,vel y) = [-70,-34]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-3
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 46+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Kick]
type = ChangeState
value = 640
triggerall = p2bodydist y = [-42,150]
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-17,26]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Light Kung Fu Palm]
type = ChangeState
value = 1000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -77
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-9
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -53
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Strong Kung Fu Palm]
type = ChangeState
value = 1010
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -83
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-7
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = helper(33000),var(18) <= 0
triggerall = p2dist x >= 0 && p2bodydist x <= 43+7*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl




[State -1, Fast Kung Fu Palm]
type = ChangeState
value = 1020
triggerall = AILevel > 0 && roundstate = 2
triggerall = enemynear, anim != 5300
triggerall = p2bodydist y + 5*enemynear,vel y >= -83
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-5
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 51+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = 1
triggerall = power >= 330
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1052
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger1 = power >= 300
trigger2 = stateno != 1055 || stateno != 1052
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact




[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1055
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 || 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = stateno != 1055
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1300
triggerall = p2bodydist y + 10*enemynear,vel y >= -6
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-10
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-364,665+10*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Strong Kung Fu Knee]
type = ChangeState
value = 1310
triggerall = p2bodydist y + 14*enemynear,vel y >= -6
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-14
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-364,665+14*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Fast Kung Fu Knee]
type = ChangeState
value = 1320
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -6
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-7
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-364,665+7*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Light Kung Fu Blow]
type = ChangeState
value = 1350
triggerall = p2statetype != A || p2bodydist y = [-121,21]
triggerall = p2movetype = A && helper(33000),var(1) <= 1 && enemynear,hitdefattr=SCA,AA,AT
triggerall = enemynear,time >= 70-9*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-20,31]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 ||  1 ||  1
trigger1 = var(1) 



[State -1, Light Kung Fu Blow]
type = ChangeState
value = 1450
triggerall = p2statetype != A || p2bodydist y = [-57,-2]
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = helper(33000),var(18) <= 0
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-9,10]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1500
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-10
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1510
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-12
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1520
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-5
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1550
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-10
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1560
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-12
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1570
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-5
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Stand Light Kick]
type = ChangeState
value = 1600
triggerall = p2bodydist y + 3*enemynear,vel y >= -43
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-3
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 38+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 ||  1 ||  1
trigger1 = var(1) 
trigger2 = stateno = [1000,1020]
trigger2 = movecontact = 1



[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 13*enemynear,vel y >= -156
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-13
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 1000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)


[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3060
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 13*enemynear,vel y >= -156
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-13
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 2000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)





[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3100
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-12
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1000
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3110
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype = A && p2stateno=helper(33000),var(2) && enemynear,time < helper(33000),var(3)-12
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1500
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0




[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 4000
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A
triggerall = p2movetype = A && !enemynear,hitdefattr = sca,aa,ap,at
triggerall = p2stateno < 2000 || p2stateno = helper(33000),var(2)
triggerall = helper(33000),var(18) <= 0
triggerall = enemynear,time >= 60-8*AILevel && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=13
triggerall = statetype != A
triggerall = var(31) = 0
trigger1 = var(30) = 1
trigger1 = ctrl







;Guard
[State -3,Guard]
type = changestate
value = 120
triggerall = AILevel > 0 && roundstate=2 && random <= 250*AILevel
triggerall = ctrl || stateno = [0,20]
triggerall = helper(33000),var(1) <= 1 || helper(33000),var(18) >= 0 || random%6=0 || (prevstateno != [120,155]) || stateno != [120,155]
trigger1 = inguarddist
trigger2 = numhelper(33000)&& helper(33000),inguarddist


;Chance
[State -1, Stand Light Punch]
type = ChangeState
value = 200
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -66
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -3
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -4
triggerall = p2dist x >= 0 && p2bodydist x <= 22+3*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -50
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 210
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -62
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -9
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -10
triggerall = p2dist x >= 0 && p2bodydist x <= 24+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -40
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 220
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 10*enemynear,vel y >= -91
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -10
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -11
triggerall = p2bodydist x = [59,96+10*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -54
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 229
trigger2 = screenpos x = [0,320]
trigger3 = stateno = 200 || stateno = 210 || stateno = 230 || stateno = 240
trigger3 = stateno = 400 || stateno = 410 || stateno = 430 || stateno = 440
trigger3 = movecontact
trigger4 = stateno = [120,169]
trigger4 = power >= 500
trigger4 = statetype != A



[State -1, Stand Light Kick]
type = ChangeState
value = 230
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -55
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -4
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -5
triggerall = p2dist x >= 0 && p2bodydist x <= 26+4*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -22
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Standing Strong Kick]
type = ChangeState
value = 240
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -82
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -5
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -6
triggerall = p2dist x >= 0 && p2bodydist x <= 67+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -27
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  
trigger3 = (stateno = 21) && movecontact



[State -1, Crouching Light Punch]
type = ChangeState
value = 400
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -38
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -3
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -4
triggerall = p2dist x >= 0 && p2bodydist x <= 24+3*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = movecontact




[State -1, Crouching Strong Punch]
type = ChangeState
value = 410
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -159
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -5
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -6
triggerall = p2bodydist x = [-13,31+5*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -110
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Light Kick]
type = ChangeState
value = 430
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 2*enemynear,vel y >= -16
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -2
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -3
triggerall = p2dist x >= 0 && p2bodydist x <= 43+2*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Strong Kick]
type = ChangeState
value = 440
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -18
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -4
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -5
triggerall = p2bodydist x = [-45,49+4*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Jump Light Punch]
type = ChangeState
value = 600
triggerall = p2bodydist y - 4*(vel y - enemynear,vel y) = [-94,57]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -4
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -5
triggerall = p2dist x >= 0 && p2bodydist x <= 49+4*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Punch]
type = ChangeState
value = 610
triggerall = p2bodydist y = [-81,-24]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2bodydist x = [-9,19]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Light Kick]
type = ChangeState
value = 630
triggerall = p2bodydist y - 3*(vel y - enemynear,vel y) = [-70,-34]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -3
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -4
triggerall = p2dist x >= 0 && p2bodydist x <= 46+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Kick]
type = ChangeState
value = 640
triggerall = p2bodydist y = [-42,150]
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2bodydist x = [-17,26]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Light Kung Fu Palm]
type = ChangeState
value = 1000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -77
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -9
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -10
triggerall = p2dist x >= 0 && p2bodydist x <= 26+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -53
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Strong Kung Fu Palm]
type = ChangeState
value = 1010
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -83
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -7
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = helper(33000),var(18) <= 0
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -8
triggerall = p2dist x >= 0 && p2bodydist x <= 43+7*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl




[State -1, Fast Kung Fu Palm]
type = ChangeState
value = 1020
triggerall = AILevel > 0 && roundstate = 2
triggerall = enemynear, anim != 5300
triggerall = p2bodydist y + 5*enemynear,vel y >= -83
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -5
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -6
triggerall = p2dist x >= 0 && p2bodydist x <= 51+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = 1
triggerall = power >= 330
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1052
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger1 = power >= 300
trigger2 = stateno != 1055 || stateno != 1052
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact




[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1055
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 || 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = stateno != 1055
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1300
triggerall = p2bodydist y + 10*enemynear,vel y >= -6
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -10
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -11
triggerall = p2bodydist x = [-364,665+10*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Strong Kung Fu Knee]
type = ChangeState
value = 1310
triggerall = p2bodydist y + 14*enemynear,vel y >= -6
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -14
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -15
triggerall = p2bodydist x = [-364,665+14*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Fast Kung Fu Knee]
type = ChangeState
value = 1320
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -6
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -7
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -8
triggerall = p2bodydist x = [-364,665+7*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Light Kung Fu Blow]
type = ChangeState
value = 1450
triggerall = p2statetype != A || p2bodydist y = [-57,-2]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = helper(33000),var(18) <= 0
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2bodydist x = [-9,10]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1500
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -10
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -11
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1510
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -12
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -13
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1520
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -5
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -6
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1550
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -10
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -11
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1560
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -12
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -13
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1570
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype = A || p2movetype = I
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -5
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -6
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Stand Light Kick]
type = ChangeState
value = 1600
triggerall = p2bodydist y + 3*enemynear,vel y >= -43
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -3
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -4
triggerall = p2dist x >= 0 && p2bodydist x <= 38+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 ||  1 ||  1
trigger1 = var(1) 
trigger2 = stateno = [1000,1020]
trigger2 = movecontact = 1



[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 13*enemynear,vel y >= -156
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -13
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -14
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 1000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)


[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3060
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 13*enemynear,vel y >= -156
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -13
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -14
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 2000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)





[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3100
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -12
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -13
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1000
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3110
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -12
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -13
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1500
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0




[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 4000
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A
triggerall = p2movetype = A || p2movetype = I && p2stateno > 160
triggerall = p2statetype != L && !enemynear,ctrl && enemynear,animtime < -0
triggerall = !inguarddist || helper(33000),var(1) > 1 && (p2statetype != A || prevstateno = [120,159]) && random%3 < 2
triggerall = helper(33000),var(18) <= 0
triggerall = random <= 113*AILevel
triggerall = random%2=0 || enemynear,time+enemynear,animtime >= 0 || enemynear,animtime = -1
triggerall = p2dist x >= 0 && p2bodydist x <=13
triggerall = statetype != A
triggerall = var(31) = 0
trigger1 = var(30) = 1
trigger1 = ctrl







;Combo
[State -1, Stand Light Punch]
type = ChangeState
value = 200
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 3*enemynear,vel y + enemynear,gethitvar(yaccel)*3*4*0.5 = [-66,-1]
triggerall = enemynear,animtime <= -3 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 3
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=4)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 22+3*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -50
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 210
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 9*enemynear,vel y + enemynear,gethitvar(yaccel)*9*10*0.5 = [-62,-1]
triggerall = enemynear,animtime <= -9 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 9
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=10)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -40
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 220
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 10*enemynear,vel y + enemynear,gethitvar(yaccel)*10*11*0.5 = [-91,-1]
triggerall = enemynear,animtime <= -10 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 10
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=11)*45)*AILevel
triggerall = p2bodydist x = [59,96+10*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -54
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 229
trigger2 = screenpos x = [0,320]
trigger3 = stateno = 200 || stateno = 210 || stateno = 230 || stateno = 240
trigger3 = stateno = 400 || stateno = 410 || stateno = 430 || stateno = 440
trigger3 = movecontact
trigger4 = stateno = [120,169]
trigger4 = power >= 500
trigger4 = statetype != A



[State -1, Stand Light Kick]
type = ChangeState
value = 230
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 4*enemynear,vel y + enemynear,gethitvar(yaccel)*4*5*0.5 = [-55,-1]
triggerall = enemynear,animtime <= -4 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 4
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=5)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+4*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -22
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Standing Strong Kick]
type = ChangeState
value = 240
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 5*enemynear,vel y + enemynear,gethitvar(yaccel)*5*6*0.5 = [-82,-1]
triggerall = enemynear,animtime <= -5 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 5
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=6)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 67+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -27
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  
trigger3 = (stateno = 21) && movecontact



[State -1, Crouching Light Punch]
type = ChangeState
value = 400
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 3*enemynear,vel y + enemynear,gethitvar(yaccel)*3*4*0.5 = [-38,-1]
triggerall = enemynear,animtime <= -3 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 3
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=4)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+3*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = movecontact




[State -1, Crouching Strong Punch]
type = ChangeState
value = 410
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 5*enemynear,vel y + enemynear,gethitvar(yaccel)*5*6*0.5 = [-159,-1]
triggerall = enemynear,animtime <= -5 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 5
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=6)*45)*AILevel
triggerall = p2bodydist x = [-13,31+5*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -110
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Light Kick]
type = ChangeState
value = 430
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 2*enemynear,vel y + enemynear,gethitvar(yaccel)*2*3*0.5 = [-16,-1]
triggerall = enemynear,animtime <= -2 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 2
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=3)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 43+2*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Strong Kick]
type = ChangeState
value = 440
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 4*enemynear,vel y + enemynear,gethitvar(yaccel)*4*5*0.5 = [-18,-1]
triggerall = enemynear,animtime <= -4 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 4
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=5)*45)*AILevel
triggerall = p2bodydist x = [-45,49+4*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Jump Light Punch]
type = ChangeState
value = 600
triggerall = p2bodydist y - 4*(vel y - enemynear,vel y) = [-94,57]
triggerall = enemynear,animtime <= -4 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 4
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=5)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 49+4*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Punch]
type = ChangeState
value = 610
triggerall = p2bodydist y = [-81,-24]
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2bodydist x = [-9,19]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Light Kick]
type = ChangeState
value = 630
triggerall = p2bodydist y - 3*(vel y - enemynear,vel y) = [-70,-34]
triggerall = enemynear,animtime <= -3 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 3
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=4)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 46+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Kick]
type = ChangeState
value = 640
triggerall = p2bodydist y = [-42,150]
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2bodydist x = [-17,26]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Light Kung Fu Palm]
type = ChangeState
value = 1000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 9*enemynear,vel y + enemynear,gethitvar(yaccel)*9*10*0.5 = [-77,-1]
triggerall = enemynear,animtime <= -9 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 9
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=10)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -53
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Strong Kung Fu Palm]
type = ChangeState
value = 1010
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 7*enemynear,vel y + enemynear,gethitvar(yaccel)*7*8*0.5 = [-83,-1]
triggerall = enemynear,animtime <= -7 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 7
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=8)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 43+7*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl




[State -1, Fast Kung Fu Palm]
type = ChangeState
value = 1020
triggerall = AILevel > 0 && roundstate = 2
triggerall = enemynear, anim != 5300
triggerall = p2statetype != A || p2bodydist y + 5*enemynear,vel y + enemynear,gethitvar(yaccel)*5*6*0.5 = [-83,-1]
triggerall = enemynear,animtime <= -5 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 5
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=6)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 51+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = 1
triggerall = power >= 330
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1052
triggerall = p2bodydist y = [-99,74]
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger1 = power >= 300
trigger2 = stateno != 1055 || stateno != 1052
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact




[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1055
triggerall = p2bodydist y = [-99,74]
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 || 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = stateno != 1055
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1300
triggerall = p2statetype != A || p2bodydist y + 10*enemynear,vel y + enemynear,gethitvar(yaccel)*10*11*0.5 = [-6,-1]
triggerall = enemynear,animtime <= -10 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 10
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=11)*45)*AILevel
triggerall = p2bodydist x = [-364,665+10*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Strong Kung Fu Knee]
type = ChangeState
value = 1310
triggerall = p2statetype != A || p2bodydist y + 14*enemynear,vel y + enemynear,gethitvar(yaccel)*14*15*0.5 = [-6,-1]
triggerall = enemynear,animtime <= -14 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 14
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=15)*45)*AILevel
triggerall = p2bodydist x = [-364,665+14*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Fast Kung Fu Knee]
type = ChangeState
value = 1320
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 7*enemynear,vel y + enemynear,gethitvar(yaccel)*7*8*0.5 = [-6,-1]
triggerall = enemynear,animtime <= -7 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 7
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=8)*45)*AILevel
triggerall = p2bodydist x = [-364,665+7*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Light Kung Fu Blow]
type = ChangeState
value = 1450
triggerall = p2statetype != A || p2bodydist y = [-57,-2]
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2bodydist x = [-9,10]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1500
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -10 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 10
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=11)*45)*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1510
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -12 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 12
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=13)*45)*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1520
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -5 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 5
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=6)*45)*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1550
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -10 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 10
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=11)*45)*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1560
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -12 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 12
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=13)*45)*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1570
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = enemynear,animtime <= -5 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 5
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=6)*45)*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Stand Light Kick]
type = ChangeState
value = 1600
triggerall = p2statetype != A || p2bodydist y + 3*enemynear,vel y + enemynear,gethitvar(yaccel)*3*4*0.5 = [-43,-1]
triggerall = enemynear,animtime <= -3 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 3
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=4)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 38+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 ||  1 ||  1
trigger1 = var(1) 
trigger2 = stateno = [1000,1020]
trigger2 = movecontact = 1



[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 13*enemynear,vel y + enemynear,gethitvar(yaccel)*13*14*0.5 = [-156,-1]
triggerall = enemynear,animtime <= -13 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 13
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=14)*45)*AILevel
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 1000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)


[State -1, Triple Kung Fu Palm] 
type = ChangeState
value = 3060
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2statetype != A || p2bodydist y + 13*enemynear,vel y + enemynear,gethitvar(yaccel)*13*14*0.5 = [-156,-1]
triggerall = enemynear,animtime <= -13 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 13
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=14)*45)*AILevel
triggerall = p2bodydist x = [-12,31+13*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -111
triggerall = 1
triggerall = power >= 2000
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3100]
trigger2 = movecontact
trigger2 = stateno != (1450,1479)





[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3100
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A || p2bodydist y + 12*enemynear,vel y + enemynear,gethitvar(yaccel)*12*13*0.5 = [-91,-1]
triggerall = enemynear,animtime <= -12 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 12
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=13)*45)*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1000
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3110
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A || p2bodydist y + 12*enemynear,vel y + enemynear,gethitvar(yaccel)*12*13*0.5 = [-91,-1]
triggerall = enemynear,animtime <= -12 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 12
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=13)*45)*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1500
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0




[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 4000
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A
triggerall = enemynear,animtime <= -0 && !enemynear,canrecover && helper(33000),var(17) = 0 || helper(33000),var(17) >= 0
triggerall = (!inguarddist || !ctrl) && enemynear,alive && p2movetype = H && p2statetype != L
triggerall = random%10<9 || p2stateno != [120,159]
triggerall = random <= (80+(helper(33000),var(17)=1)*45)*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=13
triggerall = statetype != A
triggerall = var(31) = 0
trigger1 = var(30) = 1
trigger1 = ctrl







;Throw
[State -1, Strong Kung Fu Palm]
type = ChangeState
value = 1010
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -83
triggerall = p2movetype != H
triggerall = !inguarddist && p2statetype != L
triggerall = random <= 18*AILevel
triggerall = helper(33000),var(18) <= 0
triggerall = p2dist x >= 0 && p2bodydist x <= 43+7*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl




[State -1, Light Kung Fu Blow]
type = ChangeState
value = 1450
triggerall = p2statetype != A || p2bodydist y = [-57,-2]
triggerall = p2movetype != H
triggerall = !inguarddist && p2statetype != L
triggerall = random <= 60*AILevel
triggerall = helper(33000),var(18) <= 0
triggerall = p2bodydist x = [-9,10]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 



[State -1, Fast Kung Fu Knee]
type = ChangeState
value = 1320
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 7*enemynear,vel y >= -6
triggerall = p2movetype != H
triggerall = !inguarddist && p2statetype != L
triggerall = random <= 18*AILevel
triggerall = p2bodydist x = [-364,665+7*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 4000
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2statetype != A
triggerall = p2movetype != H
triggerall = !inguarddist && p2statetype != L
triggerall = random <= 60*AILevel
triggerall = helper(33000),var(18) <= 0
triggerall = p2dist x >= 0 && p2bodydist x <=13
triggerall = statetype != A
triggerall = var(31) = 0
trigger1 = var(30) = 1
trigger1 = ctrl







;Fight
[State -1, Stand Light Punch]
type = ChangeState
value = 200
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -66
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 62*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 22+3*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -50
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 210
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -62
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 25*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -40
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Stand Strong Punch]
type = ChangeState
value = 220
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 10*enemynear,vel y >= -91
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 14*AILevel
triggerall = p2bodydist x = [59,96+10*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -54
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 229
trigger2 = screenpos x = [0,320]
trigger3 = stateno = 200 || stateno = 210 || stateno = 230 || stateno = 240
trigger3 = stateno = 400 || stateno = 410 || stateno = 430 || stateno = 440
trigger3 = movecontact
trigger4 = stateno = [120,169]
trigger4 = power >= 500
trigger4 = statetype != A



[State -1, Stand Light Kick]
type = ChangeState
value = 230
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -55
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 48*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+4*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -22
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Standing Strong Kick]
type = ChangeState
value = 240
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -82
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 39*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 67+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -27
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  
trigger3 = (stateno = 21) && movecontact



[State -1, Crouching Light Punch]
type = ChangeState
value = 400
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 3*enemynear,vel y >= -38
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 62*AILevel|| p2statetype = A && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 24+3*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = movecontact




[State -1, Crouching Strong Punch]
type = ChangeState
value = 410
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 5*enemynear,vel y >= -159
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 24*AILevel
triggerall = p2bodydist x = [-13,31+5*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -110
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Light Kick]
type = ChangeState
value = 430
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 2*enemynear,vel y >= -16
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 62*AILevel|| p2statetype = A && random <= 75*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 43+2*(vel x+enemynear,vel x)
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Crouching Strong Kick]
type = ChangeState
value = 440
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 4*enemynear,vel y >= -18
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 41*AILevel|| p2statetype = A && random <= 75*AILevel
triggerall = p2bodydist x = [-45,49+4*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = 1
trigger1 = Statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,240]) && movecontact || (stateno = [400,440]) && movecontact  



[State -1, Jump Light Punch]
type = ChangeState
value = 600
triggerall = p2bodydist y - 4*(vel y - enemynear,vel y) = [-94,57]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 39*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 49+4*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Punch]
type = ChangeState
value = 610
triggerall = p2bodydist y = [-81,-24]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 61*AILevel
triggerall = p2bodydist x = [-9,19]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Light Kick]
type = ChangeState
value = 630
triggerall = p2bodydist y - 3*(vel y - enemynear,vel y) = [-70,-34]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 52*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 46+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Jump Strong Kick]
type = ChangeState
value = 640
triggerall = p2bodydist y = [-42,150]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 29*AILevel
triggerall = p2bodydist x = [-17,26]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,640]) && movecontact



[State -1, Light Kung Fu Palm]
type = ChangeState
value = 1000
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y + 9*enemynear,vel y >= -77
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 11*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 26+9*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -53
triggerall = enemynear, anim != 5300
triggerall = 1
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Fast Kung Fu Palm]
type = ChangeState
value = 1020
triggerall = AILevel > 0 && roundstate = 2
triggerall = enemynear, anim != 5300
triggerall = p2bodydist y + 5*enemynear,vel y >= -83
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 11*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 51+5*(vel x+enemynear,vel x)
triggerall = !numhelper(33000) || helper(33000),var(16) <= -65
triggerall = 1
triggerall = power >= 330
trigger1 = statetype != A
trigger1 = ctrl



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1052
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 17*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger1 = power >= 300
trigger2 = stateno != 1055 || stateno != 1052
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact




[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1055
triggerall = p2bodydist y = [-99,74]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 36*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <=43
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 || 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = stateno != 1055
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1500,1579]) && movecontact



[State -1, Light Kung Fu Knee]
type = ChangeState
value = 1300
triggerall = p2bodydist y + 10*enemynear,vel y >= -6
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 14*AILevel
triggerall = p2bodydist x = [-364,665+10*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Strong Kung Fu Knee]
type = ChangeState
value = 1310
triggerall = p2bodydist y + 14*enemynear,vel y >= -6
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 11*AILevel
triggerall = p2bodydist x = [-364,665+14*(vel x+enemynear,vel x)]
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = var(1) 
trigger2 = stateno = [1200,1220]
trigger2 = movecontact
trigger2 = var(21) >= 1000
trigger3 = stateno = [1000,1020]
trigger3 = movecontact
trigger3 = var(21) >= 1000



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1500
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 31*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1510
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 29*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light Low Kung Fu Cannonball]
type = ChangeState
value = 1520
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 26*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1550
triggerall = p2bodydist y - 10*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 31*AILevel
triggerall = p2bodydist x = [-13,15+10*(vel x+enemynear,vel x)]
triggerall = pos Y+10*vel y+const(movement.yaccel)*10*11*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1560
triggerall = p2bodydist y - 12*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 29*AILevel
triggerall = p2bodydist x = [-13,15+12*(vel x+enemynear,vel x)]
triggerall = pos Y+12*vel y+const(movement.yaccel)*12*13*0.5 < 0
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Light High Kung Fu Cannonball]
type = ChangeState
value = 1570
triggerall = AILevel > 0 && roundstate = 2
triggerall = p2bodydist y - 5*(vel y - enemynear,vel y) = [-56,56]
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 26*AILevel
triggerall = p2bodydist x = [-13,15+5*(vel x+enemynear,vel x)]
triggerall = 1
triggerall = power >= 330
trigger1 = statetype = A
trigger1 = ctrl
trigger2 = (stateno = [600,649]) && movecontact
trigger2 = (stateno = [1050,1079]) && movecontact



[State -1, Stand Light Kick]
type = ChangeState
value = 1600
triggerall = p2bodydist y + 3*enemynear,vel y >= -43
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 12*AILevel
triggerall = p2dist x >= 0 && p2bodydist x <= 38+3*(vel x+enemynear,vel x)
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1 ||  1 ||  1
trigger1 = var(1) 
trigger2 = stateno = [1000,1020]
trigger2 = movecontact = 1



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3100
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 16*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1000
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0



[State -1, Smash Kung Fu Upper]
type = ChangeState
value = 3110
triggerall = AILevel > 0 && roundstate = 2
triggerall = 1
triggerall = p2bodydist y + 12*enemynear,vel y >= -91
triggerall = p2movetype != H || p2stateno = [120,159]
triggerall = !inguarddist && !helper(33000),inguarddist && p2statetype != L
triggerall = random <= 16*AILevel
triggerall = p2bodydist x = [23,807+12*(vel x+enemynear,vel x)]
triggerall = !numhelper(33000) || helper(33000),var(16) <= -48
triggerall = power >= 1500
triggerall = statetype != A
trigger1 = ctrl
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3050,6999]
trigger2 = movecontact
trigger3 = stateno = 3051
trigger3 = animelemtime(7) >= 0





;Move and other

;AIhelper
[Statedef 33000]
Ctrl = 0

[State 33000]
type=selfstate
trigger1=!ishelper
value=0

[State 33000]
Type = AssertSpecial
Trigger1 = IsHelper
flag = invisible

[State 33000]
type = nothitby
trigger1 = 1
value = sca

[STATE 超必殺判定]
type = VarSet
triggerall = Time
trigger1 = var(10)>enemy,power
var(9) = (var(10)-enemy,power)

[STATE 超必殺判定(リセット)]
type = VarSet
triggerall = Time
trigger1 = enemynear,movetype=H
trigger2 = enemynear,stateno=[0,105]
trigger3 = enemynear,stateno=[120,155]
trigger4 = enemynear,stateno=[5000,5210]
var(9) = 0

[STATE ENEMY,POWER]
type = VarSet
trigger1 = Time
var(10) = enemynear,power

;めくりガード対応ヘルパー
[State 4444]
Type = PosSet
Trigger1 = 1
X = Ceil(EnemyNear,Pos X)-10*Facing
Y = Ceil(EnemyNear,Pos Y)
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4444]
Type = Turn
Trigger1 = Facing = EnemyNear,Facing
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

;相手がAIか判別

[state -2,ai]
type = varset
trigger1 = roundstate < 2
var(4) = 0

[state -2,ai]
type = varset
trigger1 = abs(var(4)) > 10
var(4) = ifelse(var(4) > 0,10,-10)

[state -2,ai]
type = varadd
trigger1 = (enemynear,stateno=[120,132])&&(enemynear,prevstateno!=[120,155])
trigger1 = enemynear,time <= 1
trigger1 = enemynear,command!="holdback"
var(4) = 1

[state -2,ai]
type = varadd
trigger1 = (enemynear,stateno=[120,132])&&(enemynear,prevstateno!=[120,155])
trigger1 = enemynear,time <= 1
trigger1 = enemynear,command="holdback"
var(4) = -1

[State -1, 直前行動]
type = VarSet
trigger1 = root,movetype = H
trigger1 = root,prevstateno != [5000,5799]
trigger1 = root,stateno != [120,159]
var(13) = root,prevstateno

[State -1, 直前行動]
type = VarSet
trigger1 = root,movetype = A 
var(14) = root,stateno

[State -1, Preview State]
type = VarSet
trigger1 = var(14) != 0
trigger1 = enemynear,movetype != H || enemynear,stateno = [150,159]
var(14) = 0

[State 32000]
type = varset
trigger1 = var(15) != 0
trigger1 = enemynear,movetype != H && root,movetype != A
var(15) = 0

[State 32000]
type = varset
trigger1 = var(15) = 0
trigger1 = enemynear,movetype = H || root,hitdefattr = sca,at
var(15) = root,time

[State 32000]
type = varset
trigger1 = enemynear,statetype = S || enemynear,statetype = L
var(16) = enemynear,const(size.head.pos.y)

[State 32000]
type = varset
trigger1 = enemynear,statetype = C
var(16) = enemynear,const(size.mid.pos.y)

[State 32000]
type = varset
trigger1 = enemynear,statetype = A
var(16) = -99

[State -2,recover]
type=varadd
trigger1=var(17)>0
var(17)=-1
ignorehitpause=1

[State -2,recover]
type=varset
triggerall=var(17)>0
trigger1=enemynear,movetype!=H
var(17)=0

[State -2,ガード硬直]
type=varset
triggerall=enemynear,movetype=H
triggerall=enemynear,stateno<200
triggerall=enemynear,statetype=A
trigger1=!enemynear,gethitvar(fall)
trigger1=!(enemynear,hitshakeover)
trigger1=enemynear,time=1||var(17)=0
var(17)=enemynear,gethitvar(ctrltime)+enemynear,gethitvar(hitshaketime)+1
ignorehitpause=1

[State -2,ガード硬直]
type=varset
triggerall=enemynear,movetype=H
triggerall=enemynear,stateno<200
triggerall=enemynear,statetype!=A
trigger1=!enemynear,gethitvar(fall)
trigger1=!(enemynear,hitshakeover)
trigger1=enemynear,time=1||var(17)=0
var(17)=ifelse(enemynear,gethitvar(ctrltime)<enemynear,gethitvar(hittime),enemynear,gethitvar(ctrltime),enemynear,gethitvar(hittime))+enemynear,gethitvar(hitshaketime)+1
ignorehitpause=1

[State -2,のけぞり時間]
type=varset
triggerall=enemynear,movetype=H
triggerall=enemynear,stateno>199
trigger1=!enemynear,gethitvar(fall)
trigger1=!(enemynear,hitshakeover)
trigger1=enemynear,time=1
var(17)=enemynear,gethitvar(hittime)+enemynear,gethitvar(hitshaketime)+1
ignorehitpause=1

[State -2,受身不能時間]
type=varset
triggerall=enemynear,stateno>199
triggerall=enemynear,movetype=H
triggerall=enemynear,statetype!=L
trigger1=enemynear,gethitvar(fall)
trigger1=!(enemynear,hitshakeover)
trigger1=enemynear,time=1
var(17)=enemynear,gethitvar(fall.recovertime)-1
ignorehitpause=1

[State -2,受身不能時間]
type=varset
triggerall=numenemy>=2
triggerall=enemynear,stateno>199
triggerall=enemynear,movetype=H
triggerall=enemynear,statetype!=L
trigger1=enemynear,gethitvar(fall)
trigger1=var(17)<enemynear,gethitvar(fall.recovertime)-100
var(17)=enemynear,gethitvar(fall.recovertime)-100
ignorehitpause=1

[State -2,受身不能時間]
type=varset
triggerall=enemynear,stateno>199
triggerall=enemynear,movetype=H
triggerall=enemynear,statetype!=L
trigger1=!enemynear,gethitvar(fall.recover)
trigger1=enemynear,gethitvar(fall)
trigger2=enemynear,stateno=5070
var(17)=999
ignorehitpause=1

[State -3,up]
type = varset
trigger1 = var(18) <= 0
trigger1 = enemynear,statetype = L
var(18) = 15

[State -3,up]
type = varset
trigger1 = var(18) = 0
trigger1 = root,statetype = L
var(18) = -15

[State -3,up]
type = varadd
triggerall = var(18) != 0
trigger1 = var(18) > 0
trigger1 = enemynear,statetype != L
trigger2 = var(18) < 0
trigger2 = root,statetype != L
var(18) = ifelse(var(18) > 0,-1,1)

;相手のヘルパー数調べ
[state -1];ヘルパー数調べの準備
type=varset
trigger1 = roundstate!=2
var(19)=9999
supermove = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999


[state -1];ヘルパー数を調べる
type=varset
var(19)=enemynear,numhelper
trigger1 = roundstate=2
trigger1 = enemynear,ctrl=1
trigger1 = var(19)>=enemynear,numhelper
trigger2 = enemynear,movetype != A
trigger2 = root,inguarddist = 0
trigger2 = (enemynear,stateno =[5000,5999]) || enemynear,stateno = [50,200)
trigger2 = root,stateno != [120,162]
trigger2 = root,stateno != [5000,5300]
trigger2 = root,movetype != H
trigger2 = root,hitpausetime = 0 && enemynear,hitpausetime = 0
ignorehitpause = 1

[state -1]
type=varset
triggerall = var(20) != 0
trigger1 = root,movetype = A
trigger2 = root,movetype = H && root,stateno != [120,159]
var(20)=0
ignorehitpause = 1

[state -1]
type=varadd
trigger1 = root,movetype = H && !root,ctrl && root,stateno = [150,159]
var(20)=1
ignorehitpause = 1

[state -1]
type=varadd
trigger1 = var(20) > 0
trigger1 = root,movetype != H
var(20)=-1
ignorehitpause = 1

[state -1]
type=varset
trigger1 = root,movehit = 1
var(21)=ceil(root,p2bodydist y)
ignorehitpause = 1

[State -3]
Type = VarSet
Trigger1 = enemynear,movetype = A
Trigger1 = enemynear,time <= 1
trigger2 = enemynear,movetype != A
var(0) = 0
IgnoreHitPause = 1

[State -2,time]
Type = VarSet
Trigger1 = enemynear,movetype = A
Trigger1 = enemynear,hitdefattr = sca,aa,ap,at
trigger1 = var(0) = 0
var(0) = enemynear,time
IgnoreHitPause = 1

[State -3]
Type = VarSet
Trigger1 = enemynear,movetype = A
Trigger1 = enemynear,time <= 1
trigger2 = enemynear,movetype != A
var(8) = 0
IgnoreHitPause = 1

[State -3]
Type = VarSet
Trigger1 = enemynear,movetype = A
Trigger1 = root,movetype = H
trigger1 = root,time <= 1
trigger1 = var(8) = 0
var(8) = enemynear,time
IgnoreHitPause = 1

[State 7777,shield]
Type = VarSet
triggerall = var(1) != 0
Trigger1 = EnemyNear,time < 1
trigger2 = enemynear,movetype != A
trigger3 = var(7) = 1
var(1)=0
IgnoreHitPause=1

[State 7777,shield]
Type = VarAdd
Trigger1 = EnemyNear,MoveType=A
Trigger1 = EnemyNear,HitDefAttr = SCA,AA,AP,AT
var(1)=1
IgnoreHitPause=1

[State 7777,shield]
Type = Varset
triggerall = var(7) != 1
Trigger1 = EnemyNear,time <= 1
Trigger1 = EnemyNear,HitDefAttr = SCA,AA,AP
var(7)=1
IgnoreHitPause=1

[State 7777,shield]
Type = Varset
triggerall = var(7) != 0
Trigger1 = EnemyNear,HitDefAttr = SCA,AA,AP,AT
trigger1 = root,movetype = H || enemynear,movecontact || enemynear,movereversed
trigger2 = enemynear,movetype != A
trigger3 = !enemynear,hitdefattr = sca,aa,ap
var(7)=0
IgnoreHitPause=1

[State -2,stateno1]
Type = Varset
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
Trigger1 = enemynear,movetype != A
V = 2
value = 0
IgnoreHitPause = 1

[State -2,time]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
Trigger1 = enemynear,movetype != A
V = 3
value = 0
IgnoreHitPause = 1

[State 33000,time]
Type = Null
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
TriggerAll = Var(2) != Enemynear,Stateno
Trigger1 = floor(fvar(0)) = Enemynear,Stateno
trigger1 = var(2) := floor(fvar(0)) || 1
trigger1 = var(3) := floor(1000*(fvar(0)-floor(fvar(0))))
Trigger2 = floor(fvar(1)) = Enemynear,Stateno
trigger2 = var(2) := floor(fvar(1)) || 1
trigger2 = var(3) := floor(1000*(fvar(1)-floor(fvar(1))))
Trigger3 = floor(fvar(2)) = Enemynear,Stateno
trigger3 = var(2) := floor(fvar(2)) || 1
trigger3 = var(3) := floor(1000*(fvar(2)-floor(fvar(2))))
Trigger4 = floor(fvar(3)) = Enemynear,Stateno
trigger4 = var(2) := floor(fvar(3)) || 1
trigger4 = var(3) := floor(1000*(fvar(3)-floor(fvar(3))))
Trigger5 = floor(fvar(4)) = Enemynear,Stateno
trigger5 = var(2) := floor(fvar(4)) || 1
trigger5 = var(3) := floor(1000*(fvar(4)-floor(fvar(4))))
Trigger6 = floor(fvar(5)) = Enemynear,Stateno
trigger6 = var(2) := floor(fvar(5)) || 1
trigger6 = var(3) := floor(1000*(fvar(5)-floor(fvar(5))))
Trigger7 = floor(fvar(6)) = Enemynear,Stateno
trigger7 = var(2) := floor(fvar(6)) || 1
trigger7 = var(3) := floor(1000*(fvar(6)-floor(fvar(6))))
Trigger8 = floor(fvar(7)) = Enemynear,Stateno
trigger8 = var(2) := floor(fvar(7)) || 1
trigger8 = var(3) := floor(1000*(fvar(7)-floor(fvar(7))))
Trigger9 = floor(fvar(8)) = Enemynear,Stateno
trigger9 = var(2) := floor(fvar(8)) || 1
trigger9 = var(3) := floor(1000*(fvar(8)-floor(fvar(8))))
Trigger10 = floor(fvar(9)) = Enemynear,Stateno
trigger10 = var(2) := floor(fvar(9)) || 1
trigger10 = var(3) := floor(1000*(fvar(9)-floor(fvar(9))))
Trigger11 = floor(fvar(10)) = Enemynear,Stateno
trigger11 = var(2) := floor(fvar(10)) || 1
trigger11 = var(3) := floor(1000*(fvar(10)-floor(fvar(10))))
Trigger12 = floor(fvar(11)) = Enemynear,Stateno
trigger12 = var(2) := floor(fvar(11)) || 1
trigger12 = var(3) := floor(1000*(fvar(11)-floor(fvar(11))))
Trigger13 = floor(fvar(12)) = Enemynear,Stateno
trigger13 = var(2) := floor(fvar(12)) || 1
trigger13 = var(3) := floor(1000*(fvar(12)-floor(fvar(12))))
Trigger14 = floor(fvar(13)) = Enemynear,Stateno
trigger14 = var(2) := floor(fvar(13)) || 1
trigger14 = var(3) := floor(1000*(fvar(13)-floor(fvar(13))))
Trigger15 = floor(fvar(14)) = Enemynear,Stateno
trigger15 = var(2) := floor(fvar(14)) || 1
trigger15 = var(3) := floor(1000*(fvar(14)-floor(fvar(14))))
Trigger16 = floor(fvar(15)) = Enemynear,Stateno
trigger16 = var(2) := floor(fvar(15)) || 1
trigger16 = var(3) := floor(1000*(fvar(15)-floor(fvar(15))))
Trigger17 = floor(fvar(16)) = Enemynear,Stateno
trigger17 = var(2) := floor(fvar(16)) || 1
trigger17 = var(3) := floor(1000*(fvar(16)-floor(fvar(16))))
Trigger18 = floor(fvar(17)) = Enemynear,Stateno
trigger18 = var(2) := floor(fvar(17)) || 1
trigger18 = var(3) := floor(1000*(fvar(17)-floor(fvar(17))))
Trigger19 = floor(fvar(18)) = Enemynear,Stateno
trigger19 = var(2) := floor(fvar(18)) || 1
trigger19 = var(3) := floor(1000*(fvar(18)-floor(fvar(18))))
Trigger20 = floor(fvar(19)) = Enemynear,Stateno
trigger20 = var(2) := floor(fvar(19)) || 1
trigger20 = var(3) := floor(1000*(fvar(19)-floor(fvar(19))))
Trigger21 = floor(fvar(20)) = Enemynear,Stateno
trigger21 = var(2) := floor(fvar(20)) || 1
trigger21 = var(3) := floor(1000*(fvar(20)-floor(fvar(20))))
Trigger22 = floor(fvar(21)) = Enemynear,Stateno
trigger22 = var(2) := floor(fvar(21)) || 1
trigger22 = var(3) := floor(1000*(fvar(21)-floor(fvar(21))))
Trigger23 = floor(fvar(22)) = Enemynear,Stateno
trigger23 = var(2) := floor(fvar(22)) || 1
trigger23 = var(3) := floor(1000*(fvar(22)-floor(fvar(22))))
Trigger24 = floor(fvar(23)) = Enemynear,Stateno
trigger24 = var(2) := floor(fvar(23)) || 1
trigger24 = var(3) := floor(1000*(fvar(23)-floor(fvar(23))))
Trigger25 = floor(fvar(24)) = Enemynear,Stateno
trigger25 = var(2) := floor(fvar(24)) || 1
trigger25 = var(3) := floor(1000*(fvar(24)-floor(fvar(24))))
Trigger26 = floor(fvar(25)) = Enemynear,Stateno
trigger26 = var(2) := floor(fvar(25)) || 1
trigger26 = var(3) := floor(1000*(fvar(25)-floor(fvar(25))))
Trigger27 = floor(fvar(26)) = Enemynear,Stateno
trigger27 = var(2) := floor(fvar(26)) || 1
trigger27 = var(3) := floor(1000*(fvar(26)-floor(fvar(26))))
Trigger28 = floor(fvar(27)) = Enemynear,Stateno
trigger28 = var(2) := floor(fvar(27)) || 1
trigger28 = var(3) := floor(1000*(fvar(27)-floor(fvar(27))))
Trigger29 = floor(fvar(28)) = Enemynear,Stateno
trigger29 = var(2) := floor(fvar(28)) || 1
trigger29 = var(3) := floor(1000*(fvar(28)-floor(fvar(28))))
Trigger30 = floor(fvar(29)) = Enemynear,Stateno
trigger30 = var(2) := floor(fvar(29)) || 1
trigger30 = var(3) := floor(1000*(fvar(29)-floor(fvar(29))))
Trigger31 = floor(fvar(30)) = Enemynear,Stateno
trigger31 = var(2) := floor(fvar(30)) || 1
trigger31 = var(3) := floor(1000*(fvar(30)-floor(fvar(30))))
Trigger32 = floor(fvar(31)) = Enemynear,Stateno
trigger32 = var(2) := floor(fvar(31)) || 1
trigger32 = var(3) := floor(1000*(fvar(31)-floor(fvar(31))))
Trigger33 = floor(fvar(32)) = Enemynear,Stateno
trigger33 = var(2) := floor(fvar(32)) || 1
trigger33 = var(3) := floor(1000*(fvar(32)-floor(fvar(32))))
Trigger34 = floor(fvar(33)) = Enemynear,Stateno
trigger34 = var(2) := floor(fvar(33)) || 1
trigger34 = var(3) := floor(1000*(fvar(33)-floor(fvar(33))))
Trigger35 = floor(fvar(34)) = Enemynear,Stateno
trigger35 = var(2) := floor(fvar(34)) || 1
trigger35 = var(3) := floor(1000*(fvar(34)-floor(fvar(34))))
Trigger36 = floor(fvar(35)) = Enemynear,Stateno
trigger36 = var(2) := floor(fvar(35)) || 1
trigger36 = var(3) := floor(1000*(fvar(35)-floor(fvar(35))))
Trigger37 = floor(fvar(36)) = Enemynear,Stateno
trigger37 = var(2) := floor(fvar(36)) || 1
trigger37 = var(3) := floor(1000*(fvar(36)-floor(fvar(36))))
Trigger38 = floor(fvar(37)) = Enemynear,Stateno
trigger38 = var(2) := floor(fvar(37)) || 1
trigger38 = var(3) := floor(1000*(fvar(37)-floor(fvar(37))))
Trigger39 = floor(fvar(38)) = Enemynear,Stateno
trigger39 = var(2) := floor(fvar(38)) || 1
trigger39 = var(3) := floor(1000*(fvar(38)-floor(fvar(38))))
Trigger40 = floor(fvar(39)) = Enemynear,Stateno
trigger40 = var(2) := floor(fvar(39)) || 1
trigger40 = var(3) := floor(1000*(fvar(39)-floor(fvar(39))))
IgnoreHitPause = 1


[State -2,pointer]
Type = VarAdd
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
Trigger1 = var(5) > 0 && var(0) != 0
var(6) = 1
IgnoreHitPause = 1

[State -2,reset]
Type = VarSet
;TriggerAll = Root,var(59) > 0
Trigger1 = Var(5) > 0 && var(0) != 0
var(5) = 0
IgnoreHitPause = 1

[State -2,stateno3]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
TriggerAll = enemynear,movetype = A
TriggerAll = Var(2) != enemynear,stateno
Trigger1 = var(0) != 0
var(2) = enemynear,stateno
IgnoreHitPause = 1

[State -2,time]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
TriggerAll = enemynear,movetype = A
TriggerAll = Var(2) = enemynear,stateno
Trigger1 = var(0) != 0
var(3) = var(0)
IgnoreHitPause = 1

[State -2,max]
Type = Varset
Trigger1 = var(3) > 999
var(3) = 999
IgnoreHitPause = 1

[State -2,pointer]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
TriggerAll = enemynear,movetype = A && var(0) != 0
TriggerAll = Var(6) <= 39
TriggerAll = floor(fvar(0)) != var(2)
TriggerAll = floor(fvar(1)) != var(2)
TriggerAll = floor(fvar(2)) != var(2)
TriggerAll = floor(fvar(3)) != var(2)
TriggerAll = floor(fvar(4)) != var(2)
TriggerAll = floor(fvar(5)) != var(2)
TriggerAll = floor(fvar(6)) != var(2)
TriggerAll = floor(fvar(7)) != var(2)
TriggerAll = floor(fvar(8)) != var(2)
TriggerAll = floor(fvar(9)) != var(2)
TriggerAll = floor(fvar(10)) != var(2)
TriggerAll = floor(fvar(11)) != var(2)
TriggerAll = floor(fvar(12)) != var(2)
TriggerAll = floor(fvar(13)) != var(2)
TriggerAll = floor(fvar(14)) != var(2)
TriggerAll = floor(fvar(15)) != var(2)
TriggerAll = floor(fvar(16)) != var(2)
TriggerAll = floor(fvar(17)) != var(2)
TriggerAll = floor(fvar(18)) != var(2)
TriggerAll = floor(fvar(19)) != var(2)
TriggerAll = floor(fvar(20)) != var(2)
TriggerAll = floor(fvar(21)) != var(2)
TriggerAll = floor(fvar(22)) != var(2)
TriggerAll = floor(fvar(23)) != var(2)
TriggerAll = floor(fvar(24)) != var(2)
TriggerAll = floor(fvar(25)) != var(2)
TriggerAll = floor(fvar(26)) != var(2)
TriggerAll = floor(fvar(27)) != var(2)
TriggerAll = floor(fvar(28)) != var(2)
TriggerAll = floor(fvar(29)) != var(2)
TriggerAll = floor(fvar(30)) != var(2)
TriggerAll = floor(fvar(31)) != var(2)
TriggerAll = floor(fvar(32)) != var(2)
TriggerAll = floor(fvar(33)) != var(2)
TriggerAll = floor(fvar(34)) != var(2)
TriggerAll = floor(fvar(35)) != var(2)
TriggerAll = floor(fvar(36)) != var(2)
TriggerAll = floor(fvar(37)) != var(2)
TriggerAll = floor(fvar(38)) != var(2)
TriggerAll = floor(fvar(39)) != var(2)
TriggerAll = var(5) = 0
Triggerall = Enemynear,Prevstateno != Enemynear,Stateno
trigger1 = enemynear,hitdefattr = sca,na,sa,np,sp,nt,st
var(5) = 1
IgnoreHitPause = 1

[State -2,record]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
Trigger1 = var(5) = 1
FV = Var(6)
Value = Var(2)+0.001*Var(3)
IgnoreHitPause = 1


[State -2, 判定用Varのリセット]
Type = VarSet
TriggerAll = Enemy,TeamMode = Single || Enemy,TeamMode = Turns
triggerall = var(22)
triggerall = Root,StateNo != [120,155]
triggerall = Root,MoveType != H
trigger1 = Root,Ctrl || Root,StateNo < 200
trigger2 = Root,MoveType = A
V = 22
Value = 0
IgnoreHitPause = 1

[State -2, 下段(立ちガード不可攻撃)判定]
Type = VarSet
TriggerAll = RoundState = 2 && Var(22) = 0
TriggerAll = root,StateNo != [120,155]
TriggerAll = root,prevStateNo != [5000,5099]
TriggerAll = enemynear,movetype = A
TriggerAll = EnemyNear,StateType = S
TriggerAll = root,movetype = H
triggerall = !enemynear,hitdefattr = sca,at
Trigger1 = root,PrevStateNo = 130
Trigger2 = root,PrevStateNo = [150,151]
V = 22
Value = 1
IgnoreHitPause = 1

[State -2, 中段(屈みガード不可攻撃)判定]
Type = VarSet
TriggerAll = RoundState = 2 && Var(22) = 0
TriggerAll = root,StateNo != [120,155]
TriggerAll = root,prevStateNo != [5000,5099]
TriggerAll = enemynear,movetype = A
TriggerAll = EnemyNear,StateType = S
TriggerAll = root,movetype = H
triggerall = !enemynear,hitdefattr = sca,at
Trigger1 = root,PrevStateNo = 131
Trigger2 = root,PrevStateNo = [152,153]
V = 22
Value = 2
IgnoreHitPause = 1

[State 60000,Reset]
type = VarSet
triggerall = var(11) != 0
trigger1 = enemynear,stateno != var(30)
trigger1 = enemynear,stateno != var(31)
trigger1 = enemynear,stateno != var(32)
trigger1 = enemynear,stateno != var(33)
trigger1 = enemynear,stateno != var(34)
trigger1 = enemynear,stateno != var(35)
trigger1 = enemynear,stateno != var(36)
trigger1 = enemynear,stateno != var(37)
trigger1 = enemynear,stateno != var(38)
trigger1 = enemynear,stateno != var(39)
trigger1 = enemynear,stateno != var(40)
trigger1 = enemynear,stateno != var(41)
trigger1 = enemynear,stateno != var(42)
trigger1 = enemynear,stateno != var(43)
trigger2 = enemynear,movetype != A
var(11) = 0
ignorehitpause = 1

[State 60000,下段]
type = VarSet
triggerall = var(11) != 1
trigger1 = var(30) > 0
trigger1 = enemynear,stateno = var(30)
trigger2 = var(31) > 0
trigger2 = enemynear,stateno = var(31)
trigger3 = var(32) > 0
trigger3 = enemynear,stateno = var(32)
var(11) = 1
ignorehitpause = 1

[State 60000,中段]
type = VarSet
triggerall = var(11) != 2
trigger1 = var(33) > 0
trigger1 = enemynear,stateno = var(33)
trigger2 = var(34) > 0
trigger2 = enemynear,stateno = var(34)
trigger3 = var(35) > 0
trigger3 = enemynear,stateno = var(35)
var(11) = 2
ignorehitpause = 1

[State 60000,投]
type = VarSet
triggerall = var(11) != 3
trigger1 = var(36) > 0
trigger1 = enemynear,stateno = var(36)
trigger2 = var(37) > 0
trigger2 = enemynear,stateno = var(37)
trigger3 = var(38) > 0
trigger3 = enemynear,stateno = var(38)
trigger4 = var(39) > 0
trigger4 = enemynear,stateno = var(39)
trigger5 = var(40) > 0
trigger5 = enemynear,stateno = var(40)
trigger6 = var(41) > 0
trigger6 = enemynear,stateno = var(41)
var(11) = 3
ignorehitpause = 1

[State 60000,不可防]
type = VarSet
triggerall = var(11) != 4
trigger1 = var(42) > 0
trigger1 = enemynear,stateno = var(42)
trigger2 = var(43) > 0
trigger2 = enemynear,stateno = var(43)
var(11) = 4
ignorehitpause = 1

[State 60000,下段学習]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 1
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = !var(30)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
var(30) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,下段学習2]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 1
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = var(30)
trigger1 = !var(31)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
trigger1 = enemynear,stateno != var(30)
var(31) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,下段学習3]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 1
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = var(31)
trigger1 = !var(32)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
trigger1 = enemynear,stateno != var(30)
trigger1 = enemynear,stateno != var(31)
var(32) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,中段学習]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 2
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = !var(33)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
var(33) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,中段学習2]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 2
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = var(33)
trigger1 = !var(34)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
trigger1 = enemynear,stateno != var(33)
var(34) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,中段学習3]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = var(22) = 2
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = var(34)
trigger1 = !var(35)
trigger1 = !var(42)||var(42)&&var(42)!=EnemyNear,StateNo
trigger1 = !var(43)||var(43)&&var(43)!=EnemyNear,StateNo
trigger1 = enemynear,stateno != var(33)
trigger1 = enemynear,stateno != var(34)
var(35) = EnemyNear,StateNo
ignorehitpause = 1

[State 60000,投]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sc,nt,st,ht,at
trigger1 = !var(36)
var(36) = enemynear,stateno
ignorehitpause = 1

[State 60000,投2]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sc,nt,st,ht,at
trigger1 = !var(37) && var(36)
trigger1 = enemynear,stateno != var(36)
var(37) = enemynear,stateno
ignorehitpause = 1

[State 60000,投3]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sc,nt,st,ht,at
trigger1 = !var(38) && var(37)
trigger1 = enemynear,stateno != var(36)
trigger1 = enemynear,stateno != var(37)
var(38) = enemynear,stateno

[State 60000,投4]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sca,nt,st,ht,at
trigger1 = !var(39) && var(38)
trigger1 = enemynear,stateno != var(36)
trigger1 = enemynear,stateno != var(37)
trigger1 = enemynear,stateno != var(38)
var(39) = enemynear,stateno

[State 60000,投5]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sca,nt,st,ht,at
trigger1 = !var(40) && var(39)
trigger1 = enemynear,stateno != var(36)
trigger1 = enemynear,stateno != var(37)
trigger1 = enemynear,stateno != var(38)
trigger1 = enemynear,stateno != var(39)
var(40) = enemynear,stateno

[State 60000,投6]
type = VarSet
trigger1 = enemynear,movetype = A
trigger1 = Enemy,TeamMode = Single || Enemy,TeamMode = Turns || Enemy,TeamMode = Simul && (Enemy(0),Alive && !Enemy(NumEnemy=2),Alive || !Enemy(0),Alive && Enemy(NumEnemy=2),Alive)
trigger1 = enemynear,hitdefattr = sca,nt,st,ht,at
trigger1 = !var(41) && var(40)
trigger1 = enemynear,stateno != var(36)
trigger1 = enemynear,stateno != var(37)
trigger1 = enemynear,stateno != var(38)
trigger1 = enemynear,stateno != var(39)
trigger1 = enemynear,stateno != var(40)
var(41) = enemynear,stateno

[State 60000,ガード不能学習]
type = VarSet
triggerall = !var(42)
trigger1 = var(30)>0
trigger1 = var(30) = var(33) || var(30) = var(34) || var(30) = var(35)
var(42) = var(10)
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = !var(42)
trigger1 = var(31)>0
trigger1 = var(31) = var(33) || var(31) = var(34) || var(31) = var(35)
var(42) = var(31)
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = !var(42)
trigger1 = var(32)>0
trigger1 = var(32) = var(33) || var(32) = var(34) || var(32) = var(35)
var(42) = var(32)
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(30)
trigger1 = var(42) = var(30)
var(30) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(31)
trigger1 = var(42) = var(31)
var(31) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(32)
trigger1 = var(42) = var(32)
var(32) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(33)
trigger1 = var(42) = var(33)
var(33) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(34)
trigger1 = var(42) = var(34)
var(34) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(35)
trigger1 = var(42) = var(35)
var(35) = 0
ignorehitpause = 1

[State 60000,ガード不能学習2]
type = VarSet
triggerall = !var(43)
triggerall = var(42)
trigger1 = var(30)>0
trigger1 = var(30) = var(33) || var(30) = var(34) || var(30) = var(35)
var(43) = ifelse(var(30)!=var(42),var(30),0)
ignorehitpause = 1

[State 60000,ガード不能学習2]
type = VarSet
triggerall = !var(43)
triggerall = var(42)
trigger1 = var(31)>0
trigger1 = var(31) = var(33) || var(31) = var(34) || var(31) = var(35)
var(43) = ifelse(var(30)!=var(42),var(31),0)
ignorehitpause = 1

[State 60000,ガード不能学習2]
type = VarSet
triggerall = !var(43)
triggerall = var(42)
trigger1 = var(32)>0
trigger1 = var(32) = var(33) || var(32) = var(34) || var(32) = var(35)
var(43) = ifelse(var(30)!=var(42),var(32),0)
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(30)
trigger1 = var(43) = var(30)
var(30) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(31)
trigger1 = var(43) = var(31)
var(31) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(32)
trigger1 = var(43) = var(32)
var(32) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(33)
trigger1 = var(43) = var(33)
var(33) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(34)
trigger1 = var(43) = var(34)
var(34) = 0
ignorehitpause = 1

[State 60000,ガード不能学習]
type = VarSet
triggerall = var(35)
trigger1 = var(43) = var(35)
var(35) = 0
ignorehitpause = 1

