;=============================================获取 真实版边距离用 AI helper =====================================================================================

[statedef 97532]
Anim = 97531
ctrl = 0

[State 97532]
type = NotHitby
trigger1 = 1
value = SCA 

[State 97532]
type = SelfState
trigger1 = !ishelper
value = 0  

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

[State 97532]
Type = PlayerPush
Trigger1 = IsHelper
value = 0


[State 97532]
type = Projectile
trigger1 = time = 0
projid = 97532+ishelper(97533)
projanim = 97531
projremove = 0
projremovetime = -1
projedgebound = 9999999
projstagebound = 0
projheightbound = 0,0
velocity = -5
offset = 0,0
postype = p1


[state 97532]
type = velset
trigger1 = root,numprojid(97532) && ishelper(97532)
trigger2 = root,numprojid(97533) && ishelper(97533)
x = -5

[state 97532]
type = velset
trigger1 = !root,numprojid(97532) && ishelper(97532)
trigger2 = !root,numprojid(97533) && ishelper(97533)
x = 0

;=============================================获取 真实版边距离用 AI helper End===================================================================================


;=================================================AI back helper ===============================================================================================


[Statedef 109101]
Anim    = 0
Ctrl    = 0

[state 109100]
type = AssertSpecial
trigger1 = ishelper
flag = invisible

[state 109100]
type = nothitby
trigger1 = ishelper
value = SCA

[state 109101,跟随本体移动]
type = posadd
trigger1 = 1
x = rootdist x - 70

[state 109101,朝向跟本体相同]
type = turn
trigger1 = facing != root,facing

;=================================================AI front helper ===============================================================================================


[Statedef 109102]
Anim    = 0
Ctrl    = 0

[state 109102]
type = AssertSpecial
trigger1 = ishelper
flag = invisible

[state 109102]
type = nothitby
trigger1 = ishelper
value = SCA

[state 109102,跟随本体移动]
type = posadd
trigger1 = 1
x = rootdist x + 70 + 10

[state 109102,朝向跟本体相同]
type = turn
trigger1 = facing != root,facing


;=================================================AI memory helper2 ===============================================================================================
;AI记忆用helper

[Statedef 109103]
Anim    = 0
Ctrl    = 0

[state 109103]
type = AssertSpecial
trigger1 = ishelper
flag = invisible

[state 109103]
type = nothitby
trigger1 = ishelper
value = SCA

[state 109103,跟随本体移动]
type = posadd
trigger1 = 1
x = rootdist x

[state 109103,朝向跟本体相同]
type = turn
trigger1 = facing != root,facing



;=======================AI 记忆================================================================================================================================

;=======================helper 变量使用情况===================================================================================================================
;var(1)~var(2):记录 对手 打背技能。
;var(3)~var(4):

;=======================helper 变量使用情况 end===============================================================================================================


[state 109103,记录 对手 打背技能]
type = null
triggerall = ishelper
triggerall = root,statetype != A
triggerall = EnemyNear,movetype = A
triggerall = EnemyNear,statetype = A
triggerall = EnemyNear,MoveGuarded = 1 || (EnemyNear,MoveHit = 1 && root,gethitvar(hitcount) = 1)
triggerall = root,movetype = H
triggerall = p2dist x > 0
triggerall = root,facing = EnemyNear,facing 
triggerall = root,var(58) / 10000 % 10000
triggerall = root,var(58) % 10000 != EnemyNear,stateno
triggerall = root,var(58) / 10000 % 10000 != EnemyNear,stateno
triggerall = EnemyNear,stateno = [200,9999]

trigger1 = var(1) % 10000 = 0
trigger1 = var(1) := EnemyNear,stateno

trigger2 = var(1) / 10000 % 10000 = 0
trigger2 = var(1) % 10000 != EnemyNear,stateno
trigger2 = var(1) := var(1) + EnemyNear,stateno * 10000

trigger3 = var(2) % 10000 = 0
trigger3 = var(1) % 10000 != EnemyNear,stateno
trigger3 = var(1) /10000 % 10000 != EnemyNear,stateno
trigger3 = var(2) := EnemyNear,stateno

trigger4 = var(2) / 10000 % 10000 = 0
trigger4 = var(1) % 10000 != EnemyNear,stateno
trigger4 = var(1) /10000 % 10000 != EnemyNear,stateno
trigger4 = var(2) % 10000 != EnemyNear,stateno
trigger4 = var(2) := var(2) + EnemyNear,stateno * 10000

IgnoreHitPause = 1




[State -2, 打背技 检测] 
type = displaytoClipboard
trigger1 = 1
text = " h109103v1:%d h109103v2:%d RootV0:%d RootV59:%d E.hitC:%d p2d:%f" 
params = helper(109103),var(1),helper(109103),var(2),root,var(0),Root,var(59),root,gethitvar(hitcount),p2dist x
IgnoreHitPause = 1

[State -2, 压起身] 
type = appendtoClipboard
trigger1 = 1
text = " hv42:%d " 
params = helper(7777),var(42)
IgnoreHitPause = 1




