;---------------------------------------------------------------------------
;Dust Helper
[StateDef 10040]
type = S
movetype = I
physics = N
velset = 0,0
ctrl = 0
anim = 9000

[State 10040, PosSet]
type = PosSet
trigger1 = 1
y = 0

[State 10040, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow

[State 10040, Jump Dust Base]
type = Explod
triggerall = Root, StateNo = 50 || Root, StateNo = 105 || (Root, StateNo = [200,1052]) || (Root, StateNo = [3000,3050])
triggerall = NumExplod(10040) = 0
triggerall = Root, Pos Y < 0
trigger1 = Time = 0
anim = 10040
ID = 10040
pos = 0,0
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 1]
type = Explod
triggerall = Root, StateNo = 50 
triggerall = Root, Vel X = 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = Time = 1
anim = 10041
ID = 10041
pos = 0,-20
vel = 0,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 2]
type = Explod
triggerall = Root, StateNo = 50 
triggerall = Root, Vel X = 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = Time = 1
anim = 10041
ID = 10041
pos = 0,-40
vel = 0,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 3]
type = Explod
triggerall = Root, StateNo = 50 || (Root, StateNo = [200,1052]) || (Root, StateNo = [3000,3050])
triggerall = Root, Vel X > 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = !Time
anim = 10041
ID = 10041
pos = 10,-40
vel = 1.5,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 4]
type = Explod
triggerall = Root, StateNo = 50 || (Root, StateNo = [200,1052]) || (Root, StateNo = [3000,3050])
triggerall = Root, Vel X > 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = !Time
anim = 10041
ID = 10041
pos = 5,-20
vel = 1.5,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 5]
type = Explod
triggerall = Root, StateNo = 50 || Root, StateNo = 105 || (Root, StateNo = [200,1052]) || (Root, StateNo = [3000,3050])
triggerall = Root, Vel X < 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = Time = 1
anim = 10041
ID = 10041
pos = -10,-40
vel = -1.5,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Jump Dust 6]
type = Explod
triggerall = Root, StateNo = 50 || Root, StateNo = 105 || (Root, StateNo = [200,1052]) || (Root, StateNo = [3000,3050])
triggerall = Root, Vel X < 0
triggerall = Root, Pos Y < 0
triggerall = NumExplod(10041) < 2
trigger1 = Time = 1
anim = 10041
ID = 10041
pos = -5,-20
vel = -1.5,-1.5
scale = 0.5,0.5
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1
[State 10040, Landing Dust 1]
type = Explod
triggerall = Root,StateNo = 52 || (Root, StateNo = 106)
triggerall = NumExplod(10052) = 0
triggerall = Root, Pos Y = 0
trigger1 = Time = 0
anim = 10052
ID = 10052
pos = 0,0
scale = 0.5, 0.5
postype = p1
removetime = -2
sprpriority = 1
ownpal = 1

[State 10040, Landing Dust 2]
type = Explod
triggerall = Root,StateNo = 52 || (Root, StateNo = 106)
triggerall = NumExplod(10053) = 0
triggerall = Root, Pos Y = 0
trigger1 = Time = 0
anim = 10053
ID = 10053
pos = 0,0
scale = 0.5, 0.5
postype = p1
removetime = -2
sprpriority = 0
ownpal = 1

[State 10040, Dash Dust 1]
type = Explod
triggerall = Root,StateNo = 100 || Root,StateNo = 451
triggerall = NumExplod(10100) = 0
trigger1 = Time = 0
anim = 10100
ID = 10100
pos = -20,0
scale = 0.7,0.7
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, Dash Dust 2]
type = Explod
triggerall = Root,StateNo = 101
triggerall = NumExplod(10101) = 0
trigger1 = Time = 0
anim = 10100
ID = 10100
pos = 0,0
scale = 0.7,0.7
postype = p1
removetime = -2
sprpriority = 3
ownpal = 1

[State 10040, DestroySelf]
type = DestroySelf
trigger1 = Time = 1
;---------------------------------------------------------------------------
;Baltic Launcher Ball
[StateDef 11010]
type = S
movetype= A
physics = N
velset = 0,0
ctrl = 0
anim = 11010
poweradd = 0
sprpriority = 2
hitcountpersist = 1

[State 11010, ParentVarSet]
type = ParentVarSet
triggerall = numenemy
trigger1 = enemy, movetype = a
var(21) = 1
ignorehitpause = 1

[State 11010, Projectile Active]
type = ParentVarSet
trigger1 = !Time
var(25) = 1

[State 11010, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT       ;SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
stateno = 11011
time = -1
ignorehitpause = 1

[State 11010, HitBy]
type = HitBy
trigger1 = 1
value = SCA,NP,SP
time = -1
ignorehitpause = 1

[State 11010, Projectile]
type = Projectile
trigger1 = !0
ProjID = 11010
projanim = 11010
projhitanim = -1
projremanim = -1
projscale = 0,0
projpriority = 0
projremovetime = 1;abs(floor(frontedgedist/root,var(15)))
postype = p1         ;p2,front,back,left,right
velocity = 7,0
offset = 0,0

[State 11010, Trans]
type = Trans
trigger1 =  1
trans = add
ignorehitpause = 1

[State 11010, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11010, VelSet]
type = VelSet
trigger1 = IsHelper(11012)
x = 1

[State 11010, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1010,1
volumescale = 200
channel = 1
freqmul = 1.0
loop = 0
pan = 0

[State 11010, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0
ignorehitpause = 1

[State 11010, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AP
slot = 0
stateno = 11011
time = 1
forceair = 0
ignorehitpause = 1

[State 11010, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA,AA,AT
ignorehitpause = 1

[State 11010, ChangeAnim]
type = ChangeAnim
trigger1 = !Time
trigger1 = IsHelper(11012)
value = 11012

;;=======================================================
;Light Baltic Ball
;;=======================================================
[State 11010, 1]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11010)
trigger1 = AnimElem = 2
attr = A, SP
damage = floor(45*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,16
guard.pausetime = 2,10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 2]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11010)
trigger1 = AnimElem = 4
attr = A, SP
damage = 15,2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 16
guard.pausetime = 2,10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180

[State 11010, 3]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11010)
trigger1 = AnimElem = 6
trigger2 = AnimElem = 8
trigger3 = AnimElem = 10
trigger4 = AnimElem = 12
trigger5 = AnimElem = 14
attr = A, SP
damage = floor(10*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 16
guard.pausetime = 2,10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 4]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11010)
trigger1 = AnimElem = 16
attr = A, SP
damage = floor(10*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,2
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4,-8
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5
;;=======================================================
;Medium Baltic Ball
;;=======================================================
[State 11010, 5]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11011)
trigger1 = AnimElem = 2
attr = A, SP
damage = floor(45*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,18
guard.pausetime = 2,12
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 6]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11011)
trigger1 = AnimElem = 4
attr = A, SP
damage = floor(20*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 18
guard.pausetime = 2,12
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 7]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11011)
trigger1 = AnimElem = 6
trigger2 = AnimElem = 8
trigger3 = AnimElem = 10
trigger4 = AnimElem = 12
trigger5 = AnimElem = 14
trigger6 = AnimElem = 16
attr = A, SP
damage = floor(10*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 18
guard.pausetime = 2,12
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 8]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11011)
trigger1 = AnimElem = 18
attr = A, SP
damage = floor(10*Root,fvar(20)),5
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,2
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4,-8
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5
;;=======================================================
;Heavy Baltic Ball
;;=======================================================
[State 11010, 9]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11012)
trigger1 = AnimElem = 2
attr = A, SP
damage = floor(50*Root,fvar(20)),5
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 20
guard.pausetime = 2,14
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5, 0
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 10]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11012)
trigger1 = AnimElem = 4
attr = A, SP
damage = 15,1
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,2
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 11]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11012)
trigger1 = AnimElem = 6
trigger2 = AnimElem = 8
trigger3 = AnimElem = 10
trigger4 = AnimElem = 12
trigger5 = AnimElem = 14
trigger6 = AnimElem = 16
trigger7 = AnimElem = 18
trigger8 = AnimElem = 20
trigger9 = AnimElem = 22
attr = A, SP
damage = floor(10*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,2
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = 5, 0
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 0
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, 12]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11012)
trigger1 = AnimElem = 24
attr = A, SP
damage = floor(10*Root,fvar(20)),2
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2,2
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,12
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4,-8
air.hittime = 12
ground.cornerpush.veloff = 0
forcestand = 1
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11010, StateTypeSet]
type = StateTypeSet
trigger1 = IsHelper(11010)
trigger1 = UniqHitCount>=8
trigger2 = IsHelper(11011)
trigger2 = UniqHitCount>=9
trigger3 = IsHelper(11012)
trigger3 = UniqHitCount>=13
trigger4 = Anim = 11010
trigger4 = AnimElem = 21
trigger5 = Anim = 11012
trigger5 = AnimElem = 31
movetype = I
ignorehitpause = 1

[State 11010, ParentVarSet]
type = ParentVarSet
triggerall = MoveHit
triggerall = NumTarget
trigger1 = MoveType = I
trigger1 = Target,HitFall = 1
var(15) = 3
ignorehitpause = 1
persistent = 0

;Set Scale Var
[State 11010, VarSet]
type = VarSet
trigger1 = !Time
fv = 0
value = 1

;Decrease Scale Var
[State 11010, VarAdd]
type = VarAdd
trigger1 = IsHelper(11010)
trigger1 = AnimElem =17,>=0
trigger2 = IsHelper(11011)
trigger2 = AnimElem =19,>=0
trigger3 = IsHelper(11012)
trigger3 = AnimElem =25,>=0
fv = 0
value = -0.1

;Fade out
[State 11010, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(11010)
trigger1 = AnimElem =17,>=0
trigger2 = IsHelper(11011)
trigger2 = AnimElem =19,>=0
trigger3 = IsHelper(11012)
trigger3 = AnimElem =25,>=0
scale = fvar(0),fvar(0)

[State 11010, Projectile Active]
type = ParentVarSet
trigger1 = AnimTime = 0
trigger2 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
trigger3 = Time < 10
trigger3 = Parent,MoveType = H
var(25) = 0

[State 11010, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
trigger3 = Time < 10
trigger3 = Parent,MoveType = H
;---------------------------------------------------------------------------
;Projectile Null State
[StateDef 11011]
type = A
movetype= A
physics = N
juggle = 0
ctrl = 0
anim = 9000
poweradd = 0
sprpriority = 2

[State 11011, Projectile Active]
type = ParentVarSet
trigger1 = !Time
var(25) = 1

[State 11011, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = invisible

[State 11011, DestroySelf]
type = DestroySelf
trigger1 = Time = 10

;---------------------------------------------------------------------------
;X-Calibur
[StateDef 11030]
type = S
movetype= A
physics = N
juggle = 0
velset = 0,0
ctrl = 0
anim = 11030
poweradd = 0
sprpriority = 3

[State 11030, ParentVarSet];Checks if opponent is in attack state
type = ParentVarSet
triggerall = numenemy
trigger1 = enemy, movetype = a
var(21) = 1
ignorehitpause = 1

[State 11030, Projectile Active]
type = ParentVarSet
triggerall = !IsHelper(11033) && !IsHelper(13043)
trigger1 = !Time
var(25) = 1

[State 11030, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT       ;SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
stateno = 11011
time = -1
ignorehitpause = 1

[State 11030, HitBy]
type = HitBy
trigger1 = 1
value = SCA,NP,SP
time = -1
ignorehitpause = 1

[State 11030, Projectile]
type = Projectile
trigger1 = !0
ProjID = 11030
projanim = 11030
projhitanim = -1
projremanim = -1
projscale = 0,0
projpriority = 0
projremovetime = 1;abs(floor(frontedgedist/root,var(15)))
postype = p1         ;p2,front,back,left,right
velocity = Vel X,0
offset = 0,0

[State 11030, VarSet]
type = ParentVarSet
trigger1 = MoveHit
var(15) = 3
ignorehitpause = 1

[State 11030, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AP
slot = 0
stateno = 11011
time = 1
forceair = 0
ignorehitpause = 1

[State 11030, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA,AA,AT
ignorehitpause = 1

[State 11030, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11030, BindToParent]
type = BindToParent
triggerall = IsHelper(11033)||IsHelper(13043)
trigger1 = Parent,StateNo!=3043
time = 1
facing = 1
pos = 10,-110
ignorehitpause = 1

[State 11030, BindToParent]
type = BindToParent
triggerall = IsHelper(11033)||IsHelper(13043)
trigger1 = Parent,StateNo=3043
time = 1
facing = 1
pos = 10,30
ignorehitpause = 1

[State 11030, VelSet]
type = VelSet
trigger1 = IsHelper(11031)
x = 3
y = 3

[State 11030, VelSet]
type = VelSet
trigger1 = IsHelper(11032)
x = 5
y = 5

[State 11030, Slasher Sound]
type = PlaySnd
trigger1 = Time = 0
value = S1000,1
channel = 1
volumescale = 100

[State 11030, 1]
type = HitDef
triggerall = IsHelper(11030)
triggerall = Root,Var(15) < 2
trigger1 = AnimElem = 4
attr = A, SP
damage = floor(80*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 50
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4.5,-7.5
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11030, 2]
type = HitDef
triggerall = IsHelper(11031)
triggerall = Root,Var(15) < 2
trigger1 = AnimElem = 4
attr = A, SP
damage = floor(100*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 50
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4.5,-7.5
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11030, 3]
type = HitDef
triggerall = IsHelper(11032)
triggerall = Root,Var(15) < 2
trigger1 = AnimElem = 4
attr = A, SP
damage = floor(110*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 50
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -4,-8
air.animtype = Back
air.velocity = -4.5,-7.5
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5

[State 11030, ParentVarSet]
type = ParentVarSet
trigger1 = MoveHit
var(15) = 3
ignorehitpause = 1

[State 11030, ParentVarSet]
type = ParentVarSet
trigger1 = MoveContact
var(16) = IfElse(MoveHit, 1, 2)
ignorehitpause = 1

[State 11030, ParentVarSet]
type = ParentVarSet
trigger1 = MoveHit
var(17) = 2
ignorehitpause = 1

[State 11030, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(11033)
trigger1 = !Time
value = 11033

[State 11030, ParentVarSet]
type = ParentVarSet
trigger1 = IsHelper(11030)||IsHelper(11031)||IsHelper(11032)
trigger1 = AnimTime = 0
trigger2 = Time < 10
trigger2 = Root, MoveType = H
trigger2 = MoveReversed
trigger3 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
var(25) = 0
ignorehitpause = 1

[State 11030, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(11030)||IsHelper(11031)||IsHelper(11032)
trigger1 = AnimTime = 0
trigger2 = IsHelper(11033)
trigger2 = Parent,StateNo=3043
trigger2 = Anim = 11033
trigger2 = AnimTime = 0
trigger3 = IsHelper(11033)
trigger3 = Parent,StateNo!=1033
trigger4 = IsHelper(13043)
trigger4 = Parent,StateNo!=3045
trigger5 = Time < 10
trigger5 = Root, MoveType = H
trigger6 = MoveReversed
trigger7 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
;---------------------------------------------------------------------------
; I-Slasher
[StateDef 11040]
type = A
movetype= A
physics = N
ctrl = 0
anim = 11040
poweradd = 0
sprpriority = 2

[State 11040, ParentVarSet]
type = ParentVarSet
triggerall = numenemy
trigger1 = enemy, movetype = a
var(21) = 1
ignorehitpause = 1

[State 11040, StateTypeSet]
type = StateTypeSet
triggerall = PrevStateNo = 11040
trigger1 = Vel X > 0
movetype = I

[State 11040, Projectile Active]
type = ParentVarSet
trigger1 = !Time
var(25) = 1

[State 11040, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT       ;SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
stateno = 11011
time = -1
ignorehitpause = 1

[State 11040, HitBy]
type = HitBy
trigger1 = 1
value = SCA,NP,SP
time = -1
ignorehitpause = 1

[State 11040, Projectile]
type = Projectile
trigger1 = !0
ProjID = 11040
projanim = 11040
projhitanim = -1
projremanim = -1
projscale = 0,0
projpriority = 0
projremovetime = 1;abs(floor(frontedgedist/root,var(15)))
postype = p1         ;p2,front,back,left,right
velocity = Vel X,0

[State 11040, VarAdd]
type = VarAdd
trigger1 = !Time
var(0) = 1

[State 11040, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0
ignorehitpause = 1
persistent = 1

[State 11040, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,SP,HP
slot = 0
stateno = 11011
time = -1
forceair = 0
ignorehitpause = 1

[State 11040, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA,AA,AT
ignorehitpause = 1

[State 11040, HitBy]
type = HitBy
trigger1 = 1
value = SCA,AP
ignorehitpause = 1

[State 11040, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11040, VelSet]
type = VelSet
triggerall = IsHelper(11040)
triggerall = PrevStateNo!=11040
trigger1 = Time = 0
x = 7
y = .5

[State 11040, VelSet]
type = VelSet
triggerall = IsHelper(11041)
triggerall = PrevStateNo!=11040
trigger1 = Time = 0
x = 8
y = .75
persistent = 0

[State 11040, VelSet]
type = VelSet
triggerall = IsHelper(11042)
triggerall = PrevStateNo!=11040
trigger1 = Time = 0
x = 9
y = 1.2
persistent = 0

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11040)
trigger1 = 1
x = -.2

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11040)
trigger1 = 1
trigger1 = Vel Y > -0.15
y = -.025

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11041)
trigger1 = 1
x = -.2

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11041)
trigger1 = 1
trigger1 = Vel Y > -0.2
y = -.05

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11042)
trigger1 = 1
x = -.2

[State 11040, VelAdd]
type = VelAdd
triggerall = IsHelper(11042)
trigger1 = 1
trigger1 = Vel Y > -0.3
y = -.075

[State 11040, 1]
type = HitDef
triggerall = Var(0)<3
triggerall = IsHelper(11040)
triggerall = Root,Var(15) < 2
trigger1 = PrevStateNo != 11040 && AnimElemTime(1)>=0
trigger2 = PrevStateNo = 11040 && Time >= 30
attr = A, SP
damage = floor(80*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -4
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5
persistent = 0

[State 11040, 2]
type = HitDef
triggerall = Var(0)<3
triggerall = IsHelper(11041)
triggerall = Root,Var(15) < 2
trigger1 = AnimElemTime(1)>=0
attr = A, SP
damage = floor(95*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -4
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5
persistent = 0

[State 11040, 3]
type = HitDef
triggerall = Var(0)<3
triggerall = IsHelper(11042)
trigger1 = AnimElemTime(1)>=0
attr = A, SP
damage = 110,15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 2, 10
sparkno = S10015
guard.sparkno = S10130
sparkxy = -10,0
hitsound = S5,14
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -4
air.animtype = Back
air.velocity = -4.5,-6.5
air.hittime = 12
fall = 1
fall.recover = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
yaccel = 0.5
persistent = 0

[State 11040, ParentVarSet]
type = ParentVarSet
triggerall = MoveHit
triggerall = NumTarget
trigger1 = MoveType = I
trigger1 = Target,HitFall = 1
var(15) = 3
ignorehitpause = 1
persistent = 0

[State 11040, ChangeState]
type = ChangeState
triggerall = !IsHelper(11043)
trigger1 = MoveContact 
value = 11040
ctrl = 0

[State 11040, StateTypeSet]
type = StateTypeSet
triggerall = PrevStateNo = 11040
trigger1 = Vel X < 0
movetype = A

[State 11040, Projectile Active]
type = ParentVarSet
trigger1 = Vel X != 0
trigger1 = RootDist X >=-35
trigger2 = Vel X != 0
trigger2 = Time < 10
trigger2 = Parent,MoveType = H
trigger3 = MoveReversed
trigger4 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
var(25) = 0

[State 11040, end]
type = DestroySelf
trigger1 = Vel X != 0
trigger1 = RootDist X >=-35
trigger2 = Vel X != 0
trigger2 = Time < 10
trigger2 = Parent,MoveType = H
trigger3 = MoveReversed
trigger4 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
;---------------------------------------------------------------------------
;Bomb Pre-Bounce
[StateDef 11050]
type = A
movetype= A
physics = N
juggle = 0
ctrl = 0
anim = 11050
poweradd = 0
sprpriority = 2

[State 11050, ParentVarSet]
type = ParentVarSet
triggerall = numenemy
trigger1 = enemy, movetype = a
var(21) = 1
ignorehitpause = 1

[State 11050, Projectile Active]
type = ParentVarSet
trigger1 = !Time
var(25) = 1

[State 11050, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT       ;SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
stateno = 11051
time = -1
ignorehitpause = 1

[State 11050, HitBy]
type = HitBy
trigger1 = 1
value = SCA,NP,SP
time = -1
ignorehitpause = 1

[State 11050, Projectile]
type = Projectile
trigger1 = !0
ProjID = 11050
projanim = 11050
projhitanim = -1
projremanim = -1
projscale = 0,0
projpriority = 0
projremovetime = 1;abs(floor(frontedgedist/root,var(15)))
postype = p1         ;p2,front,back,left,right
velocity = Vel X,0
offset = 0,0

[State 11050, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11050, VelSet]
type = VelSet
trigger1 = !Time
trigger1 = IsHelper(11050)
x = 3
y = 1

[State 11050, VelSet]
type = VelSet
trigger1 = !Time
trigger1 = IsHelper(11051)
x = 4
y = -1

[State 11050, VelSet]
type = VelSet
trigger1 = !Time
trigger1 = IsHelper(11052)
x = 6
y = -3

[State 11050, VelAdd]
type = VelAdd
trigger1 = 1
y = .3

[State 11050, Juggle Set]
type = ParentVarSet
trigger1 = MoveHit
var(15) = 1
ignorehitpause = 1

[State 11050, 1]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11050)
trigger1 = AnimElem = 1
attr = A, SP
damage = floor(50*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.4

[State 11050, 2]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11051)
trigger1 = AnimElem = 1
attr = A, SP
damage = floor(60*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.4

[State 11050, 3]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11052)
trigger1 = AnimElem = 1
attr = A, SP
damage = floor(80*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.5

[State 11050, ChangeState]
type = ChangeState
trigger1 = MoveContact
trigger2 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
value = 11051
ctrl = 0

[State 11050, ChangeState]
type = ChangeState
triggerall = !MoveContact
trigger1 = Vel Y>0
trigger1 = Pos Y >=-Vel Y
value = 11052
ctrl = 0
;---------------------------------------------------------------------------
; Bomb Explosion
[StateDef 11051]
type = A
movetype= I
physics = N
juggle = 0
velset = 0,0
ctrl = 0
anim = 13013
poweradd = 0
sprpriority = 2
movehitpersist = 1

[State 11051, RemoveExplod]
type = RemoveExplod
trigger1 = 1 
id = 11053

[State 11051, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11051, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = invisible

[State 11051, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S3010,3
volumescale = 100
channel = 2

[State 11051, Explod]
type = Explod
triggerall = !IsHelper(11053)
trigger1 = !Time
anim = 13013
ID = 11051
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = 1
vel = 0,0
accel = 0,0
random = 0,0
removetime = -2
pausemovetime = 0
scale = .25,.25
sprpriority = 0
ontop = 1
shadow = 0,0,0
ownpal = 1
removeongethit = 1
trans = add

[State 11051, StateTypeSet]
type = StateTypeSet
trigger1 = IsHelper(11053)
movetype = A
ignorehitpause = 1

[State 11051, Explod]
type = Explod
triggerall = IsHelper(11053)
trigger1 = !Time
anim = 13013
ID = 11054
pos = 0,-70
postype = p2  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = 1
vel = 0,0
accel = 0,0
random = 0,0
removetime = -2
pausemovetime = 0
scale = .25,.25
sprpriority = 0
ontop = 1
shadow = 0,0,0
ownpal = 1
removeongethit = 1
trans = add

[State 11051, EnvShake]
type = EnvShake
triggerall = IsHelper(11053)
trigger1 = !Time
time = 10
freq = 90
ampl = -4
phase = 180

[State 11051, ParentVarSet]
type = ParentVarSet
trigger1 = AnimTime = 0
var(25) = 0

[State 11051, ChangeState]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = RoundState >= 3
trigger3 = Root,StateNo=3001||Root,StateNo=3006||Root,StateNo=3012||Root,StateNo=3017
trigger4 = Root,StateNo = 3020 && MoveHit || Root, StateNo = 3025 && MoveHit || Root, StateNo = 3031 || Root, StateNo = 3041
trigger5 = Root, Anim = [800,899]
;---------------------------------------------------------------------------
;Bomb Post-Bounce
[StateDef 11052]
type = A
movetype= A
physics = N
juggle = 0
ctrl = 0
anim = 11050
poweradd = 0
sprpriority = 2

[State 11052, PlaySnd]
type = PlaySnd
trigger1 = !Time
value = S11050,0
channel = 1

[State 11052, ParentVarSet]
type = ParentVarSet
triggerall = numenemy
trigger1 = enemy, movetype = a
var(21) = 1
ignorehitpause = 1

[State 11052, Projectile Active]
type = ParentVarSet
trigger1 = !Time
var(25) = 1

[State 11052, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT       ;SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
stateno = 11051
time = -1
ignorehitpause = 1

[State 11052, HitBy]
type = HitBy
trigger1 = 1
value = SCA,NP,SP
time = -1
ignorehitpause = 1

[State 11052, Projectile]
type = Projectile
trigger1 = !0
ProjID = 11052
projanim = 11050
projhitanim = -1
projremanim = -1
projscale = 0,0
projpriority = 0
projremovetime = 1;abs(floor(frontedgedist/root,var(15)))
postype = p1         ;p2,front,back,left,right
velocity = Vel X,0
offset = 0,0

[State 11052, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11052, VelAdd]
type = VelAdd
trigger1 = 1
y = .3

[State 11052, VelSet]
type = VelSet
trigger1 = IsHelper(11050)
trigger1 = !Time
x = 3
y = -6

[State 11052, VelSet]
type = VelSet
trigger1 = IsHelper(11051)
trigger1 = !Time
x = 4
y = -5.5

[State 11052, VelSet]
type = VelSet
trigger1 = IsHelper(11052)
trigger1 = !Time
x = 6
y = -4.5

[State 11052, Explod Guardspark]
type = Explod
triggerall = !NumExplod(10040)
trigger1 = 1
trigger1 = MoveGuarded
anim = 10130
ID = 10130
pos = 0,0
postype = p1
removetime = -2
pausemovetime = 0
scale = .5,.5
ontop = 1
ownpal = 1
removeongethit = 0
ignorehitpause = 1

[State 11052, Juggle Set]
type = ParentVarSet
trigger1 = MoveHit
var(15) = 1
ignorehitpause = 1

[State 11052, 1]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11050)
trigger1 = AnimElem = 1
attr = A, SP
damage = floor(80*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.4

[State 11052, 2]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11051)
trigger1 = AnimElem = 1
attr = A, SP
damage = floor(95*Root,fvar(20)),15
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.4

[State 11052, 3]
type = HitDef
triggerall = Root,Var(15) < 2
triggerall = IsHelper(11052)
trigger1 = AnimElem = 1
attr = A, SP
damage = 115,20
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,0
guard.pausetime = 0,10
sparkno = -1
guard.sparkno = S10130
sparkxy = -10, 0
guardsound = S6, 0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -5,-7
air.animtype = Back
air.velocity = -2,-10.8
air.hittime = 12
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
palfx.time = 70
palfx.add = 240,50,0
palfx.mul = 250,224,120
palfx.sinadd = 110,55,85,10
fall = 1
fall.recover = 0
yaccel = 0.4

[State 11052, ChangeAnim]
type = ChangeState
trigger1 = Vel Y>0
trigger1 = Pos Y >=-Vel Y
trigger2 = MoveContact
trigger3 = root,ProjCancelTime(0) != -1 && root,ProjCancelTime(0) < 15
value = 11051
ctrl = 0
ignorehitpause = 1
;---------------------------------------------------------------------------
; Heart Attack
[StateDef 11053]
type = A
movetype= A
physics = N
juggle = 0
velset = 0,0
ctrl = 0
anim = 11053
poweradd = 0
sprpriority = 2

[State 11053, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 11053, 1]
type = HitDef
trigger1 = AnimElem = 1
attr = A, SA
damage = 0
animtype = Heavy
guardflag = MA
hitflag = M
priority = 5, Hit
pausetime = 0,10
sparkno = S10005
guard.sparkno = S10130
sparkxy = -10, 0
hitsound = S5, 2
guardsound = S6,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = 0
airguard.velocity = -1.9,-.8
air.animtype = Back
air.velocity = 0,0
air.hittime = 12
ground.cornerpush.veloff = 0
getpower = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = -4
envshake.phase = 180
kill = 0
yaccel = 0.5
id = 11053
guard.dist = 0

[State 11053, VarSet]
type = VarSet
trigger1 = MoveHit
var(0) = Target,ID
ignorehitpause = 1
persistent = 0

[State 11053, PosSet]
type = PosSet
trigger1 = MoveHit
trigger1 = 1
x = EnemyNear,Pos X
y = EnemyNear,const(size.mid.pos.y)
ignorehitpause = 1

[State 11053, ChangeState]
type = ChangeState
triggerall = EnemyNear,StateType!=L
trigger1 = Time >= 180&&Parent,StateNo!=1054
trigger2 = Parent,StateNo = 1054&&Parent,AnimElem = 6
value = 11051
ctrl = 0

[State 11053, DestroySelf]
type = DestroySelf
trigger1 = AnimElem = 2
trigger1 = !MoveHit
trigger2 = Root,StateNo=[800,899]
trigger3 = Root,StateNo=3001||Root,StateNo=3006||Root,StateNo=3012||Root,StateNo=3017
trigger4 = Root,StateNo = 3020 && MoveHit || Root, StateNo = 3025 && MoveHit || Root, StateNo = 3031 || Root, StateNo = 3041
trigger5 = RoundState >= 3
trigger6 = Root,MoveType = H
;---------------------------------------------------------------------------
;Gravity Storm Pillar
[StateDef 13025]
type = A
movetype= A
physics = N
juggle = 0
ctrl = 0
anim = 13025
poweradd = 0
sprpriority = -1

[State 13025, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 13025, PosSet]
type = PosSet
trigger1 = 1
y = 0

[State 13025, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
;---------------------------------------------------------------------------
; Super FX
[StateDef 30000]
type = S
movetype = I
physics = S
velset = 0,0
ctrl = 0
anim = IfElse(IsHelper(30000),30000,IfElse(IsHelper(30001),30001,30002))
poweradd = 0
sprpriority = 5

[State 30000, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = noshadow

[State 30000, PlaySnd]
type = PlaySnd
trigger1 = !Time
value = S2999,0
volumescale = 100

[State 30000, VarAdd]
type = VarAdd
trigger1 = 1
trigger1 = Var(0) < 200
var(0) = 50

[State 30000, VarAdd]
type = VarAdd
trigger1 = 1
trigger1 = Var(0) >= 200
trigger1 = Var(0) < 250
var(0) = 25

[State 30000, VarAdd]
type = VarAdd
trigger1 = 1
trigger1 = Var(0) >= 250
trigger1 = Var(0) < 255
var(0) = 1

[State 30000, BGPalFX]
type = BGPalFX
trigger1 = 1
time = 1
add = 0,0,0
mul = 256,256,256
sinadd = 0,0,0,10
color = 256-var(0)
invertall = IfElse(IsHelper(30000), 0, 1)

[State 30000, end]
type = DestroySelf
trigger1 = Root,Anim = 3000 && Root, AnimElem = 3
trigger2 = Root,Anim = 3010 && Root, AnimElem = 7
trigger3 = Root,Anim = 3015 && Root, AnimElem = 8
trigger4 = (Root,Anim = [3020,3025]) && Root, AnimElem = 3
trigger5 = Root, Anim = 3030 && Root, AnimElem = 9
trigger6 = Root, Anim = 3040 && Root, AnimElem = 9
trigger7 = Root, Anim = 3045 && Root, AnimElem = 4