; Constants and state file.
; There are comments scattered through this file, so you may like to
; take a look if would like to learn more about the cns.

[Data]
life = 1000			;Amount of life to start with
power = 3000		;Amount of maximum power
attack = 100		;attack power (more is stronger)
defence = 100		;defensive power (more is stronger)
fall.defence_up = 50	;Percentage to increase defense everytime player is knocked down
liedown.time = 60		;Time which player lies down for, before getting up
airjuggle = 15		;Number of points for juggling
sparkno = 2			;Default hit spark number for HitDefs
guard.sparkno = 40	;Default guard spark number
KO.echo = 0			;1 to enable echo on KO
volume = 0			;Volume offset (negative for softer)
IntPersistIndex = 45,47	;Variables with this index and above will not have their values
FloatPersistIndex = 40  ;reset to 0 between rounds or matches. There are 60 int variables,
  				;indexed from 0 to 59, and 40 float variables, indexed from 0 to 39.
  				;If omitted, then it defaults to 60 and 40 for integer and float
  				;variables repectively, meaning that none are persistent, i.e. all
  				;are reset. If you want your variables to persist between matches,
  				;you need to override state 5900 from common1.cns.


[Size]
xscale = 0.335			;Horizontal scaling factor.
yscale = 0.335			;Vertical scaling factor.
ground.back = 17		;Player width (back, ground)
ground.front = 17		;Player width (front, ground)
air.back = 17		;Player width (back, air)
air.front = 17		;Player width (front, air)
height = 60			;Height of player (for opponent to jump over)
attack.dist = 160		;Default attack distance
proj.attack.dist = 90	;Default attack distance for projectiles
proj.doscale = 0		;Set to 1 to scale projectiles too   
head.pos = -5, -90	;Approximate position of head
mid.pos = -5, -60		;Approximate position of midsection
shadowoffset = 0		;Number of pixels to vertically offset the shadow
draw.offset = 0,0		;Player drawing offset in pixels (x, y)

[Velocity]
walk.fwd  = 2.6
walk.back = -2.4
run.fwd  = 9, 0
run.back = -4.5,-5.5
jump.neu = 0,-10.8
jump.back = -3
jump.fwd = 3
runjump.back = -2.55,-8.1
runjump.fwd = 5,-9.5

[Movement]
airjump.num = 0		;Number of air jumps allowed (opt)
airjump.height = 35	;Minimum distance from ground before you can air jump (opt)
yaccel = .5		;Vertical acceleration
stand.friction = .85	;Friction coefficient when standing
crouch.friction = .82	;Friction coefficient when crouching

[Quotes]
Victory1 = "What should I make today? I feel like showing off my cooking!"
Victory2 = "I was having a dream... A dream of the other world..."
Victory3 = "Let's head back to town and grab a bite."
Victory4 = "I really don't like to fight. But this isn't the time to worry about that."
Victory5 = "(Will I ever get back to my world...? Oh... Kirito...)"
Victory6 = "I'll draw my sword for anyone with hopes and dreams that need to be defended!"
Victory7 = "Dreams too can lead to despair. That... that's so sad..."
Victory8 = "Somehow I managed to win, but with all these new enemies, overconfidence could be deadly."
Victory9 = "I will protect our dreams! I will be the Sword of Hope that holds us all together!"

;---------------------------------------------------------------------------
; Format:
; [Statedef STATENO]
; type = ?      S/C/A/L  stand/crouch/air/liedown
; movetype = ?  I/A/H    idle/attack/gethit
; physics = ?   S/C/A/N  stand/crouch/air/none
; juggle = ?             air juggle points move requires
;
; [State STATENO, ?]     ? - any number you choose
; type = ?
; ...

;---------------------------------------------------------------------------
; Lose by Time Over
; CNS difficulty: basic
[Statedef 170]
type = S
ctrl = 0
anim = 170
velset = 0,0

[State 800, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S170,0+Random%2
channel = 0

[State 170, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

;---------------------------------------------------------------------------
; Win state decider
; CNS difficulty: basic
[Statedef 180]
type = S

[State 180, 1]
type = ChangeState
trigger1 = Time = 0
value = 181+Random%2

;---------------------------------------------------------------------------
; Win pose 1
; CNS difficulty: basic
[Statedef 181]
type = S
ctrl = 0
anim = 180
velset = 0,0

[State 181, AssertSpecial]
type = AssertSpecial
trigger1 = Time <= 180
flag = roundnotover

[State 181, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 6004
ID = 181
Name = "Speech"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 181, PlaySnd]
type = PlaySnd
trigger1 = Time = 24
value = S100,13

[State 181, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S180,0+Random%3
channel = 0

[State 181, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[Statedef 182]
type = S
ctrl = 0
anim = 181
velset = 0,0

[State 182, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 182, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = roundnotover

[State 182, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 6004
ID = 181
Name = "Speech"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 182, PlaySnd]
type = PlaySnd
trigger1 = Time = 24
value = S100,13

[State 182, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S181,0
channel = 0

[State 182, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 7
value = S181,1+Random%2
channel = 0

[State 182, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = normal
stateno = 184
ID = 184
name = "Yui"
postype = Back
pos = -150,0
ownpal = 1
size.xscale = 0.335
size.yscale = 0.335

[State 182, ChangeState]
type = ChangeState
trigger1 = NumHelper(184)
trigger1 = Helper(184),RootDist X <= 4
value = 183

[Statedef 183]
type = S
ctrl = 0
anim = 182
velset = 0,0

[State 182, AssertSpecial]
type = AssertSpecial
trigger1 = Time <= 180
flag = roundnotover

[State 183, PosAdd]
type = PosAdd
trigger1 = AnimElem = 2
x = 15

[State 183, PosAdd]
type = PosAdd
trigger1 = AnimElem = 3
x = 15

[State 183, PosAdd]
type = PosAdd
trigger1 = AnimElem = 4
x = 6

[State 183, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 182, PlaySnd]
type = PlaySnd
trigger1 = Time = 45
value = S181,3+Random%2
channel = 0

[StateDef 184]
type = S
movetype = I
physics = N
velset = 0,0
anim = 183
ctrl = 0

[State 184, VelSet]
type = VelSet
trigger1 = 1
x = 4

[State 184, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 184, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 182

;---------------------------------------------------------------------------
; Introduction
; CNS difficulty: basic
[Statedef 190]
type = S
ctrl = 0
anim = 190
velset = 0,0

[State 190, PlaySnd]
type = PlaySnd
trigger1 = Anim = 190
trigger1 = Time = 1
value = S190,0+Random%3
Channel = 0

[State 190, 2] ;Assert this until you want "round 1, fight" to begin
type = AssertSpecial
trigger1 = 1
flag = Intro

[State 190, ChangeState]
type = ChangeState
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Rentaro_K"
trigger1 = Time = 0
value = 193

[State 190, ChangeState]
type = ChangeState
triggerall = Enemy,AuthorName = "Sennou-Room" && Enemy,Name = "Kirito"
trigger1 = Time = 0
value = 196

[State 190, ChangeState]
type = ChangeState
trigger1 = Time >= 180
trigger1 = Anim = 190
value = 191
ctrl = 0

[StateDef 191]
type = S
ctrl = 0
anim = 191
velset = 0,0
sprpriority = 2

[State 191, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = intro

[State 191, PlaySnd]
type = PlaySnd
trigger1 = AnimELem = 3
value = S100,9

[State 191, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Cape"
pos = 0,0
stateno = 192
ID = 192
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 191, ChangeState]
type = ChangeState
trigger1 = Animtime = 0
value = 0

[StateDef 192]
type = A
movetype = I
physics = N
anim = 192
sprpriority = 2

[State 192, Trans]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = (256-13*Time),13*Time

[State 192, VelSet]
type = VelSet
trigger1 = Time = 0
x = 3
y = -3

[State 192, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.1

[State 192, DestroySelf]
type = DestroySelf
trigger1 = Time >= 20

[Statedef 193]
type = S
ctrl = 0
anim = 190
velset = 0,0

[State 193, PlaySnd]
type = PlaySnd
trigger1 = Time = 130
value = S191,0
Channel = 0

[State 193, 2] ;Assert this until you want "round 1, fight" to begin
type = AssertSpecial
trigger1 = 1
flag = Intro

[State 193, ChangeState]
type = ChangeState
trigger1 = Time > 130
value = 194
ctrl = 0

[StateDef 194]
type = S
ctrl = 0
anim = 193
velset = 0,0
sprpriority = 2

[State 194, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 193
trigger1 = Time >= 180
value = 194 

[State 194, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = intro

[State 194, PlaySnd]
type = PlaySnd
trigger1 = Anim = 193
trigger1 = AnimElem = 3
value = S100,9

[State 194, Helper]
type = Helper
trigger1 = Anim = 193
trigger1 = AnimElem = 3
helpertype = Normal
name = "Cape"
pos = 0,0
stateno = 192
ID = 192
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 194, ChangeState]
type = ChangeState
trigger1 = Anim = 194
trigger1 = Animtime = 0
value = 0

;---------------------------------------------------------------------------
; Taunt
; CNS difficulty: easy
[Statedef 195]
type = S
ctrl = 0
anim = 195
velset = 0,0
movetype = I
physics = S
sprpriority = 2

[State 195, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,13

[State 195, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S195,0+Random%2
Channel = 0

[State 195, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 196]
type = S
ctrl = 0
anim = 196
velset = 0,0
sprpriority = 2

[State 196, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 196
trigger1 = Time >= 330
value = 197 

[State 196, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = intro

[State 196, PlaySnd]
type = PlaySnd
trigger1 = Anim = 196
trigger1 = Time = 180
value = S191,1
channel = 0

[State 196, ChangeState]
type = ChangeState
trigger1 = Anim = 197
trigger1 = Animtime = 0
value = 0

;---------------------------------------------------------------------------
; Standing Light Punch
; CNS difficulty: easy
[Statedef 200]
type    = S				;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A				;Move-type: A-attack, I-idle, H-gethit
physics = S				;Physics: S-stand, C-crouch, A-air
;Commonly-used controllers:
velset = 0,0			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 200				;Change animation (Def: no change)
sprpriority = 2			;Set layering priority to 2 (in front)
facep2 = 1

[State 200, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S400,0+random%5
channel = 0

[State 200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,10

[State 200, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 201
ID = 201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 200, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 2
damage = IfElse(Var(10),14,12)
attr = S,NA
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -80))
hitsound = S200,3
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -3
air.velocity = -1.5,-6.5
yaccel =.65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 20

[State 200, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 2
damage = ceil(IfElse(Root,Var(10),5,4)*(root,fvar(1)*root,fvar(2))),1
attr = S,NA
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,3
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -3
air.velocity = -1.5,-6.5
yaccel =.65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 0

[State 200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8050
stateno = 8050
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 80)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 80)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 200, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 200, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(20000)
Trigger1 = AnimElem = 2
StateNo = 200
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 200, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 200, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 200, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 200, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 200, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 201]
type = A
movetype = I
physics = N
anim = 201
ctrl = 0
velset = 0,0
sprpriority = 4

[State 201, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause =1

[State 201, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 201, Trans]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = 256-(36*Time),256
ignorehitpause =1

[State 201, Scale]
type = AngleDraw
trigger1 = 1
scale = 0.5-0.05*time,2.25

[State 201, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 80

[State 201, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(125*const(size.xScale)),ceil(-246*const(size.yScale))
ignorehitpause = 1

[State 201, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(201)
trigger1 = Root,StateNo != 200
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = Time > 7

;---------------------------------------------------------------------------
; Standing Medium Punch
; CNS difficulty: easy
[Statedef 210]
type    = S
movetype= A
physics = S
ctrl = 0
velset = 0,0
anim = 210
facep2 = 1

[State 210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,11

[State 210, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S410,0+random%6
channel = 0

[State 210, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 211
ID = 211
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 210, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),22,18)
attr = S,NA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -3
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 16
envshake.time = 9
envshake.ampl = 2
getPower = 30,20

[State 210, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),7,6)*(root,fvar(1)*root,fvar(2))),2
attr = S,NA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -3
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 16
envshake.time = 9
envshake.ampl = 2
getPower = 0

[State 210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8051
stateno = 8051
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 210, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 210, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 210
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 210, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 210, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 210, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 210, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 210, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 210, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 211]
type = A
movetype = I
physics = N
anim = 211
ctrl = 0
velset = 0,0
sprpriority = 4

[State 211, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 211, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 211, Scale]
type = AngleDraw
trigger1 = IsHelper(211)
scale = 1.5,1.35

[State 211, Scale]
type = AngleDraw
trigger1 = IsHelper(2001)
trigger2 = IsHelper(4103)
scale = 2.5,1.5

[State 211, Rotate]
type = AngleSet
trigger1 = Time = 0
value = -25

[State 211, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(50*const(size.xScale)),ceil(-178*const(size.yScale))
ignorehitpause = 1

[State 211, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(211)
trigger1 = Root,StateNo != 210
trigger2 = IsHelper(2001)
trigger2 = Root,StateNo != 2001 
trigger3 = IsHelper(4103)
trigger3 = Root,StateNo != 4103
trigger4 = Root,Movetype = H
trigger5 = AnimTime = 0

;---------------------------------------------------------------------------
; Standing Strong Punch
; CNS difficulty: easy
[Statedef 220]
type    = S
movetype= A
physics = S
ctrl = 0
velset = 0,0
anim = 220
facep2 = 1

[State 220, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S420,0+random%6
channel = 0

[State 220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,12

[State 220, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 221
ID = 221
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 220, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
damage = IfElse(Var(10),36,30)
attr = S,NA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 11,12
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.slidetime = 17
ground.hittime = 17
ground.velocity = -2
guard.velocity = -2
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 18
getpower = 20
envshake.time = 9
envshake.ampl = 3

[State 220, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 4
damage = ceil(IfElse(Root,Var(10),12,10)*(root,fvar(1)*root,fvar(2))),2
attr = S,NA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 11,12
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.slidetime = 17
ground.hittime = 17
ground.velocity = -2
guard.velocity = -2
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 18
getpower = 0
envshake.time = 9
envshake.ampl = 3

[State 220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8052
stateno = 8052
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 220, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 220, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 4
StateNo = 220
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 220, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 220, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 220, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 220, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 220, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 220, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 221]
type = A
movetype = I
physics = N
anim = 221
ctrl = 0
velset = 0,0
sprpriority = 4

[State 221, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 221, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 221, Scale]
type = AngleDraw
trigger1 = 1
scale = 0.75,2.5

[State 221, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 92

[State 221, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(82*const(size.xScale)),ceil(-178*const(size.yScale))
ignorehitpause = 1

[State 221, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 220
trigger2 = Root,Movetype = H
trigger3 = AnimTime = 0

;---------------------------------------------------------------------------
; Crouching Light Punch
; CNS difficulty: easy
; Description: Simple crouching attack. The HitDef's guardflag parameter
;     is set to "L", meaning that the move can only be guarded low
;     (crouching), and not by standing or jumping opponents.
;     Like for all light attacks, it's a good idea to keep the slidetime
;     and hittime parameters at a smaller number, so the opponent isn't
;     stunned for too long. For all crouching attacks you have to
;     remember to set the attr parameter to indicate that it is crouching
;     attack. In this case, "C, NA" stands for "crouching, normal attack".
;     The HitDef's priority is set at 3, instead of the default of 4,
;     so this attack has a lower priority than most others, meaning the
;     player will get hit instead of trading hits with the opponent if
;     their attack collision boxes (Clsn1) intersect each other's Clsn2
;     boxes at the same time.
[Statedef 400]
type    = C
movetype= A
physics = C
ctrl = 0
anim = 400
facep2 = 1

[State 400, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,10

[State 400, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S400,0+random%5
channel = 0

[State 400, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 401
ID = 401
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 400, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),14,12)
attr = C,NA
guardflag = L
hitflag = MAF
pausetime = 7,8
priority = 4,Hit
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -25))
hitsound = S200,3
guardsound = S300,0
ground.type = low
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -4.5
air.velocity = -1.5,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 20
givepower = 15

[State 400, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),5,4)*(root,fvar(1)*root,fvar(2))),1
attr = C,NA
guardflag = L
hitflag = MAF
pausetime = 7,8
priority = 4,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,3
guardsound = S300,0
ground.type = low
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -4.5
air.velocity = -1.5,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 0
givepower = 15

[State 400, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8050
stateno = 8050
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 25)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 400, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 25)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 400, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 400, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 400, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 400
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 400, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 400, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 400, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 400, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 400, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 400, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 11
ctrl = 1

[StateDef 401]
type = A
movetype = I
physics = N
anim = 201
ctrl = 0
velset = 0,0
sprpriority = 4

[State 401, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause =1

[State 401, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 401, Trans]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = 256-(36*Time),256
ignorehitpause =1

[State 401, Scale]
type = AngleDraw
trigger1 = 1
scale = 0.5-0.05*time,2

[State 401, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 68

[State 401, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(86*const(size.xScale)),ceil(-79*const(size.yScale))
ignorehitpause = 1

[State 401, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(401)
trigger1 = Root,StateNo != 400
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = Time > 7

;---------------------------------------------------------------------------
; Crouching Medium Punch
[Statedef 410]
type    = C
movetype= A
physics = C
ctrl = 0
anim = 410
facep2 = 1

[State 410, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,11

[State 410, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S410,0+random%6
channel = 0

[State 410, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 411
ID = 411
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 410, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),22,18)
attr = C,NA
animtype = medium
guardflag = L
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -30))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -5
guard.velocity = -5.5
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 16
getpower = 35
givepower = 15
envshake.time = 9
envshake.ampl = 2

[State 410, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),7,6)*(root,fvar(1)*root,fvar(2))),2
attr = C,NA
animtype = medium
guardflag = L
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -5
guard.velocity = -5.5
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 16
getpower = 0
givepower = 15
envshake.time = 9
envshake.ampl = 2

[State 410, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8051
stateno = 8051
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 30)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 410, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 30)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 410, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 410, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 410, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 410
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 410, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 410, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 410, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 410, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 410, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 410, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 11
ctrl = 1

[StateDef 411]
type = A
movetype = I
physics = N
anim = 411
ctrl = 0
velset = 0,0
sprpriority = 4

[State 411, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 411, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 411, Scale]
type = AngleDraw
trigger1 = 1
scale = 1.5,1.25

[State 411, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 105

[State 411, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(70*const(size.xScale)),ceil(-155*const(size.yScale))
ignorehitpause = 1

[State 411, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(411)
trigger1 = Root,StateNo != 410
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

;---------------------------------------------------------------------------
; Crouching Strong Punch
[Statedef 420]
type    = C
movetype= A
physics = C
VelSet = 0,0
ctrl = 0
anim = 420
facep2 = 1

[State 420, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S420,0+random%6
channel = 0

[State 420, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 6
value = S100,12

[State 420, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 421
ID = 421
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 420, Helper]
type = Helper
trigger1 = AnimElem = 6
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 422
ID = 422
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 420, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
attr = C,NA
animtype  = Hard
damage = IfElse(Var(10),18,15)
hitflag = MAF
guardflag = L
pausetime = 5,8
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -45))
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1.5
guard.velocity = -4.5
air.velocity = -1.5,-7.5
fall = 0
air.fall = 1
fall.recover = 1
getpower = 25
envshake.time = 9
envshake.ampl = 2
fall.recovertime = 30

[State 420, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 3
attr = C,NA
animtype  = Hard
damage = ceil(IfElse(Root,Var(10),6,5)*(root,fvar(1)*root,fvar(2))),1
hitflag = MAF
guardflag = L
pausetime = 5,8
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1.5
guard.velocity = -4.5
air.velocity = -1.5,-7.5
fall = 0
air.fall = 1
fall.recover = 1
getpower = 0
envshake.time = 9
envshake.ampl = 2
fall.recovertime = 30

[State 420, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 6
attr = C,NA
animtype  = Hard
damage = IfElse(Var(10),18,15)
hitflag = MAF
guardflag = L
pausetime = 12,IfElse(Var(10),21,14)
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -45))
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1.5,-7.5
guard.velocity = -6.5
air.velocity = -1.5,-7.5
fall = 1
fall.recover = 1
getpower = 25
envshake.time = 9
envshake.ampl = 2
fall.recovertime = 30

[State 420, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 6
attr = C,NA
animtype  = Hard
damage = ceil(IfElse(Root,Var(10),6,5)*(root,fvar(1)*root,fvar(2))),1
hitflag = MAF
guardflag = L
pausetime = 12,IfElse(Root,Var(10),21,14)
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1.5,-7.5
guard.velocity = -6.5
air.velocity = -1.5,-7.5
fall = 1
fall.recover = 1
getpower = 0
envshake.time = 9
envshake.ampl = 2
fall.recovertime = 30

[State 420, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8052
stateno = 8052
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 45)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 420, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 45)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 420, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 420, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 420, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 420
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 420, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 420, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 420, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 420, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 420, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H

[State 420, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 11
ctrl = 1

[StateDef 421]
type = A
movetype = I
physics = N
anim = 421
ctrl = 0
velset = 0,0
sprpriority = 4

[State 421, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 421, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 421, Scale]
type = AngleDraw
trigger1 = 1
scale = 1,2.25

[State 421, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 70

[State 421, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-16*const(size.xScale)),ceil(-150*const(size.yScale))
ignorehitpause = 1

[State 421, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(421)
trigger1 = Root,StateNo != 420
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

[StateDef 422]
type = A
movetype = I
physics = N
anim = 221
ctrl = 0
velset = 0,0
sprpriority = 4

[State 422, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 422, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 422, Scale]
type = AngleDraw
trigger1 = 1
scale = 0.75,2.15

[State 422, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 75

[State 422, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(110 * const(size.xScale)), ceil(-140 * const(size.yScale))
ignorehitpause = 1

[State 422, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(422)
trigger1 = Root,StateNo != 420
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

;---------------------------------------------------------------------------
; Jump Light Punch
; CNS difficulty: easy
[Statedef 600]
type    = A
movetype= A
physics = A
ctrl = 0
anim = 600

[State 600, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,10

[State 600, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S400,0+random%5
channel = 0

[State 600, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 601
ID = 601
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 600, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 2
damage = IfElse(Var(10),14,12)
attr = A,NA
guardflag = HA
hitflag = MAF
pausetime = 6,8
priority = 4,Hit
hitsound = S200,3
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -5
guard.velocity = -7
air.velocity = -1.5,-4.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 25

[State 600, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 2
damage = ceil(IfElse(Root,Var(10),5,4)*(root,fvar(1)*root,fvar(2))),1
attr = A,NA
guardflag = HA
hitflag = MAF
pausetime = 6,8
priority = 4,Hit
hitsound = S200,3
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -5
guard.velocity = -7
air.velocity = -1.5,-4.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 14
getpower = 0

[State 600, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8050
stateno = 8050
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 70)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 600, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 70)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 600, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 600, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 600, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 2
StateNo = 600
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 600, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 600, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 600, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 600, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 600, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 600, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 600
trigger5 = Root,Anim != 600

[State 600, 5]
type = CtrlSet
trigger1 = Time = 21
value = 1

[StateDef 601]
type = A
movetype = I
physics = N
anim = 601
ctrl = 0
velset = 0,0
sprpriority = 4

[State 601, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 601, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 601, Scale]
type = AngleDraw
trigger1 = 1
scale = 1,2

[State 601, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 70

[State 601, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-32*const(size.xScale)),ceil(-280*const(size.yScale))
ignorehitpause = 1

[State 601, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(601)
trigger1 = Root,StateNo != 600
trigger2 = IsHelper(4104)
trigger2 = Root,StateNo != 4104
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

;---------------------------------------------------------------------------
; Jump Medium Punch
; CNS difficulty: easy
[Statedef 610]
type    = A
movetype= A
physics = A
ctrl = 0
anim = 610

[State 610, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,11

[State 610, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S410,0+random%6
channel = 0

[State 610, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 611
ID = 611
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 610, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),22,18)
attr = A,NA
animtype = medium
guardflag = HA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -6
guard.velocity = -8
air.velocity = -2,-4.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 18
getpower = 35
envshake.time = 9
envshake.ampl = 2

[State 610, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Var(10),7,6)*(root,fvar(1)*root,fvar(2))),2
attr = A,NA
animtype = medium
guardflag = HA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,4
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -6
guard.velocity = -8
air.velocity = -2,-4.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 18
getpower = 0
envshake.time = 9
envshake.ampl = 2

[State 610, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8051
stateno = 8051
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 40)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 610, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 40)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 610, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 610, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 610, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 610
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 610, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 610, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 610, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 610, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 610, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 610, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 610
trigger5 = Root,Anim != 610

[State 610, 5]
type = CtrlSet
trigger1 = Time = 25
value = 1

[StateDef 611]
type = A
movetype = I
physics = N
anim = 221
ctrl = 0
velset = 0,0
sprpriority = 4

[State 611, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 611, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 611, Scale]
type = AngleDraw
trigger1 = 1
scale = 1.5,1.75

[State 611, Rotate]
type = AngleSet
trigger1 = Time = 0
value = 70

[State 611, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-13*const(size.xScale)),ceil(-326*const(size.yScale))
ignorehitpause = 1

[State 611, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(611)
trigger1 = Root,StateNo != 610
trigger2 = IsHelper(4104)
trigger2 = Root,StateNo != 4104
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

;---------------------------------------------------------------------------
; Jump Strong Punch
; CNS difficulty: easy
[Statedef 620]
type    = A
movetype= A
physics = A
ctrl = 0
anim = 620

[State 620, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,12

[State 620, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = !IsHelper(30000)
trigger1 = time = 1
value = S420,0+random%6
channel = 0

[State 620, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 621
ID = 621
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 620, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
damage = IfElse(Var(10),42,35)
attr = A,NA
animtype = Hard
guardflag = HA
hitflag = MAF
pausetime = 10,12
priority = 4,Hit
HitSound = S200,5
GuardSound = S300,0
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -67))
ground.slidetime = 17
ground.hittime = 17
ground.velocity = -8
guard.velocity = -10
air.velocity = -2.5,-1.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 20
GetPower = 50
envshake.time = 9
envshake.ampl = 3

[State 620, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 4
damage = ceil(IfElse(Root,Var(10),14,12)*(root,fvar(1)*root,fvar(2))),2
attr = A,NA
animtype = Hard
guardflag = HA
hitflag = MAF
pausetime = 10,12
priority = 4,Hit
HitSound = S200,5
GuardSound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.slidetime = 17
ground.hittime = 17
ground.velocity = -8
guard.velocity = -10
air.velocity = -2.5,-1.5
yaccel = .65
air.fall = 1
fall.recover = 1
fall.recovertime = 20
GetPower = 0
envshake.time = 9
envshake.ampl = 3

[State 620, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8052
stateno = 8052
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 67)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 620, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 67)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State 620, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 620, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 620, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 4
StateNo = 620
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 620, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 620, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 620, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 620, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 620, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 620, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 620
trigger5 = Root,Anim != 620

[State 620, 5]
type = CtrlSet
trigger1 = Time = 26
value = 1

[StateDef 621]
type = A
movetype = I
physics = N
anim = 621
ctrl = 0
velset = 0,0
sprpriority = 4

[State 621, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 621, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) < 0
scale = 1.5,1.6

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) >=0 
trigger1 = AnimElemTime(3)<0
scale = 1.5,1.6*1.6

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(4) < 0
scale = 1.5,1.6*1.8

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(4) >= 0 
trigger1 = AnimElemTime(5) < 0
scale = 1.5,1.6*2

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(5) >= 0 
trigger1 = AnimElemTime(6) < 0
scale = 1.5,1.6*2.1

[State 621, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(6) >= 0
scale = 1.5,1.6*2.2

[State 621, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -127

[State 621, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(291*const(size.xScale)),ceil(-88*const(size.yScale))
ignorehitpause = 1

[State 621, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(621)
trigger1 = Root,StateNo != 620
trigger2 = IsHelper(4104)
trigger2 = Root,StateNo != 4104
trigger3 = Root,Movetype = H
trigger4 = AnimTime = 0

;---------------------------------------------------------------------------
; Throw - Attempt
; CNS difficulty: medium-advanced
; Description: Throws are not difficult to make, although then can be
;     tedious at times. Throw attempt states have a HitDef of a
;     special format. The key parameters in a throw are p1stateno
;     and p2stateno. If the HitDef successfully connects, then
;     the attacker will change to the state number specified by
;     p1stateno, and the opponent will be change to the state
;     number assigned to p2stateno. The special thing about p2stateno
;     is that the opponent will be temporarily brought into the
;     attacker's state file. In this case, no matter who the
;     opponent is, he will be taken to state 820 of this file (kfm.cns)
;     and remain here until the end of the throw (look at his debug
;     information when he is being thrown; the text changes to yellow
;     to mean that he is in another player's state file).
[Statedef 800]
type    = S
movetype= A
physics = S
juggle  = 0
velset = 0,0
ctrl = 0
anim = 800

[State 800, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S170,1
channel = 0

; Notes: The '-' symbol in the hitflag field means that it only affects
;   players who are not in a hit state. This prevents the player from combo-ing
;   into the throw. The priority should be set to a low number, such as
;   1 or 2, so that the throw does not take precedence over normal attacks.
;   The type of priority must always be set to "Miss" or "Dodge" for throws,
;   otherwise strange behavior can result.
[State 800, 1]
type = HitDef
Trigger1 = AnimElem = 1
attr = S, NT          ;Attributes: Standing, Normal Throw
hitflag = M-          ;Affect only ground people who are not being hit
priority = 1, Miss    ;Throw has low priority, must be miss or dodge type.
sparkno = -1          ;No spark
hitsound = S800,2
sprpriority = 1       ;Draw in front of p2
p1facing = ifelse (command = "holdfwd", 1, -1) ;Turn if holding forwards
p2facing = 1          ;Force p2 to face player
p1stateno = 810       ;On success, player changes to state 810
p2stateno = 820       ;If hit, p2 changes to state 820 in player's cns
fall = 1              ;Force p2 into falling down
numhits = 0

[State 800, 2]
type = ChangeState
Trigger1 = AnimTime = 0
value = 0
ctrl = 1

;---------------------------------------------------------------------------
; Throwing the opponent
; Description: In this state, the player throws the opponent by binding him to
;     various offsets based on his current frame of animation. For
;     example, [State 810, Bind 1] binds the opponent to an offset of
;     28 pixels in front of the player. That puts him around where the hand
;     is at. Is is important to keep the opponent bound using a
;     TargetBind controller at all times, until you let him go. This
;     is especially important if your player has a Clsn2 box that
;     allows him to get hit while throwing someone. Each time a player
;     gets hit, all his bound targets will be set to a fall state. If
;     the opponent is not bound, then he might get stuck in his thrown
;     state when his attacker is knocked out of the throw halfway.
; Notes: There is a TargetLifeAdd controller to decrease the opponent's
;     life, and a TargetState controller to change his state to a
;     falling state when KFM lets go of him.
[Statedef 810]
type    = S
movetype= A
physics = N
anim = 810
poweradd = 60
velset = 0,0

[State 810, TargetBind]
type = TargetBind
trigger1 = time = 0
time = 34
pos = 40

[State 810, PlaySnd]
type = playsnd
trigger1 = AnimElem = 7
value = S100,12

[State 810, PlaySnd]
type = playsnd
trigger1 = AnimElem = 7
value = S800,0+Random%2
Channel = 0

[State 810, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 811
ID = 811
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 810, HitDef]
type = HitDef
trigger1 = AnimElem = 8
attr = S,NA
animtype  = Hard
damage = 50
hitflag = MAF
guardflag =
pausetime = 8,10
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -85))
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 11
ground.hittime = 11
ground.velocity = -5,-6.4
air.velocity = -5,-6.4
fall = 1
fall.recover = 0
yaccel = 0.55
envshake.time = 9
envshake.ampl = 2

[State 810, State End]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 811]
type = A
movetype = I
physics = N
anim = 621
ctrl = 0
velset = 0,0
sprpriority = 4

[State 811, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 811, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause =1

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) < 0
scale = 1.5,1.6

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) >=0 
trigger1 = AnimElemTime(3)<0
scale = 1.5,1.6*1.6

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(4) < 0
scale = 1.5,1.6*1.8

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(4) >= 0 
trigger1 = AnimElemTime(5) < 0
scale = 1.5,1.6*2

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(5) >= 0 
trigger1 = AnimElemTime(6) < 0
scale = 1.5,1.6*2.1

[State 811, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(6) >= 0
scale = 1.5,1.6*2.2

[State 811, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -90

[State 811, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(350*const(size.xScale)),ceil(-266*const(size.yScale))
ignorehitpause = 1

[State 811, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 810
trigger2 = Root,Movetype = H
trigger3 = AnimTime = 0

;---------------------------------------------------------------------------
; Opponent Thrown
; (a custom gethit state)
; Description: This is the state that the opponent changes to after being
;     hit by the throw HitDef. The important thing here is to use a
;     ChangeAnim2 controller. The difference between ChangeAnim2 and
;     ChangeAnim is that ChangeAnim2 changes the player's animation to
;     an action in the AIR file of the attacker (in this case, kfm.air),
;     whereas ChangeAnim always changes the player to an action in his
;     own AIR file. Look at Action 820 in kfm.air for some extra
;     comments.
[Statedef 820]
type    = S
movetype= H
physics = N
velset = 0,0

[State 820, PosSet]
type = PosSet
trigger1 = time = 0
y = 0

[State 820, 1]
type = ChangeAnim2
Trigger1 = Time = 0
value = 820

[StateDef 950]
Type = S
MoveType = A
Physics = N
VelSet = 0,0
Anim = 950
ctrl = 0

[State 950, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -100

[State 950, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = time = 0
value = -1000

[State 950, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 950, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S10000,4

[State 950, SuperPause]
type = SuperPause
trigger1 = time = 0
time = 20
movetime = 20
anim = -1
sound = -1
pos = 0,0
p2defmul = 1
poweradd = 0
darken = 0
unhittable = 1

[State 950, Helper]
type = Helper
trigger1 = Time = 0
Helpertype = normal
StateNo = 952
ID = 952
name = "Guard_Counter"
postype = p1
pos = ceil(-15 * const(size.xscale)), ceil(-50 * const(size.yscale))
supermovetime = 9999
pausemovetime = 9999
ownpal = 1
size.xscale = 1
size.yscale = 1

[State 950, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 952
ID = 952
pos = 0,-140
scale = 0.3,0.3
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 950, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 3
StateType = A
Movetype = A
Physics = N

[State 950, VelSet]
type = Velset
trigger1 = AnimElem = 3
x = 2
y = -4

[State 950, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.75

[State 950, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,2

[State 950, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S950,0+Random%2

[State 950, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = A,HA
animtype = Hard
damage = 100
hitflag = MAF
guardflag =
priority = 4, Hit
pausetime = 30,30
hitsound = S200,8
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = High
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -2,-30
air.velocity = -2,-30
down.velocity = -4,-2
yaccel = .65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 15
envshake.ampl = 5
envshake.freq = 90

[State 950, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 951

[StateDef 951]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
anim = 951
sprpriority = 2

[State 951, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 951, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 951, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 951, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 952]
Type = A
Physics = N
MoveType = I
Anim = 99999
ctrl = 0
velset = 0,0

[State 952, BGPalFX]
type = BGPalFX
trigger1 = 1
time = 1
color= 16*time
mul = 16*time, 16*time, 16*time

[State 952, Explod]
type = Explod
trigger1 = Time = 0
Anim = 953
ID = 953
sprpriority = 3
postype = p1
pos = 0,-60
removetime = 16
supermovetime = -1
ownpal = 1

[State 952, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(953)
ID = 953
scale = (.0625*time), (.0625*time)
trans = addalpha
alpha = 256-(16*time), 256

[State 952, Explod]
type = Explod
trigger1 = time = 0
anim = 954
ID = 954
sprpriority = -2
postype = p1
pos = 0,-ceil(pos y)
supermovetime = -1
ownpal = 1

[State 952, DestroySelf]
type = DestroySelf
trigger1= time >= 16

[StateDef 1000]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1000
poweradd = IfElse(IsHelper(30000),0,110)
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1000, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveHit = 1
v = 45
value = 4

[State 1000, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveGuarded = 1
v = 45
value = 2

[State 1000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 1001
ID = 1001
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1000, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1000,0+Random%3
channel = 0

[State 1000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
value = S100,10

[State 1000, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
damage = IfElse(Var(10),24,20),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3

[State 1000, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
damage = ceil(IfElse(Root,Var(10),8,7)*(root,fvar(1)*root,fvar(2))),2
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1000, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1000, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1000, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1000, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1000, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1000
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1000, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1000, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1000, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1000, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1000, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1000
trigger4 = Root,Anim != 1000

[State 1000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1001]
type = A
movetype = I
physics = N
anim = 1001
sprpriority = 4

[State 1001, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(17) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1001, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1001, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1001, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-30*const(size.xScale)),ceil(-295*const(size.yScale))
ignorehitpause = 1

[State 1001, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75

[State 1001, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1001)
trigger1 = Root,StateNo != 1000
trigger2 = IsHelper(4103)
trigger2 = Root,StateNo != 4103
trigger3 = Root,Movetype = H
trigger4 = Animtime = 0

[StateDef 1010]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1010
poweradd = IfElse(IsHelper(30000),0,110)
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1010, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveHit = 1
v = 45
value = 4

[State 1010, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveGuarded = 1
v = 45
value = 2

[State 1010, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 1011
ID = 1011
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1010, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1000,0+Random%3
channel = 0

[State 1010, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
value = S100,10

[State 1010, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
damage = IfElse(Var(10),24,20),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3

[State 1010, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
damage = ceil(IfElse(Var(10),8,7)*(root,fvar(1)*root,fvar(2))),2
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1010, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1010, Helper]
type = Helper
trigger1 = MoveGuarded = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1010, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1010, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1010, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1010
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1010, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1010, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1010, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1010, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1010, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1010
trigger4 = Root,Anim != 1010

[State 1010, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1011]
type = A
movetype = I
physics = N
anim = 1011
sprpriority = 4

[State 1011, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(23) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1011, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1011, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1011, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-30*const(size.xScale)),ceil(-295*const(size.yScale))
ignorehitpause = 1

[State 1011, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75

[State 1011, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1011)
trigger1 = Root,StateNo != 1010
trigger2 = IsHelper(1021)
trigger2 = Root,StateNo != 1020
trigger3 = IsHelper(2000)
trigger3 = Root,StateNo != 2000 
trigger4 = Root,Movetype = H
trigger5 = Animtime = 0

[StateDef 1020]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1020
poweradd = IfElse(IsHelper(30000),0,110)
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1020, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveHit = 1
v = 45
value = 4

[State 1020, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveGuarded = 1
v = 45
value = 2

[State 1020, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 1011
ID = 1021
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1020, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1000,0+Random%3
channel = 0

[State 1020, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
value = S100,10

[State 1020, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
damage = IfElse(Var(10),30,25),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3

[State 1020, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
damage = ceil(IfElse(Root,Var(10),10,8)*(root,fvar(1)*root,fvar(2))),2
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1020, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1020, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1020, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1020, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1020, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1020
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1020, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1020, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1020, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1020, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1020, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1020
trigger4 = Root,Anim != 1020

[State 1020, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1100]
type = A
movetype = I
physics = N
anim = 43
velset = 0,0
ctrl = 0
facep2 = 1
sprpriority = 2

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,2
channel = 0

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S40,3

[State 1100, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1100, VelSet]
type = VelSet
trigger1 = Time = 0
x = -5
y = -3.5

[State 1100, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.55

[State 1100, ChangeState]
type = ChangeState
trigger1 = command = "hold_x" || command = "hold_y" || command = "hold_z"
trigger1 = vel Y > 0 && pos Y >= 0
value = 1101

[State 1100, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1102

[StateDef 1101]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
anim = 1100
sprpriority = 2

[State 1101, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1101, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1101, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1102]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1101
sprpriority = 2
poweradd = IfElse(IsHelper(30000),0,100)

[State 1102, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1102, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 1102, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(4) > 0 
value = 0

[State 1102, Explod]
type = Explod
trigger1 = Var(46) = 0
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1102, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 0
trigger1 = AnimElem = 1
value = S40,0

[State 1102, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1100,0+Random%2
channel = 0

[State 1102, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 1102, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 1102, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1104
ID = 1104
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1102, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 1102, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 12
y = -3

[State 1102, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 1102, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 1102, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.55

[State 1102, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = IfElse(Var(10),36,30),3
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -91))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -9,-5.5
air.velocity = -8,-3.5
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1102, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = ceil(IfElse(Root,Var(10),12,10)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -9,-5.5
air.velocity = -8,-3.5
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1102, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1102, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1102, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1102, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1102, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1102
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1102, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1102, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1102, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1102, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1102, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1102, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(4) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1102
trigger5 = Root,Anim != 1101

[State 1102, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1103

[StateDef 1103]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
anim = 1102
sprpriority = 2

[State 1103, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1103, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1103, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1104]
type = A
movetype = I
physics = N
anim = 1103
sprpriority = 4

[State 1104, VarAdd]
type = VarAdd
trigger1 = Time > 4
trigger1 = !(Parent,HitPauseTime)
var(2) = 1

[State 1104, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) <= 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)
ignorehitpause = 1

[State 1104, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) > 0
trigger1 = AnimElemTime(7) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1104, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1104, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1104, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(376*const(size.xScale)),ceil(-336*const(size.yScale))
ignorehitpause = 1

[State 1104, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 2-(Var(2)*0.125),6+(Var(2)*0.25)

[State 1104, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -75

[State 1104, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1104)
trigger1 = Root,StateNo != 1102
trigger2 = IsHelper(1111)
trigger2 = Root,StateNo != 1111
trigger3 = IsHelper(1121)
trigger3 = Root,StateNo != 1121
trigger4 = IsHelper(2101)
trigger4 = Root,StateNo != 2101
trigger5 = IsHelper(2232)
trigger5 = Root,StateNo != 2232
trigger6 = Root,Movetype = H
trigger7 = Animtime = 0

[StateDef 1110]
type = A
movetype = I
physics = N
anim = 43
velset = 0,0
ctrl = 0
facep2 = 1
sprpriority = 2

[State 1110, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,2
channel = 0

[State 1110, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S40,3

[State 1110, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1110, VelSet]
type = VelSet
trigger1 = Time = 0
x = -6
y = -3.5

[State 1110, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.55

[State 1110, ChangeState]
type = ChangeState
trigger1 = command = "hold_x" || command = "hold_y" || command = "hold_z"
trigger1 = vel Y > 0 && pos Y >= 0
value = 1101

[State 1110, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1111

[StateDef 1111]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1110
sprpriority = 2
poweradd = IfElse(IsHelper(30000),0,100)

[State 1111, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1111, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 1111, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(4) > 0 
value = 0

[State 1111, Explod]
type = Explod
trigger1 = Var(46) = 0
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1111, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 0
trigger1 = AnimElem = 1
value = S40,0

[State 1111, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1100,0+Random%2
channel = 0

[State 1111, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 1111, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 1111, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1104
ID = 1111
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1111, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 1111, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 16
y = -4

[State 1111, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 1111, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 1111, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.65

[State 1111, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = IfElse(Var(10),40,33),3
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -91))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1111, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = ceil(IfElse(Root,Var(10),13,11)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1111, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1111, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1111, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1111, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1111, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 4
StateNo = 1111
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1111, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1111, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1111, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1111, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1111, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1111, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(4) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1111
trigger5 = Root,Anim != 1110

[State 1111, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1112

[StateDef 1112]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
anim = 1111
sprpriority = 2

[State 1112, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1112, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1112, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1112, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1120]
type = A
movetype = I
physics = N
anim = 43
velset = 0,0
ctrl = 0
facep2 = 1
sprpriority = 2

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,2
channel = 0

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S40,3

[State 1120, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1120, VelSet]
type = VelSet
trigger1 = Time = 0
x = -7
y = -3.5

[State 1120, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.55

[State 1120, ChangeState]
type = ChangeState
trigger1 = command = "hold_x" || command = "hold_y" || command = "hold_z"
trigger1 = vel Y > 0 && pos Y >= 0
value = 1101

[State 1120, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1121

[StateDef 1121]
type = S
movetype = A
physics = S
ctrl = 0
anim = 1120
sprpriority = 2
poweradd = IfElse(IsHelper(30000),0,100)

[State 1121, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1121, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 1121, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(4) > 0 
value = 0

[State 1121, Explod]
type = Explod
trigger1 = Var(46) = 0
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1121, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 0
trigger1 = AnimElem = 1
value = S40,0

[State 1121, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = Time = 0
value = S1100,0+Random%2
channel = 0

[State 1121, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 1121, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 1121, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1104
ID = 1121
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1121, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 1121, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 20
y = -5

[State 1121, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 1121, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 1121, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.65

[State 1121, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = IfElse(Var(10),44,37),4
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -91))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1121, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = ceil(IfElse(Root,Var(10),14,12)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3
getpower = 0

[State 1121, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1121, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 91)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1121, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1121, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1121, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 4
StateNo = 1121
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1121, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1121, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1121, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1121, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1121, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1121, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(4) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1121
trigger5 = Root,Anim != 1120

[State 1121, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1112

[StateDef 1200]
type = S
movetype = A
physics = N
ctrl = 0
anim = 1200
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 1
value = S1200,0+Random%3
channel = 0

[State 1200 VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 15

[State 1200, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1202
ID = 1202
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1200, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 1202
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1200, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),60,50),5
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -65))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1200, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),20,17)*(root,fvar(1)*root,fvar(2))),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1200, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1200, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1200, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1200
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1200, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1200, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1200, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1200, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1200, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1200
trigger4 = Root,Anim != 1200

[State 1200, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1201

[StateDef 1201]
type = S
movetype = I
physics = N
anim = 1201
sprpriority = 1
velset = 0,0
ctrl = 0

[State 1201, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pos = 20,0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1201, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,6

[State 1201, VelSet]
type = VelSet
trigger1 = Time <= 12
x = 2

[State 1201, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1

[StateDef 1202]
type = A
movetype = I
physics = N
anim = 1103
sprpriority = 4

[State 1202, VarAdd]
type = VarAdd
trigger1 = Time > 4
trigger1 = !(Parent,HitPauseTime)
var(2) = 1

[State 1202, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) <= 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)
ignorehitpause = 1

[State 1202, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) > 0
trigger1 = AnimElemTime(7) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1202, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1202, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1202, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(382*const(size.xScale)),ceil(-130*const(size.yScale))
ignorehitpause = 1

[State 1202, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 2-(Var(2)*0.125),6+(Var(2)*0.25)

[State 1202, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -90

[State 1202, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1202)
trigger1 = Root,StateNo != 1200
trigger2 = IsHelper(1210)
trigger2 = Root,StateNo != 1210
trigger3 = IsHelper(1220)
trigger3 = Root,StateNo != 1220
trigger4 = IsHelper(2200)
trigger4 = AnimTime = 0
trigger5 = IsHelper(2201)
trigger5 = Root,StateNo != 2201
trigger6 = IsHelper(2201)
trigger6 = Root,StateNo != 2201
trigger7 = Root,Movetype = H
trigger8 = Animtime = 0

[StateDef 1210]
type = S
movetype = A
physics = N
ctrl = 0
anim = 1210
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 1
value = S1200,0+Random%3
channel = 0

[State 1210 VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 20

[State 1210, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1202
ID = 1210
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 1210, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1210, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 1210
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1210, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),78,65),7
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -65))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1210, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),26,22)*(root,fvar(1)*root,fvar(2))),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1210, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1210, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1210, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1210
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1210, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1210, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1210, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1210, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1210, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1210
trigger4 = Root,Anim != 1210

[State 1210, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1211

[StateDef 1211]
type = S
movetype = I
physics = N
anim = 1211
sprpriority = 1
velset = 0,0
ctrl = 0

[State 1211, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pos = 20,0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1211, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,6

[State 1211, VelSet]
type = VelSet
trigger1 = Time <= 8
x = 2

[State 1211, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1

[StateDef 1220]
type = S
movetype = A
physics = N
ctrl = 0
anim = 1220
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 1
value = S1200,0+Random%3
channel = 0

[State 1220 VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 25

[State 1220, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1202
ID = 1220
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 1220, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1220, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 1220
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1220, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),96,80),8
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -65))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1220, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),32,27)*(root,fvar(1)*root,fvar(2))),4
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = IfElse(P2StateType = A,0.55,0.45)
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveGuarded = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 1220, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1220, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1220, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1220
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1220, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1220, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1220, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1220, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1220, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = Root,MoveType = H
trigger3 = Root,Stateno != 1220
trigger4 = Root,Anim != 1220

[State 1220, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1221

[StateDef 1221]
type = S
movetype = I
physics = N
anim = 1221
sprpriority = 1
velset = 0,0
ctrl = 0

[State 1221, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pos = 20,0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 1221, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,6

[State 1221, VelSet]
type = VelSet
trigger1 = Time <= 4
x = 2

[State 1221, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1

[StateDef 1230]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1230
poweradd = 100
sprpriority = 2
velset = 0,0

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
value = S1200,2+Random%2
channel = 0

[State 1230, VelMul]
type = VelMul
trigger1 = AnimElemTime(3) < 0
x = 0.8
y = 0.8

[State 1230, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.55

[State 1230, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 12
y = 12

[State 1230, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Flashing"
pos = 0,0
postype = p1
stateno = 1234
ID = 1234
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1230, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),60,50),5
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1230, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),20,17)*(root,fvar(1)*root,fvar(2))),3
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1230, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1230, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1230, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1230, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1230, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1230
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1230, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1230, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1230, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1230, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1230, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1230, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(3) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1230
trigger5 = Root,Anim != 1230

[State 1230, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1231

[StateDef 1231]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
sprpriority = 2
anim = 1231

[State 1231, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1231, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1231, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1231, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1232]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
sprpriority = 2
anim = 1241

[State 1232, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1232, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1232, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1232, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1233]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
sprpriority = 2
anim = 1251

[State 1233, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1233, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1233, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1233, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1234]
type = A
movetype = I
physics = N
anim = 1103
sprpriority = 4

[State 1234, VarAdd]
type = VarAdd
trigger1 = Time > 4
trigger1 = !(Parent,HitPauseTime)
var(2) = 1

[State 1234, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) <= 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)
ignorehitpause = 1

[State 1234, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) > 0
trigger1 = AnimElemTime(7) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1234, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1234, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1234, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(308*const(size.xScale)),ceil(27*const(size.yScale))
ignorehitpause = 1

[State 1234, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 2-(Var(2)*0.125),6+(Var(2)*0.25)

[State 1234, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -130

[State 1234, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1234)
trigger1 = Root,StateNo != 1230
trigger2 = IsHelper(1240)
trigger2 = Root,StateNo != 1240
trigger3 = IsHelper(1250)
trigger3 = Root,StateNo != 1250
trigger4 = IsHelper(2230)
trigger4 = Root,StateNo != 2230
trigger5 = Root,Movetype = H
trigger6 = Animtime = 0

[StateDef 1240]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1240
poweradd = 100
sprpriority = 2
velset = 0,0

[State 1240, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1240, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1240, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
value = S1200,2+Random%2
channel = 0

[State 1240, VelMul]
type = VelMul
trigger1 = AnimElemTime(3) < 0
x = 0.8
y = 0.8

[State 1240, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.55

[State 1240, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 12
y = 9

[State 1240, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Flashing"
pos = 0,0
postype = p1
stateno = 1234
ID = 1240
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1240, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),78,65),6
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1240, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),26,22)*(root,fvar(1)*root,fvar(2))),3
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1240, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1240, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1240, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1240, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1240, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1240
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1240, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1240, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1240, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1240, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1240, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1240, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(3) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1240
trigger5 = Root,Anim != 1240

[State 1240, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1232

[StateDef 1250]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1250
poweradd = 100
sprpriority = 2
velset = 0,0

[State 1250, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1250, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1250, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
value = S1200,2+Random%2
channel = 0

[State 1250, VelMul]
type = VelMul
trigger1 = AnimElemTime(3) < 0
x = 0.8
y = 0.8

[State 1250, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.55

[State 1250, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 12
y = 9

[State 1250, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Flashing"
pos = 0,0
postype = p1
stateno = 1234
ID = 1250
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1250, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),96,80),8
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 9
envshake.ampl = 3

[State 1250, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),32,27)*(root,fvar(1)*root,fvar(2))),4
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-6
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1250, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1250, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1250, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1250, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1250, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1250
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1250, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1250, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1250, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1250, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1250, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1250, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(3) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1250
trigger5 = Root,Anim != 1250

[State 1250, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1233

[StateDef 1300]
type = S
movetype = A
physics = N
ctrl = 0
anim = 1300
poweradd = 110
velset = 0,0
facep2 = 1

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
value = S420,0+random%6
channel = 0

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 1300, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 1300, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 5
y = -10

[State 1300, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 1300, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 1300, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
postype = p1
stateno = 1305 
ID = 1305
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1300, HitDef]
type = HitDef
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 4
damage = IfElse(Var(10),54,45),5
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,8
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = High
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -2,-10
air.velocity = -2,-7.5
yaccel = .56
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1300, HitDef]
type = HitDef
trigger1 = IsHelper(30000)
trigger1 = AnimElem = 4
damage = ceil(IfElse(Root,Var(10),18,15)*(root,fvar(1)*root,fvar(2))),3
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 5,8
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = High
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -2,-10
air.velocity = -2,-7.5
yaccel = .56
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1300, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1300, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1300, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1300, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1300, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 2
StateNo = 1300
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1300, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1300, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1300, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1300, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1300, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1300, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(4) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1300
trigger5 = Root,Anim != 1300

[State 1300, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1301

[StateDef 1301]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1301
sprpriority = 2
velset = 0,0

[State 1301, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 1301, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 1301, VelMul]
type = VelMul
trigger1 = AnimElemTime(3) < 0
x = 0.8
y = 0.8

[State 1301, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.55

[State 1301, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 9
y = 12

[State 1301, Helper]
type = Helper
trigger1 = !IsHelper(30000)
trigger1 = AnimElem = 3
helpertype = Normal
name = "Flashing"
pos = 0,0
postype = p1
stateno = 1305 
ID = 1306
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1301, HitDef]
type = HitDef
triggerall = !IsHelper(30000)
trigger1 = AnimElem = 3
damage = IfElse(Var(10),54,45),5
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 5,8
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-4
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
p2stateno = 1303
p2facing = 1

[State 1301, HitDef]
type = HitDef
triggerall = IsHelper(30000)
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),18,15)*(root,fvar(1)*root,fvar(2))),3
attr = A,SA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 5,8
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -3,-6
air.velocity = -3,-4
yaccel = 0.55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
getpower = 0
p2stateno = 1303
p2facing = 1

[State 1301, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1301, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1301, VarSet]
type = VarSet
trigger1 = IsHelper(30000)
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1301, Helper]
type = Helper
trigger1 = IsHelper(30000)
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1301, Helper]
Type = Helper
triggerall = Var(49) > 0
Trigger1 = !IsHelper(30000)
Trigger1 = AnimElem = 3
StateNo = 1301
ID = 30000
Name = "Clone_Attack"
Pos = 0,0
PosType = P1
IgnoreHitPause = 1

[State 1301, ChangeAnim]
Type = ChangeAnim
Trigger1 = (IsHelper(30000)) && (Time = 0)
Value = Anim+30000

[State 1301, StateTypeSet]
type = statetypeset
trigger1 = IsHelper(30000)
physics = N

[State 1301, NotHitBy]
Type = NotHitBy
Trigger1 = IsHelper(30000)
Value = SCA
IgnoreHitPause = 1

[State 1301, AssertSpecial]
Type = AssertSpecial
Trigger1 = IsHelper(30000)
Flag = Invisible
IgnoreHitPause = 1

[State 1301, BindtoRoot]
Type = BindToRoot
Trigger1 = IsHelper(30000)
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 1301, DestroySelf]
Type = DestroySelf
TriggerAll = IsHelper(30000)
Trigger1 = AnimTime = 0
trigger1 = Var(49) <= 0
trigger2 = AnimElemTime(3) > 0
trigger2 = pos y >= -(vel y)
trigger3 = Root,MoveType = H
trigger4 = Root,Stateno != 1301
trigger5 = Root,Anim != 1301

[State 1301, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1302

[StateDef 1302]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
sprpriority = 2
anim = 1302

[State 1302, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1302, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1302, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 1302, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1303]
type = A
movetype = H
physics = N
sprpriority=1

[State 1303, ChangeAnim2]
type = Changeanim2
trigger1 = !SelfAnimExist(5012)
value = 5012

[State 1303, ChangeAnim]
type = ChangeAnim
trigger1 = SelfAnimExist(5012)
value = 5012

[State 1303, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = anim

[State 1303, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver=0
value = 1

[State 1303, VelSet]
type = VelSet
trigger1 = 1
y = 15
persistent = 0

[State 1303, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 1304

[StateDef 1304]
type = A
movetype = H
physics = N
sprpriority = 1

[State 1304]
type = PosSet
trigger1 = time = 0
y = 0

[State 1304, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 1304, VelSet]
type = VelSet
trigger1 = time = 0
x = -4
y = -10.5

[State 1304, VelAdd]
type = Veladd
trigger1 = 1
y = 0.65

[State 1304, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 1304, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 1304, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

[StateDef 1305]
type = A
movetype = I
physics = N
anim = 1103
sprpriority = 4

[State 1305, VarAdd]
type = VarAdd
trigger1 = Time > 4
trigger1 = !(Parent,HitPauseTime)
var(2) = 1

[State 1305, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) <= 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)
ignorehitpause = 1

[State 1305, ChangeAnim]
type = ChangeAnim
trigger1 = AnimElemTime(5) > 0
trigger1 = AnimElemTime(7) < 0
trigger1 = Parent,HitPauseTime
value = Anim
elem = AnimElemNo(0)-1
ignorehitpause = 1

[State 1305, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1305, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 1305, BindToRoot]
type = BindToRoot
trigger1 = IsHelper(1305)
pos = ceil(246*const(size.xScale)),ceil(-501*const(size.yScale))
ignorehitpause = 1

[State 1305, BindToRoot]
type = BindToRoot
trigger1 = IsHelper(1306)
pos = ceil(308*const(size.xScale)),ceil(27*const(size.yScale))
ignorehitpause = 1

[State 1305, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 2-(Var(2)*0.125),6+(Var(2)*0.25)

[State 1305, AngleSet]
type = AngleSet
trigger1 = IsHelper(1305)
trigger1 = Time = 0
value = -40

[State 1305, AngleSet]
type = AngleSet
trigger1 = IsHelper(1306)
trigger1 = Time = 0
value = -130

[State 1305, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1305)
trigger1 = Root,StateNo != 1300
trigger2 = IsHelper(1306)
trigger2 = Root,StateNo != 1301
trigger3 = Root,Movetype = H
trigger4 = Animtime = 0

[StateDef 1400]
type = S
movetype = I
physics = S
ctrl = 0
anim = 1400
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1400, VarSet]
type = VarSet
trigger1 = time = 0
v = 48
value = 0

[State 1400, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1400,0+Random%3
channel = 0

[State 1400, Helper]
type = Helper
trigger1 = Time = 0
ID = 1401
pos = 30,-40
postype = Front
stateno = 1401
helpertype = normal
name = "Leafa"
keyctrl = 0
ownpal = 1
supermovetime = 1

[State 1400, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 1401]
type = A
movetype = I
physics = N
velset = 0,0
ctrl = 0
anim = 1401
sprpriority = 0

[State 1401, NotHitBy]
type = NotHitBy
trigger1 = Time < 9
value = SCA

[State 1401, NotHitBy]
type = NotHitBy
trigger1 = Time >= 9
value = ,NT,ST,HT

[State 1401, HitOverride]
type = HitOverride
trigger1 = Time >= 9
attr = SCA,NA,SA,HA,NP,SP,HP
time = -1
StateNo = 1405

[State 1401, VelSet]
type = VelSet
trigger1 = time >= 0
x = -8
y = -2

[State 1401, ChangeState]
type = ChangeState
trigger1 = Time >= 10
value = 1402 

[StateDef 1402]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1402
sprpriority = 0

[State 1402, PosAdd]
type = PosAdd
trigger1 = AnimElem = 11
x = -40
y = 60

[State 1402, Helper]
type = Helper
trigger1 = Time = 5
helpertype = Normal
name = "Zig Zag"
pos = 40,-150
postype = Front
stateno = 1407
ID = 1407
ownpal = 1
ignorehitpause = 1

[State 1402, Helper]
type = Helper
trigger1 = Time = 10
helpertype = Normal
name = "Zig Zag"
pos = -80,-210
postype = Front
stateno = 1408
ID = 1408
ownpal = 1
ignorehitpause = 1

[State 1402, Helper]
type = Helper
trigger1 = Time = 15
helpertype = Normal
name = "Zig Zag"
pos = 0,-45
postype = Front
stateno = 1409
ID = 1409
ownpal = 1
ignorehitpause = 1

[State 1402, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1403 

[StateDef 1403]
type = A
movetype = I
physics = N
velset = 0,0
ctrl = 0
anim = 1403
sprpriority = 0

[State 1403, VelSet]
type = VelSet
trigger1 = time >= 0
x = -1
y = -1

[State 1403, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1404 

[StateDef 1404]
type = A
movetype = A
physics = N
velset = 0,0
ctrl = 0
anim = 1404
sprpriority = 0

[State 1404, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1401)
trigger1 = NumHelper(1401)
trigger1 = Helper(1401),MoveHit = 1
var(45) = 12-27*(!!Root,Var(46))

[State 1404, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1401)
trigger1 = NumHelper(1401)
trigger1 = Helper(1401),MoveGuarded = 1
var(45) = 6-21*(!!Root,Var(46))

[State 1404, VelSet]
type = VelSet
trigger1 = Time > 5
trigger1 = Time <= 10
x = 3

[State 1404, VelSet]
type = VelSet
trigger1 = Time > 10
x = 30

[State 1404, PlaySnd]
type = PlaySnd
trigger1 = time = 11
value = S1410,0+Random%4
channel = 1

[State 1404, PlaySnd]
type = PlaySnd
trigger1 = time = 11
value = S100,17

[State 1404, Helper]
type = Helper
trigger1 = Time = 11
helpertype = Normal
name = "Leafa Slash"
pos = 0,-60
postype = P1
stateno = 1406
ID = 1406
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 1404, Helper]
type = Helper
trigger1 = Time = 10
helpertype = Normal
name = "Leafa Dash"
pos = 0,-40
postype = P1
stateno = 1410
ID = 1410
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 1404, HitDef]
type = HitDef
trigger1 = !MoveContact
damage = ceil(IfElse(Root,Var(10),96,80)*(root,fvar(1)*root,fvar(2))),8
attr = A,SA
animtype = Up
guardflag = MA
hitflag = MAF
pausetime = 5,8
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-18
air.velocity = 0,-18
yaccel = .55
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
sprpriority = 0

[State 1404, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8053
stateno = 8053
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1404, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1404, VarSet]
type = VarSet
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1404, Helper]
type = Helper
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1404, DestroySelf]
type = DestroySelf
trigger1 = FrontEdgeBodyDist <= -60

[StateDef 1405]
type = A
movetype = H
physics = N
ctrl = 0
anim = 1407
velset = 0,0

[State 1405, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1430,0+Random%5
Channel = 1

[State 1405, VelSet]
type = Velset
trigger1 = Time > 0
X = -5
Y = -10

[State 1405, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0

[StateDef 1406]
Type = A
Movetype = I
Physics = N
Anim = 1406
SprPriority = 10
VelSet = 0,0

[State 1406, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1406, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1406, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1406, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 9
Scale = 50,0.25

[State 1406, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 10
Scale = 50,0.25-((Time-10)*0.05)

[State 1406, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 15

[StateDef 1407]
Type = A
Movetype = I
Physics = N
Anim = 1405
SprPriority = 5
VelSet = 0,0

[State 1407, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1407, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1407, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1407, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1407, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 0+(Time*0.2),1

[State 1407, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 5
trigger1 = Time <= 14
Scale = 1,1

[State 1407, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 15
Scale = 1,1-((Time-15)*0.2)

[State 1407, AngleSet]
type = AngleSet
trigger1 = IsHelper(1407)
value = -205

[State 1407, DestroySelf]
Type = DestroySelf
Trigger1 = Time >= 20

[StateDef 1408]
Type = A
Movetype = I
Physics = N
Anim = 1405
SprPriority = 5
VelSet = 0,0

[State 1408, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1408, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1408, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1408, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1408, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 0+(Time*0.25),2

[State 1408, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 5
trigger1 = Time <= 9
Scale = 1.25,2

[State 1408, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 10
Scale = 1.25,2-((Time-10)*0.4)

[State 1408, AngleSet]
type = AngleSet
trigger1 = IsHelper(1408)
value = -70

[State 1408, DestroySelf]
Type = DestroySelf
Trigger1 = Time >= 15

[StateDef 1409]
Type = A
Movetype = I
Physics = N
Anim = 1405
SprPriority = 5
VelSet = 0,0

[State 1409, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1409, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1409, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1409, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1409, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 0+(Time*0.4),4

[State 1409, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 5
Scale = 2,4-((Time-5)*0.8)

[State 1409, AngleSet]
type = AngleSet
trigger1 = IsHelper(1409)
value = -205

[State 1409, DestroySelf]
Type = DestroySelf
Trigger1 = Time >= 10

[StateDef 1410]
Type = A
Movetype = I
Physics = N
Anim = 1408
SprPriority = 5
VelSet = 0,0

[State 1410, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1410, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1410, PalFX]
type = PalFX
trigger1 = 1
mul = 0,255,0
time = -1
ignorehitpause = 1

[State 1410, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0

[StateDef 1420]
type = S
movetype = I
physics = S
ctrl = 0
anim = 1400
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1420, VarSet]
type = VarSet
trigger1 = time = 0
v = 48
value = 0

[State 1420, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1400,0+Random%3
channel = 0

[State 1420, Helper]
type = Helper
trigger1 = Time = 0
ID = 1421
pos = -30,-50
postype = Back
stateno = 1421
helpertype = normal
name = "Leafa2"
keyctrl = 0
ownpal = 1
supermovetime = 1

[State 1420, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 1421]
type = A
movetype = I
physics = N
velset = 0,0
ctrl = 0
anim = 1420
sprpriority = 0

[State 1421, NotHitBy]
type = NotHitBy
trigger1 = 1
value = ,NT,ST,HT

[State 1421, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,NA,SA,HA,NP,SP,HP
time = -1
StateNo = 1405

[State 1421, VelSet]
type = VelSet
trigger1 = time >= 0
x = 8
y = 1

[State 1421, ChangeState]
type = ChangeState
trigger1 = Time >= 15
value = 1422

[StateDef 1422]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1421
sprpriority = 0

[State 1422, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1421)
trigger1 = NumHelper(1421)
trigger1 = Helper(1421),MoveHit = 1
var(45) = 5-20*(!!Root,var(46))

[State 1422, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1421)
trigger1 = NumHelper(1421)
trigger1 = Helper(1421),MoveGuarded = 1
var(45) = 3-18*(!!Root,var(46))

[State 1422, NotHitBy]
type = NotHitBy
trigger1 = 1
value = ,NT,ST,HT

[State 1422, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,NA,SA,HA,NP,SP,HP
time = -1
StateNo = 1405

[State 1422, VelSet]
type = VelSet
trigger1 = time >= 0
x = 0.25
y = 0.25

[State 1422, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S100,18

[State 1422, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1410,0+Random%4
channel = 1

[State 1422, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wind"
pos = 80,0
postype = p1
stateno = 1424
ID = 1424
ownpal = 1
ignorehitpause = 1

[State 1422, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wind"
pos = 120,-20
postype = p1
stateno = 1424
ID = 1425
ownpal = 1
ignorehitpause = 1

[State 1422, Helper]
type = Helper
trigger1 = Time = 2
helpertype = Normal
name = "Wind"
pos = 180,-60
postype = p1
stateno = 1424
ID = 1426
ownpal = 1
ignorehitpause = 1

[State 1422, Helper]
type = Helper
trigger1 = Time = 4
helpertype = Normal
name = "Wind"
pos = 180,-100
postype = p1
stateno = 1424
ID = 1427
ownpal = 1
ignorehitpause = 1

[State 1422, HitDef]
type = HitDef
trigger1 = Time = 1
trigger2 = Time = 4
trigger3 = Time = 7
attr = A,SP
animtype  = Hard
damage = ceil(IfElse(Root,Var(10),48,40)*(root,fvar(1)*root,fvar(2))),4
hitflag = MAF
guardflag = MA
pausetime = 1,10
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = high
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -2,-10
air.velocity = -2,-10
ground.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
yaccel = 0.5
sprpriority = 0

[State 1422, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1422, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 1422, VarSet]
type = VarSet
trigger1 = NumEnemy
trigger1 = MoveContact != 1
var(10) = (EnemyNear,MoveType = A)

[State 1422, Helper]
type = Helper
trigger1 = MoveContact = 1 && NumTarget && Var(10)
trigger1 = !(Target,HitShakeOver)
helpertype = Normal
stateno = 8700
ID = 8700
name = "Counter"
postype = P1
pos = 0,0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
persistent = 0

[State 1422, ChangeState]
type = ChangeState
trigger1 = Time >= 45
value = 1423

[StateDef 1423]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1407
velset = 0,0
sprpriority = 0

[State 1423, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S100,17

[State 1423, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Leafa Dash"
pos = 40,-80
postype = P1
stateno = 1425
ID = 1428
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 1423, VelSet]
type = Velset
trigger1 = Time > 0
X = -4
Y = -20

[State 1423, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0

[StateDef 1424]
Type = A
Movetype = I
Physics = N
Anim = 1422
SprPriority = 5
VelSet = 0,0

[State 1424, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1424, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1424, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1424, PalFX]
type = PalFX
trigger1 = 1
mul = 0,255,0
time = -1
ignorehitpause = 1

[State 1424, AngleDraw]
Type = AngleDraw
trigger1 = !IsHelper(1424)
Trigger1 = !IsHelper(1427)
Scale = 4,3

[State 1424, AngleDraw]
Type = AngleDraw
Trigger1 = IsHelper(1424)
Scale = 7,3

[State 1424, AngleDraw]
Type = AngleDraw
Trigger1 = IsHelper(1427)
Scale = 6,4

[State 1424, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = -15

[State 1424, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0

[StateDef 1425]
Type = A
Movetype = I
Physics = N
Anim = 1408
SprPriority = 2
VelSet = 0,0

[State 1425, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1425, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 1425, PalFX]
type = PalFX
trigger1 = 1
mul = 0,255,0
time = -1
ignorehitpause = 1

[State 1425, AngleDraw]
Type = AngleDraw
Trigger1 = 1
Scale = 1,1

[State 1425, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = 110

[State 1425, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0

[StateDef 2000]
type = S
movetype = A
physics = N
ctrl = 0
sprpriority = 2
velset = 0,0
facep2 = 1

[State 2000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(46) = 0
trigger1 = Time = 0
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = Time = 0
value = 2000

[State 2000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 0
value = 2002

[State 2000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

[State 2000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -150

[State 2000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 1
v = 47
Value = -1

[State 2000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -1000

[State 2000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2000, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 6

[State 2000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 2000, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2000, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2000, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 1011
ID = 2000
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S2000,0
channel = 0

[State 2000, PlaySnd]
type = PlaySnd
triggerall = Anim = 2000
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
value = S100,10

[State 2000, PlaySnd]
type = PlaySnd
triggerall = Anim = 2002
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
trigger5 = AnimElem = 11
trigger6 = AnimElem = 13
trigger7 = AnimElem = 15
trigger8 = AnimElem = 17
value = S100,10

[State 2000, HitDef]
type = HitDef
triggerall = Anim = 2000
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
damage = IfElse(Var(10),24,20),4
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0

[State 2000, HitDef]
type = HitDef
triggerall = Anim = 2002
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
trigger5 = AnimElem = 11
trigger6 = AnimElem = 13
trigger7 = AnimElem = 15
trigger8 = AnimElem = 17
damage = IfElse(Var(10),28,15),3
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0

[State 2000, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8053
stateno = 8053
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 2000, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 2000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 2001

[StateDef 2001]
type = S
movetype = A
physics = N
ctrl = 0
anim = 2001
sprpriority = 2
velset = 0,0

[State 2001, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2001, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2001, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 211
ID = 2001
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2001, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,12

[State 2001, PosAdd]
type = PosAdd
trigger1 = AnimElem = 3
x = 25

[State 2001, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = IfElse(Var(10),48,40),5
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 9,14
guard.pausetime = 10,10
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -9,9
air.velocity = -9,9
guard.velocity = -6
airguard.velocity = -3,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
p2stateno = 2002
p2facing = 1

[State 2001, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 10
size.xscale = 1
size.yscale = 1

[State 2001, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 75)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 10
size.xscale = 1
size.yscale = 1

[State 2001, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 2002]
type = A
movetype = H
physics = N
sprpriority=1

[State 2002, ChangeAnim2]
type = Changeanim2
trigger1 = !SelfAnimExist(5012)
value = 5012

[State 2002, ChangeAnim]
type = ChangeAnim
trigger1 = SelfAnimExist(5012)
value = 5012

[State 2002, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = anim

[State 2002, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver=0
value = 1

[State 2002, VelSet]
type = VelSet
trigger1 = 1
y = 15
persistent = 0

[State 2002, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 2003

[StateDef 2003]
type = A
movetype = H
physics = N
sprpriority = 1

[State 2003]
type = PosSet
trigger1 = time = 0
y = 0

[State 2003, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 2003, VelSet]
type = VelSet
trigger1 = time = 0
x = -1.5
y = -12.5

[State 2003, VelAdd]
type = Veladd
trigger1 = 1
y = 0.65

[State 2003, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 2003, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 2003, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

[StateDef 2100]
type = A
movetype = I
physics = N
anim = 43
velset = 0,0
ctrl = 0
facep2 = 1
sprpriority = 2

[State 2100, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

[State 2100, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -1000

[State 2100, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 2100, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2100, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2100, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,2
channel = 0

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S40,3

[State 2100, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2100, VelSet]
type = VelSet
trigger1 = Time = 0
x = -7
y = -3.5

[State 2100, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.55

[State 2100, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 2101

[StateDef 2101]
type = S
movetype = A
physics = S
ctrl = 0
anim = 2100
sprpriority = 2

[State 2101, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -150

[State 2101, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2100, NotHitBy]
type = NotHitBy
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = SCA
time = 4

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = S10000,3

[State 2100, Helper]
type = Helper
trigger1 = Var(46) = 1
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2101, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2101, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2101, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 2101, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 2101, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(4) > 0 
value = 0

[State 2101, Explod]
type = Explod
trigger1 = Var(46) = 0
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 0
trigger1 = AnimElem = 1
value = S40,0

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,0
channel = 0

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 2101, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1104
ID = 2101
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2101, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 2101, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 20
y = -5

[State 2101, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 2101, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 2101, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.65

[State 2101, HitDef]
type = HitDef
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = IfElse(Var(10),60,50),5
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 3,6
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -91))
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0

[State 2101, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1112

[StateDef 2200]
type = S
movetype = A
physics = N
ctrl = 0
anim = 2200
sprpriority = 2
velset = 0,0
facep2 = 1

[State 2200, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

[State 2200, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -150

[State 2200, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -1000

[State 2200, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2200, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 6

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 2200, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2200, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2200, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2200, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S1200,0+Random%3
channel = 0

[State 2200 VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 30

[State 2200, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1202
ID = 1220
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 2200
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2200, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = IfElse(Var(10),60,50),5
attr = S,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -65))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -4.5,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
forcenofall = 1
p1stateno = 2205
p2stateno = 4107
p2facing = 1

[State 2200, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 2206

[StateDef 2201]
type = S
movetype = A
physics = S
ctrl = 0
anim = 2201
sprpriority = 2
velset = 0,0

[State 2201, Turn]
type = Turn
trigger1 = Time = 0

[State 2201, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2201, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2201, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2201, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 2201, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 1202
ID = 1220
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 2201, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 2201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2201, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2201, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0
x = 25

[State 2201, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S,HA
damage = IfElse(Var(10),60,50),5
guardflag = MA
hitflag = MAF
priority = 7,hit
animtype = hard
ground.type = High
pausetime = 1,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := ceil(enemy,Pos Y-50)))
hitsound = S200,5
guardsound = S300,0
ground.slidetime = 23
ground.hittime = 23
airguard.ctrltime = 13
ground.velocity = -10.4
air.velocity = -1.5,-1.4
guard.velocity = -6.4
airguard.velocity = -3.0, -1.9
yaccel = 0.4
fall = 0
fall.recover = 0
getpower = 0
ground.cornerpush.veloff = -0
envshake.time = 10
envshake.ampl = 3
p2stateno = 4107
p2facing = 1

[State 2201, ChangeState]
type = ChangeState
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time >= 15
value = 2202

[State 2201, ChangeState]
type = ChangeState
trigger1 = Var(46) = 0
trigger1 = Time >= 15
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = Time >= 15
value = 2203

[StateDef 2202]
type = S
movetype = A
physics = S
ctrl = 0
anim = 2201
sprpriority = 2
velset = 0,0

[State 2202, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 0
v = 47
Value = -1

[State 2202, Turn]
type = Turn
trigger1 = Time = 0

[State 2202, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2202, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2202, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2202, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 2202, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 1202
ID = 1220
sprpriority = 5
postype = p1
pos = ceil(9*const(size.xscale)),ceil(-14*const(size.yscale))
scale = 6*const(size.xscale),4*const(size.xscale)
bindtime = -1
ownPal = 1
removeongethit = 1
ignorehitpause = 1

[State 2202, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = Normal
name = "Shooting Star"
pos = 0,0
stateno = 1202
ID = 2202
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2202, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2202, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0
x = 25

[State 2202, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S,HA
damage = IfElse(Var(10),48,40),5
guardflag = MA
hitflag = MAF
priority = 7,hit
animtype = hard
ground.type = High
pausetime = 1,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := ceil(enemy,Pos Y-50)))
hitsound = S200,5
guardsound = S300,0
ground.slidetime = 23
ground.hittime  = 23
airguard.ctrltime = 13
ground.velocity = -10.4
air.velocity = -1.5,-1.4
guard.velocity = -6.4
airguard.velocity = -3.0,-1.9
yaccel = 0.4
fall = 0
fall.recover = 0
getpower = 0
ground.cornerpush.veloff = -0
envshake.time = 10
envshake.ampl = 3
p2stateno = 4107
p2facing = 1

[State 2202, ChangeState]
type = ChangeState
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time >= 15
value = 2202

[State 2202, ChangeState]
type = ChangeState
trigger1 = Var(46) = 1
trigger1 = Var(47) = 0
trigger1 = Time >= 15
value = 2203

[StateDef 2203]
type = S
movetype = A
physics = S
ctrl = 0
anim = 2201
sprpriority = 2
velset = 0,0

[State 2203, Turn]
type = Turn
trigger1 = Time = 0

[State 2203, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2203, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2203, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2203, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 2203, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2203, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0
x = 30

[State 2203, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 4008
ID = 4008
pos = 120,-50
scale = 1,0.5
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 2203, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S420,0+Random%6
channel = 0

[State 2203, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S,HA
damage = IfElse(Var(10),60,50),5
guardflag = LA
hitflag = MAF
priority = 7,hit
animtype = hard
ground.type = Low
pausetime = 1,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := ceil(enemy,Pos Y-50)))
hitsound = S200,11
guardsound = S300,0
ground.slidetime = 18
ground.hittime  = 18
airguard.ctrltime = 16
ground.velocity = -1,-12
air.velocity = -1.0,-10
guard.velocity = -7.6
airguard.velocity = -3.5, -1.9
yaccel = 0.65
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
ground.cornerpush.veloff = -0
envshake.time = 10
envshake.ampl = 34

[State 2203, ChangeState]
type = ChangeState
trigger1 = Time >= 21
value = 2204

[StateDef 2204]
type = S
movetype = I
physics = S
ctrl = 0
anim = 2202
sprpriority = 2
velset = 0,0

[State 2204, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2204, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2204, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,12

[State 2204, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 2205]
type = S
movetype = I
physics = N
anim = 2203
sprpriority = 1
ctrl = 0
velset = 20,0

[State 2205, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2205, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2205, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2205, ChangeState]
type = ChangeState
trigger1 = Time >= 10
value = 2201

[StateDef 2206]
type = S
movetype = I
physics = N
anim = 1201
sprpriority = 1
velset = 0,0
ctrl = 0

[State 2206, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2206, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2206, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pos = 20,0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 2206, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,6

[State 2206, VelSet]
type = VelSet
trigger1 = Time <= 4
x = 2

[State 2206, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1

[StateDef 2230]
type = A
movetype = A
physics = N
ctrl = 0
anim = 2230
sprpriority = 2
velset = 0,0
facep2 = 1

[State 2230, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

[State 2230, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -150

[State 2230, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -1000

[State 2230, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2230, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 6

[State 2230, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 2230, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2230, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2230, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,7

[State 2230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 2230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S1200,2+Random%2
channel = 0

[State 2230, VelMul]
type = VelMul
trigger1 = AnimElemTime(3) < 0
x = 0.8
y = 0.8

[State 2230, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.55

[State 2230, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 15
y = 12

[State 2230, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1234
ID = 2230
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2230, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = IfElse(Var(10),156,130),13
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -9,15
air.velocity = -9,15
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0

[State 2230, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 2230, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 2230, ChangeState]
type = ChangeState
trigger1 = Var(46) = 0
trigger1 = vel Y > 0 && pos Y >= 0
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = vel Y > 0 && pos Y >= 0
value = 2231

[State 2230, ChangeState]
type = ChangeState
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = vel Y > 0 && pos Y >= 0
value = 2232

[StateDef 2231]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
sprpriority = 2
anim = 2231

[State 2231, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2231, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2231, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 2231, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 2231, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 2231, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 2232]
type = S
movetype = A
physics = S
ctrl = 0
anim = 2232
sprpriority = 2

[State 2232, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 0
v = 47
Value = -1

[State 2232, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 2232, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 2232, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(4) > 0 
value = 0

[State 2232, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2232, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2232, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 2232, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 2232, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S1100,0+Random%2
channel = 0

[State 2232, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 2232, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 2232, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Flashing"
pos = 0,0
stateno = 1104
ID = 2232
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2232, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 2232, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 20
y = -5

[State 2232, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 2232, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 2232, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.65

[State 2232, HitDef]
type = HitDef
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
damage = IfElse(Var(10),14,12),3
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 3,6
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -91))
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = -2.5,-13
air.velocity = -1.5,-12
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0

[State 2232, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 2231

[StateDef 3000]
Type = S
Physics = S
MoveType = I
Anim = 3000
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 3000, VarAdd]
type = VarAdd
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 3
v = 47
Value = -3

[State 3000, VarSet]
type = VarSet
trigger1 = Var(46) = 0
trigger1 = AnimElem = 3
var(49) = 240
ignorehitpause = 1

[State 3000, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = AnimElem = 3
var(49) = 480
ignorehitpause = 1

[State 3000, NotHitBy]
type = NotHitBy
trigger1 = Anim = 3000
value = SCA

[State 3000, SuperPause]
type = SuperPause
trigger1 = Anim = 3000
trigger1 = time = 0
time = 56
movetime = 56
anim = -1
p2defmul = 1
darken = 0

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,6

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S3000,0+Random%3
channel = 0

[State 3000, helper]
type = Helper
trigger1 = AnimElem = 3
stateno = 3001
ID = 3001
Name = "TH Meter"
postype = P1
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 3000, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
stateno = 3010
ID = 3010
name = "Effect"
postype = p1
pos = 0,-90
supermovetime = 255
size.xscale = 0.335
size.yscale = 0.335
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3011
ID = 3011
name = "Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3012
ID = 3012
Name = "Trigger"
postype = Left
pos = 320,-140
facing = 1
sprpriority = 1
ownpal = 1
ignorehitpause = 1
persistent = 0
Pausemovetime = 9999
SuperMovetime = 9999

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3013
ID = 3013
Name = "Trigger"
postype = Left
pos = 320,-100
facing = 1
sprpriority = 1
ownpal = 1
ignorehitpause = 1
persistent = 0
Pausemovetime = 9999
SuperMovetime = 9999

[State 3000, Helper]
Type = Helper
Trigger1 = AnimElem = 3
StateNo = 3002
ID = 3002
Name = "Asuna2"
Pos = 0,0
PosType = P1
Ownpal = 1
IgnoreHitPause = 1
SuperMoveTime = 99999
PauseMovetime = 99999

[State 3000, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 3000
trigger1 = Time >= 45
value = 3001

[State 3000, ChangeState]
type = ChangeState
trigger1 = Anim = 3001
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 3001]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 3001, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

[State 3001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 3001, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,0

[State 3001, Explod]
type = explod
trigger1 = Numexplod(6017)=0
ID = 6017
anim = IfElse(Teamside = 1,6017,6018)
pos = Ifelse(Teamside = 1,-10,10),15
postype = P1
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 3001, Explod]
type = explod
trigger1 = NumExplod(6019) = 0
id = 6019
anim = 6019
pos = Ifelse(Teamside = 1,-12,12),6
postype = P1
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 3001, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6019
Scale = .5*Root,Var(49)/480,0.50

[State 3001, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(49) <= 0
id = 6017

[State 3001, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(49) <= 0
id = 6019

[State 3001, DestroySelf]
type = DestroySelf
trigger1 = Root,Var(49) <= 0

[StateDef 3002]
Physics  = N
SprPriority = -2

[State 3002, VarSet]
Type = VarSet
Trigger1 = Time = 0
var(0) = Root,PrevStateNo

[State 3002, VarSet]
Type = VarSet
Trigger1 = (Anim = [200,400]) && (AnimTime = 0)
var(1) = 1

[State 3002, ChangeAnim]
Type = ChangeAnim
Trigger1 = Time = 0
Trigger1 = Root,Anim = 3000
Trigger1 = var(0) != [200,400]
Trigger2 = (Anim = [30200,31400]) && (AnimTime = 0)
Value = 0

[State 3002, ChangeAnim]
Type = ChangeAnim
Trigger1 = Time = 0
Trigger1 = Root,Anim = 3000
Trigger1 = (var(0) = [200,400])
Value = Var(0)

[State 3002, ChangeAnim]
Type = ChangeAnim
TriggerAll = Anim != Root,Anim
TriggerAll = SelfAnimExist(Root,Anim)
TriggerAll = Root,MoveType != H
Trigger1 = (var(0) != [200,400]) || (var(1) = 1)
trigger2 = Root,Anim = 99999
Value = Root,Anim
Elem = Root,AnimElemNo(0)

[State 3002, ChangeAnim]
Type = ChangeAnim
Trigger1 = Root,HitPauseTime != 0
Value = Anim
Elem = AnimElemNo(0)

[State 3002, ChangeAnim]
Type = ChangeAnim
TriggerAll = Anim != Root,Anim
Trigger1 = !SelfAnimExist(Root,Anim)
Trigger2 = Root,MoveType = H
Value = 99999

[State 3002, AfterImage]
Type = AfterImage
trigger1 = Time = 0
Trans = None
Time = 2
Length = 11
Timegap = 1
Framegap = 9
PalBright = 0,0,0
PalContrast = 128,128,128
PalAdd = 0,0,0
PalMul = 1,1,1
PalColor = 256

[State 3002, AfterImageTime]
Type = AfterImageTime
Trigger1 = 1
Time = 2

[State 3002, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 3002, PlayerPush]
Type = PlayerPush
Trigger1 = 1
Value = 0

[State 3002, Turn]
Type = Turn
Trigger1 = Facing != Root,Facing

[State 3002, BindtoRoot]
Type = BindToRoot
Trigger1 = 1
Time = 1
Pos = 0,0
IgnoreHitPause = 1

[State 3002, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Invisible

[State 3002, DestroySelf]
Type = DestroySelf
Trigger1 = Root,Var(49) <= 0

[StateDef 3010]
Type = A
Physics = N
MoveType = I
Anim = 3010
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 3010, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = 6*(random%60)

[State 3010, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 3010, AngleDraw]
type = AngleDraw
trigger1 = time < 8
scale = (0.0625*time),(0.0625*time)

[State 3010, AngleDraw]
type = AngleDraw
trigger1 = time >= 8
scale = 0.5,0.5

[State 3010, Trans]
type = Trans
trigger1 = time < 16
trans = AddAlpha
alpha = 256, 256

[State 3010, Trans]
type = Trans
trigger1 = time >= 16
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 3010, Explod]
type = explod
trigger1 = Time = 0
anim = 3011
ID = 3011
sprpriority = 5
postype = p1
facing = IfElse(random<500,-1,1)
vfacing = IfElse(random<500,-1,1)
removetime = 16
supermovetime = -1

[State 3010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(3011)
ID = 3011
scale = 2-(.125*time), 2-(.125*time)
trans = AddAlpha
alpha = IfElse(time<4, 64*time, 256), 256

[State 3010, Explod]
type = Explod
trigger1 = time = 16
anim = 3012
ID = 3012
sprpriority = 5
postype = p1
removetime = 32
supermovetime = -1

[State 3010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(3012)
ID = 3012
scale = (.1*(time-16)), (.1*(time-16))
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 3010, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 26

[State 3010, DestroySelf]
type = DestroySelf
trigger1 = time >= 26

[StateDef 3011]
Type = S
Physics = N
MoveType = I
Anim = 99999
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 3011, BGPalFX]
type = BGPalFX
trigger1 = time > 0
trigger1 = time <= 51
time = 1
color= 5*time
mul = 5*time, 5*time, 5*time

[State 3011, Explod]
type = Explod
trigger1 = time = 0
anim = 3013
id = 3013
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-40)
postype = left
sprpriority = -8
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 3011, Explod]
type = Explod
trigger1 = time = 0
anim = 3014
ID = 3014
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-40)
postype = left
sprpriority = -7
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 3011, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 3013
Scale = 0.5,0.5-((time-65)*0.1)

[State 3011, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 3014
Scale = 0.5,0.5-((time-65)*0.1)

[State 3011, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
ID = 3013

[State 3011 RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
ID = 3014

[State 3011, DestroySelf]
type = DestroySelf
trigger1 = Time >= 70

[StateDef 3012]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = 1

[State 3012, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 3012, Explod]
type = Explod
Trigger1 = TeamSide = 1
Trigger1 = Time = 0
Anim = 3015
id = 3015
Pos = 0,ceil((1.33*gameheight/gamewidth)*54)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3012, Explod]
type = Explod
Trigger1 = TeamSide = 2
Trigger1 = Time = 0
Anim = 3015
id = 3015
Pos = 0,ceil((1.33*gameheight/gamewidth)*54)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3012, RemoveExplod]
type = RemoveExplod
ID = 3015
trigger1 = Time >= 73

[State 3012, DestroySelf]
type = DestroySelf
trigger1 = Time >= 73

[StateDef 3013]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = 1

[State 3013, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 3013, Explod]
type = Explod
Trigger1 = TeamSide = 1
Trigger1 = Time = 0
Anim = 3016
id = 3016
Pos = 198,ceil((1.33*gameheight/gamewidth)*114)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3013, Explod]
type = Explod
Trigger1 = TeamSide = 2
Trigger1 = Time = 0
Anim = 3016
id = 3016
Pos = 198,ceil((1.33*gameheight/gamewidth)*114)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3013, RemoveExplod]
type = RemoveExplod
ID = 3016
trigger1 = Time >= 73

[State 3013, DestroySelf]
type = DestroySelf
trigger1 = Time >=73

[StateDef 4000]
type = S
movetype = A
physics = N
ctrl = 0
Velset = 0,0
anim = 4000
facep2 = 1

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 75

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
v = 45
Value = -350

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(49) > 0
trigger1 = Time = 0
var(49) = 120
ignorehitpause = 1

[State 4000, VarSet]
type = VarSet
trigger1 = Var(49) > 480
trigger1 = Time = 0
var(49) = 480
ignorehitpause = 1

[State 4000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -3000

[State 4000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 500

[State 4000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 43

[State 4000, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4000, Pause]
type = Pause
trigger1 = Time = 0
time = 43
movetime = 43

[State 4000, Helper]
Type = Helper
Trigger1 = Time = 0
StateNo = 10000
ID = 10000
Name = "Cut-In"
Pos = -22,-85
PosType = P1
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 99999
PauseMoveTime = 99999

[State 4000, Helper]
type = Helper
trigger1 = Time = 0
name = "EX2"
ID = 6210
stateno = 6210
pos = 0,-85
postype = p1
ownpal = 1
supermovetime = 99999
pausemovetime = 99999
ignorehitpause = 1

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,5

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S4000,0+Random%2
channel = 0

[State 4000, ChangeState]
type = ChangeState
trigger1 = Time >= 43
value = 4001

[StateDef 4001]
type = S
movetype = A
physics = N
ctrl = 0
Velset = 0,0
anim = 4001

[State 4001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4001, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,16

[State 4001, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 1
movecamera = 1,0

[State 4001, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 4009
ID = 4018
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4001, HitDef]
type = HitDef
trigger1 = Var(46) = 0
trigger1 = AnimElem = 4
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 4
damage = IfElse(Var(10),25,21),2
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,10
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1,-10
air.velocity = -1,-10
yaccel = .5
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getPower = 0
kill = 0
p2facing = 1

[State 4001, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = AnimElem = 4
damage = IfElse(Var(10),28,23),2
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1,-10
air.velocity = -1,-10
yaccel = .5
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getPower = 0
kill = 0
p2facing = 1

[State 4001, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = AnimElem = 4
damage = IfElse(Var(10),30,25),3
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1,-10
air.velocity = -1,-10
yaccel = .5
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getPower = 0
kill = 0
p2facing = 1

[State 4001, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 4
damage = IfElse(Var(10),32,27),3
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 4,Hit
hitsound = S200,5
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1,-10
air.velocity = -1,-10
yaccel = .5
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getPower = 0
kill = 0
p2facing = 1

[State 4001, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 4002

[StateDef 4002]
type = A
movetype = A
physics = N
ctrl = 0
Velset = 0,0
anim = 4002
Sprpriority = 3

[State 4002, VarSet]
type = VarSet
trigger1 = Time = 0
v = 3
value = 0
ignorehitpause = 1

[State 4002, VarAdd]
type = VarAdd
trigger1 = MoveContact
v = 3
value = 1
ignorehitpause = 1

[State 4002, VarSet]
type = VarSet
trigger1 = time = 0
v = 19
value = 0
ignorehitpause = 1

[State 4002, VarAdd]
type = VarAdd
trigger1 = Movecontact
v = 19
value = 1
ignorehitpause = 1

[State 4002, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4002, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 1
movecamera = 1,0
ignorehitpause = 1

[State 4002, MoveHitReset]
type = MoveHitReset
trigger1 = Movecontact
ignorehitpause = 1

[State 4002, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 4002, VelSet]
type = Velset
trigger1 = Time > 0
trigger1 = Time <= 14
y = -10

[State 4002, VelSet]
type = Velset
trigger1 = Time > 14
X = 10
Y = 10 - 1*(Var(3))
ignorehitpause = 1

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S40,1

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S4000,2
channel = 0

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,14

[State 4002, Helper]
type = Helper
trigger1 = Time = 17
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4008
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 17
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4009
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 19
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4010
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 19
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4011
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 21
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4012
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 21
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4013
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 23
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4014
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 23
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4015
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 25
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4016
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 25
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4008
ID = 4017
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 0
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) < 4
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = (time > 15)*(time%2 = 1)
trigger2 = Var(19) < 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),44,37),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -5,-10
guard.velocity = -4
air.velocity = -5,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 0
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) = 4
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = (time > 15)*(time%2 = 1)
trigger2 = Var(19) = 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),44,37),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -4,-10
guard.velocity = -4
air.velocity = -4,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
p2stateno = 4006
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) < 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),49,41),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -5,-10
guard.velocity = -4
air.velocity = -5,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) = 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),49,41),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -4,-10
guard.velocity = -4
air.velocity = -4,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
p2stateno = 4006
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) < 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),53,44),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -5,-10
guard.velocity = -4
air.velocity = -5,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) = 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),53,44),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -4,-10
guard.velocity = -4
air.velocity = -4,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
p2stateno = 4006
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) < 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),58,48),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -5,-10
guard.velocity = -4
air.velocity = -5,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
kill = 0

[State 4002, Hitdef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = (time > 15)*(time%2 = 1)
trigger1 = Var(19) = 4
attr = A, HA
hitflag	= MAF
guardflag = MA
damage = IfElse(Var(10),58,48),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 1,1
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,5
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 11
ground.hittime= 11
guard.hittime = 11
air.hittime = 11
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity= -4,-10
guard.velocity = -4
air.velocity = -4,8
airguard.velocity = -3,-4
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
getpower = 0
p2stateno = 4006
kill = 0

[State 4002, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 4003

[StateDef 4003]
type = S
movetype = A
physics = S
ctrl = 0
anim = 4003
velset = 0,0
sprpriority = 2

[State 4003, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4003, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 1
movecamera = 1,0
ignorehitpause = 1

[State 4003, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 4003, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

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

[State 4003, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 4003, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 4003, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,14

[State 4003, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S40,2

[State 4003, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
statetype = A
physics = N

[State 4003, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 10
y = -8

[State 4003, VelMul]
type = VelMul
trigger1 = AnimElemTime(4) < 0
x = 0.8

[State 4003, VelMul]
type = VelMul
trigger1 = AnimElemTime(5) = 0
x = 0.4

[State 4003, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(5) >= 0
y = 0.75

[State 4003, Helper]
type = Helper
trigger1 = Time = 26
helpertype = Normal
name = "Rosario"
pos = 0,0
postype = Back
stateno = 4011
ID = 4020
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4003, Helper]
type = Helper
trigger1 = Time = 26
helpertype = Normal
name = "Rosario"
Postype = Back
pos = 0,0
stateno = 4011
ID = 4021
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4003, Helper]
type = Helper
trigger1 = Time = 23
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4022
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 23
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4023
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 20
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4024
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 20
helpertype = Normal
name = "Rosario"
Postype = Back
pos = 0,0
stateno = 4011
ID = 4025
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 17
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4026
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 17
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4027
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 14
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4028
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4002, Helper]
type = Helper
trigger1 = Time = 14
helpertype = Normal
name = "Rosario"
pos = 0,0
Postype = Back
stateno = 4011
ID = 4029
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4003, HitDef]
type = HitDef
triggerall = Var(46) = 0
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
trigger4 = AnimElemTime(4) = 9
trigger5 = AnimElemTime(4) = 12
damage = IfElse(Var(10),24,20),2
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 1,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-8.5
air.velocity = 0,-8.5
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
kill = 0
getpower = 0

[State 4003, HitDef]
type = HitDef
triggerall = Var(46) = 1
triggerall = Var(47) = 0
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
trigger4 = AnimElemTime(4) = 9
trigger5 = AnimElemTime(4) = 12
damage = IfElse(Var(10),24,20),2
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 1,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-8.5
air.velocity = 0,-8.5
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
kill = 0
getpower = 0

[State 4003, HitDef]
type = HitDef
triggerall = Var(46) = 1
triggerall = Var(47) = 1
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
trigger4 = AnimElemTime(4) = 9
trigger5 = AnimElemTime(4) = 12
damage = IfElse(Var(10),26,22),2
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 1,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-8.5
air.velocity = 0,-8.5
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
kill = 0
getpower = 0

[State 4003, HitDef]
type = HitDef
triggerall = Var(46) = 1
triggerall = Var(47) = 2
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
trigger4 = AnimElemTime(4) = 9
trigger5 = AnimElemTime(4) = 12
damage = IfElse(Var(10),29,24),2
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 1,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-8.5
air.velocity = 0,-8.5
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
kill = 0
getpower = 0

[State 4003, HitDef]
type = HitDef
triggerall = Var(46) = 1
triggerall = Var(47) >= 3
trigger1 = AnimElemTime(4) = 0
trigger2 = AnimElemTime(4) = 3
trigger3 = AnimElemTime(4) = 6
trigger4 = AnimElemTime(4) = 9
trigger5 = AnimElemTime(4) = 12
damage = IfElse(Var(10),31,26),3
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAFD
pausetime = 1,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-8.5
air.velocity = 0,-8.5
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
kill = 0
getpower = 0

[State 4003, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 45)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 4003, Helper]
type = Helper
trigger1 = MoveGuarded  = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 45)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 4003, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 4004

[StateDef 4004]
type = S
movetype = A
physics = S
ctrl = 0
anim = 4004
sprpriority = 2
velset = 0,0

[State 4004, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = AnimElem = 6
v = 47
Value = -1

[State 4004, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = AnimElem = 6
v = 47
Value = -2

[State 4004, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 6
v = 47
Value = -3

[State 4004, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4004, Turn]
type = Turn
trigger1 = Time = 0

[State 4004, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 4004, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S4000,3
channel = 0

[State 4004, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 4004, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 4004, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 4004, VelSet]
type = VelSet
trigger1 = Time = 0
y = 0

[State 4004, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 4004, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 4004, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0
x = 30

[State 4004, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 4008
ID = 4008
pos = 120,-50
scale = 1,0.5
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 4001, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = Normal
name = "Shatter"
pos = 0,0
stateno = 4010
ID = 4019
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4001, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = Normal
name = "Shatter2"
pos = 0,0
postype = Left
stateno = 4012
ID = 4030
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4001, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = Normal
name = "Shatter2"
pos = 0,0
postype = Left
stateno = 4012
ID = 4031
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4004, HitDef]
type = HitDef
trigger1 = Var(46) = 0
trigger1 = AnimElem = 5
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 5
damage = IfElse(Var(10),120,100),10
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -60))
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-16
air.velocity = 0,-16
yaccel = 0.65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 20

[State 4004, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = AnimElem = 5
damage = IfElse(Var(10),132,110),10
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -60))
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-16
air.velocity = 0,-16
yaccel = 0.65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 20

[State 4004, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = AnimElem = 5
damage = IfElse(Var(10),144,120),10
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -60))
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-16
air.velocity = 0,-16
yaccel = 0.65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 20

[State 4004, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 5
damage = IfElse(Var(10),156,130),10
attr = A,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -60))
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-16
air.velocity = 0,-16
yaccel = 0.65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 20

[State 4004, ChangeState]
type = ChangeState
trigger1 = Time >= 30
value = 4005

[StateDef 4005]
type = S
movetype = I
physics = S
ctrl = 0
anim = 4005
sprpriority = 2
velset = 0,0

[State 4005, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4005, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,12

[State 4005, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 4006]
type = A
movetype = H
physics = N
sprpriority=1

[State 4006, ChangeAnim2]
type = Changeanim2
trigger1 = !SelfAnimExist(5012)
value = 5012

[State 4006, ChangeAnim]
type = ChangeAnim
trigger1 = SelfAnimExist(5012)
value = 5012

[State 4006, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = Anim

[State 4006, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver=0
value = 1

[State 4006, VelSet]
type = VelSet
trigger1 = 1
y = 15
persistent = 0

[State 4006, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 4007

[StateDef 4007]
type = A
movetype = H
physics = N
sprpriority = 1

[State 4007, PosSet]
type = PosSet
trigger1 = time = 0
y = 0

[State 4007, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 4007, VelSet]
type = VelSet
trigger1 = time = 0
x = -6
y = -10

[State 4007, VelAdd]
type = Veladd
trigger1 = 1
y = 0.65

[State 4007, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 4007, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 4007, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

[StateDef 4008]
Type = A
Movetype  = I
Physics = N
Anim = 4006
SprPriority = 10
VelSet = 0,0

[State 4008, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4008, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 4008, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 4008, PosSet]
type = PosSet
trigger1 = IsHelper(4008)
trigger2 = IsHelper(4009)
x = IfElse(Facing = 1,-140,140)
y = -200
ignorehitpause = 1

[State 4008, PosSet]
type = PosSet
trigger1 = IsHelper(4010)
trigger2 = IsHelper(4011)
x = IfElse(Facing = 1,-70,70)
y = -150
ignorehitpause = 1

[State 4008, PosSet]
type = PosSet
trigger1 = IsHelper(4012)
trigger2 = IsHelper(4013)
x = 0
y = -100
ignorehitpause = 1

[State 4008, PosSet]
type = PosSet
trigger1 = IsHelper(4014)
trigger2 = IsHelper(4015)
x = IfElse(Facing = 1,70,-70)
y = -50
ignorehitpause = 1

[State 4008, PosSet]
type = PosSet
trigger1 = IsHelper(4016)
trigger2 = IsHelper(4017)
x = IfElse(Facing = 1,140,-140)
y = 0
ignorehitpause = 1

[State 4008, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 50,0.25

[State 4008, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 5
Scale = 50,0.25-((Time-5)*0.025)

[State 4008, AngleSet]
type = AngleSet
trigger1 = IsHelper(4008)
trigger2 = IsHelper(4012)
trigger3 = IsHelper(4016)
value = -40

[State 4009, AngleSet]
type = AngleSet
trigger1 = IsHelper(4009)
trigger2 = IsHelper(4013)
trigger3 = IsHelper(4017)
value = 220

[State 4008, AngleSet]
type = AngleSet
trigger1 = IsHelper(4010)
trigger2 = IsHelper(4014)
value = -50

[State 4009, AngleSet]
type = AngleSet
trigger1 = IsHelper(4011)
trigger2 = IsHelper(4015)
value = 200

[State 4008, Explod]
type = Explod
trigger1 = Time = 0
anim = 4009
ID = 4009
pos = 0,0
scale = 0.5,0.5
postype = p1
sprpriority = 15
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 4008, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 15

[StateDef 4009]
type = A
movetype = I
physics = N
anim = 4011
ctrl = 0
velset = 0,0
sprpriority = 4

[State 4009, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 4009, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 4009, Scale]
type = AngleDraw
trigger1 = 1
scale = 1.25,1

[State 4009, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(110*const(size.xScale)),ceil(-208*const(size.yScale))
ignorehitpause = 1

[State 4009, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 4001
trigger2 = Root,Movetype = H
trigger3 = AnimTime = 0

[StateDef 4010]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = 4

[State 4010, Assert]
type = AssertSpecial
Trigger1 = 1
flag = noshadow
ignorehitpause = 1

[State 4010, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 4010, PlaySnd]
type = PlaySnd
trigger1 = Time = 15
value = S100,15

[State 4010, Explod]
Type = Explod
Trigger1 = Time = 15
Anim = 4007
ID = 4007
PosType = Left
Pos = 0,ceil((1.33*gameheight/gamewidth)*0)
scale = 1,1
RemoveTime = -2
BindTime = -1
Ownpal = 1
SprPriority = 10
IgnoreHitPause = 1
Persistent = 0

[State 4010, Explod]
Type = Explod
Trigger1 = Time = 15
Anim = 4010
ID = 4010
PosType = Left
Pos = 0,0
RemoveTime = -2
BindTime = -1
Ownpal = 1
scale = 10,10
SprPriority = 10
IgnoreHitPause = 1
Persistent = 0

[State 4010, DestroySelf]
type = DestroySelf
trigger1 = IsHelper(4019)
trigger1 = Root,StateNo != 4004
trigger2 = IsHelper(4104)
trigger2 = Root,StateNo != 4104
trigger3 = Time >= 59

[StateDef 4011]
Type = A
Movetype  = I
Physics = N
Anim = 4006
SprPriority = 10
VelSet = 0,0

[State 4011, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4011, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 4011, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 4011, PosSet]
type = PosSet
trigger1 = IsHelper(4028)
trigger2 = IsHelper(4029)
x = IfElse(Facing = 1,140,-140)
y = -200
ignorehitpause = 1

[State 4011, PosSet]
type = PosSet
trigger1 = IsHelper(4026)
trigger2 = IsHelper(4027)
x = IfElse(Facing = 1,70,-70)
y = -150
ignorehitpause = 1

[State 4011, PosSet]
type = PosSet
trigger1 = IsHelper(4024)
trigger2 = IsHelper(4025)
x = 0
y = -100
ignorehitpause = 1

[State 4011, PosSet]
type = PosSet
trigger1 = IsHelper(4022)
trigger2 = IsHelper(4023)
x = IfElse(Facing = 1,-70,70)
y = -50
ignorehitpause = 1

[State 4011, PosSet]
type = PosSet
trigger1 = IsHelper(4020)
trigger2 = IsHelper(4021)
x = IfElse(Facing = 1,-140,140)
y = 0
ignorehitpause = 1

[State 4011, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 50,0.25

[State 4011, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 5
Scale = 50,0.25-((Time-5)*0.025)

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4020)
trigger2 = IsHelper(4024)
trigger3 = IsHelper(4028)
value = -40

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4021)
trigger2 = IsHelper(4025)
trigger3 = IsHelper(4029)
value = 220

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4022)
trigger2 = IsHelper(4026)
value = -50

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4023)
trigger2 = IsHelper(4027)
value = 200

[State 4011, Explod]
type = Explod
trigger1 = Time = 0
anim = 4009
ID = 4009
pos = 0,0
scale = 0.5,0.5
postype = p1
sprpriority = 15
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 4011, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 15

[StateDef 4012]
Type = A
Movetype = I
Physics = N
Anim = 4006
SprPriority = 10
VelSet = 0,0

[State 4012, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4012, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 4012, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 4012, PosSet]
type = PosSet
trigger1 = IsHelper(4030)
trigger2 = IsHelper(4031)
x = 0
y = -80
ignorehitpause = 1

[State 4012, PosSet]
type = PosSet
trigger1 = IsHelper(4104)
trigger2 = IsHelper(4105)
x = 0
y = -160
ignorehitpause = 1

[State 4012, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 0
trigger1 = Time <= 9
Scale = 50,1

[State 4012, AngleDraw]
Type = AngleDraw
Trigger1 = Time >= 10
Scale = 50,1-((Time-10)*0.2)

[State 4012, AngleSet]
type = AngleSet
trigger1 = IsHelper(4030)
trigger2 = IsHelper(4104)
value = -145

[State 4012, AngleSet]
type = AngleSet
trigger1 = IsHelper(4031)
trigger2 = IsHelper(4105)
value = 145

[State 4012, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 15

[StateDef 4100]
type = S
movetype = I
physics = N
ctrl = 0
Velset = 0,0
anim = 4100
facep2 = 1

[State 4100, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 100

[State 4100, VarAdd]
type = VarAdd
trigger1 = Var(49) > 0
trigger1 = Time = 0
var(49) = 120
ignorehitpause = 1

[State 4100, VarSet]
type = VarSet
trigger1 = Var(49) > 480
trigger1 = Time = 0
var(49) = 480
ignorehitpause = 1

[State 4100, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = -3000

[State 4100, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4100, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 4100, Pause]
type = Pause
trigger1 = Time = 0
time = 43
movetime = 43

[State 4100, Helper]
Type = Helper
Trigger1 = Time = 0
StateNo = 10000
ID = 10001
Name = "Cut-In"
Pos = -22,-85
PosType = P1
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 99999
PauseMoveTime = 99999

[State 4100, Helper]
type = Helper
trigger1 = Time = 0
name = "EX2"
ID = 6210
stateno = 6210
pos = 0,-85
postype = p1
ownpal = 1
supermovetime = 99999
pausemovetime = 99999
ignorehitpause = 1

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,5

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S4100,0
channel = 0

[State 4100, ChangeState]
type = ChangeState
trigger1 = Time >= 43
value = 4101

[StateDef 4101]
type = S
movetype = A
physics = S
ctrl = 0
anim = 4101
sprpriority = 2
velset = 0,0

[State 4101, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4101, NotHitBy]
Type = NotHitBy
Trigger1 = Time <= 9
Value = SCA

[State 4101, PlaySnd]
type = PlaySnd
trigger1 = Time = 10
value = S100,7

[State 4101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
trigger2 = AnimElem = 9
value = S100,3

[State 4101, Helper]
type = Helper
trigger1 = time = 10
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 4101, VelSet]
type = VelSet
trigger1 = Time > 9
x = 12

[State 4101, HitDef]
type = HitDef
trigger1 = !MoveContact
damage = 0,0
attr = S,HA
animtype = hard
guardflag = MA
hitflag = MAF
pausetime = 0,12
priority = 7,Hit
sparkno = -1
hitsound = -1
guardsound = s100,8
ground.type = low
ground.slidetime = 17
ground.hittime = 17
ground.velocity = 0
air.velocity = 0
guard.velocity = -6
guard.sparkno = -1
yaccel = .65
fall.recover = 0
numhits = 0
getpower = 0,0
forcenofall = 1
p2stateno = 4107

[State 4101, Helper]
type = Helper
trigger1 = MoveGuarded = 1
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 4101, ChangeState]
type = ChangeState
trigger1 = MoveHit
value = 4103
ignorehitpause = 1

[State 4101, ChangeState]
type = ChangeState
trigger1 = Time >= 36
trigger2 = MoveGuarded
value = 4102

[StateDef 4102]
type = S
movetype = I
physics = N
anim = 4102
sprpriority = 1
ctrl = 0

[State 4102, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4102, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 8030
ID = 8030
name = "Dash Dust"
postype = p1
pos = 20,0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 4102, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,6

[State 4102, VelSet]
type = VelSet
trigger1 = Time <= 17
x = 2

[State 4102, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1

[StateDef 4103]
type = S
movetype = A
physics = N
ctrl = 0
anim = 4103
sprpriority = 2
velset = 0,0

[State 4103, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4103, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 4103, PosAdd]
type = PosAdd
trigger1 = Time = 0 && P2BodyDist x <= 10
x = -10

[State 4103, Width]
type = Width
trigger1 = Time = 0 && FrontEdgeBodyDist <= 60
edge = 60,0

[State 4103, TargetBind]
type = TargetBind
trigger1 = time = 0
time = 1
pos = 60,0

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 24
value = S4100,1
channel = 0

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2 
trigger2 = AnimElem = 9
trigger3 = AnimElem = 13
trigger4 = AnimElem = 25
trigger5 = AnimElem = 28
trigger6 = AnimElem = 42
trigger7 = AnimElem = 44
trigger8 = AnimElem = 46
trigger9 = AnimElem = 48
value = S100,10

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
trigger2 = AnimElem = 19
trigger3 = AnimElem = 23
trigger4 = AnimElem = 38
value = S100,11

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 16 
trigger2 = AnimElem = 32
trigger3 = AnimElem = 35
value = S100,12

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 2
trigger2 = AnimElem = 25
trigger3 = AnimElem = 28
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 201
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 5
trigger2 = AnimElem = 19
trigger3 = AnimElem = 38
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 211
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 9
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 4106
ID = 4106
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 13
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 401
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 16
trigger2 = AnimElem = 32
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 421
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 23
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 411
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 35
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 422
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, Helper]
type = Helper
trigger1 = AnimElem = 42
helpertype = Normal
name = "Parallel"
pos = 0,0
stateno = 1001
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 2 
trigger2 = AnimElem = 9
trigger3 = AnimElem = 13
trigger4 = AnimElem = 25
trigger5 = AnimElem = 28
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = light
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,4
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 19
trigger3 = AnimElem = 23
trigger4 = AnimElem = 38
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = medium
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,5
guardsound = S300,0
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 16 
trigger2 = AnimElem = 32
trigger3 = AnimElem = 35
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = hard
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 42
trigger2 = AnimElem = 44
trigger3 = AnimElem = 46
damage = IfElse(Var(10),30,25)
attr = S,HA
animtype = medium
guardflag = 
hitflag = MAF
pausetime = 1,2
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -2,-2
air.velocity = -2,-2
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 48
damage = IfElse(Var(10),30,25)
attr = S,HA
animtype = medium
guardflag = 
hitflag = MAF
pausetime = 0,1
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -2,-9
air.velocity = -2,-9
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.45
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8053
stateno = 8053
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 8
size.xscale = 1
size.yscale = 1

[State 4103, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 4104

[StateDef 4104]
type = A
movetype = A
physics = N
ctrl = 0
anim = 4104
sprpriority = 2

[State 4104, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4104, VelSet]
type = Velset
trigger1 = AnimElem = 1
x = 3
y = -10

[State 4104, VelSet]
type = Velset
trigger1 = AnimElem = 14
x = 20

[State 4104, VelSet]
type = Velset
trigger1 = AnimElem = 4
x = 0
y = 0

[State 4104, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(15) >= 0
y = 0.55

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 14
value = S4100,2
channel = 0

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,10

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 9
value = S100,11

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,12

[State 4103, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 14
value = S100,14

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 621
ID = 4104
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 6
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 601
ID = 4104
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 9
helpertype = Normal
name = "Slash"
pos = 0,0
stateno = 611
ID = 4104
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 4104, Explod]
type = Explod
trigger1 = AnimElem = 14
anim = 4008
ID = 4008
pos = 120,-50
scale = 1,0.5
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 14
helpertype = Normal
name = "Shatter"
pos = 0,0
stateno = 4010
ID = 4104
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 14
helpertype = Normal
name = "Shatter2"
pos = 0,0
postype = Left
stateno = 4012
ID = 4104
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 14
helpertype = Normal
name = "Shatter2"
pos = 0,0
postype = Left
stateno = 4012
ID = 4105
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 4
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = light
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,4
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 6
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = medium
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4103, HitDef]
type = HitDef
trigger1 = AnimElem = 9
damage = IfElse(Var(10),22,18)
attr = S,HA
animtype = hard
guardflag = 
hitflag = MAF
pausetime = 0,20
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,4
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -8
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0

[State 4104, HitDef]
type = HitDef
trigger1 = AnimElem = 14
damage = IfElse(Var(10),120,100)
attr = A,HA
animtype = hard
guardflag =
hitflag = MAF
pausetime = 1,10
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 20
ground.hittime = 20
ground.velocity = 0,-13
air.velocity = 0,-13
yaccel = 0.65
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 20

[State 4103, Helper]
type = Helper
trigger1 = movehit = 1
helpertype = normal
ID = 8053
stateno = 8053
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 65)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 4
size.xscale = 1
size.yscale = 1

[State 4104, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 4105

[StateDef 4105]
type = S
movetype = I
physics = N
velset = 0,0
poweradd = 0
ctrl = 0
anim = 4105
sprpriority = 2

[State 4105, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4105, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 4105, Explod]
type = Explod
trigger1 = Time = 0
anim = 8020
sprpriority = -3
postype = p1
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 4105, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S40,0

[State 4105, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 4106]
type = A
movetype = I
physics = N
anim = 4106
sprpriority = 4

[State 4106, AssertSpecial]
type = AssertSpecial
Trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 4106, Trans]
type = Trans
trigger1 = 1
trans = Add
ignorehitpause = 1

[State 4106, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = ceil(-30*const(size.xScale)),ceil(-295*const(size.yScale))
ignorehitpause = 1

[State 4106, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75

[State 4106, Destroyself]
type = DestroySelf
trigger1 = IsHelper(4106)
trigger1 = Root,StateNo != 4103
trigger2 = AnimTime = 0
trigger3 = Root,Movetype = H

[StateDef 4107]
type = S
movetype = H
physics = S
ctrl = 0
velset = 0,0

[State 4107, PosSet]
type = PosSet
trigger1 = time = 0
y = 0

[State 4107, ChangeAnim2]
type = ChangeAnim2
trigger1 = time = 0
value = 4107

[State 4107, SelfState]
type = SelfState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 6000]
Type = S
Physics = S
MoveType = A
Anim = 6000
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 6000, VarSet]
type = VarSet
trigger1 = AnimElem = 3
V = 46
Value = 1

[State 6000, VarAdd]
type = VarAdd
trigger1 = AnimElem = 3
var(45) = -50
ignorehitpause = 1

[State 6000, VarSet]
type = VarAdd
triggerall = Var(47) < 3
trigger1 = Var(46) = 1
trigger1 = time = 11
trigger1 = Var(49) <= 0
v = 47
Value = 1

[State 6000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = time = 10
trigger1 = Var(47) < 3
trigger1 = Var(49) <= 0
value = 200

[State 6000, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 6000, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 10
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,30
guard.pausetime = 0,16
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,2
guardsound = S300,0
ground.type = high
ground.slidetime = 18
ground.hittime = 18
ground.velocity = -3
airguard.ctrltime = 2
guard.velocity = -3
air.velocity = -1.5,-4.4
envshake.time = 9
envshake.ampl = 3
getpower = 0
givepower = 15
yaccel = 0.4

[State 6000, PosFreeze]
type = PosFreeze
trigger1 = 1
value = 1

[State 6000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S10000,4

[State 6000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S6000,0+Random%4
Channel = 0

[State 6000, Helper]
type = Helper
trigger1 = AnimElem = 3
Helpertype = normal
StateNo = 6001
ID = 6001
name = "Burst"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-53 * const(size.yscale))
size.xscale = 1
size.yscale = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ownpal = 1

[State 6000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 6002
ID = 6002
name = "MAX"
postype = p1
pos = ceil(-6 * const(size.xscale)), ceil(-64 * const(size.yscale))
size.xscale = 0.335
size.yscale = 0.335
pausemovetime=-2**31-1
supermovetime=-2**31-1
ownpal = 1

[State 6000, helper]
type = Helper
trigger1 = AnimElem = 3
stateno = 6003
ID = 6003
Name = "Cooldown"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 6001]
Type = A
Physics = N
MoveType = I
Anim = 99999
ctrl = 0
velset = 0,0

[State 6001, BGPalFX]
type = BGPalFX
trigger1 = 1
time = 1
color= 16*time
mul = 16*time, 16*time, 16*time

[State 6001, Explod]
type = Explod
trigger1 = Time = 0
Anim = 6020
ID = 6020
sprpriority = 3
postype = p1
pos = 0,-50
removetime = 16
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6001, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(6020)
ID = 6020
scale = (.0625*time), (.0625*time)
trans = addalpha
alpha = 256-(16*time), 256

[State 6001, Explod]
type = Explod
trigger1 = time = 0
anim = 6021
ID = 6021
sprpriority = -2
postype = p1
pos = 0,-ceil(pos y)
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6001, DestroySelf]
type = DestroySelf
trigger1= time >= 16

[StateDef 6002]
anim = 0
ctrl = 0
sprpriority = -6

[State 6002, Bindtoroot]
type = BindToRoot
trigger1 = 1

[State 6002, Turn]
type = turn
trigger1 = facing != Root,facing

[State 6002, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 6002, VarSet]
type = VarSet
trigger1 = Root,HitPauseTime = 0
var(0) = Root,AnimElemNo(0)

[State 6002, Anim]
type = ChangeAnim
triggerall = SelfAnimExist(Root,Anim)
triggerall = AnimExist(Root,Anim)
trigger1 = Root,Anim < 6003
value = Root,Anim
elem = Var(0)

[State 6002, Anim]
type = ChangeAnim
triggerall = SelfAnimExist(Root,Anim)
triggerall = AnimExist(Root,Anim)
triggerall = Root,HitPauseTime > 0
trigger1 = Root,AnimElemNo(0) > AnimElemNo(0)
value = Root,Anim
elem = Root,AnimElemNo(0)

[State 6002, AssertSpecial]
type = AssertSpecial
trigger1 = Time <= 0
trigger2 = !SelfAnimExist(Root,Anim)
trigger3 = !AnimExist(Root,Anim)
trigger4 = Root,StateNo >= 160
trigger4 = Root,StateNo < 5000
trigger4 = Root,MoveType = H
trigger5 = Root,StateNo >= 6000
trigger5 = Root,MoveType = H
trigger6 = Root,Anim >= 160
trigger6 = Root,Anim < 5000
trigger6 = Root,MoveType = H
trigger7 = Root,Anim >= 6000
trigger7 = Root,MoveType = H
trigger8 = Root,Stateno = [190,194]
trigger9 = Root,Stateno = 5150
flag = Invisible

[State 6002, AngleDraw]
type = angledraw
trigger1 = 1
scale = 1+var(1)*.002,1+var(1)*.0015

[State 6002, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256, 256

[State 6002, PalFx]
type = PalFX
trigger1 = 1
time = 1
add = 255,-220,-220
invertall = 0
color = 256

[State 6002, VarAdd]
type = varadd
trigger1 = 1
var(2) = 1

[State 6002, VarAdd]
type = varadd
trigger1 = var(2) <= 30
var(1) = 1

[State 6002, VarAdd]
type = varadd
trigger1 = var(2) > 30
var(1) = -1

[State 6002, VarAdd]
type = varset
trigger1 = var(2) >= 60
var(2) = 0

[State 6002, DestroySelf]
type = DestroySelf
trigger1 = Root,Var(46) = 0

[StateDef 6003]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 6003, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[State 6003, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

[State 6003, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 6003, Explod]
type = explod
trigger1 = Time = 0
id = 6022
anim = 6022
pos = Ifelse(Teamside = 1,34,282),ifelse(1.0*gamewidth/gameheight<1.34,227,167)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6003, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 300
id = 6022

[State 6003, DestroySelf]
type = DestroySelf
trigger1 = Time >= 300

[StateDef 6004]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 6004, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[State 6004, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

[State 6004, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = IsHelper(6004)
trigger1 = Time = 0
value = S1420,0+Random%2

[State 6004, Explod]
type = explod
trigger1 = IsHelper(6004)
trigger1 = time = 0
ID = 6040
anim = IfElse(Teamside = 1,6040+Random%3,6050+Random%3)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = IsHelper(181)
trigger1 = Time = 0
value = S1440,0

[State 6004, Explod]
type = explod
trigger1 = IsHelper(181)
trigger1 = time = 0
ID = 6060
anim = IfElse(Teamside = 1,6060+Random%2,6070+Random%2)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = IsHelper(6080)
trigger1 = Time = 0
value = S1450,0+Random%2

[State 6004, Explod]
type = explod
trigger1 = IsHelper(6080)
trigger1 = time = 0
ID = 6080
anim = IfElse(Teamside = 1,6080+Random%2,6090+Random%2)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6040

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6060

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6080

[StateDef 6005]
Type = S
Physics = S
MoveType = I
Anim = 6001
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 6005, VarSet]
type = VarSet
trigger1 = Time = 0
V = 46
Value = 0

[State 6005, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 6010]
movetype = I
physics = N
anim = 99999
ctrl = 0

[State -2, VarSet]
type = ParentVarSet
trigger1 = root,Var(45) > 500
v = 45
Value = 500

[State -2, VarSet]
type = ParentVarSet
trigger1 = root,Var(45) < 0
v = 45
Value = 0

[State 6010, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[state ]
type=removeexplod
trigger1=var(1)-root,var(45)/100
trigger1=0*(var(1):=root,var(45)/100)*(var(5):=1)
trigger2=var(2)-(root,var(45)/10)%10
trigger2=0*(var(2):=(root,var(45)/10)%10)*(var(5):=1)
trigger3=var(3)-root,var(45)%10
trigger3=0*(var(3):=root,var(45)%10)*(var(5):=1)
trigger4=var(4)-root,var(47)
trigger4=0*(var(4):=root,var(47))*(var(5):=1)
trigger5=var(5)
trigger5=1||(var(5):=0)

[State 6010, Explod]
type = explod
trigger1 = Numexplod(6010)=0
ID = 6010
anim = IfElse(Teamside = 1,6010,6011)
pos = Ifelse(Teamside = 1,5,314),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6012) = 0
id = 6012
anim = 6012
pos = Ifelse(Teamside = 1,6,313),ifelse(1.0*gamewidth/gameheight<1.34,235,175)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 0
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6012
Scale = .5*Root,Var(45)/500,0.50

[State 6010, PalFX]
type = PalFx
trigger1 = Root,Var(46)
time = 1
add = (-12*(time+10))%240+240,(-12*(time+10))%240+240,(-12*(time+10))%240+240

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6013) = 0
id = 6013
anim = 6013
pos = Ifelse(Teamside = 1,70,248),ifelse(1.0*gamewidth/gameheight<1.34,228,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6013
Scale = .5*Root,Var(48)/360,0.50

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6014) = 0
trigger1 = var(4)
id = 6014
anim = 6013+var(4)+3*(var(4)>6)
pos = Ifelse(Teamside = 1,3,316),ifelse(1.0*gamewidth/gameheight<1.34,229,169)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6030) = 0
anim = 6030+Var(1)
ID = 6030
pos = Ifelse(Teamside = 1,113,190),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6031) = 0
anim = 6030+Var(2)
ID = 6031
pos = Ifelse(Teamside = 1,119,196),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6032) = 0
anim = 6030+Var(3)
ID = 6032
pos = Ifelse(Teamside = 1,125,202),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

[StateDef 6200]
type = A
movetype= I
physics = N
poweradd= 0
velset = 0,0
anim = 99999
ctrl = 0
sprpriority = 4

[State 6002, NotHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 6200, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = Root,Anim
elem = Root,AnimElemNo(0)

[state 6200, Trans]
type = trans
trigger1 = 1||(fvar(0):=sin(time*pi/120))+(fvar(1):=sin(time*pi/60))
trans = AddAlpha
alpha = floor(256*(1-fvar(0))+.5),floor(256*fvar(0)+.5)

[State 6200, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1+.25*fvar(1),1+.25*fvar(1)

[State 6200, PosSet]
type = Posset
trigger1 = 1
x = Root,Pos x
y = Root,Pos y+16*fvar(1)

[State 6200, PalFX]
type = PalFX
trigger1 = !time
time = -1
mul = 0,128,256
trigger1 = !time

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6200
ID = 6200
sprpriority = 20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
anim = 6201
ID = 6201
sprpriority = 20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6202
ID = 6202
sprpriority = -20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6203
ID = 6200
sprpriority = -20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, DestroySelf]
type = DestroySelf
trigger1 = Time >= 60
trigger2 = Root,MoveType = H

[StateDef 6210]
type = A
movetype= I
physics = N
poweradd= 0
velset = 0,0
anim = 99999
ctrl = 0
sprpriority = 4

[State 6210, Explod]
type = Explod
trigger1 = time = 0
Anim = 6210
ID = 6210
sprpriority = 20
postype = p1
pos = 0,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 1,1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6210, Explod]
type = Explod
trigger1 = time = 0
anim = 6211
ID = 6211
sprpriority = 20
postype = p1
pos = 0,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 1.5,1.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, DestroySelf]
type = DestroySelf
trigger1 = Time >= 33

[StateDef 8030]
type = A
anim = 99999
velset = 0, 0
sprpriority = 5

[State 8030, PosSet]
type = PosSet
trigger1 = !time = 0
y = 0

[State 8030, Explod]
type = Explod
trigger1 = time = 0 || time = 3 || time = 6
anim = 8030
ID = ifelse((time = 6), 8032, ifelse((time = 3), 8031, 8030))
postype = p1
pos = 0, -4
random = 8, 8
vel = -3 -(random / 1000.0), -2 -(random / 2000.0)
facing = ifelse(random < 500, -1, 1)
vfacing = ifelse(random < 500, -1, 1)
removetime = 16
sprpriority = 3
pausemovetime = -1
supermovetime = -1

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8030)
ID = 8030
scale = 0.1 + (0.025 * time), 0.1 + (0.025 * time)
trans = addalpha
alpha = 256 -(16 * time), 256

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8031)
ID = 8031
scale = 0.1 + (0.025 * (time -3)), 0.1 + (0.025 * (time -3))
trans = addalpha
alpha = 256 -(16 * (time -3)), 256

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8032)
ID = 8032
scale = 0.1 + (0.025 * (time -6)), 0.1 + (0.025 * (time -6))
trans = addalpha
alpha = 256 -(16 * (time -6)), 256

[State 8030, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 22

[State 8030, DestroySelf]
type = DestroySelf
trigger1 = !NumExplod

[StateDef 8050]
type = A
physics = N
movetype = I
anim = 8050
velset=0,0
sprpriority=5

[State 8050, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 8050, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8050, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8050, AngleDraw]
type = AngleDraw
trigger1 = time < 10
scale = .3-(time*.03), .3-(time*.03)

[State 8050, AngleDraw]
type = AngleDraw
trigger1= time >= 10
scale = 0,0

[State 8050, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8050, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale = .15+(.009375*time),.15+(.009375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8050, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8052)
ID = 8052
scale = .15+(.009375*time),.15+(.009375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8050, Explod]
type = Explod
trigger1= !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8053)
ID = 8053
scale = .3-(.0375*time),.3-(.0375*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8050, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

[State 8050, DestroySelf]
type = DestroySelf
trigger1 = time >= 16

[StateDef 8051]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

[State 8051, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 8051, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8051, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8051, AngleDraw]
type = AngleDraw
trigger1 = time<10
scale = .35-(time*.035), .35-(time*.035)

[State 8051, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8051, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale =.175+(.0109375*time),.175+(.0109375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8052)
ID = 8052
scale = .175+(.0109375*time),.175+(.0109375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1= NumExplod(8053)
ID = 8053
scale = .35-(.04375*time),.35-(.04375*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8051, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

[State 8051, DestroySelf]
type = DestroySelf
trigger1 = time >= 16

[StateDef 8052]
type = A
physics = N
movetype = I
anim = 8050
velset=0,0
sprpriority=5

[State 8052, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 8052, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8052, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8052, AngleDraw]
type = AngleDraw
trigger1 = time < 10
scale = .4-(time*.04), .4-(time*.04)

[State 8052, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8052, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale =.2+(.0125*time),.2+(.0125*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8052)
ID = 8052
scale = .2+(.0125*time),.2+(.0125*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8053)
ID = 8053
scale = .4-(.05*time),.4-(.05*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8052, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

[State 8052, DestroySelf]
type = DestroySelf
trigger1 = time >= 16

[StateDef 8053]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

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

[State 8053, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8053, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8053, AngelDraw]
type = AngleDraw
trigger1 = time < 10
scale = .5-(time*.05), .5-(time*.05)

[State 8053, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8053, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8051)
ID = 8051
scale = .25+(.015625*time),.25+(.015625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8052)
ID = 8052
scale = .25+(.015625*time),.25+(.015625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8054
ID = 8054
postype = p1
vfacing = ifelse(random < 500,-1,1)
sprpriority = -3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8054)
ID = 8054
scale = .5,.5
trans = addalpha
alpha = 256-(32*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8053)
ID = 8053
scale = .5-(.0625*time),.5-(.0625*time)
trans = addalpha
alpha = 256-(32*time),256

[State 8053, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

[State 8053, DestroySelf]
type = DestroySelf
trigger1 = time >= 16

[StateDef 8054]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

[State 8054, AssertSpecial]
type = assertspecial
trigger1 = 1
flag = noshadow

[State 8054, Angle]
type = angleset
trigger1 = !time
value = 30*(random%12)

[State 8054, AngleAdd]
type = angleadd
trigger1 = 1
value = 30

[State 8054, AngleDraw]
type = angledraw
trigger1 = time < 10
scale = .45-(time*.045), .45-(time*.045)

[State 8054, AngleDraw]
type = angledraw
trigger1 = time >= 10
scale = 0,0

[State 8054, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8051)
ID = 8051
scale = .225+(.0140625*time),.225+(.0140625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8052)
ID = 8052
scale = .225+(.0140625*time),.225+(.0140625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8054
ID = 8054
postype = p1
vfacing = ifelse(random < 500,-1,1)
sprpriority = -3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8054)
ID = 8054
scale = .4,.4
trans = addalpha
alpha = 256-(32*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8053)
ID = 8053
scale = .45-(.05625*time),.45-(.05625*time)
trans = addalpha
alpha = 192-(24*time),256

[State 8054, RemoveExplod]
type = RemoveExplod
trigger1= time >= 16

[State 8054, DestroySelf]
type = DestroySelf
trigger1= time >= 16

[StateDef 8100]
type = A
velSet = 0,0
anim = 99999

[State 8100, VarSet]
type = VarSet
trigger1 = !Time
var(0) = Parent,var(43)

[State 8100, PosSet]
type = PosSet
trigger1 = PlayerIDexist(var(0))
x = ceil(PlayerID(var(0)), pos x)
y = ceil(PlayerID(var(0)), pos y) + (PlayerID(var(0)), const(size.mid.pos.y))

[State 8100, PosSet]
type = PosSet
trigger1 = PlayerIDexist(var(0))
trigger1 = PlayerID(var(0)), StateType = L
x = ceil(PlayerID(var(0)), pos x)
y = ceil(PlayerID(var(0)), pos y) - 20

[State 8100, Turn]
type = Turn
trigger1 = PlayerIDexist(var(0))
trigger1 = Facing != (PlayerID(var(0)), Facing)

[State 8100, Explod]
type = Explod
trigger1 = PlayerIDexist(var(0))
anim = 8100
sprPriority = 3
posType = P1
random = 40,40
vel = (Random / 2000.0), -0.5 - (Random / 2000.0)
facing = ifElse(Random < 500, -1, 1)
vfacing = ifElse(Random < 500, -1, 1)
scale = 0.5,0.5
ownpal = 1

[State 8100, Explod]
type = Explod
trigger1 = PlayerIDexist(var(0))
anim = 8100
sprPriority = 3
posType = P1
random = 60,60
vel = (Random / 2000.0), -0.5 - (Random / 2000.0)
facing = ifElse(Random < 500, -1, 1)
vfacing = ifElse(Random < 500, -1, 1)
scale = 0.5,0.5
ownpal = 1

[State 8100, DestroySelf]
type = DestroySelf
triggerAll = PlayerIDexist(var(0))
trigger1 = PlayerID(var(0)), ctrl
trigger2 = PlayerID(var(0)), Movetype != H || PlayerID(var(0)), StateNo = 5300
trigger3 = PlayerID(var(0)), StateType = L && (PlayerID(var(0)), StateNo != [5080,5081])

[StateDef 8700]
type = A
physics = N
velset = 0,0
anim = 99999

[State 8700, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S8700,0
channel = 2

[State 8700, Explod]
type = explod
trigger1 = Time = 0
anim = IfElse(TeamSide = 1,8700,8701)
pos = IfElse(Teamside = 1,0,320),110
ID = 8700
sprpriority = -1
postype = Left
removetime = 60
BindTime = -1
pausemovetime = -1
supermovetime = -1
ownpal = 1
scale = 0.335,0.335

[State 8700, RemoveExplod]
type = removeexplod
trigger1 = time >= 60

[State 8700, DestroySelf]
type = destroyself
trigger1 = time >= 60

[StateDef 8710]
type = A
physics = N
velset = 0,0
anim = 99999

[State 8710, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S8710,0+Random%3
channel = 2

[State 8710, Explod]
type = explod
trigger1 = Time = 0
anim = IfElse(TeamSide = 1,8710,8711)
pos = IfElse(Teamside = 1,0,320),125
ID = 8710
sprpriority = -1
postype = Left
removetime = 60
BindTime = -1
pausemovetime = -1
supermovetime = -1
ownpal = 1
scale = 0.335,0.335

[State 8710, RemoveExplod]
type = removeexplod
trigger1 = time >= 60

[State 8710, DestroySelf]
type = destroyself
trigger1 = time >= 60

[StateDef 9000]
type = A
physics = N
movetype = I
anim = 9000
velset = 0,0
sprpriority = 5

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

[State 9000, AnglDraw]
type = AngleDraw
trigger1 = 1
scale = .125+(.046875*time), .125+(.046875*time)

[State 9000, Trans]
type = Trans
trigger1 = time < 4
trans = addalpha
alpha = 256, 256

[State 9000, Trans]
type = Trans
trigger1 = time >= 4
trans = addalpha
alpha = 256 - 64*(time-4), 256

[State 9000, DstroySelf]
type = DestroySelf
trigger1 = time >= 8

[StateDef 10000]
Type = A
Physics = N
Anim = 99999
SprPriority = 4
VelSet = 0,0

[State 10000, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SAC, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = 1

[State 10000, AssertSpecial]
Type = AssertSpecial
Trigger1 = Time <= 26
Flag = Noshadow
IgnoreHitPause = 1
pausemovetime = -1
supermovetime = -1

[State 10000, AssertSpecial]
Type = AssertSpecial
Trigger1 = Time >= 27
Flag = Noshadow
Flag2 = Invisible
IgnoreHitPause = 1
pausemovetime = -1
supermovetime = -1

[State 10000, Trans]
Type = Trans
Trigger1 = 1
Trans = AddAlpha
Alpha = 255,255

[State 10000, VarAdd]
Type = VarAdd
Trigger1 = Time >= 23
FV  = 20
Value = 0.0175

[State 10000, Explod]
Type = Explod
Trigger1 = IsHelper(10000)
Trigger1 = Time = 0
ID = 10001
Anim = 10000
Pos = 0,240
PosType = Back
Ownpal = 1
Scale = 0.50+FVar(20),0.50+FVar(20)
SprPriority = -5
RemoveTime = 50
RemoveOnGetHit = 1
IgnoreHitPause = 1
Persistent = 0
pausemovetime = -1
supermovetime = -1

[State 10000, ModifyExplod]
Type = ModifyExplod
Trigger1 = Time = [1,50]
ID = 10001
Scale = 0.50+FVar(20),0.50+FVar(20)
IgnoreHitPause = 1
Persistent = 1
pausemovetime = -1
supermovetime = -1

[State 10000, Explod]
Type = Explod
Trigger1 = IsHelper(10001)
Trigger1 = Time = 0
ID = 10002
Anim = 10001
Pos = 0,240
PosType = Back
Ownpal = 1
Scale = 0.50+FVar(20),0.50+FVar(20)
SprPriority = -5
RemoveTime = 50
RemoveOnGetHit = 1
IgnoreHitPause = 1
Persistent = 0
pausemovetime = -1
supermovetime = -1

[State 10000, ModifyExplod]
Type = ModifyExplod
Trigger1 = Time = [1,50]
ID = 10002
Scale = 0.50+FVar(20),0.50+FVar(20)
IgnoreHitPause = 1
Persistent = 1
pausemovetime = -1
supermovetime = -1

[State 10000, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 50

;---------------------------------------------------------------------------
; States that are always executed (use statedef -2)
;---------------------------------------------------------------------------

[StateDef -2]

[State -2, PlaySnd]
type = playsnd
triggerall = alive && time = 1
triggerall = stateno = 5000 || stateno = 5010
trigger1 = gethitvar(animtype) >= 2 && random < 500
trigger2 = gethitvar(animtype) = 1 && random < 500
trigger3 = gethitvar(animtype) = 0 && random < 500
value = S5000,0+random%9
channel = 0
ignorehitpause = 1

[State -2, PlaySnd]
type = playsnd
triggerall = alive && time = 1
trigger1 = (stateno = 5000 || stateno = 5010) && numenemy
trigger1 = gethitvar(fall) || (enemynear, hitdefattr = SCA, SA, HA)
trigger2 = (stateno = 5020 || stateno = 5070 || stateno = 5080)
trigger3 = (stateno = 5050 || stateno = 5100) && (prevstateno != [5000, 5199])
value = S5000,0+random%9
channel = 0
ignorehitpause = 1

[State -2, PlaySnd]
type = PlaySnd
triggerall = time = 1
trigger1 = StateNo = [5200,5210]
value = S5200,0+Random%3
persistent = 0
channel = 0

[State -2, PlaySnd]
type = PlaySnd
triggerall = time = 1
trigger1 = stateno = 5120
value = S5200,0+Random%3
persistent = 0
channel = 0

[State -2, VarSet]
type = Varset
trigger1 = numenemy
fvar(0) = enemynear,gethitvar(hitcount)
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = numenemy
trigger1 = (enemynear,movetype!=H)
trigger2 = !numenemy
fvar(0) = 1

[State -2, VarSet]
type = VarSet
trigger1 = 1
fvar(1) = ifelse(fvar(0) = 0, 1, ifelse(fvar(0) = 1, 1, .96875**fvar(0)))
ignorehitpause = 1

[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = 1
value = fvar(1)*fvar(2)
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = 1
fvar(2) = IfElse(Var(46) = 1,1.1,1)

[State -2, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40) < 0
var(40) = hitpausetime
ignorehitpause = 1

[State -2, Helper]
type = Helper
trigger1 = var(40) = hitpausetime
trigger1 = var(41) >0 || var(42) > 0
trigger1 = MoveContact = 1
helpertype = normal
name="Hit_Spark"
stateNo = Ifelse(MoveGuarded, var(42),var(41))
ID = 8050
postype = p1
pos = Ifelse(P2Dist x < 0, 0, Ifelse(P2Dist x < var(43), ceil(P2Dist x), var(43))), var(44)
ownpal = 1
keyctrl = 0
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
size.xscale = 1
size.yscale = 1

[State -2, Helper]
type = Helper
trigger1 = MoveHit = 1 && Var(40) = HitPauseTime
trigger1 = NumEnemy && Var(10)
trigger1 = !(HitDefAttr = SCA, AT) && (EnemyNear,MoveReversed != 1)
helpertype = normal
stateno = 8700
ID = 8700
name = "Counter"
postype = p1
pos = ifelse(p2dist x<40, 40, ifelse(p2dist x<140, ceil(p2dist x), 140)), -70
ownpal = 1
size.xscale = 1
size.yscale = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1

[State -2, VarSet]
type = Varset
trigger1 = NumEnemy
var(10) = (EnemyNear,MoveType = A)
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State -2, VarRangeSet]
type = VarRangeSet
trigger1 = movetype = I
trigger2 = movetype = H && time
trigger3 = var(41)>0||var(42)>0
trigger3 = movecontact=1
first = 40
last = 44
value = -1
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = Var(45) <= 0
trigger2 = Var(46) = 0
trigger2 = Var(45) <=0
v = 45
Value = 0

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveHit = 1
trigger1 = StateNo != 950
trigger1 = StateNo != [1000,1099]
trigger1 = StateNo != [2000,4999]
v = 45
value = 12

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveGuarded = 1
trigger1 = StateNo != 950
trigger1 = StateNo != [1000,1099]
trigger1 = StateNo != [2000,4999]
v = 45
value = 6

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 1
trigger1 = MoveContact = 1
trigger1 = StateNo != 950
trigger1 = StateNo != 6000
trigger1 = StateNo != [1000,1099]
trigger1 = StateNo != [2000,4999]
v = 45
value = -15

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 1
trigger1 = MoveContact = 1
trigger1 = StateNo = [1000,1099]
v = 45
value = -8

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
trigger1 = MoveType = H
trigger1 = GetHitVar(damage)!=0
trigger1 = StateNo != [120,159]
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
trigger1 = MoveType = H
trigger1 = GetHitVar(damage)!=0
trigger1 = StateNo = [120,159]
v = 45
value = 2

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
triggerall = Alive
triggerall = RoundState = 2
triggerall = ((Life*100)/LifeMax) <= 20
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
trigger1 = Gametime%15 = 0
v = 45
value = 1

[State -2, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = Var(45) <= 0
v = 46
Value = 0

[State -2, VarSet]
type = VarSet
trigger1 = RoundState < 2
trigger1 = Var(48) != 360
trigger2 = Var(48) > 360
var(48) = 360

[State -2, VarAdd]
type = VarAdd
triggerall = !(Numhelper(1401) || NumHelper(1421))
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
trigger1 = Var(48) < 360
trigger1 = time
v = 48
value = 1
ignorehitpause = 1

[State -2, VarAdd]
type = VarAdd
trigger1 = var(49) > 0
trigger1 = !numhelper(20100)
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
var(49) = -1
IgnoreHitPause = 1

[State -2, VarSet]
type = VarSet
trigger1 = RoundState = 1 
v = 49
value = 0

;[State -2, VarAdd];Testing Purposes
;type = VarAdd
;triggerall = Var(45) <= 500
;trigger1 = Command = "b"
;v = 45
;value = 500

;[State -2, VarSet];Testing Purposes
;type = VarSet
;triggerall = Var(47) <= 3
;trigger1 = Command = "c"
;v = 47
;value = 3

[State -2, PalFX]
type = PalFX
triggerall = Var(46) = 1
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State -2, Helper]
type = Helper
Trigger1 = Var(46) = 1
Trigger1 = NumHelper(6002) = 0
Trigger1 = Var(45) >= 0
helpertype = normal
name = "Aura"
ID = 6002
pos = 0, 0
postype = p1
facing = 1
stateno = 6002
keyctrl = 0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, AssertSpecial]
type = AssertSpecial
flag = NoKOSlow
trigger1 = StateNo = [4000,4199]
ignorehitpause = 1

[State -2, Helper]
type = Helper
triggerall = RoundState >= 2
triggerall = WinKo && !var(37)
trigger1 = StateNo = [4000,4199]
trigger2=movetype=h
trigger2=prevstateno=[4000,4199]
ID = 20150
stateno = 20100
Name = "Super_Combo_Finish"
postype = left
pos = 0,0
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
ownpal = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State -2, VarAdd]
type = VarAdd
trigger1 = roundstate = 3
ignorehitpause = 1
var(37) = 1

[State -2, VarSet]
type = Varset
trigger1 = roundstate = 0
ignorehitpause = 1
var(37) = 0

[State -2, Helper]
type = Helper
trigger1 = 1
trigger1 = numhelper(6010) = 0
ID = 6010
name = "MAX_Bar"
stateno = 6010
ownpal = 1
postype = left
pos = 160,
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1

[State -2, Helper]
type = Helper
trigger1 = RoundState = 2
trigger1 = Var(48) = 359
stateno = 6004
ID = 6004
Name = "Speech"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, Helper]
type = Helper
triggerall = NumHelper(6080) = 0
triggerall = RoundState = 4
trigger1 = Alive = 0
trigger2 = StateNo = 170
stateno = 6004
ID = 6080
Name = "Speech"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, VarAdd]
type = VarAdd
trigger1 = 100*Life/LifeMax <= 20
v = 11
value = 1

[State -2, VarSet]
type = VarSet
trigger1 = 100*Life/LifeMax > 20
v = 11
value = 0

[State -2, Helper]
type = Helper
trigger1 = Var(11) = 1
persistent = 0
id = 8710
name = "Danger"
pos = 0,0
postype = P1
stateno = 8710
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, LifeAdd]
type = LifeAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
trigger1 = Enemy,Var(30) = 1
value = -5
kill = 0

[State -2, PowerAdd]
type = PowerAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
trigger1 = Enemy,Var(30) = 1
value = -26

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4103
trigger1 = Enemy,time%8 = 0
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4004
trigger1 = Enemy,AnimElem = 3
trigger2 = Enemy,AnimElem = 8
trigger3 = Enemy,AnimElem = 12
trigger4 = Enemy,AnimElem = 16
trigger5 = Enemy,AnimElem = 20
trigger6 = Enemy,AnimElem = 24
trigger7 = Enemy,AnimElem = 28
trigger8 = Enemy,AnimElem = 32
trigger9 = Enemy,AnimElem = 36
trigger10 = Enemy,AnimElem = 40
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4005
trigger1 = Enemy,AnimElem = 4
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Miyuki_K"
triggerall = Enemy,StateNo = 4104
trigger1 = Enemy,Time >= 24
trigger1 = Enemy,Time%3 = 0
trigger1 = Enemy,Time < 75
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Miyuki_K"
triggerall = Enemy,StateNo = 4105
trigger1 = Enemy,Time = 12
trigger2 = Enemy,Time = 137
v = 45
value = 4

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1202)
trigger1 = Stateno != 1200
ID = 1202

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1210)
trigger1 = Stateno != 1210
ID = 1210

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1220)
trigger1 = Stateno != 1220
ID = 1220

;---------------------------------------------------------------------------
; States that are executed when in self's state file (use statedef -3)
;---------------------------------------------------------------------------

[Statedef -3]

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(20) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = movecontact
trigger3 = Statetype = A
trigger3 = (Stateno = [600,699])
trigger3 = MoveContact
var(20) = 1

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(21) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [1000,1999])
trigger2 = MoveContact
var(21) = 1

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(22) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [2000,3999])
trigger2 = stateno != [4000,4999]
trigger2 = MoveContact
var(22) = 1

[State -3, ChangeState]
type = ChangeState
trigger1 = !alive && (stateno = [5000,5010])
trigger1 = (prevstateno = [120,121]) || (prevstateno = [130,131]) || (prevstateno = [140,141]) || (prevstateno = [150,153])
value = 5950
ignorehitpause = 1

[State -3, AssertSpecial]
type = AssertSpecial
trigger1 = (stateno = [5000,5010])
trigger1 = (prevstateno = [120,121]) || (prevstateno = [130,131]) || (prevstateno = [140,141]) || (prevstateno = [150,153])
flag = nokosnd
ignorehitpause = 1

[State -3, Width]
type = Width
trigger1 = 1
edge = 4,0
ignorehitpause = 1

;This controller plays a sound everytime the player lands from a jump, or
;from a 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
