; 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 = 850			;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 = 255			;Volume offset (negative for softer)
IntPersistIndex = 60	;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 = 1			;Horizontal scaling factor.
yscale = 1			;Vertical scaling factor.
ground.back = 13		;Player width (back, ground)
ground.front = 14		;Player width (front, ground)
air.back = 15		;Player width (back, air)
air.front = 16		;Player width (front, air)
height = 65			;Height of player (for opponent to jump over)
attack.dist = 140		;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, -85	;Approximate position of head
mid.pos = -5, -50		;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		;Walk forward
walk.back = -1.3		;Walk backward
run.fwd  = 4.6, 0		;Run forward (x, y)
run.back = -4.5,-3.8	;Hop backward (x, y)
jump.neu = 0,-10.18		;Neutral jumping velocity (x, y)
jump.back = -1.9		;Jump back Speed (x, y)
jump.fwd = 2.6		;Jump forward Speed (x, y)
runjump.back = -2.2,-10.18;Running jump speeds (opt)
runjump.fwd = 2.2,-10.18	;.
airjump.neu = 0,-9.41	;.
airjump.back = -1.9	;Air jump speeds (opt)
airjump.fwd = 2.6		;.

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

[Quotes]
Victory1 = "Mm, very good. Natural blood tastes the best."
Victory2 = "That was delicious. The pain was baked to perfection."
Victory3 = "You need to swing your arms around, but I only need to look. You cannot compare in terms of refinement."
Victory4 = "Oh, is it a surprise to be alive? No need to worry, I will not take your life. I am not that horrible of a woman."
Victory5 = "Do you know the fate of those wrapped in these threads? No one can escape my red Locks of Hair."
Victory6 = "What a coward. Maybe my regular self would have sufficed?"
Victory7 = "...Um, this isn't how I usually am. I only lost my self control for a little while, so please don't get the wrong impression, okay?"
Victory8 = "I have to hurry. I enjoy this form the most, but it would be troubling if someone saw me."
Victory9 = "Goodness, there is a limit to recklessness. Next time, choose your opponents more carefully."
Victory10 = "...Umm. I don't mean to be distant, but if you learned your lesson, please avoid the mansion. Going to Nii-san's room is simply intolerable."
Victory11 = "...I hate myself. It does not make me happy to beat you like this, and you will just call me a demon of a sister, Nii-san...*sigh*"
Victory12 = "As one who drinks blood, I will not lose to you. If Nii-san doesn't mind hybrids, then I won't be quiet about it."
Victory13 = "Huhu-the fight is over, Nii-san. Now, shall I take revenge for what happened back then?"
Victory14 = "Hey, hang in there, Sion! Isn't healing vampirism your responsibility? What would we do if the doctor became sick!?"
Victory15 = "Tainted by a Western illness? You are a commoner after all. How does being a servant at the mansion sound, Yumizuka-san?"

;---------------------------------------------------------------------------
; 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 181, PlaySnd]
type = PlaySnd
trigger1 = Anim = 170
trigger1 = time = 0
value = S170,0
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

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

[State 181, ChangeAnim]
type = ChangeAnim
trigger1 = time = 0
value = 180+Random%2

[State 181, PlaySnd]
type = PlaySnd
trigger1 = Anim = 180
trigger1 = time = 0
value = S180,0+Random%3
Channel = 0

[State 181, PlaySnd]
type = PlaySnd
trigger1 = Anim != 180
trigger1 = time = 0
value = S180,3+Random%2
Channel = 0

[State 181, AssertSpecial]
type = AssertSpecial
trigger1 = Time = [1,180]
flag = RoundNotOver

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

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

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

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

[State 190, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S190,0+Random%4

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

[State 190, 4] ;Change to stand state
type = ChangeState
trigger1 = AnimTime = 0
value = 0

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

[State 191, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Intro

[State 191, PlaySnd]
type = PlaySnd
trigger1 = Time = 140
Value = S191,0
channel = 0
persistent = 0

[State 191, ChangeAnim]
type = ChangeAnim
trigger1 = Time = 140
value = 192

[State 191, ChangeState]
type = ChangeState
trigger1 = Anim = 192
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 = Time = 0
value = S195,0
channel = 0

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

;---------------------------------------------------------------------------
; 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)
poweradd = 20			;Power to add (Def: 0)
sprpriority = 2			;Set layering priority to 2 (in front)

[State 200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,0

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

[State 200, Explod]
type = Explod
trigger1 = Time = 0
anim = 201
ID = 201
sprpriority = 4
pos = 0,-10
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 200, 1]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA			;Attribute: Standing, Normal Attack
damage = 23,IfElse(var(45) > 0,2,0)			;Damage that move inflicts, guard damage
animtype = Light			;Animation type: Light, Medium, Heavy, Back (def: Light)
guardflag = MA			;Flags on how move is to be guarded against
hitflag = MAF			;Flags of conditions that move can hit
priority = 3, Hit			;Attack priority: 0 (least) to 7 (most), 4 default
					;Hit/Miss/Dodge type (Def: Hit)
pausetime = 6,6			;Time attacker pauses, time opponent shakes
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -78))
hitsound = S200,0			;Sound to play on hit
guardsound = S300,0			;Sound to play on guard
ground.type = High		;Type: High, Low, Trip (def: Normal)
ground.slidetime = 9		;Time that the opponent slides back
ground.hittime  = 9		;Time opponent is in hit state
ground.velocity = -3.6		;Velocity at which opponent is pushed
airguard.velocity = -2,-3.5	;Guard velocity in air (def: (air.xvel*1.5, air.yvel/2))
air.type = High			;Type: High, Low, Trip (def: same as ground.type)
air.velocity = -1.2,-3		;X-velocity at which opponent is pushed,
					;Y-velocity at which opponent is pushed
air.hittime = 12			;Time before opponent regains control in air
fall.recovertime = 18
getpower = 15

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

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

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

[State 210, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 211
ID = 211
sprpriority = 4
pos = 0,-10
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,1

[State 210, VelSet]
type = VelSet
trigger1 = Time = [0,9]
x = 2

[State 210, VelSet]
type = VelSet
trigger1 = Time = 10
x = 0

[State 210, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S,NA
animtype  = Medium
damage = 33,IfElse(var(45) > 0,3,0)
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 7,8
guard.pausetime = 8,8
hitsound = S200,5
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) := -65))
ground.type = Low
ground.slideTime = 14
ground.hitTime  = 14
ground.velocity = -5.5
air.velocity = -2,-4.5
down.velocity = -4,-1.5
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 27
getpower = 30
envshake.time = 9
envshake.ampl = 2

[State 210, ChangeState]
type = ChangeState
trigger1 = Command = "y"
trigger1 = AnimElem = 4, >= 2
trigger1 = AnimElem = 7, < 0
value = 215

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

[Statedef 215]
type    = S
movetype= A
physics = S
poweradd = 30
ctrl = 0
velset = 0,0
anim = 215

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

[State 215, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 216
ID = 216
sprpriority = 4
pos = 0,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 215, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,1

[State 215, VelSet]
type = VelSet
trigger1 = Time = [0,9]
x = 2

[State 215, VelSet]
type = VelSet
trigger1 = Time = 10
x = 0

[State 215, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S,NA
animtype  = Medium
damage = 33,IfElse(var(45) > 0,3,0)
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 8,8
guard.pausetime = 8,8
hitsound = S200,5
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) := -55))
ground.type = Low
ground.slideTime = 14
ground.hitTime  = 14
ground.velocity = 0,-9
air.velocity = -0,-9
down.velocity = -5,-1.5
yaccel = .54
air.fall = 1
fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 30
envshake.time = 9
envshake.ampl = 2

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

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

[State 220, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

[State 220, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 221
ID = 221
sprpriority = -1
pos = 0,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

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

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElem = 2, = [0,1]
x = 5

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElem = 3, = [0,2]
x = 3

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElem = 4
x = 17

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElem = 11, = [0,2]
x = -3

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElem = 12, = [0,2]
x = -5

[State 220, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S,NA
animtype  = Medium
damage = 25,IfElse(var(45) > 0,3,0)
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 10,11
guard.pausetime = 10,10
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) := -55))
ground.type = Low
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -5.5
air.velocity = -1.8,-5
down.velocity = -5,-2
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 35
yaccel = .54
envshake.time = 9
envshake.ampl = 3

[State 220, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = S,NA
animtype  = Medium
damage = 25,IfElse(var(45) > 0,3,0)
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 10,11
guard.pausetime = 10,10
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) := -55))
ground.type = Low
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -5.5
air.velocity = -1.8,-5
down.velocity = -3.6,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 35
yaccel = .54
envshake.time = 9
envshake.ampl = 3

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

;---------------------------------------------------------------------------
; Standing Light Kick
; CNS difficulty: easy
[Statedef 230]
type    = S
movetype= A
physics = S
poweradd = 15
ctrl = 0
velset = 0,0
anim = 231

[State 230, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,0

[State 230, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = time = 1
value = S400,0+random%3
channel = 0

[State 230, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 28,IfElse(var(45) > 0,3,0)
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 6,6
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -30))
hitsound = S200,0
guardsound = S300,0
ground.type = High
ground.slidetime = 9
ground.hittime  = 9
ground.velocity = -4
airguard.velocity = -1.4,-3.5
air.type = High
air.velocity = -1.2,-3
air.hittime = 12
fall.recovertime = 18
getpower = 15

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

;---------------------------------------------------------------------------
; Standing Medium Kick
; CNS difficulty: easy
[StateDef 240]
type    = S
movetype= A
physics = S
poweradd = 30
ctrl = 0
velset = 0,0
anim = 240

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

[State 240, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,1

[State 240, PosAdd]
type = PosAdd
trigger1 = AnimElem = 2
x = 10

[State 240, PosAdd]
type = PosAdd
trigger1 = AnimElem = 2, = 1
x = 9

[State 240, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S,NA
animtype  = Medium
damage = 38,IfElse(var(45) > 0,4,0)
hitflag = MAF
guardflag = L
priority = 4, Hit
pausetime = 8,9
guard.pausetime = 8,8
hitsound = S200,1
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) := -35))
ground.type = Low
ground.slideTime = 13
ground.hitTime  = 13
ground.velocity = -5
air.velocity = -2,-3
down.velocity = -4,-1.5
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 27
getpower = 30
envshake.time = 9
envshake.ampl = 2

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

;---------------------------------------------------------------------------
; Standing Strong Kick
; CNS difficulty: easy

[StateDef 250]
type = S
movetype= A
physics = S
poweradd = 45
ctrl = 0
velset = 0,0
anim = 250

[State 250, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

[State 250, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 8
value = S100,2

[State 250, Width]
type = Width
trigger1 = 1
value = 10

[State 250, PosAdd]
type = PosAdd
trigger1 = AnimElem = 5
x = 26
ignorehitpause = 1

[State 250, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = S,NA
animtype  = Heavy
damage = 53,IfElse(var(45) > 0,5,0)
hitflag = MAF
guardflag = MA
priority = 5, Hit
pausetime = 10,11
guard.pausetime = 10,10
hitsound = S200,2
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 = High
ground.slideTime = 19
ground.hitTime  = 19
ground.velocity = -8
air.velocity = -8,-1.5
down.velocity = -8,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 35
envshake.time = 9
envshake.ampl = 3

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

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

;---------------------------------------------------------------------------
; 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
poweradd = 19
ctrl = 0
anim = 400
VelSet = 0,0

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

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

[State 400, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 401
ID = 401
sprpriority = -1
pos = 0,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 400, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = C, NA
animtype = medium
hitflag = MAF
guardflag = MA
ground.type = low
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -35))
hitsound = S200,0
guardsound = S300,0
damage = 24,IfElse(var(45) > 0,2,0)
priority = 4, Hit
getpower = 19
pausetime = 8, 7
ground.slidetime = 9
guard.slidetime = 9
ground.hittime = 9
guard.hittime = 9
guard.ctrltime = 9
air.hittime = 13
ground.velocity = -3.8
air.velocity = -1.6, -3.5

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

;---------------------------------------------------------------------------
; Crouching Medium Punch
[Statedef 410]
type    = C
movetype= A
physics = C
poweradd = 40
ctrl = 0
anim = 410
sprpriority = 2
VelSet = 0,0

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

[State 410, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,1

[State 410, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 411
ID = 411
sprpriority = 4
pos = 0,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
animtype = Light
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 3,3
guard.pausetime = 3,4
hitsound = S200,5
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) := -35))
ground.type = Low
ground.slideTime = 8
ground.hitTime = 8
ground.velocity = -4.5
air.velocity = -2,-4
down.velocity = -4,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S, NA
animtype = Light
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 3,3
guard.pausetime = 3,4
hitsound = S200,5
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 = 14
ground.hitTime  = 14
ground.velocity = -4.5
air.velocity = -2,-4
down.velocity = -4,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = S, NA
animtype = Light
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 8,8
guard.pausetime = 8,9
hitsound = S200,5
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) := -25))
ground.type = Low
ground.slideTime = 14
ground.hitTime  = 14
ground.velocity = -4.5
air.velocity = -2,-4
down.velocity = -4,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 410, ChangeState]
type = ChangeState
trigger1 = Command = "holddown"
trigger1 = Command = "y"
trigger1 = AnimElem = 6, >= 2
trigger1 = AnimElem = 8, < 0
value = 415

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

[StateDef 415]
type    = C
movetype= A
physics = C
poweradd = 40
ctrl = 0
anim = 415
sprpriority = 2
VelSet = 0,0

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

[State 415, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,1

[State 415, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 416
ID = 416
sprpriority = 4
pos = 0,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 415, HitDef]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
animtype = Hard
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 3,3
guard.pausetime = 3,4
hitsound = S200,5
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) := -25))
ground.type = Low
ground.slideTime = 8
ground.hitTime = 8
ground.velocity = -4.5
air.velocity = -2,-4
down.velocity = -4,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 415, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
animtype = Light
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 3,3
guard.pausetime = 3,4
hitsound = S200,5
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 = 14
ground.hitTime  = 14
ground.velocity = -4.5
air.velocity = -2,-4
down.velocity = -4,-1.5
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 415, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
animtype = Light
damage = 15,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = MA
priority = 3, Hit
pausetime = 8,8
guard.pausetime = 8,9
hitsound = S200,5
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) := -35))
ground.type = Low
ground.slideTime = 14
ground.hitTime = 14
ground.velocity = -1.2,-8
air.velocity = -1.2,-8
down.velocity = -4,-1.5
fall = 1
fall.recover = 1
fall.recovertime = 34
getpower = 10
envshake.time = 9
envshake.ampl = 2

[State 415, ChangeState]
type = ChangeState
trigger1 = Command = "y"
trigger1 = AnimElem = 4, >= 2
trigger1 = AnimElem = 7, < 0
value = 416

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

[StateDef 416]
type = C
movetype = A
physics = C
ctrl = 0
anim = 417
SprPriority = 2

[State 416, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 3.5
y = -6.35

[State 416, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 2
StateType = S
Physics = S

[State 416, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 3
StateType = A
Physics = A

[State 416, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 7
Value = S400,7
Channel = 0

[State 416, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 9
Value = S100,2

[State 416, Explod]
type = Explod
trigger1 = AnimElem = 8
ID = 418
postype = P1
pos = 0,-9
anim = 418
ownpal = 1
SprPriority = 5
Persistent = 0
BindTime = -1

[State 416, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = S, NA
animtype = Hard
damage = 23,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = HA
priority = 3, Hit
pausetime = 10,10
guard.pausetime = 10,10
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) := -35))
ground.type = Low
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -1.2,-8
air.velocity = -1.2,-8
down.velocity = -2.4,-2
air.fall = 1
yaccel = 0.54
fall.recover = 1
fall.recovertime = 30
getpower = 10
envshake.time = 9
envshake.ampl = 2
p2stateno = 417

[StateDef 417]
type = A
movetype = H
physics = N
velset = 0,0
Ctrl = 0

[State 417, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 0
IgnoreHitPause = 1
Persistent = 0

[State 417, Offset]
type = OffSet
trigger1 = Time >= 0
x = 1
persistent = 4

[State 417, Offset]
type = OffSet
trigger1 = Time >= 2
x = -1
persistent = 4

[State 417, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 417, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 418

[StateDef 418]
type = A
movetype= H
physics = N
velset = 0,0
ctrl = 0

[State 418, VelSet]
type = VelSet
trigger1 = Time = 0
x = -12
y = 15

[State 418, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5035)
trigger1 = Time = 0
value = 5035

[State 418, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5035
trigger2 = AnimTime = 0
value = 5050

[State 418, ChangeState]
type = ChangeState
triggerall = Pos Y >= 0
trigger1 = Time >= 1
value = 419

[StateDef 419]
type = U
movetype = H
Physics = N
ctrl = 0
velset = 0,0

[State 419, EnvShake]
type = EnvShake
trigger1 = Time = 0
time  = 10
ampl  = 5
freq  = 90

[State 419, SelfState]
type = SelfState
triggerall = Pos Y >= -20
triggerall = Alive
triggerall = CanRecover
trigger1 = Command != "holddown" && Command != "holdup"
trigger1 = Command = "fwd" || Command = "back" || Command = "holdfwd" || Command = "holdback"
trigger2 = Command != "holddown" && Command != "holdfwd" && Command != "holdback"
trigger2 = Command = "up" || Command = "holdup"
value = 5200

[State 419, SelfState]
type = SelfState
triggerall = Time >= 25
triggerall = Pos Y < -20
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery" || Command = "a" || Command = "b" || Command = "c" || Command = "x" || Command = "y" || Command = "z"
Value = 5210

[State 419, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5061)
trigger1 = Time = 0
value = 5061

[State 419, ChangeAnim]
type = ChangeAnim
triggerall =! SelfAnimExist(5061)
triggerall = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 419, ChangeAnim]
type = ChangeAnim
triggerall =! SelfAnimExist(5061)
triggerall = SelfAnimExist(5035)
trigger1 =! SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
Value = 5035

[State 419, ChangeAnim]
type = ChangeAnim
triggerall =! SelfAnimExist(5061)
triggerall = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 =! SelfAnimExist(5035)
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 =! SelfAnimExist(5030)
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 419, VelSet]
type = VelSet
trigger1 = Time = 0
x = -2.5
y = -10.3

[State 419, StateTypeSet]
type = StateTypeSet
trigger1 = StateType != A
trigger1 = Time = 0
StateType = A

[State 419, VelAdd]
type = VelAdd
trigger1 = Time >= 1
y = .54

[State 419, HitFallSet]
type = HitFallSet
trigger1 = Time = 25
value = 1
IgnoreHitPause = 1
Persistent = 0

[State 419, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100

;---------------------------------------------------------------------------
; Crouching Strong Punch
[StateDef 420]
type    = C
movetype= A
physics = C
poweradd = 50
ctrl = 0
anim = 420
VelSet = 0,0

[State 420, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

[State 420, explod]
type = Explod
trigger1 = AnimElem = 4
anim = 421
ID = 421
sprpriority = 3
pos = 0,10
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1
ownpal = 1

[State 420, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,2

[State 420, PosAdd]
type = PosAdd
trigger1 = Time = [6,8]
x = 6

[State 420, PosAdd]
type = PosAdd
trigger1 = Time = [10,12]
x = 5

[State 420, PosAdd]
type = PosAdd
trigger1 = Time = [13,15]
x = 4

[State 420, PosAdd]
type = PosAdd
trigger1 = Time = [16,18]
x = 2

[State 420, PosAdd]
type = PosAdd
trigger1 = Time = [19,21]
x = 1

[State 420, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = S, NA
animtype = Hard
damage = 58,IfElse(var(45) > 0,6,0)
hitflag = MAF
guardflag = L
priority = 4, Hit
pausetime = 10,10
guard.pausetime = 10,10
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) := -15))
ground.type = Low
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -6
air.velocity = -1.4,-6
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 35
getpower = 45
envshake.time = 9
envshake.ampl = 3

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

;---------------------------------------------------------------------------
; Crouching Light Kick
; CNS difficulty: easy
[StateDef 430]
type = C
movetype= A
physics = C
poweradd = 19
ctrl = 0
anim = 430
VelSet = 0,0

[State 430, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = time = 1
value = S400,0+random%3
channel = 0

[State 430, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,0

[State 430, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 431
ID = 431
sprpriority = -1
pos = 0,0
scale = 0.6,0.6
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0
ownpal = 1

[State 430, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = C, NA
animtype = medium
hitflag = MAF
guardflag = MA
ground.type = low
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -35))
hitsound = S200,0
guardsound = S300,0
damage = 24,IfElse(var(45) > 0,2,0)
priority = 4, Hit
getpower = 20
pausetime = 8,8
ground.slidetime = 10
guard.slidetime = 10
ground.hittime = 10
guard.hittime = 10
guard.ctrltime = 10
air.hittime = 13
ground.velocity = -3
air.velocity = -1.6,-3

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

;---------------------------------------------------------------------------
; Crouching Medium Kick
; CNS difficulty: easy
[StateDef 440]
type    = C
movetype= A
physics = C
poweradd= 22
ctrl = 0
anim = 440
VelSet = 0,0

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

[State 440, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,1

[State 440, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
animtype = Hard
damage = 41,IfElse(var(45) > 0,4,0)
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 10,10
guard.pausetime = 10,10
hitsound = S200,1
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) := -15))
ground.type = High
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -3.5
air.velocity = -1.4,-2
down.velocity = -2,-4
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 35
getpower = 25
envshake.time = 9
envshake.ampl = 2

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

;---------------------------------------------------------------------------
; Crouch Strong Kick
; CNS difficulty: easy
; Description: This move uses "Trip" for the "ground.type" parameter in
;     its HitDef. It's a special type that puts the opponent in a tripped
;     animation as he falls. Also, the hitflag parameter in the HitDef
;     is set to "MAFD". The "D" indicates that a downed opponent can be
;     hit by the attack.
[Statedef 450]
type    = C
movetype= A
physics = C
poweradd= 50
ctrl = 0
anim = 450
VelSet = 0,0

[State 450, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

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

[State 450, VelSet]
type = VelSet
trigger1 = Time = [4,19]
x = 0.5

[State 450, PosAdd]
type = PosAdd
trigger1 = AnimElem = 2
trigger2 = AnimElem = 3
trigger3 = AnimElem = 4
trigger4 = AnimElem = 5
x = 5

[State 450, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
animtype = Hard
damage = 62,IfElse(var(45) > 0,6,0)
hitflag = MAF
guardflag = L
priority = 4, Hit
pausetime = 10,10
guard.pausetime = 10,10
hitsound = S200,2
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) := -35))
ground.type = Trip
ground.slideTime = 18
ground.hitTime  = 18
ground.velocity = -0.5,-2.5
air.velocity = -0.5,-1.5
yaccel = .54
fall = 1
air.fall = 1
fall.recover = 0
getpower = 45
envshake.time = 9
envshake.ampl = 3

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

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

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

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

[State 600, HitDef]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
animtype = Light
damage = 22,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = HA
priority = 4, Hit
pausetime = 6,6
guard.pausetime = 6,6
hitsound = S200,0
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.type = High
ground.slidetime = 11
ground.hittime  = 11
ground.velocity = -4
air.velocity = -1.4,-2
down.velocity = -2.8,-2
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 15
getpower = 12

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

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

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

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

[State 610, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
animtype = Med
damage = 43,IfElse(var(45) > 0,4,0)
hitflag = MAF
guardflag = HA
priority = 4, Hit
pausetime = 8,8
guard.pausetime = 8,8
hitsound = S200,1
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) := -80))
ground.type = High
ground.slideTime = 14
ground.hitTime  = 13
ground.velocity = -6.5
air.velocity = -2.5,-3.5
down.velocity = -4,-2
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 25
envshake.time = 9
envshake.ampl = 2

[State 610, ChangeState]
type = CtrlSet
trigger1 = Time >= 33
value = 1

;---------------------------------------------------------------------------
; Jump Strong Punch
; CNS difficulty: easy
[StateDef 620]
type    = A
movetype= A
physics = A
poweradd= 50
ctrl = 0
anim = 620
sprpriority = 2

[State 620, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

[State 620, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,2

[State 620, explod]
type = Explod
trigger1 = AnimElem = 5
anim = 621
ID = 621
sprpriority = 4
pos = 20,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1
ownpal = 1

[State 620, explod]
type = Explod
trigger1 = AnimElem = 5
anim = 622
ID = 622
sprpriority = 4
pos = 0, 0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1

[State 620, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S, NA
animtype = Hard
damage = 65,IfElse(var(45) > 0,7,0)
hitflag = MAF
guardflag = HA
priority = 4, Hit
pausetime = 10,10
guard.pausetime = 10,10
hitsound = S200,2
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) := -50))
ground.type = High
ground.slideTime = 19
ground.hitTime  = 18
ground.velocity = -7
air.velocity = -5,-3
down.velocity = -4,-3
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 31
getpower = 35
envshake.time = 9
envshake.ampl = 3

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

;---------------------------------------------------------------------------
; Jump Light Kick
; CNS difficulty: easy
[Statedef 630]
type    = A
movetype= A
physics = A
poweradd= 11
ctrl = 0
anim = 630

[State 630, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 650
trigger1 = time = 1
value = S400,0+random%3
channel = 0

[State 630, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,0

[State 630, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S,NA
animtype = Light
damage = 24,IfElse(var(45) > 0,2,0)
hitflag = MAF
guardflag = HA
priority = 4, Hit
pausetime = 6,6
guard.pausetime = 6,6
hitsound = S200,0
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) := -45))
ground.type = High
ground.slideTime = 10
ground.hitTime  = 10
ground.velocity = -4
air.velocity = -1.6,-2
down.velocity = -3.2,-1.5
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 23
getpower = 12

[State 630, ChangeState]
type = CtrlSet
trigger1 = Time >= 24
value = 1

;---------------------------------------------------------------------------
; Jump Medium Kick
; CNS difficulty: easy
[Statedef 640]
type    = A
movetype= A
physics = A
poweradd= 35
ctrl = 0
anim = 640

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

[State 640, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,1

[State 640, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S, NA
animtype = Med
damage = 42,IfElse(var(45) > 0,4,0)
hitflag = MAF
guardflag = HA
priority = 4, Hit
pausetime = 8,8
guard.pausetime = 8,8
hitsound = S200,1
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) := -45))
ground.type = High
ground.slideTime = 12
ground.hitTime  = 12
ground.velocity = -5.5
air.velocity = -2.2,-4
down.velocity = -4.4,-1.5
yaccel = .54
air.fall = 1
fall.recover = 1
fall.recovertime = 25
getpower = 25
envshake.time = 9
envshake.ampl = 2

[State 640, 5]
type = CtrlSet
trigger1 = Time >= 34
value = 1

;---------------------------------------------------------------------------
; Jump Strong Kick
; CNS difficulty: easy
[Statedef 650]
type    = A
movetype= A
physics = A
poweradd= 50
ctrl = 0
anim = 650

[State 650, PlaySnd]
type = PlaySnd
triggerall = MoveType != H && Random < 700
trigger1 = time = 1
value = S400,5+random%4
channel = 0

[State 650, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,2

[State 650, HitDef]
Type = HitDef
Trigger1 = AnimElem = 8
Attr = A, NA
Damage = 65,IfElse(var(45) > 0,7,0)
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 10,10
Guard.PauseTime = 10,10
HitSound = S200,2
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) := -45))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 14
Ground.HitTime  = 14
Ground.Velocity = -7
Air.Velocity = -10,8
AirGuard.Velocity = -3.6,-1
Down.Velocity = -6,-1.5
Ground.CornerPush.VelOff = -7
Air.CornerPush.VelOff = -10
Down.CornerPush.VelOff = -7
Fall = 0
Air.Fall = 1
Fall.Recover = 1
Fall.recovertime = 33
GetPower = 35
envshake.time = 9
envshake.ampl = 3

[State 650, 5]
type = CtrlSet
trigger1 = Time = 35
value = 1

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

[State 700, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S410,3
channel = 0

[State 700, PosSet]
type = PosSet
trigger1 = AnimElem = 1
y = 0

[State 700, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 700, HitBy]
type = HitBy
trigger1 = Time = 0
value = SCA, NT,ST,HT
time = 19

[State 700, AfterImage]
type = Afterimage
trigger1 = AnimElem = 1
time = 17
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
palpostbright = 0,0,0
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

[State 700, StateChange]
type = Changestate
trigger1 = AnimTime = 0
value = 0
ctrl = 1

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

[State 750, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S40,3

[State 750, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S400,0
Channel = 0

[State 750, Width]
type = Width
trigger1 = 1
edge = 5,0

[State 750, VelSet]
type = VelSet
trigger1 = AnimElem = 6
x = 8

[State 750, VelSet]
type = VelSet
trigger1 = AnimElem = 11
x = 0

[State 750, HitBy]
type = HitBy
trigger1 = time <= 17
value = SCA, NT,ST,HT

[State 750, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 750, AfterImage]
type = Afterimage
trigger1 = AnimElem = 6
time = 22
timega p= 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
palpostbright = 0,0,0
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

[State 750, StateChange]
type = Changestate
trigger1 = AnimTime = 0
value = 0
ctrl = 1

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

[State 751, Turn]
type = Turn
trigger1 = time = 0

[State 751, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S40,3

[State 751, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S400,0
Channel = 0

[State 751, Width]
type = Width
trigger1 = 1
edge = 5,0

[State 751, VelSet]
type = VelSet
trigger1 = AnimElem = 6
x = 8

[State 751, VelSet]
type = VelSet
trigger1 = AnimElem = 11
x = 0

[State 751, HitBy]
type = HitBy
trigger1 = time <= 17
value = SCA, NT,ST,HT

[State 751, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 751, AfterImage]
type = Afterimage
trigger1 = AnimElem = 6
time = 22
timega p= 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
palpostbright = 0,0,0
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

[State 751, StateChange]
type = Changestate
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;---------------------------------------------------------------------------
; 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).
; 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.
[StateDef 800]
type = S
movetype = A
physics = S
ctrl = 0
anim = 800
sprpriority = 2

[State 800, HitDef]
type = HitDef
trigger1 = AnimElem = 1
attr = S, NT
hitflag = M-
priority = 1, Miss
sparkno = -1
guard.sparkno = -1
hitsound = S800,3
sprpriority = 1
p1facing = ifelse (command = "holdfwd", 1, -1)
p2facing = 1
p1Stateno = 810
p2Stateno = 820
fall = 1
fall.recover = 0

[State 800, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S800,0
Channel = 0

[State 800, ChangeState]
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
moveyype= A
physics = N
velset = 0,0
anim = 810

[State 810, PlaySnd]
type = PlaySnd
trigger1 = Time = [27,63]
value = S200,5
Channel = 1
Persistent = 6

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

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 1
pos = 35,-5

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 2
pos = 40,-10

[State 810, TargetBind]
type = TargetBind
trigger1 = Time = [27,63]
pos = 40,-8
persistent = 4

[State 810, TargetBind]
type = TargetBind
trigger1 = Time = [29,63]
pos = 40,-10
persistent = 4

[State 810, Width]
type = Width
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(12) < 0
edge = 40,0

[State 810, Explod]
type = Explod
trigger1 = Time = [23,59]
ID = 811
postype = P1
pos = 40,-80
Anim = 811
ownpal = 1
sprpriority = 5
IgnoreHitPause = 0
persistent = 6
removetime = -2
RemoveOnGetHit = 1

[State 810, Helper]
type = Helper
trigger1 = Time = [27,63]
StateNo = 8050
ID = 8050
Name = "HitSpark"
PosType = P1
pos = 40,-80
ownpal = 1
SprPriority = 5
IgnoreHitPause = 1
persistent = 6

[State 810, HitAdd]
type = HitAdd
trigger1 = Time = [33,63]
value = 1
IgnoreHitPause = 1
persistent = 6

[State 810, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [27,63]
value = -15
kill = IfElse(Time<62,0,1)
persistent = 6

[State 810, LifeAdd]
type = LifeAdd
trigger1 = Time = [27,63]
value = 6
persistent = 6

[State 810, TargetState]
type = TargetState
trigger1 = Time <= 71
value = 820

[State 810, TargetState]
type = TargetState
trigger1 = Time = 72
value = 821

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

;---------------------------------------------------------------------------
; 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 = A
movetype = H
physics = N
velset = 0,0

[State 820, HitOverRide]
type = HitOverRide
trigger1 = 1
attr = , NT, ST, HT
time = 1
IgnoreHitPause = 1

[State 820, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0
IgnoreHitPause = 1
persistent = 1

[State 820, ChangeAnim]
type = ChangeAnim
trigger1 = Time = 0
value = 5010

[State 820, SelfState]
type = SelfState
trigger1 = Time >= 10
trigger1 = P2MoveType != A
value = 5035

;---------------------------------------------------------------------------
; Opponent thrown into the air
; (a custom gethit state)
; Description: This state has the opponent flying through the air and
;     falling down onto the ground. The SelfState controller sets the
;     opponent back using to his own state file when he his the ground.
;     Controllers 821,2 and 821,3 allow the opponent to recover by
;     hitting his recovery command when he is falling.
[StateDef 821]
type = A
movetype = H
physics = N
velset = -0.5,-6.5

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

[State 821, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 821, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5035)
trigger1 =! SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
value = 5035

[State 821, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 821, VelAdd]
type = VelAdd
trigger1 = Time >= 2
y = 0.4

[State 821, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100
ctrl = 0

[Statedef 850]
type = S
movetype = I
physics = S
anim = 850
velset = 0,0
ctrl = 0
sprpriority = 2
facep2 = 1
poweradd = 75

[State 850, ChangeAnim]
type = changeanim
value = 853
trigger1 = Time = 10

[State 850, HitBy]
type = HitBy
trigger1 = 1
value = SCA,AT
time = 1

[State 850, Pause]
type = Pause
trigger1 = Time = 0
time = 20
movetime = 20

[State 850, PosFreeze]
type = PosFreeze
trigger1 = 1
value = 1

[State 850, EnvShake]
type = EnvShake
trigger1 = time = 1
persistent = 0
ignorehitpause = 1
time = 10
ampl = 2
freq = 180
phase = 40

[State 850 PlaySnd]
type = playsnd
value = S850,0
trigger1 = !time

[State 850, Explod]
type = Explod
ID = 855
anim = 860
pos = 35,-72
sprpriority = 3
ownpal = 1
bindtime = -1
removetime = -2
scale = .5,.5
trigger1 = !time
PauseMoveTime = 9999
SuperMoveTime = 9999

[State 850, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoWalk
flag2 = NoStandGuard
flag3 = NoCrouchGuard

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

[StateDef 851]
type = C
movetype = I
physics = C
anim = 851
velset = 0,0
ctrl = 0
sprpriority = 2
facep2 = 1
poweradd = 75

[State 851, ChangeAnim]
type = changeanim
value = 854
trigger1 = Time = 10

[State 851, HitBy]
type = HitBy
trigger1 = 1
value = SCA,AT
time = 1

[State 851, Pause]
type = Pause
trigger1 = Time = 0
time = 20
movetime = 20

[State 851, PosFreeze]
type = PosFreeze
trigger1 = 1
value = 1

[State 851, EnvShake]
type = EnvShake
trigger1 = time = 1
persistent = 0
ignorehitpause = 1
time = 10
ampl = 2
freq = 180
phase = 40

[State 851, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 16

[State 851 PlaySnd]
type = playsnd
value = S850,0
trigger1 = !time

[State 851, Explod]
type = Explod
ID = 855
anim = 860
pos = 30,-37
sprpriority = 3
ownpal = 1
bindtime = -1
removetime = -2
scale = .5,.5
trigger1 = !time
PauseMoveTime = 9999
SuperMoveTime = 9999

[State 851, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoWalk
flag2 = NoStandGuard
flag3 = NoCrouchGuard

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

[StateDef 852]
type = A
movetype = I
physics = N
anim = 852
velset = 0,0
ctrl = 0
sprpriority = 2
facep2 = 1
poweradd = 75

[State 852, ChangeAnim]
type = changeanim
value = 855
trigger1 = Time = 10

[State 852, HitBy]
type = HitBy
trigger1 = 1
value = SCA,AT
time = 1

[State 852, Pause]
type = Pause
trigger1 = Time = 0
time = 20
movetime = 20

[State 852, PosFreeze]
type = PosFreeze
trigger1 = 1
value = 1

[State 852, EnvShake]
type = EnvShake
trigger1 = time = 1
persistent = 0
ignorehitpause = 1
time = 10
ampl = 2
freq = 180
phase = 40

[State 852, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 16

[State 852 PlaySnd]
type = playsnd
value = S850,0
trigger1 = !time

[State 852, Explod]
type = Explod
ID = 855
anim = 860
pos = 35,-60
sprpriority = 3
ownpal = 1
bindtime = -1
removetime = -2
scale = .5,.5
trigger1 = !time
PauseMoveTime = 9999
SuperMoveTime = 9999

[State 852, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoWalk
flag2 = NoStandGuard
flag3 = NoCrouchGuard

[State 852, ChangeState]
type = ChangeState
trigger1 = animtime = 0
value = 853

[StateDef 853]
type = A
physics = N
ctrl = 1
anim = 48

[State 853, Gravity]
type = Gravity
trigger1 = 1

[State 853, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && Vel Y > 0
value = 52

[StateDef 854]
type = A
physics = N
movetype = I
anim = IfElse(Root,StateType = C,857,IfElse(Root,StateType = A,856,858))
velset = 0,0
ctrl = 0

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

[State 854, BindToRoot]
type = BindToRoot
trigger1 = 1
time = -1

[State 854, ChangeAnim]
type = ChangeAnim
triggerall = !time
trigger1 = Root,Command = "down"
value = 857

[State 854, ChangeAnim]
type = ChangeAnim
triggerall = !time
trigger1 = Root,Command = "fwd"
value = ifelse((Root,Statetype = A),858,856)

[State 854, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 856 || Anim = 858
value = IfElse((Root,StateType = A),858,856)

[State 854, VarSet]
type = VarSet
trigger1 = time >= IfElse((Root,StateType = A),7,8)
trigger2 = facing != (Root,facing)
var(0) = 1

[State 854, VarSet]
type = varset
trigger1 = (Root,Command = "holdback")
trigger2 = time < 4 && (Root,Command = "holdfwd" + Root,Command = "holddown") > 1
trigger3 = time >= 4 && (Root,Command = "holdfwd" || Root,Command = "holddown")
trigger4 = time >= 1 && (((Anim = 856 || Anim = 858) && Root,Command = "fwd") || (Anim = 857 && Root,Command = "down"))
var(0) = 1

[State 854, disable]
type = ChangeAnim
trigger1 = var(0) = 1
value = 99999

[State 854, ReversalDef]
type = ReversalDef
trigger1= !var(0) && (Anim = 856 || Anim = 858)
reversal.attr = SCA,AA
p1stateno = 855
pausetime = 0,0
sparkno = -1
numhits = 0

[State 854, ReversalDef]
type = ReversalDef
trigger1 = !var(0) && Anim = 857
reversal.attr = SC,AA
p1stateno = 855
pausetime = 0,0
sparkno = -1
numhits = 0

[State 854, ReversalDef]
type = ReversalDef
trigger1 = var(0) = 1
reversal.attr =
pausetime = 0,0
sparkno = -1
numhits = 0

[State 854, DestroySelf]
type = DestroySelf
trigger1 = time >= 18
trigger2 = (Root,MoveType != I)
trigger3 = !(Root,Ctrl) && (Root,StateNo != [850,852])
trigger4 = (Root,StateNo = [850,852]) && (Root,time <= 1)

[StateDef 855]
movetype = I
ctrl = 0

[State 855, VarSet]
type = varset
trigger1 = 1
var(0) = 1

[State 855, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo = [850,852]
trigger2 = time >= 2

[StateDef 900]
type = S
physics = S
movetype = I
anim = 900
velset = 0,0
ctrl = 0

[State 900, PowerAdd]
type = PowerAdd
triggerall = power < const(data.power) && power < powermax
trigger1 = (command = "hold_b" && command = "hold_y")
value = 2 + ifelse(time < 60, 0, (time-60)/12)

[State 900, PlaySnd]
type = PlaySnd
trigger1= !time
value = S410,2
channel = 0

[State 900, PalFX]
type = PalFX
trigger1 = 1
time = 1
add = 75+ceil(sin(time/6.0*pi)*75), 25+ceil(sin(time/6.0*pi)*25), 0

[State 900, Helper]
type = Helper
trigger1 = !NumHelper(902)
helpertype = normal
stateno = 902
ID = 902
name ="Power_Charge"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 900, Helper]
type = Helper
trigger1 = !numhelper(903)
helpertype = normal
stateno = 903
ID = 903
name="Particles"
postype = p1
pausemovetime = 9999
supermovetime = 9999
ownpal = 1

[State 900, ChangeState]
type = ChangeState
trigger1 = power >= const(data.power) || power >= powermax || roundstate != 2
trigger2 = (command != "hold_b" || command != "hold_y")
value = 901
ctrl = 1

[StateDef 901]
type = S
physics = S
movetype = I
anim = 901
velset = 0,0
ctrl = 1

[State 901, StopSnd]
type = StopSnd
trigger1 = !time
channel = 0

[State 901, PlaySnd]
type = PlaySnd
trigger1 = !time && power >= const(data.power)
value = S410,20
channel = 0

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

[StateDef 902]
type = A
physics = N
movetype = I
anim = 99999
ctrl = 0
velset = 0,0

[State 902, BindtoRoot]
type = BindtoRoot
trigger1 = (root,stateno = 900)
pos = 4,0

[State 902, PlaySnd]
type = PlaySnd
trigger1 = !time
value = S900,0
Channel = 1

[State 902, Explod]
type = Explod
trigger1 = !numexplod(902)
ID = 902
anim = 902
sprpriority = 3
postype = p1
bindtime = -1
removetime = -1
scale = .5,.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 902, Explod]
type = Explod
trigger1 = !(time%6)
anim = 904
sprpriority = -3
postype = p1
pos = 0,-ceil(pos y)
scale = .5,.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 902, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(902) && root,power < 3000
ID = 902
scale = .5, .1 + .4*(root,power/3000.0)

[State 902, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(902) && root,power >= 3000
ID = 902
scale = .5, .5

[State 902, PlaySnd]
type = Stopsnd
trigger1 = Root,StateNo != 900
channel = 1

[State 902, RemoveExplod]
type = RemoveExplod
trigger1 = Root,StateNo != 900

[State 902, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 900

[StateDef 903]
type = A
physics = N
movetype = I
anim = 99999
ctrl = 0
velset = 0,0

[State 903, BindtoRoot]
type = BindtoRoot
trigger1 = !(time%8)
pos = ceil(-153+(random/3.125)),ceil(82-(random/3.125))

[State 903, Explod]
type = Explod
trigger1 = (time%8) = 1
anim = 903
sprpriority = ifelse(random < 750,5,-1)
postype = p1
vel = ((rootdist x-7)/32.0), ((rootdist y-70)/32.0)
scale = ifelse(random < 500,.5,-.5), ifelse(random < 500,.5,-.5)
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 903, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Stateno != 900

[State 903, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 900

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

[State 950, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 7
value = S410,16
Channel = 0

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

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

[State 950, SuperPause]
type = SuperPause
trigger1 = time = 0
time = 50
movetime = 50
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 = 951
ID = 951
name = "Guard_Counter"
postype = p1
pos = ceil(5 * const(size.xscale)), ceil(-53 * const(size.yscale))
supermovetime = 9999
pausemovetime = 9999
ownpal = 1

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

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

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

[state 950, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 50

[State 950, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = S,SA
animtype = Hard
damage = 100
hitflag = MAF
guardflag =
priority = 4, Hit
pausetime = 30,30
guard.pausetime = 10,10
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) := -55))
ground.type = High
ground.slideTime = 16
ground.hitTime  = 16
ground.velocity = -10,-6
air.velocity = -10,-6
down.velocity = -4,-2
yaccel = .54
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 15
envshake.ampl = 5
envshake.freq = 90
p2Stateno = 2104

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

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

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

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

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

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

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

[StateDef 1000]
Type = S
MoveType = I
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1000
PowerAdd = 60
SprPriority = 2

[State 1000, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 1001
ID = 1001
Name = "Flametongue"
PosType = P1
Pos = 20,-20
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1000, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 5
Value = S410,4+Random%2
channel = 0

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

[StateDef 1001]
type = A
movetype = A
physics = N
anim = 1001

[State 1001, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

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

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

[State 1001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1001, HitDef]
type = HitDef
trigger1 = AnimElem = 7
trigger2 = AnimElem = 8
trigger3 = AnimElem = 9
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(30*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1001, 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 = 12

[State 1001, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1001, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1010]
Type = S
MoveType = I
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1000
PowerAdd = 60
SprPriority = 2

[State 1010, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 1011
ID = 1011
Name = "Flametongue"
PosType = P1
Pos = 20,-5
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1010, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 5
Value = S410,4+Random%2
channel = 0

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

[StateDef 1011]
type = A
movetype = A
physics = N
anim = 1011

[State 1011, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

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

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

[State 1011, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1011, HitDef]
type = HitDef
trigger1 = AnimElem = 8
trigger2 = AnimElem = 9
trigger3 = AnimElem = 10
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(30*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1011, 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 = 12

[State 1011, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1011, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1020]
Type = S
MoveType = I
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1020
PowerAdd = 60
SprPriority = 2

[State 1020, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 1021
ID = 1021
Name = "Dual_Flametongue"
PosType = P1
Pos = 0,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1020, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 5
Value = S410,4+Random%2
channel = 0

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

[StateDef 1021]
type = A
movetype = A
physics = N
anim = 1023

[State 1021, Explod]
type = Explod
trigger1 = Time = 0
anim = 1021
ID = 1021
sprpriority = 5
pos = 45,-20
postype = p1
scale = 0.75,0.75
bindtime = -1
removeongethit = 1
ignorehitpause = 0
trans = Add

[State 1021, Explod]
type = Explod
trigger1 = Time = 0
anim = 1022
ID = 1022
sprpriority = 5
pos = 45,-95
postype = p1
scale = 0.75,0.75
bindtime = -1
removeongethit = 1
ignorehitpause = 0
trans = Add

[State 1021, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1021, HitDef]
type = HitDef
trigger1 = AnimElem = 7
trigger2 = AnimElem = 8
trigger3 = AnimElem = 9
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(35*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 1021, 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 = 12

[State 1021, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1021, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1021)
trigger1 = Root,Stateno = [2000,3999]
trigger2 = AnimTime = 0
trigger3 = Root,Movetype = H
ID = 1021

[State 1021, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1022)
trigger1 = Root,Stateno = [2000,3999]
trigger2 = AnimTime = 0
trigger3 = Root,Movetype = H
ID = 1022

[State 1021, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1050]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1050
sprpriority = 2

[State 1050, VelSet]
type = VelSet
trigger1 = Time = 0
x = 0
y = 0

[State 1050, VelSet]
type = VelSet
trigger1 = AnimElem = 4
y = -4.5

[State 1050, VelAdd]
type = VelAdd
trigger1 = AnimElem = 4, > 0
y = -0.1

[State 1050, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
physics = A

[State 1050, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S410,4+Random%2
channel = 0

[State 1050, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 1051
ID = 1051
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[StateDef 1051]
type = A
movetype = A
physics = N
anim = 2051

[State 1051, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 1051, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75
ignorehitpause = 1

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

[State 1051, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1051, HitDef]
type = HitDef
trigger1 = AnimElem = 12
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(90*(root,fvar(1)*root,fvar(2))),9
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1051, 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 = 12

[State 1051, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1051, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1060]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1050
sprpriority = 2

[State 1060, VelSet]
type = VelSet
trigger1 = Time = 0
x = 0
y = 0

[State 1060, VelSet]
type = VelSet
trigger1 = AnimElem = 4
y = -4.5

[State 1060, VelAdd]
type = VelAdd
trigger1 = AnimElem = 4, > 0
y = -0.1

[State 1060, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
physics = A

[State 1060, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S410,4+Random%2
channel = 0

[State 1060, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 1061
ID = 1061
Name = "Flametongue"
PosType = P1
Pos = -5,35
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[StateDef 1061]
type = A
movetype = A
physics = N
anim = 2052

[State 1061, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 1061, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75
ignorehitpause = 1

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

[State 1061, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1061, HitDef]
type = HitDef
trigger1 = AnimElem = 12
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(90*(root,fvar(1)*root,fvar(2))),9
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1061, 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 = 12

[State 1061, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1061, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1070]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1050
sprpriority = 2

[State 1070, VelSet]
type = VelSet
trigger1 = Time = 0
x = 0
y = 0

[State 1070, VelSet]
type = VelSet
trigger1 = AnimElem = 4
y = -4.5

[State 1070, VelAdd]
type = VelAdd
trigger1 = AnimElem = 4, > 0
y = -0.1

[State 1070, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 4
physics = A

[State 1070, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S410,4+Random%2
channel = 0

[State 1070, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 1071
ID = 1071
Name = "Flametongue"
PosType = P1
Pos = -5,45
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[StateDef 1071]
type = A
movetype = A
physics = N
anim = 2053

[State 1071, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 1071, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75,0.75
ignorehitpause = 1

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

[State 1071, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 1071, HitDef]
type = HitDef
trigger1 = AnimElem = 12
attr = S, SP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(90*(root,fvar(1)*root,fvar(2))),9
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -3, -5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1071, 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 = 12

[State 1071, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1071, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno = [2000,3999]
trigger3 = Root,MoveType = H

[StateDef 1100]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1100
sprpriority = 2

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = [5,11]
x = 6

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = [12,13]
x = 8

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = [14,15]
x = 6

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = [16,17]
x = 4

[State 1100, PosAdd]
Type = PosAdd
Trigger1 = Time = [18,19]
X = 3

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = [20,21]
x = 2

[State 1100, PosAdd]
type = PosAdd
trigger1 = Time = 22
x = 1

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 8
value = S410,13
Channel = 0

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 9
value = S100,2

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

[State 1100, Explod]
type = Explod
trigger1 = AnimElem = 9
anim = 421
ID = 1101
sprpriority = 4
pos = -10,-45
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 0

[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 10
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,5
guardsound = S300,0
damage = 45,4
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 16
guard.slidetime = 16
ground.hittime = 16
guard.hittime = 16
guard.ctrltime = 16
air.hittime = 16
ground.velocity = -1.5,-4
guard.velocity = -9
air.velocity = -1.5, -4
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3
getpower = 15

[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 11
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,5
guardsound = S300,0
damage = 45,4
priority = 5, Hit
pausetime = 8,8
ground.slidetime = 16
guard.slidetime = 16
ground.hittime = 16
guard.hittime = 16
guard.ctrltime = 16
air.hittime = 16
ground.velocity = -8,-4
guard.velocity = -9
air.velocity = -10,-5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3
getpower = 15
;p2stateno = 2104

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

[StateDef 1110]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1110
sprpriority = 2

[State 1110, VarSet]
type = VarSet
sysvar(1) = 0
trigger1 = !time

[State 1110, StateTypeSet]
type = StateTypeSet
trigger1 = Time = 6
StateType = A
Physics = A
IgnoreHitPause = 1

[State 1110, PosAdd]
type = PosAdd
trigger1 = Time = [0,3]
x = 5

[State 1110, PosAdd]
type = PosAdd
trigger1 = Time = [4,5]
x = 4

[State 1110, VelSet]
type = VelSet
trigger1 = Time = 6
x = 2.2
y = -7.9

[State 1110, VelSet]
type = VelSet
trigger1 = MoveHit = 1
trigger1 = AnimElem = 9, > 0
x = -1.5
y = -3.5
IgnoreHitPause = 1

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

[State 1110, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 9
value = S410,14
channel = 0

[State 1110, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 4
Value = S100,7

[State 1110, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 8
value = S100,2

[State 1110, Explod]
type = Explod
trigger1 = AnimElem = 8
ID = 1111
Anim = 1111
postype = P1
pos = 0,0
Ownpal = 1
SprPriority = 5
Persistent = 0
RemoveOnGetHit = 1

[State 1110, HitDef]
type = HitDef
trigger1 = AnimElem = 4
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,5
guardsound = S300,0
damage = 50,6
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 13
guard.slidetime = 13
ground.hittime = 13
guard.hittime = 13
guard.ctrltime = 13
air.hittime = 13
ground.velocity = -1.5,-8.2
guard.velocity = -7
air.velocity = -1.5,-8.2
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 15

[State 1110, HitDef]
type = HitDef
trigger1 = AnimElem = 9
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -20))
hitsound = S200,5
guardsound = S300,0
damage = 60,6
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 16
guard.slidetime = 16
ground.hittime = 16
guard.hittime = 16
guard.ctrltime = 16
air.hittime = 16
ground.velocity = -10,15
guard.velocity = -7
air.velocity = -10,15
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 15

[StateDef 1120]
Type = S
MoveType = A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1120
SprPriority = 2

[State 1120, VarSet]
type = VarSet
sysvar(1) = 0
trigger1 = !time

[State 1120, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 15
StateType = A
Physics = A
IgnoreHitPause = 1

[State 1120, PosAdd]
type = PosAdd
trigger1 = Time = [0,5]
x = 1

[State 1120, PosAdd]
type = PosAdd
trigger1 = Time = [6,15]
x = 8

[State 1120, PosAdd]
type = PosAdd
trigger1 = Time = [16,19]
x = 5

[State 1120, PosAdd]
type = PosAdd
trigger1 = Time = [20,21]
x = 3

[State 1120, PosAdd]
type = PosAdd
trigger1 = Time = [22,25]
x = 2

[State 1120, VelSet]
type = VelSet
trigger1 = AnimElem = 15
x = 2.2
y = -7.9

[State 1120, VelSet]
type = VelSet
trigger1 = MoveHit = 1
trigger1 = AnimElem = 20, > 0
x = -1.5
y = -3.5
IgnoreHitPause = 1

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S410,13
Channel = 0

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 20
value = S410,14
Channel = 0

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 15
value = S100,13

[State 1120, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 19
Value = S100,2

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

[State 1120, Helper]
type = Helper
trigger1 = AnimElem = 15
helpertype = normal
stateno = 8010
ID = 8010
name = "Jump Dust"
postype = p1
ownpal = 1

[State 1120, Explod]
type = Explod
trigger1 = AnimElem = 19
ID = 1121
Anim = 1111
postype = P1
pos = 0,0
Ownpal = 1
SprPriority = 5
Persistent = 0
RemoveOnGetHit = 1

[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 6
trigger2 = AnimElem = 9
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,3
guardsound = S300,0
damage = 20,2
priority = 5, Hit
pausetime = 3,3
ground.slidetime = 13
guard.slidetime = 13
ground.hittime = 13
guard.hittime = 13
guard.ctrltime = 13
air.hittime = 13
ground.velocity = -7
guard.velocity = -7
air.velocity = -1.5,-8.2
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 15

[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 15
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,3
guardsound = S300,0
damage = 35,4
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 13
guard.slidetime = 13
ground.hittime = 13
guard.hittime = 13
guard.ctrltime = 13
air.hittime = 13
ground.velocity = -1.5,-8.2
guard.velocity = -7
air.velocity = -1.5,-8.2
down.bounce = 1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 15

[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 20
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -20))
hitsound = S200,4
guardsound = S300,0
damage = 50,5
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 16
guard.slidetime = 16
ground.hittime = 16
guard.hittime = 16
guard.ctrltime = 16
air.hittime = 16
ground.velocity = -10,15
guard.velocity = -7
air.velocity = -10,15
down.bounce = 1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 0
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 15

[StateDef 1130]
Type = S
MoveType = A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1120
SprPriority = 2
getpower = 0
juggle = 5

[State 1130, VarSet]
type = VarSet
sysvar(1) = 0
trigger1 = !time

[State 1130, VarSet]
type = VarSet
trigger1 = !time
var(25) = 30

[State 1130, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -120
ignorehitpause = 1

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 1130, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(5 * const(size.xscale)), ceil(-55 * const(size.yscale))
scale = 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1130, PowerAdd]
Type = PowerAdd
Trigger1 = time = 0
value = IfElse(Var(45) > 0,0,-500)

[State 1130, CtrlSet]
type = CtrlSet
trigger1 = MoveHit = 1
trigger1 = AnimElem = 20, > 0
value = 1
IgnoreHitPause = 1

[State 1130, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 15
StateType = A
Physics = A
IgnoreHitPause = 1

[State 1130, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 10

[State 1130, PosAdd]
type = PosAdd
trigger1 = Time = [0,5]
x = 1

[State 1130, PosAdd]
type = PosAdd
trigger1 = Time = [6,15]
x = 8

[State 1130, PosAdd]
type = PosAdd
trigger1 = Time = [16,19]
x = 5

[State 1130, PosAdd]
type = PosAdd
trigger1 = Time = [20,21]
x = 3

[State 1130, PosAdd]
type = PosAdd
trigger1 = Time = [22,25]
x = 2

[State 1130, VelSet]
type = VelSet
trigger1 = AnimElem = 15
x = 2.2
y = -7.9

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,15
Channel = 0

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 20
value = S410,16
Channel = 0

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,7

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 15
value = S100,13

[State 1130, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 19
Value = S100,2

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

[State 1130, Helper]
type = Helper
trigger1 = AnimElem = 15
helpertype = normal
stateno = 8010
ID = 8010
name = "Jump Dust"
postype = p1
ownpal = 1

[State 1130, Explod]
type = Explod
trigger1 = AnimElem = 19
ID = 1131
Anim = 1111
postype = P1
pos = 0,0
Ownpal = 1
SprPriority = 5
Persistent = 0
RemoveOnGetHit = 1

[State 1130, HitDef]
type = HitDef
trigger1 = AnimElem = 6
trigger2 = AnimElem = 9
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,3
guardsound = S300,0
damage = 20,2
priority = 5, Hit
pausetime = 3,3
ground.slidetime = 13
guard.slidetime = 13
ground.hittime = 13
guard.hittime = 13
guard.ctrltime = 13
air.hittime = 13
ground.velocity = -7
guard.velocity = -7
air.velocity = -1.5,-8.2
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1130, HitDef]
type = HitDef
trigger1 = AnimElem = 15
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,3
guardsound = S300,0
damage = 35,4
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 13
guard.slidetime = 13
ground.hittime = 13
guard.hittime = 13
guard.ctrltime = 13
air.hittime = 13
ground.velocity = -1.5,-8.2
guard.velocity = -7
air.velocity = -1.5,-8.2
down.bounce = 1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 0

[State 1130, HitDef]
type = HitDef
trigger1 = AnimElem = 20
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
attr = S, SA
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -20))
hitsound = S200,4
guardsound = S300,0
damage = 50,5
priority = 5, Hit
pausetime = 10,10
ground.slidetime = 16
guard.slidetime = 16
ground.hittime = 16
guard.hittime = 16
guard.ctrltime = 16
air.hittime = 16
ground.velocity = -10,15
guard.velocity = -7
air.velocity = -10,15
down.bounce = 1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 0
yaccel = 0.54
envshake.time = 10
envshake.ampl = 3
getpower = 0
p2stateno = 417

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

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S410,7+Random%2
channel = 0

[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 1201
ID = 1201
Name = "Flame_Pillar"
postype = P1
pos = 35,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 9
StateNo = 1201
ID = 1202
Name = "Flame_Pillar"
postype = P1
pos = 60,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 12
StateNo = 1201
ID = 1203
Name = "Flame_Pillar"
postype = P1
pos = 85,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

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

[StateDef 1201]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1201

[State 1201, Trans]
type = Trans
trigger1 = 1
trans = Add

[State 1201, VelSet]
type = VelSet
trigger1 = Time = [0,19]
x = 1

[State 1201, VelSet]
type = VelSet
trigger1 = Time = 20
x = 0

[State 1201, VarAdd]
type = VarAdd
trigger1 = Time >= 20
FV = 3
value = -0.02

[State 1201, VarAdd]
type = VarAdd
trigger1 = Time >= 20
FV = 4
value = -0.02

[State 1201, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75+fvar(3),0.75+fvar(4)

[State 1201, HitDef]
type = HitDef
trigger1 =! MoveContact
trigger1 =! MoveReversed
trigger1 = Time >= 14
attr = S, SP
animtype = Light
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -7.5
guard.velocity = -9
air.velocity = -2,-6
airguard.velocity = -3, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 25
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1201, 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 = 12

[State 1201, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1201, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1201, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0

[StateDef 1210]
type = S
movetype = I
physics = S
ctrl = 0
anim = 1200
velset = 0,0
sprpriority = 2

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S410,7+Random%2
channel = 0

[State 1210, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 1201
ID = 1201
Name = "Flame_Pillar"
postype = P1
pos = 85,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

[State 1210, Helper]
type = Helper
trigger1 = AnimElem = 9
StateNo = 1201
ID = 1202
Name = "Flame_Pillar"
postype = P1
pos = 110,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

[State 1210, Helper]
type = Helper
trigger1 = AnimElem = 12
StateNo = 1201
ID = 1203
Name = "Flame_Pillar"
postype = P1
pos = 135,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0
ownpal = 1

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

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

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S410,7+Random%2
channel = 0

[State 1220, Helper]
type = Helper
trigger1 = AnimElem = 7
StateNo = 1221
ID = 1221
Name = "Flame_Pillar"
postype = P1
pos = 35,0
ownpal = 1
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0

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

[StateDef 1221]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1201

[State 1221, Trans]
type = Trans
trigger1 = 1
trans = Add

[State 1221, VelSet]
type = VelSet
trigger1 = Time = [0,19]
x = 1

[State 1221, VelSet]
type = VelSet
trigger1 = Time = 20
x = 0

[State 1221, VarAdd]
type = VarAdd
trigger1 = Time >= 20
FV = 3
value = -0.02

[State 1221, VarAdd]
type = VarAdd
trigger1 = Time >= 20
FV = 4
value = -0.02

[State 1221, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75+fvar(3),0.75+fvar(4)

[State 1221, HitDef]
type = HitDef
trigger1 =! MoveContact
trigger1 =! MoveReversed
trigger1 = Time >= 14
attr = S, SP
animtype = Light
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 6,6
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -7.5
guard.velocity = -9
air.velocity = -2,-6
airguard.velocity = -3, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 25
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 10
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1221, 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 = 12

[State 1221, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1221, Helper]
type = Helper
trigger1 = time = 10
StateNo = 1201
ID = 1202
Name = "Flame_Pillar"
postype = P1
pos = 35,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1221, Helper]
type = Helper
trigger1 = Time = 20
StateNo = 1201
ID = 1203
Name = "Flame_Pillar"
postype = P1
pos = 70,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1221, Helper]
type = Helper
trigger1 = Time = 30
StateNo = 1201
ID = 1204
Name = "Flame_Pillar"
postype = P1
pos = 105,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1221, Helper]
type = Helper
trigger1 = Time = 40
StateNo = 1201
ID = 1205
Name = "Flame_Pillar"
postype = P1
pos = 140,0
keyctrl = 0
sprpriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1221, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1221, DestroySelf]
type = DestroySelf
trigger1 = Time >= 50
trigger2 = Root,MoveType = H

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

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,9
channel = 0

[State 1230, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -120
ignorehitpause = 1

[State 1230, VarSet]
type = VarSet
trigger1 = !time
var(25) = 30

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 1230, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-65 * const(size.yscale))
scale = 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1230, NotHitBy]
Type = NotHitBy
Trigger1 = Time = 0
Value = SCA
time = 24

[State 1230, PowerAdd]
Type = PowerAdd
Trigger1 = time = 0
value = IfElse(Var(45) > 0,0,-500)

[State 1230, Helper]
type = Helper
trigger1 = AnimElem = 9
StateNo = 1231
ID = 1231
Name = "Flame_Pillar"
postype = P1
pos = 35,0
ownpal = 1
keyctrl = 0
sprpriority = 5
Persistent = 0

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

[StateDef 1231]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1231

[State 1231, Trans]
type = Trans
trigger1 = 1
trans = Add

[State 1231, VelSet]
type = VelSet
trigger1 = Time < 30
x = 0.375

[State 1221, VelSet]
type = VelSet
trigger1 = Time = 30
x = 0

[State 1231, VarAdd]
type = VarAdd
trigger1 = Time = [30,57]
FV = 3
value = -0.02

[State 1231, VarAdd]
type = VarAdd
trigger1 = Time = [30,57]
FV = 4
value = -0.02

[State 1231, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75+fvar(3),0.75+fvar(4)

[State 1231, HitDef]
type = HitDef
trigger1 =! MoveContact
trigger1 =! MoveReversed
trigger1 = Time >= 19
attr = S, SP
animtype = Light
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(15*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 5,5
ground.slidetime = 15
guard.slidetime = 15
ground.hittime = 15
guard.hittime = 15
guard.ctrltime = 15
air.hittime = 15
ground.velocity = -6.5
guard.velocity = -8
air.velocity = -2.5,-6
airguard.velocity = -4, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 25
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 0
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1231, 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 = 12

[State 1231, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1231, Helper]
type = Helper
trigger1 = time = 5
StateNo = 1232
ID = 1232
Name = "Flame_Pillar"
postype = P1
pos = 15,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 10
StateNo = 1232
ID = 1233
Name = "Flame_Pillar"
postype = P1
pos = 30,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 15
StateNo = 1232
ID = 1234
Name = "Flame_Pillar"
postype = P1
pos = 45,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 20
StateNo = 1232
ID = 1235
Name = "Flame_Pillar"
postype = P1
pos = 60,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = time = 25
StateNo = 1232
ID = 1236
Name = "Flame_Pillar"
postype = P1
pos = 75,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 30
StateNo = 1232
ID = 1237
Name = "Flame_Pillar"
postype = P1
pos = 90,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 35
StateNo = 1232
ID = 1238
Name = "Flame_Pillar"
postype = P1
pos = 105,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 40
StateNo = 1232
ID = 1239
Name = "Flame_Pillar"
postype = P1
pos = 120,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = time = 45
StateNo = 1232
ID = 1240
Name = "Flame_Pillar"
postype = P1
pos = 135,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 50
StateNo = 1232
ID = 1241
Name = "Flame_Pillar"
postype = P1
pos = 150,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 55
StateNo = 1232
ID = 1242
Name = "Flame_Pillar"
postype = P1
pos = 165,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 60
StateNo = 1232
ID = 1243
Name = "Flame_Pillar"
postype = P1
pos = 180,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 65
StateNo = 1232
ID = 1244
Name = "Flame_Pillar"
postype = P1
pos = 195,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, Helper]
type = Helper
trigger1 = Time = 70
StateNo = 1232
ID = 1245
Name = "Flame_Pillar"
postype = P1
pos = 210,0
keyctrl = 0
sprpriority = 5
Persistent = 0

[State 1231, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1231, DestroySelf]
type = DestroySelf
trigger1 = Time > 70
trigger1 = NumHelper(1245) = 0
trigger2 = Root,MoveType = H
IgnoreHitPause = 0

[StateDef 1232]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1232

[State 1232, Trans]
type = Trans
trigger1 = 1
trans = Add

[State 1232, VelSet]
type = VelSet
trigger1 = Time < 30
x = 0.375

[State 1232, VelSet]
type = VelSet
trigger1 = Time = 30
x = 0

[State 1232, VarAdd]
type = VarAdd
trigger1 = Time = [30,57]
FV = 3
value = -0.02

[State 1232, VarAdd]
type = VarAdd
trigger1 = Time = [30,57]
FV = 4
value = -0.02

[State 1232, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.75+fvar(3),0.75+fvar(4)

[State 1232, HitDef]
type = HitDef
trigger1 =! MoveContact
trigger1 =! MoveReversed
trigger1 = Time >= 19
attr = S, SP
animtype = Light
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(19*(root,fvar(1)*root,fvar(2))),2
priority = 4, Hit
pausetime = 5,5
ground.slidetime = 15
guard.slidetime = 15
ground.hittime = 15
guard.hittime = 15
guard.ctrltime = 15
air.hittime = 15
ground.velocity = -6.5
guard.velocity = -8
air.velocity = -2.5,-6
airguard.velocity = -4, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 25
yaccel = 0.454
envshake.time = 10
envshake.ampl = 3
getpower = 0
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1232, 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 = 12

[State 1232, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1232, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1232, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
IgnoreHitPause = 0

[StateDef 1300]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1300
SprPriority = 2

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
value = S410,13
channel = 0

[State 1300, Helper]
type = Helper
triggerall = Anim = 1300
trigger1 = AnimElem = 5
StateNo = 1301
ID = 1301
Name = "Drain"
postype = P1
pos = 60,0
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1300, ChangeAnim]
type = ChangeAnim
trigger1 = (Vel Y > 0) && (Vel Y + Pos Y >= 0)
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
value = 1301

[State 1300, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
StateType = A
Physics = N

[State 1300, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1301
StateType = S
MoveType = I
Physics = S

[State 1300, VelSet]
type = VelSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
x = -1
y = -3.2

[State 1300, VelAdd]
type = VelAdd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
y = .3

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
Value = S40,0

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

[State 1300, VelSet]
type = VelSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1300, PosSet]
type = PosSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
y = 0

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

[StateDef 1301]
Type = S
Physics = N
SprPriority = 4
Anim = 1302

[State 1301, ParentVarSet]
Type = ParentVarSet
Trigger1 = Root,Var(30) = 1
V = 30
Value = 0

[State 1301, ParentVarSet]
type = ParentVarSet
triggerall = Time >= 28
triggerall = RoundState = 2
triggerall = TeamMode = Single || TeamMode = Turns
triggerall = P2StateType != A
trigger1 = P2Dist X = [-62,62]
V = 30
Value = 1
Persistent = 60

[State 1301, VarAdd]
type = VarAdd
trigger1 = Time >= 2108
V = 0
Value = 12

[State 1301, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

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

[State 1301, NitHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 1301, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1301, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H && Root,StateNo != [120,159]
trigger2 = Time = 2128

[State 1301, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1305
trigger1 = Root,AnimElem = 7
value = 1302

[StateDef 1302]
type = S
movetype = A
physics = N
SprPriority = 4
anim = 1303

[State 1302, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1302, ParentVarSet]
type = ParentVarSet
trigger1 = Root,Var(30) = 1
V = 30
value = 0

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

[State 1302, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1.25,1.25
ignorehitpause = 1

[State 1302, VarAdd]
type = VarAdd
trigger1 = Time >= 15
V = 0
value = 20

[State 1302, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

[State 1302, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1302, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S200,9

[State 1302, HitDef]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = AnimElem = 4
trigger3 = AnimElem = 5
attr = S,SA
animtype = Hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(30*(root,fvar(1)*root,fvar(2))),3
priority = 5, Hit
pausetime = 7,7
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -1,-6.8
air.velocity = -1,-6.5
airguard.velocity = -2,-5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 25
envshake.time = 10
envshake.ampl = 3
getpower = 15
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1302, 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 = 12

[State 1302, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1302, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 1302, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
IgnoreHitPause = 0

[StateDef 1305]
type = S
movetype = I
physics = S
ctrl = 0
velset = 0,0
anim = 1305
SprPriority = 2
Facep2 = 1

[State 1305, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S410,17+Random%2
channel = 0

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

[StateDef 1310]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1300
SprPriority = 2

[State 1310, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
value = S410,13
channel = 0

[State 1310, Helper]
type = Helper
triggerall = Anim = 1300
trigger1 = AnimElem = 5
StateNo = 1301
ID = 1301
Name = "Drain"
postype = P1
pos = 150,0
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1310, ChangeAnim]
type = ChangeAnim
trigger1 = (Vel Y > 0) && (Vel Y + Pos Y >= 0)
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
value = 1301

[State 1310, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
StateType = A
Physics = N

[State 1310, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1301
StateType = S
MoveType = I
Physics = S

[State 1310, VelSet]
type = VelSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
x = -1
y = -3.2

[State 1310, VelAdd]
type = VelAdd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
y = .3

[State 1310, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
Value = S40,0

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

[State 1310, VelSet]
type = VelSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1310, PosSet]
type = PosSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
y = 0

[State 1310, ChangeState]
type = ChangeState
trigger1 = Anim = 1301
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1320]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1310
SprPriority = 2

[State 1320, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1310
trigger1 = AnimElem = 5
value = S410,13
channel = 0

[State 1320, Helper]
type = Helper
triggerall = Anim = 1310
trigger1 = AnimElem = 5
StateNo = 1301
ID = 1301
Name = "Drain"
postype = P1
pos = Ceil(P2Dist X),0
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1320, ChangeAnim]
type = ChangeAnim
trigger1 = (Vel Y > 0) && (Vel Y + Pos Y >= 0)
trigger1 = Anim = 1310
trigger1 = AnimElem = 5, > 0
value = 1301

[State 1320, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1310
trigger1 = AnimElem = 5
StateType = A
Physics = N

[State 1320, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1301
StateType = S
MoveType = I
Physics = S

[State 1320, VelSet]
type = VelSet
trigger1 = Anim = 1310
trigger1 = AnimElem = 5
x = -1.5
y = -3.6

[State 1320, VelAdd]
type = VelAdd
trigger1 = Anim = 1310
trigger1 = AnimElem = 5, > 0
y = .3

[State 1320, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
Value = S40,0

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

[State 1320, VelSet]
type = VelSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1320, PosSet]
type = PosSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
y = 0

[State 1320, ChangeState]
type = ChangeState
trigger1 = Anim = 1301
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1330]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1300
SprPriority = 2

[State 1330, VarSet]
type = VarSet
trigger1 = !time
var(25) = 30

[State 1330, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 1330, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-65 * const(size.yscale))
scale = 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1330, NotHitBy]
Type = NotHitBy
Trigger1 = Time = 0
Value = SCA
time = 10

[State 1330, PowerAdd]
Type = PowerAdd
Trigger1 = time = 0
value = IfElse(Var(45) > 0,0,-500)

[State 1330, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
value = S410,19
channel = 0

[State 1330, Helper]
type = Helper
triggerall = Anim = 1300
trigger1 = AnimElem = 5
StateNo = 1331
ID = 1331
Name = "Drain"
postype = P1
pos = Ceil(P2Dist X),0
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1330, ChangeAnim]
type = ChangeAnim
trigger1 = (Vel Y > 0) && (Vel Y + Pos Y >= 0)
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
value = 1301

[State 1330, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
StateType = A
Physics = N

[State 1330, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1301
StateType = S
MoveType = I
Physics = S

[State 1330, VelSet]
type = VelSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
x = -1.2
y = -3.2

[State 1330, VelAdd]
type = VelAdd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
y = .3

[State 1330, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
Value = S40,0

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

[State 1330, VelSet]
type = VelSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1330, PosSet]
type = PosSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
y = 0

[State 1330, ChangeState]
type = ChangeState
trigger1 = Anim = 1301
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1331]
Type = S
Physics = N
SprPriority = 4
Anim = 1302

[State 1331, ParentVarSet]
Type = ParentVarSet
Trigger1 = Root,Var(30) = 1
V = 30
Value = 0

[State 1331, ParentVarSet]
type = ParentVarSet
triggerall = Time >= 28
triggerall = RoundState = 2
triggerall = TeamMode = Single || TeamMode = Turns
triggerall = P2StateType != A
trigger1 = P2Dist X = [-62,62]
V = 30
Value = 1
Persistent = 60

[State 1331, VarAdd]
type = VarAdd
trigger1 = Time >= 2108
V = 0
Value = 12

[State 1331, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

[State 1331, NitHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 1331, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1331, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H && Root,StateNo != [120,159]
trigger2 = Time = 2128

[State 1331, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1305
trigger1 = Root,AnimElem = 7
value = 1332

[StateDef 1332]
type = S
movetype = A
physics = N
SprPriority = 4
anim = 1331

[State 1332, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1332, ParentVarSet]
type = ParentVarSet
trigger1 = Root,Var(30) = 1
V = 30
value = 0

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

[State 1332, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1.25,1.25
ignorehitpause = 1

[State 1332, VarAdd]
type = VarAdd
trigger1 = Time >= 15
V = 0
value = 20

[State 1332, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

[State 1332, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1332, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S200,9

[State 1332, HitDef]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = AnimElem = 4
trigger3 = AnimElem = 5
trigger4 = AnimElem = 6
trigger5 = AnimElem = 7
trigger6 = AnimElem = 8
trigger7 = AnimElem = 9
attr = S,SA
animtype = Hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
priority = 5, Hit
pausetime = 5,9
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -1,-6.8
air.velocity = -1,-6.5
airguard.velocity = -2,-5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 25
envshake.time = 10
envshake.ampl = 3
getpower = 15
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1332, 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 = 12

[State 1332, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1332, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 1332, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
IgnoreHitPause = 0

[StateDef 1340]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 1300
SprPriority = 2

[State 1340, VarSet]
type = VarSet
trigger1 = !time
var(25) = 30

[State 1340, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -120
ignorehitpause = 1

[State 1340, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,3

[State 1340, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-65 * const(size.yscale))
scale = 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1340, NotHitBy]
Type = NotHitBy
Trigger1 = Time = 0
Value = SCA
time = 10

[State 1340, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
value = S410,19
channel = 0

[State 1340, Helper]
type = Helper
triggerall = Anim = 1300
trigger1 = AnimElem = 5
StateNo = 1341
ID = 1341
Name = "Drain"
postype = P1
pos = Ceil(P2Dist X),0
size.xscale = 2
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1340, ChangeAnim]
type = ChangeAnim
trigger1 = (Vel Y > 0) && (Vel Y + Pos Y >= 0)
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
value = 1301

[State 1340, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
StateType = A
Physics = N

[State 1340, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1301
StateType = S
MoveType = I
Physics = S

[State 1340, VelSet]
type = VelSet
trigger1 = Anim = 1300
trigger1 = AnimElem = 5
x = -1.2
y = -3.2

[State 1340, VelAdd]
type = VelAdd
trigger1 = Anim = 1300
trigger1 = AnimElem = 5, > 0
y = .3

[State 1340, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
Value = S40,0

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

[State 1340, VelSet]
type = VelSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1340, PosSet]
type = PosSet
trigger1 = Anim = 1301
trigger1 = AnimElem = 1
y = 0

[State 1340, ChangeState]
type = ChangeState
trigger1 = Anim = 1301
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 1341]
Type = S
Physics = N
SprPriority = 4
Anim = 1302

[State 1341, ParentVarSet]
Type = ParentVarSet
Trigger1 = Root,Var(30) = 1
V = 30
Value = 0

[State 1341, ParentVarSet]
type = ParentVarSet
triggerall = Time >= 28
triggerall = RoundState = 2
triggerall = TeamMode = Single || TeamMode = Turns
triggerall = P2StateType != A
trigger1 = P2Dist X = [-124,124]
V = 30
Value = 1
Persistent = 60

[State 1341, VarAdd]
type = VarAdd
trigger1 = Time >= 2108
V = 0
Value = 12

[State 1341, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

[State 1341, NitHitBy]
type = NotHitBy
trigger1 = 1
value = SCA

[State 1341, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1341, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H && Root,StateNo != [120,159]
trigger2 = Time = 2128

[State 1341, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1305
trigger1 = Root,AnimElem = 7
value = 1342

[StateDef 1342]
type = S
movetype = A
physics = N
SprPriority = 4
anim = 1341

[State 1342, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1

[State 1342, ParentVarSet]
type = ParentVarSet
trigger1 = Root,Var(30) = 1
V = 30
value = 0

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

[State 1342, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1.25,1.25
ignorehitpause = 1

[State 1342, VarAdd]
type = VarAdd
trigger1 = Time >= 15
V = 0
value = 20

[State 1342, PalFX]
type = PalFx
trigger1 = 1
time = 1
add = -Var(0),-Var(0),-Var(0)

[State 1342, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA

[State 1342, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S200,9

[State 1342, HitDef]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = AnimElem = 4
trigger3 = AnimElem = 5
trigger4 = AnimElem = 6
trigger5 = AnimElem = 7
trigger6 = AnimElem = 8
trigger7 = AnimElem = 9
attr = S,SA
animtype = Hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
priority = 5, Hit
pausetime = 5,9
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -1,-6.8
air.velocity = -1,-6.5
airguard.velocity = -2,-5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 25
envshake.time = 10
envshake.ampl = 3
getpower = 15
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 1342, 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 = 12

[State 1342, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helpertype = Normal
stateno = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 1342, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 1342, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
IgnoreHitPause = 0

[StateDef 2000]
Type = S
MoveType= A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 2000
SprPriority = 2

[State 2000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 70

[State 2000, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -240
ignorehitpause = 1

[State 2000, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = IfElse(Var(45) > 0,0,-1000)

[State 2000, AfterImage]
type = AfterImage
trigger1 = AnimElem = 4
time = 999
PalBright = 0,0,0
PalContrast = 128,128,128
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 2000, SuperPause]
type = SuperPause
trigger1 = AnimElem = 4
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(5 * const(size.xscale)), ceil(-120 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 4
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = normal
name = "AfterImage"
ID = 7000
stateno = 7000
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = normal
name = "AfterImage"
ID = 7001
stateno = 7001
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S410,0
channel = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 2001
ID = 2001
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 2001
ID = 2002
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 7
StateNo = 2001
ID = 2003
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 8
StateNo = 2001
ID = 2004
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 9
StateNo = 2001
ID = 2005
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 10
StateNo = 2001
ID = 2006
Name = "Flametongue"
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
type = Helper
trigger1 = AnimElem = 11
StateNo = 2001
ID = 2007
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, Helper]
Type = Helper
Trigger1 = AnimElem = 12
StateNo = 2001
ID = 2008
PosType = P1
Pos = 40,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 2001]
type = A
movetype = A
physics = N

[State 2001, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 2001, VarRandom]
type = VarRandom
trigger1 = Time = 0
V = 0
Range = 0,4

[State 2001, ChangeAnim]
type = ChangeAnim
trigger1 = Time = 0
value = 2001+Var(0)

[State 2001, HitDef]
type = HitDef
trigger1 = AnimElem = 11
trigger2 = AnimElem = 12
trigger3 = AnimElem = 13
trigger4 = AnimElem = 14
attr = S, HP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
damage = ceil(11*(root,fvar(1)*root,fvar(2))),2
priority = 5, Hit
pausetime = 5,5
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -5
guard.velocity = -7
air.velocity = -5, -5.5
airguard.velocity = -2.5, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 4
getpower = 0
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 2001, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,9
Channel = 1

[State 2001, PlaySnd]
type = PlaySnd
trigger1 = MoveGuarded = 1
value = S300,0
Channel = 2

[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 - 65)
ownpal = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 2001, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 2001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 2001, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0

[StateDef 2050]
Type = A
MoveType = A
Physics = N
Ctrl = 0
VelSet = 0,0
Anim = 2050
SprPriority = 2

[State 2050, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 2

[State 2050, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -250
ignorehitpause = 1

[State 2050, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = IfElse(Var(45) > 0,0,-1000)

[State 2050, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S410,3
channel = 0

[State 2050, AfterImage]
type = AfterImage
trigger1 = AnimElem = 2
time = 999
PalBright = 0,0,0
PalContrast = 128,128,128
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 2050, SuperPause]
type = SuperPause
trigger1 = AnimElem = 2
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(7 * const(size.xscale)), ceil(-120 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 2
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = normal
name = "AfterImage"
ID = 7002
stateno = 7002
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = normal
name = "AfterImage"
ID = 7003
stateno = 7003
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2050, VelSet]
type = VelSet
trigger1 = Time <= 67
y = 0

[State 2050, VelSet]
type = VelSet
trigger1 = Time = [68,99]
y = -0.5

[State 2050, StateTypeSet]
type = StateTypeSet
trigger1 = Time = 102
physics = A

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 3
StateNo = 2051
ID = 2051
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 4
StateNo = 2051
ID = 2052
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 2051
ID = 2053
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 6
StateNo = 2051
ID = 2054
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 7
StateNo = 2051
ID = 2055
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 8
StateNo = 2051
ID = 2056
Name = "Flametongue"
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
type = Helper
trigger1 = AnimElem = 9
StateNo = 2051
ID = 2057
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2050, Helper]
Type = Helper
Trigger1 = AnimElem = 10
StateNo = 2051
ID = 2058
PosType = P1
Pos = -5,75
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[StateDef 2051]
type = A
movetype = A
physics = N

[State 2051, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 2051, VarRandom]
type = VarRandom
trigger1 = Time = 0
V = 0
Range = 0,4

[State 2051, ChangeAnim]
type = ChangeAnim
trigger1 = Time = 0
value = 2051+Var(0)

[State 2051, HitDef]
type = HitDef
trigger1 = AnimElem = 12
attr = S, HP
animtype = Hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(30*(root,fvar(1)*root,fvar(2))),3
priority = 5, Hit
pausetime = 0,5
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -4
guard.velocity = -6
air.velocity = -2, -4
airguard.velocity = -2.5, -5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 24
yaccel = 0.454
envshake.time = 10
envshake.ampl = 4
getpower = 0
palFX.time = 45
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 2051, 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

[State 2051, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 2051, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 2051, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0

[StateDef 2100]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 2100

[State 2100, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 0
Value = S410,6
Channel = 0

[State 2100, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -240
ignorehitpause = 1

[State 2100, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = IfElse(Var(45) > 0,0,-1000)

[State 2100, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 103
movetime = 103
p2defmul = 1
darken = 0
unhittable = 1

[State 2100, AfterImage]
type = AfterImage
trigger1 = AnimElem = 1
time = 999
PalBright = 0,0,0
PalContrast = 128,128,128
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 2100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-110 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2100, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7004
stateno = 7004
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7005
stateno = 7005
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2100, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 2103
ID = 2103
pos = 0,0
postype = P1
ownpal = 1
SprPriority = 4
BindTime = -1
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2100, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 2102
ID = 2102
pos = 0,0
postype = P1
ownpal = 1
SprPriority = 5
BindTime = -1
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2100, Explod]
type = PlaySnd
trigger1 = AnimElem = 25
value = S100,11

[State 2100, Explod]
type = Explod
trigger1 = AnimElem = 25
anim = 2104
ID = 2104
pos = 10,0
postype = P1
ownpal = 1
sprpriority = 5
bindtime = -1
IgnoreHitPause = 0

[State 2100, HitDef]
type = HitDef
trigger1 = Time = 110
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 20,2
priority = 4, Hit
pausetime = 12,13
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -1,-7
guard.velocity = -8
air.velocity = -1,-7
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 2100, HitDef]
type = HitDef
trigger1 = Time = 115
trigger2 = Time = 117
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 20,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -1,-7
guard.velocity = -8
air.velocity = -1,-7
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 2100, HitDef]
type = HitDef
trigger1 = Time = 119
trigger2 = Time = 121
trigger3 = Time = 123
trigger4 = Time = 125
trigger5 = Time = 127
trigger6 = Time = 129
trigger7 = Time = 131
trigger8 = Time = 133
trigger9 = Time = 135
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 15,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -5,-5
guard.velocity = -8
air.velocity = -5,-5
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 2100, HitDef]
type = HitDef
trigger1 = Time = 137
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 15,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -5,-5
guard.velocity = -8
air.velocity = -5,-5
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
p2facing = 1
p2stateno = 2104

[State 2100, HitDef]
type = HitDef
triggerall = AnimElem = 22
trigger1 = P2StateType != A
trigger1 = P2StateNo != [150,159]
attr = S, HT
hitflag = MA
priority = 4, Miss
sparkno = -1
guard.sparkno = -1
sprpriority = 1
palfx.time = 210
palfx.mul = 128, 128, 128
palfx.sinadd = 96, 96, 96, 4
p2facing = 1
fall = 1
fall.recover = 0
getpower = 0
P1StateNo = 2101
P2StateNo = 2102

[State 2100, 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 = 20

[State 2100, Helper]
type = Helper
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

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

[StateDef 2101]
type = S
movetype = A
physics = N
velset = 0,0
anim = 2101

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S800,3

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,12

[State 2101, Explod]
type = Explod
trigger1 = AnimElem = 7
anim = 2106
ID = 2106
pos = 0,0
postype = P1
ownpal = 1
sprpriority = 3
bindtime = -1
IgnoreHitPause = 1

[State 2101, Explod]
type = Explod
trigger1 = AnimElem = 7
anim = 2105
ID = 2105
pos = 40,0
postype = P1
ownpal = 1
sprpriority = 5
bindtime = -1
IgnoreHitPause = 1

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = Time = [25,113]
value = S200,9
persistent = 6
Channel = 1

[State 2101, PlaySnd]
type = PlaySnd
triggerAll = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = S200,4
Channel = 2

[State 2101, TargetBind]
type = TargetBind
trigger1 = AnimElem = 1
pos = 40, -5

[State 2101, TargetBind]
type = TargetBind
trigger1 = AnimElem = 3
pos = 45, -10

[State 2101, Width]
type = Width
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(12) < 0
edge = 60,0

[State 2101, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [25,113]
value = ceil(-10*(fvar(1)*fvar(2)))
kill = IfElse(Time<112,0,1)
Persistent = 4

[State 2101, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [25,113]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = ceil(-5*(fvar(1)*fvar(2)))
kill = IfElse(Time<112,0,1)
Persistent = 9

[State 2101, LifeAdd]
type = LifeAdd
triggerall = Var(45) > 0
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = 8

[State 2101, HitAdd]
type = HitAdd
trigger1 = Time = [29,113]
value = 1
Persistent = 4

[State 2101, HitAdd]
type = HitAdd
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = 1
Persistent = 9

[State 2101, EnvShake]
type = EnvShake
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
time = 10
ampl = 4
freq = 90
persistent = 9

[State 2101, Helper]
type = Helper
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
StateNo = 8053
ID = 8053
Name = "HitSpark"
PosType = P1
pos = 40,-80
ownpal = 1
SprPriority = 5
IgnoreHitPause = 1
persistent = 9

[State 2101, Helper]
type = Helper
trigger1 = Time = [25,130]
trigger1 = !NumHelper(8100)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 2101, TargetState]
Type = TargetState
Trigger1 = Time <= 116
Value = 2102
IgnoreHitPause = 1

[State 2101, TargetState]
type = TargetState
trigger1 = Time = 117
value = 2103

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

[StateDef 2102]
Type = A
MoveType = H
Physics = N
VelSet = 0,0

[State 2102, HitOverRide]
type = HitOverRide
trigger1 = 1
attr = , NT, ST, HT
time = 1

[State 2102, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2102, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = 5010

[State 2102, SelfState]
type = SelfState
trigger1 = Time >= 10
trigger1 = P2MoveType != A
value = 5035

[StateDef 2103]
Type = A
MoveType = H
Physics = N

[State 2103, VelSet]
type = VelSet
trigger1 = time = 0
x = 0
y = -9.5

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

[State 2103, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 2103, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5035)
trigger1 =! SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
value = 5035

[State 2103, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 2103, VelAdd]
type = VelAdd
trigger1 = Time >= 2
y = .47

[State 2103, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100
ctrl = 0

[StateDef 2104]
type = A
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 2104, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 0

[State 2104, OffSet]
type = OffSet
trigger1 = Time >= 0
x = 1
persistent = 4

[State 2104, OffSet]
type = OffSet
trigger1 = Time >= 2
x = -1
persistent = 4

[State 2104, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = 1
value = 5030

[State 2104, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 2105

[StateDef 2105]
type = A
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 2105, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 2105, VelSet]
type = VelSet
trigger1 = Time = 0
x = -11

[State 2105, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 2105, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5035)
trigger1 =! SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
value = 5035

[State 2105, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 2105, ScreenBound]
type = ScreenBound
trigger1 = Time <= 25
value = 1
MoveCamera = 1,1

[State 2105, ScreenBound]
type = ScreenBound
trigger1 = Time > 25
value = 1
MoveCamera = 0,1

[State 2105, ChangeState]
type = ChangeState
triggerAll = Time = [0,11]
triggerAll = BackEdgeDist <= 1
trigger1 = 1
value = 2106

[State 2105]
type = ChangeState
triggerAll = Time >= 12
triggerAll = BackEdgeDist <= 1
trigger1 = 1
value = 2107

[StateDef 2106]
type = A
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 2106, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = F7,2

[State 2106, HitFallSet]
type = HitFallSet
trigger1 = Vel Y > 0
trigger1 = Pos Y >= -30
trigger2 = Vel Y > 4
value = 1

[State 2106, SelfState]
type = SelfState
triggerall = Vel Y > 0
triggerall = Pos Y >= -30
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5200

[State 2106, SelfState]
type = SelfState
triggerall = Vel Y > 4
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5210

[State 2106, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 2106, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5035)
trigger1 = !SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
value = 5035

[State 2106, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 2106, EnvShake]
type = EnvShake
trigger1 = Time = 0
time = 10
ampl = 5
freq = 90

[State 2106, EnvShake]
type = VelSet
trigger1 = Time = 5
x = -1.5
y = -6

[State 2106, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = .54

[State 2106, Turn]
type = Turn
triggerall = Alive
triggerall = CanRecover
triggerall = P2BodyDist X < 0
trigger1 = Vel Y > 0
trigger1 = Pos Y >= -30
trigger1 = Command = "recovery"
trigger2 = Vel Y > 4
trigger2 = Command = "recovery"
value = 1

[State 2106, Turn]
Type = Turn
Trigger1 = Time = 0

[State 2106, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100

[StateDef 2107]
type = A
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 2107, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = F7,2

[State 2107, Turn]
Type = Turn
triggerall = Time >= 6
triggerall = Alive
triggerall = CanRecover
triggerall = P2BodyDist X < 0
trigger1 = Pos Y >= -20
trigger1 = Command = "recovery"
trigger2 = Command = "recovery"
value = 1

[State 2107, SelfState]
type = SelfState
triggerall = Pos Y >= -20
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5200

[State 2107, SelfState]
Type = SelfState
triggerall = Time >= 6
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5210

[State 2107, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = Time = 0
value = 5030

[State 2107, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5035)
trigger1 =! SelfAnimExist(5030)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
value = 5035

[State 2107, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5050)
trigger1 =! SelfAnimExist(5030)
trigger1 =! SelfAnimExist(5035)
trigger1 = Time = 0
trigger2 = Anim = 5030
trigger2 = AnimTime = 0
trigger3 = Anim = 5035
trigger3 = AnimTime = 0
value = 5050

[State 2107, EnvShake]
type = EnvShake
trigger1 = Time = 0
time = 10
ampl = 5
freq = 90

[State 2107, VelSet]
type = VelSet
trigger1 = Time = 5
x = -1.5
y = -6

[State 2107, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = .54

[State 2107, HitFallSet]
type = HitFallSet
triggerAll = Time = 6
trigger1 = 1
value = 1

[State 2107, Turn]
type = Turn
trigger1 = Time = 0

[State 2107, SelfState]
Type = SelfState
Trigger1 = (Vel Y > 0) && (Pos Y >= 0)
Value = 5100

[StateDef 2200]
Type = S
MoveType= A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 2200
SprPriority = 2

[State 2200, NotHitBy]
type = NotHitBy
trigger1 = Time = 42
value = SCA
time = 8

[State 2200, VarAdd]
type = VarAdd
trigger1 = Time = 0
trigger1 = var(45) > 0
var(45) = -240
ignorehitpause = 1

[State 2200, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = IfElse(Var(45) > 0,0,-1000)

[State 2200, AfterImage]
type = AfterImage
trigger1 = AnimElem = 1
time = 999
PalBright = 0,0,0
PalContrast = 128,128,128
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 2200, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-90 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7000
stateno = 7000
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7001
stateno = 7001
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2200, VelSet]
type = VelSet
trigger1 = Time = [50,86]
x = -0.11

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S410,1
channel = 0

[State 2200, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 2201
ID = 2201
Name = "Optic_Blast"
PosType = P1
Pos = 0,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 2200, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 2201]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 2201

[State 2201, BindToParent]
type = BindToParent
trigger1 = 1
pos = 5,-95
ignorehitpause = 1

[State 2201, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,9

[State 2201, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 2201, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1.5,1.5

[State 2201, Trans]
type = Trans
trigger1 = 1
trans = Add

[State 2201, HitDef]
type = HitDef
trigger1 = AnimElem = 4
trigger2 = AnimElem = 5
trigger3 = AnimElem = 6
trigger4 = AnimElem = 7
trigger5 = AnimElem = 8
trigger6 = AnimElem = 9
trigger7 = AnimElem = 10
trigger8 = AnimElem = 11
trigger9 = AnimElem = 12
trigger10 = AnimElem = 13
attr = S,HP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 0 && var(44) := -75+Random%30))
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
priority = 5, Hit
pausetime = 0,4
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -8
guard.velocity = -7
air.velocity = -4, -2
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 25
envshake.time = 10
envshake.ampl = 4
getpower = 0
sprpriority = 5

[State 2201, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,2
Channel = 1

[State 2201, PlaySnd]
type = PlaySnd
trigger1 = MoveGuarded = 1
value = S300,0
Channel = 2

[State 2201, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 2201, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
facing = -1
postype = p2
pos = ceil(ifelse(p2dist x<var(43),p2dist x,var(43))*const(size.xscale)),ceil(var(44)*const(size.yscale))
keyctrl = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 1

[State 2201, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 2201, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 2201, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,Anim != 2200
trigger4 = Root,StateNo != 2200

[StateDef 3000]
type = S
movetype = A
physics = S
ctrl = 0
velset = 0,0
anim = 2100

[State 3000, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 0
Value = S410,12
Channel = 0

[State 3000, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = -2000

[State 3000, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 103
movetime = 103
p2defmul = 1
darken = 0
unhittable = 1

[State 3000, AfterImage]
type = AfterImage
trigger1 = AnimElem = 1
time = 999
PalBright = 0,0,0
PalContrast = 32,32,160
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 10010
ID = 10010
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-110 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7004
stateno = 7004
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7005
stateno = 7005
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3000, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 2103
ID = 2103
pos = 0,0
postype = P1
ownpal = 1
SprPriority = 4
BindTime = -1
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 3000, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 2102
ID = 2102
pos = 0,0
postype = P1
ownpal = 1
SprPriority = 5
BindTime = -1
IgnoreHitPause = 1
Persistent = 0
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 3000, Explod]
type = PlaySnd
trigger1 = AnimElem = 25
value = S100,11

[State 3000, Explod]
type = Explod
trigger1 = AnimElem = 25
anim = 2104
ID = 2104
pos = 10,0
postype = P1
ownpal = 1
sprpriority = 5
bindtime = -1
IgnoreHitPause = 0

[State 3000, HitDef]
type = HitDef
trigger1 = Time = 110
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 20,2
priority = 4, Hit
pausetime = 12,13
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -1,-7
guard.velocity = -8
air.velocity = -1,-7
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 3000, HitDef]
type = HitDef
trigger1 = Time = 115
trigger2 = Time = 117
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 20,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -1,-7
guard.velocity = -8
air.velocity = -1,-7
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 3000, HitDef]
type = HitDef
trigger1 = Time = 119
trigger2 = Time = 121
trigger3 = Time = 123
trigger4 = Time = 125
trigger5 = Time = 127
trigger6 = Time = 129
trigger7 = Time = 131
trigger8 = Time = 133
trigger9 = Time = 135
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 10,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -5,-5
guard.velocity = -8
air.velocity = -5,-5
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4

[State 3000, HitDef]
type = HitDef
trigger1 = Time = 137
attr = S, HA
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = 15,2
priority = 6, Hit
pausetime = 2,3
guard.pausetime = 2,2
ground.slidetime = 18
guard.slidetime = 18
ground.hittime = 18
guard.hittime = 18
guard.ctrltime = 18
air.hittime = 18
ground.velocity = -5,-5
guard.velocity = -8
air.velocity = -5,-5
airguard.velocity = -3, -5
down.velocity = -2,-1.5
ground.cornerpush.veloff = -2
guard.cornerpush.veloff = -2
air.cornerpush.veloff = -2
airguard.cornerpush.veloff = -4
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
p2facing = 1
p2stateno = 2104

[State 3000, HitDef]
type = HitDef
triggerall = AnimElem = 22
trigger1 = P2StateType != A
trigger1 = P2StateNo != [150,159]
attr = S, HT
hitflag = MA
priority = 4, Miss
sparkno = -1
guard.sparkno = -1
sprpriority = 1
palfx.time = 210
palfx.mul = 128, 128, 128
palfx.sinadd = 96, 96, 96, 4
p2facing = 1
fall = 1
fall.recover = 0
getpower = 0
P1StateNo = 3001
P2StateNo = 2102

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 25
StateNo = 3002
ID = 3002
Name = "Flame"
pos = 0,0
postype = Back
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 3000, 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 = 20

[State 3000, Helper]
type = Helper
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

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

[StateDef 3001]
type = S
movetype = A
physics = N
velset = 0,0
anim = 2101

[State 3001, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S800,3

[State 3001, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,12

[State 3001, Explod]
type = Explod
trigger1 = AnimElem = 7
anim = 2106
ID = 2106
pos = 0,0
postype = P1
ownpal = 1
sprpriority = 3
bindtime = -1
IgnoreHitPause = 1

[State 3001, Explod]
type = Explod
trigger1 = AnimElem = 7
anim = 2105
ID = 2105
pos = 40,0
postype = P1
ownpal = 1
sprpriority = 5
bindtime = -1
IgnoreHitPause = 1

[State 3001, PlaySnd]
type = PlaySnd
trigger1 = Time = [25,113]
value = S200,9
persistent = 6
Channel = 1

[State 3001, PlaySnd]
type = PlaySnd
triggerAll = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = S200,4
Channel = 2

[State 3001, TargetBind]
type = TargetBind
trigger1 = AnimElem = 1
pos = 40, -5

[State 3001, TargetBind]
type = TargetBind
trigger1 = AnimElem = 3
pos = 45, -10

[State 3001, Width]
type = Width
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(12) < 0
edge = 60,0

[State 3001, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [25,34]
value = ceil(-7*fvar(1))
kill = 0
Persistent = 2

[State 3001, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [35,115]
value = ceil(-6*fvar(1))
kill = IfElse(Time<114,0,1)
Persistent = 4

[State 3001, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = ceil(-5*fvar(1))
kill = IfElse(Time<114,0,1)
Persistent = 9

[State 3001, HitAdd]
type = HitAdd
trigger1 = Time = [25,33]
value = 1
Persistent = 2

[State 3001, HitAdd]
type = HitAdd
trigger1 = Time = [35,113]
value = 1
Persistent = 4

[State 3001, HitAdd]
type = HitAdd
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
value = 1
Persistent = 9

[State 3001, EnvShake]
type = EnvShake
trigger1 = Time = [25,115]
time = 10
ampl = 4
freq = 90
persistent = 9

[State 3001, Helper]
type = Helper
trigger1 = Time = [25,115]
trigger1 = Command = "x" || Command = "y" || Command = "z"
StateNo = 8053
ID = 8053
Name = "HitSpark"
PosType = P1
pos = 40,-80
ownpal = 1
SprPriority = 5
IgnoreHitPause = 1
persistent = 9

[State 3001, Helper]
type = Helper
trigger1 = Time = 25
StateNo = 3003
ID = 3003
Name = "Flame"
pos = 0,0
postype = Back
ownpal = 1
keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 3001, Helper]
type = Helper
trigger1 = Time = [25,130]
trigger1 = !NumHelper(8100)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 3001, TargetState]
Type = TargetState
Trigger1 = Time <= 116
Value = 2102
IgnoreHitPause = 1

[State 3001, TargetState]
type = TargetState
trigger1 = Time = 117
value = 2103

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

[StateDef 3002]
Type = A
MoveType = A
Physics = N
SprPriority = 5
Anim = 3001

[State 3002, Explod]
type = Explod
trigger1 = Time = [0,40]
anim = 3000
ID = 3000
pos = 150,240
postype = Back
ownpal = 1
scale = 1.5,1.5
SprPriority = 5
BindTime = -1
IgnoreHitPause = 1
Persistent = 20

[State 3002, HitDef]
type = HitDef
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
attr = S, HP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(50*(root,fvar(1)*root,fvar(2))),5
priority = 6, Hit
pausetime = 2,9
guard.pausetime = 2,9
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = -3
guard.velocity = -4
air.velocity = 0,-8
airguard.velocity = -3,-5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 50
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 3002, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = S, HP
animtype = Up
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(50*(root,fvar(1)*root,fvar(2))),5
priority = 6, Hit
pausetime = 2,9
guard.pausetime = 2,9
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = 0,-8.5
guard.velocity = -4
air.velocity = 0,-8.5
airguard.velocity = -3,-5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 50
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 3002, 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 = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 3002, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 3002, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
flag2 = Invisible
IgnoreHitPause = 1

[State 3002, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 60
IgnoreHitPause = 0

[StateDef 3003]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 3002

[State 3003, Explod]
type = Explod
trigger1 = Time = [0,60]
anim = 3000
ID = 3000
pos = 150,240
postype = Back
ownpal = 1
scale = 1.5,1.5
SprPriority = 5
BindTime = -1
IgnoreHitPause = 1
Persistent = 20

[State 3003, HitDef]
type = HitDef
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
trigger4 = AnimElem = 8
trigger5 = AnimElem = 10
trigger6 = AnimElem = 12
trigger7 = AnimElem = 14
trigger8 = AnimElem = 16
trigger9 = AnimElem = 18
trigger10 = AnimElem = 20
trigger11 = AnimElem = 22
trigger12 = AnimElem = 24
trigger13 = AnimElem = 26
trigger14 = AnimElem = 28
trigger15 = AnimElem = 30
attr = S, HP
animtype = Up
hitflag = MAF
guardflag = MA
ground.type = Low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
damage = ceil(18*(root,fvar(1)*root,fvar(2))),2
priority = 6, Hit
pausetime = 2,9
guard.pausetime = 2,9
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
guard.hittime = 12
guard.ctrltime = 12
air.hittime = 12
ground.velocity = 0,-8.5
guard.velocity = -4
air.velocity = 0,-8.5
airguard.velocity = -3,-5
down.velocity = -4,-1.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 50
kill = 0
getpower = 0
envshake.time = 10
envshake.ampl = 4
palFX.time = 90
palFX.mul = 128, 128, 128
palFX.sinAdd = 96, 96, 96, 4
sprpriority = 5

[State 3003, 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 = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 3003, Helper]
type = Helper
trigger1 = AnimElemTime(2) > 0
trigger1 = !NumHelper(8100)
trigger1 = MoveHit = 1 && NumTarget
trigger1 = !(Target, HitShakeOver)
trigger1 = var(43) := (Target, ID)
helperType = Normal
stateNo = 8100
ID = 8100
name = "Burning"
posType = P2
ownPal = 1
ignoreHitPause = 1

[State 3003, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
flag2 = Invisible
IgnoreHitPause = 1

[State 3003, DestroySelf]
Type = DestroySelf
Trigger1 = Time = 85
IgnoreHitPause = 0

[StateDef 3100]
Type = S
MoveType= A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 3100
SprPriority = 2

[State 3100, NotHitBy]
type = NotHitBy
trigger1 = Time = 61
value = SCA
time = 8

[State 3100, AfterImage]
type = AfterImage
trigger1 = AnimElem = 1
time = 999
PalBright = 0,0,0
PalContrast = 32,32,160
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 3100, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = -2000

[State 3100, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 3100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
stateno = 10010
ID = 10010
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-90 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3100, Helper]
type = Helper
trigger1 = AnimElem = 1
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7000
stateno = 7000
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3100, Helper]
type = Helper
trigger1 = AnimElem = 1
helpertype = normal
name = "AfterImage"
ID = 7001
stateno = 7001
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3100, VelSet]
type = VelSet
trigger1 = Time = [50,139]
x = -0.11

[State 3100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S410,10
channel = 0

[State 3100, Helper]
type = Helper
trigger1 = AnimElem = 5
StateNo = 3101
ID = 3101
Name = "Mega_Optic_Blast"
PosType = P1
Pos = 0,0
Ownpal = 1
Keyctrl = 0
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 3100, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 3101]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 3101

[State 3101, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-90
ignorehitpause = 1

[State 3101, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,9

[State 3101, SprPriority]
type = SprPriority
trigger1 = 1
value = 5
ignorehitpause = 1

[State 3101, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 2,2
ignorehitpause = 1

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

[State 3101, HitDef]
type = HitDef
trigger1 = AnimElem = 6
trigger2 = AnimElem = 7
trigger3 = AnimElem = 8
trigger4 = AnimElem = 9
trigger5 = AnimElem = 10
trigger6 = AnimElem = 11
trigger7 = AnimElem = 12
trigger8 = AnimElem = 13
trigger9 = AnimElem = 14
trigger10 = AnimElem = 15
trigger11 = AnimElem = 16
trigger12 = AnimElem = 17
trigger13 = AnimElem = 18
trigger14 = AnimElem = 19
trigger15 = AnimElem = 20
trigger16 = AnimElem = 21
trigger17 = AnimElem = 22
trigger18 = AnimElem = 23
trigger19 = AnimElem = 24
attr = S,HP
animtype = hard
hitflag = MAF
guardflag = MA
ground.type = high
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 0 && var(44) := -75+Random%30))
hitsound = -1
guardsound = -1
damage = ceil(21*root,fvar(1)),3
priority = 5, Hit
pausetime = 0,4
ground.slidetime = 21
guard.slidetime = 21
ground.hittime = 21
guard.hittime = 21
guard.ctrltime = 21
air.hittime = 21
ground.velocity = -2
guard.velocity = -2
air.velocity = -1.4, -2
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
envshake.time = 10
envshake.ampl = 4
getpower = 0
sprpriority = 5
p2stateno = 2104
p2facing = 1

[State 3101, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,2
Channel = 1

[State 3101, PlaySnd]
type = PlaySnd
trigger1 = MoveGuarded = 1
value = S300,0
Channel = 2

[State 3101, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 3101, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
facing = -1
postype = p2
pos = ceil(ifelse(p2dist x<var(43),p2dist x,var(43))*const(size.xscale)),ceil(var(44)*const(size.yscale))
keyctrl = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 1

[State 3101, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 3101, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
ignorehitpause = 1

[State 3101, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,Anim != 3100
trigger4 = Root,StateNo != 3100

[StateDef 4000]
Type = S
MoveType = A
Physics = S
Anim = 4000
Ctrl = 0
VelSet = 0,0

[State 4000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 74

[State 4000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 10020
ID = 10020
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-60 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 4000, Helper]
type = Helper
trigger1 = AnimElem = 3
stateno = 20100
ID = 20100
name = "Super_Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 4000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
name = "AfterImage"
ID = 7006
stateno = 7006
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 4000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
name = "AfterImage"
ID = 7007
stateno = 7007
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 4000, SuperPause]
type = SuperPause
trigger1 = AnimElem = 3
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 4000, PowerAdd]
type = PowerAdd
trigger1 = AnimElem = 1
value = -3000

[State 4000, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 999
PalBright = 0,0,0
PalContrast = 160,32,32
PalAdd = 0,0,0
PalMul = 0.75,0.75,0.75
TimeGap = 2
FrameGap = 4
Trans = Add1
length = 9

[State 4000, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = S,HA
damage = 0
animType  = Low
hitflag = MAF
guardflag = MA
priority = 4, Hit
pausetime = 1,1
hitsound = S200,8
guardsound = S300,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
ground.type = low
air.type = High
ground.slidetime = 22
ground.hittime = 22
air.hittime = 22
ground.velocity = 0,0
guard.velocity = -7
air.velocity = 0,0
airguard.velocity = -4,-2
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
kill = 0
guard.kill = 0
fall = 0
air.fall = 1
fall.recover = 0
GetPower = 0, 0
p1stateno = 4001
p2stateno = 4003

[State 4000, 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

[State 4000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 4001]
Type = S
MoveType = I
Physics = S
Anim = 4001
Ctrl = 0
VelSet = 0,0

[State 4001, Helper]
type = Helper
trigger1 = Time = 0
name = "Background"
stateno = 4006
ID = 4006
postype = p1
pos = 0,0
ownpal = 0
supermovetime = 9999
pausemovetime = 9999

[State 4001, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,11
channel = 0

[State 4001, TargetBind]
type = TargetBind
trigger1 = Anim = 4001
trigger1 = Time = 0
pos = 120,-65

[State 4001, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 4001
trigger1 = Time = 90
value = 4002

[State 4001, VarSet]
type = VarSet
trigger1 = Anim = 4001
trigger1 = time = 0
var(1) = 0

[State 4001, VarAdd]
type = VarAdd
trigger1 = Anim = 4001
trigger1 = time >= 0
var(1) = 16

[State 4001, AllPalFX]
type = AllPalFX
trigger1 = Anim = 4001
trigger1 = time > 0
trigger1 = time <= 16
add = 255-var(1),255-var(1),255-var(1)
time = 1

[State 4001, PosSet]
type = PosSet
trigger1 = time = 0
x = IfElse(Facing = 1,-90,90)

[State 4001, Explod]
type = Explod
trigger1 = time = 0
anim = 4006
ID = 4006
pos = 0,ceil((1.33*gameheight/gamewidth)*0)
sprpriority = -17
postype = Back
ontop = 0
pos = IfElse(Facing = 1,0,1)
ownpal = 1
scale = 1,1
bindtime = -1
removetime = 226

[State 4001, Explod]
type = Explod
trigger1 = Anim = 4002
trigger1 = AnimElem = 8
anim = 4004
ID = 4004
sprpriority = 5
postype = P1
ontop = 0
pos = 80,0
ownpal = 1
scale = 1,1

[State 4001, Explod]
type = Explod
trigger1 = time = [16,110]
trigger1 = Random >= 600
anim = 4003
ID = 4003
sprpriority = 5
postype = P1
ontop = 0
pos = -240+Random%480,0+Random%-10
ownpal = 1
scale = 1,1

[State 4001, Helper]
type = Helper
trigger1 = Anim = 4002
trigger1 = AnimElem = 7
StateNo = 4002
ID = 4002
Name = "Attack"
postype = Back
pos = 0,0
ownpal = 1
keyctrl = 0
SprPriority = -5
IgnoreHitPause = 1
Persistent = 0

[State 4001, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 4002
trigger1 = Time = 172
value = 4008

[State 4001, ChangeState]
type = ChangeState
trigger1 = Anim = 4008
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

[StateDef 4002]
Type = A
MoveType = A
Physics = N
SprPriority = 5
Anim = 4005

[State 4002, HitDef]
type = HitDef
trigger1 = Time = 4
trigger2 = Time = 6
trigger3 = Time = 12
trigger4 = Time = 14
trigger5 = Time = 20
trigger6 = Time = 22
trigger7 = Time = 28
trigger8 = Time = 30
trigger9 = Time = 36
trigger10 = Time = 38
trigger11 = Time = 44
trigger12 = Time = 46
trigger13 = Time = 52
trigger14 = Time = 54
attr = S,HA
animtype = Low
damage = ceil(38*root,fvar(1))
hitflag = MAFD
guardflag =
priority = 4, Hit
pausetime = 1,13
guard.pausetime = 1,13
hitsound = -1
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 1500 && var(44) := -75+Random%40))
ground.type = High
ground.slideTime = 21
ground.hitTime = 21
ground.velocity = -1,-6
air.velocity = -3,-8
down.velocity = -4,-2
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.cornerPush.VelOff = 0
Airguard.CornerPush.VelOff = 0
sprpriority = 5
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
kill = 0
envshake.time = 10
envshake.ampl = 3
envshake.freq = 90
p2stateno = 4004

[State 4002, HitDef]
type = HitDef
trigger1 = Time = 60
attr = S,HA
animtype = Low
damage = ceil(38*root,fvar(1))
hitflag = MAFD
guardflag =
priority = 4, Hit
pausetime = 1,13
guard.pausetime = 1,13
hitsound = -1
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 1500 && var(44) := -75+Random%40))
ground.type = High
ground.slideTime = 21
ground.hitTime = 21
ground.velocity = -1,-6
air.velocity = -3,-8
down.velocity = -4,-2
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.cornerPush.VelOff = 0
Airguard.CornerPush.VelOff = 0
sprpriority = 5
fall = 1
air.fall = 1
fall.recover = 0
getpower = 0
kill = 1
envshake.time = 10
envshake.ampl = 3
envshake.freq = 90
p2stateno = 4004

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,4
Channel = 1

[State 4002, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 4002, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
postype = p2
pos = 0,ceil(var(44)*const(size.yscale))
ownpal = 0
keyctrl = 0
facing = -1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4002, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 4002, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4002, DestroySelf]
type = DestroySelf
trigger1 = Time = 62

[StateDef 4003]
Type = A
MoveType = H
Physics = N

[State 4003, ChangeAnim2]
type = ChangeAnim2
trigger1 = Time = 0
value = 4007

[State 4003, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0

[State 4003, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 110

[State 4003, PlayerPush]
type = PlayerPush
trigger1 = time < 110
value = 0

[StateDef 4004]
type = A
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 4004, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0

[State 4004, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 0

[State 4004, OffSet]
type = OffSet
trigger1 = Time >= 0
x = 1
persistent = 4

[State 4004, OffSet]
type = OffSet
trigger1 = Time >= 2
x = -1
persistent = 4

[State 4004, ChangeAnim2]
type = ChangeAnim2
trigger1 = 1
value = 4007

[State 4004, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 4005

[StateDef 4005]
Type = A
MoveType = H
Physics = N
SprPriority = 0
VelSet = -1.2,-6.5

[State 4005, ScreenBound]
type = ScreenBound
trigger1 = time >= 0
value = 1
movecamera = 0,0

[State 4005, HitFallSet]
Type = HitFallSet
Trigger1 = 1
Value = 1
IgnoreHitPause = 1
Persistent = 0

[State 4005, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA
Time = 30

[State 4005, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5061)
Trigger1 = Time = 1
Value = 5061

[State 4005, ChangeAnim]
Type = ChangeAnim
TriggerAll =! SelfAnimExist(5061)
TriggerAll = SelfAnimExist(5030)
Trigger1 = Time = 1
Value = 5030

[State 4005, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5035)
Trigger1 =! SelfAnimExist(5030)
Trigger1 = Time = 1
Trigger2 = Anim = 5030
Trigger2 = AnimTime = 0
Value = 5035

[State 4005, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5050)
Trigger1 =! SelfAnimExist(5030)
Trigger1 =! SelfAnimExist(5035)
Trigger1 = Time = 1
Trigger2 = Anim = 5030
Trigger2 = AnimTime = 0
Trigger3 = Anim = 5035
Trigger3 = AnimTime = 0
Value = 5050

[State 4005, VelAdd]
Type = VelAdd
Trigger1 = Time >= 2
Y = .35

[State 4005, SelfState]
Type = SelfState
Trigger1 = ((Pos Y >= 0 && Vel Y > 0))
Value = 5100

[StateDef 4006]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0

[State 4006, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow
flag2 = InVisible
flag3 = GlobalNoShadow

[State 4006, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG

[State 4006, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4001
trigger1 = Root,Time = 210
value = 4007

[StateDef 4007]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0

[State 4007, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow
flag2 = InVisible

[State 4007, BGPalFX]
type = BGPalFX
trigger1 = Time = 0
sinadd = 255, 255, 255, 64
add = -255, -255, -255
time = 16

[State 4007, DestroySelf]
type = DestroySelf
trigger1 = Time >= 16

[StateDef 6000]
Type = S
Physics = S
MoveType = I
Anim = 6000
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 6000, VarSet]
type = VarSet
trigger1 = Time = 0
v = 45
value = 0

[State 6000, VarAdd]
type = VarAdd
trigger1 = Time = 0
var(45) = 1200
ignorehitpause = 1

[State 6000, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = -3000

[State 6000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 30

[State 6000, PosFreeze]
type = PosFreeze
trigger1 = 1
value = 1

[State 6000, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
stateno = 6001
ID = 6001
name = "MAX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-64 * const(size.yscale))
supermovetime = 255
size.xscale = 1
size.yscale = 1
ownpal = 1

[State 6000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 6020
ID = 6020
name = "Awakening"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 6000, SuperPause]
type = SuperPause
trigger1 = time = 0
time = 30
movetime = 30
anim = -1
sound = S10000,5
p2defmul = 1
darken = 0

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

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

[StateDef 6001]
Type = A
Physics = N
MoveType = I
Anim = 6001
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 6001, BGPalFX]
type = BGPalFX
trigger1 = time < 25
time = 1
mul = 128,128,128

[State 6001, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = 6*(random%60)

[State 6001, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 6001, AngleDraw]
type = AngleDraw
trigger1 = time < 8
scale = (.0625*time), (.0625*time)

[State 6001, AngleDraw]
type = AngleDraw
trigger1 = time >= 8
scale = .5, .5

[State 6001, Trans]
type = Trans
trigger1 = time < 16
trans = AddAlpha
alpha = 256, 256

[State 6001, Trans]
type = Trans
trigger1 = time >= 16
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 6001, Explod]
type = explod
trigger1 = Time = 0
anim = 6002
ID = 6002
sprpriority = 5
postype = p1
facing = IfElse(random<500,-1,1)
vfacing = IfElse(random<500,-1,1)
removetime = 16
supermovetime = -1

[State 6001, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(6002)
ID = 6002
scale = 2-(.125*time), 2-(.125*time)
trans = AddAlpha
alpha = IfElse(time<4, 64*time, 256), 256

[State 6001, Explod]
type = Explod
trigger1 = time = 16
anim = 6003
ID = 6003
sprpriority = 5
postype = p1
removetime = 32
supermovetime = -1

[State 6001, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(6003)
ID = 6003
scale = (.1*(time-16)), (.1*(time-16))
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 6001, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 26

[State 6001, DestroySelf]
type = DestroySelf
trigger1 = time >= 26

[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(45) <= 0

[StateDef 6010]
movetype = I
physics = N
anim = 99999
ctrl = 0

[State 6010, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(4):=1

[State 6010, Explod]
type = explod
trigger1 = time = 0
trigger1 = Numexplod(6010)=0
ID = 6010
anim = IfElse(Teamside = 1,6010,6012)
pos = Ifelse(Teamside = 1,15,209),ceil((1.33*gameheight/gamewidth)*230-(30*(var(4))))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
pausemovetime = -1
supermove = 1
ontop = 1
facing = 1

[State 6010, Explod]
type = explod
trigger1 = time = 0
id = 6011
anim = 6011
pos = Ifelse(Teamside = 1,15,304),ceil((1.33*gameheight/gamewidth)*230-(30*(var(4))))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
pausemovetime = -1
supermove = 1
ontop = 1
facing = ifelse(teamside=1,1,-1)

[State 6010, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6011
Scale = .5*Root,Var(45)/1200,0.50

[State 6010, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(45) <= 0
ID = 6010

[State 6010, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(45) <= 0
ID = 6011

[State 6010, DestroySelf]
type = DestroySelf
trigger1 = Root,Var(45) <= 0

[StateDef 6020]
Type = S
Physics = N
MoveType = I
Anim = 99999
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 6020, Explod]
type = Explod
trigger1 = time = 0
anim = 6020
id = 6020
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-20)
postype = left
sprpriority = -8
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 6020, Explod]
type = Explod
trigger1 = time = 0
anim = 6021
ID = 6021
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-20)
postype = left
sprpriority = -7
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 6020, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 6020
Scale = 0.5,0.5-((time-65)*0.1)

[State 6020, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 6021
Scale = 0.5,0.5-((time-65)*0.1)

[State 6020, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
trigger2 = NumHelper(20100) = 1
ID = 6020

[State 6020, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
trigger2 = NumHelper(20100) = 1
ID = 6021

[State 6020, DestroySelf]
type = DestroySelf
trigger1 = Time >= 70
trigger2 = NumHelper(20100) = 1

[StateDef 7000]
physics = N
anim = 7000

[State 7000, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7000, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7000, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7000, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7000, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7000, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7001]
physics = N
anim = 7000

[State 7001, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7001, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7001, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7001, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7001, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7001, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7002]
physics = N
anim = 7001

[State 7002, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7002, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7002, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7002, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7002, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7002, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7003]
physics = N
anim = 7001

[State 7003, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7003, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7003, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7003, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7003, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7003, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7004]
physics = N
anim = 7002

[State 7004, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7004, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7004, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7004, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7004, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7004, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7005]
physics = N
anim = 7002

[State 7005, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7005, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7005, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7005, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7005, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7005, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7006]
physics = N
anim = 7003

[State 7006, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7006, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7006, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7006, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7006, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7006, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7007]
physics = N
anim = 7003

[State 7007, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7007, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7007, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7007, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7007, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7007, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 8010]
type = A
anim = 99999
velset = 0,0

[State 8010, BindtoParent]
type = BindtoParent
trigger1 = 1

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

[State 8010, Explod]
type = Explod
trigger1 = Time = 0
trigger2 = Time = 2
trigger3 = Time = 6
anim = 8000
ID = 8000
sprpriority = 3
postype = p1
scale = 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 8010, ModifyExplod]
type = ModifyExplod
trigger1 = time > 1
ID = 8000
scale = 0.5-((Time-1)*0.05),0.5-((Time-1)*0.05)

[State 8010, RemoveExplod]
type = RemoveExplod
trigger1 = Time = 11
ID = 8000

[State 8010, DestroySelf]
type = DestroySelf
trigger1 = time = 11

[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 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
movetype = I
physics = N
anim = 10000
velset = 0,0
ctrl = 0
sprpriority = 5

[State 10000, Varset]
type = VarSet
trigger1 = !time
var(0) = 61

[State 10000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,0

[State 10000, AngleDraw]
type = AngleDraw
trigger1 = time <= 15
scale = 0+(time*.02),0+(time*.02)

[State 10000, AngleDraw]
type = AngleDraw
trigger1 = time > 15
scale = .3,.3

[State 10000, AngleDraw]
type = AngleDraw
trigger1 = time >= var(0)
scale = 0,0

[State 10000, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 10000, Trans]
type = Trans
trigger1 = 1
trans = add

[State 10000, PalFX]
type = PalFX
trigger1 = time = 0
time = 1
add = 0,0,0

[State 10000, Helper]
type = Helper
trigger1 = Time = 0
ID = 10001
StateNo = 10001
pos = 0,0
postype = P1
name = "Spining_circle"
helpertype = normal
supermove = 1
keyctrl = 0
ownpal = 1
supermovetime = 9999
pausemovetime = 9999
size.xscale = .55
size.yscale = .55

[State 10000, Explod]
type = Explod
trigger1 = !time
anim = 10001
ID = 10001
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 15

[State 10000, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10001)
ID = 10001
scale = 1-(time*.066666),1-(time*.066666)
trans = AddAlpha
alpha = ceil(100+20.4*time),256

[State 10000, Explod]
type = Explod
trigger1 = time = 15
anim = 10002
ID = 10002
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 45

[State 10000, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10002)
ID = 10002
scale = .5+(.03*(time-15)),.5+(.03*(time-15))
trans = AddAlpha
alpha = ceil(100-3*(time-15)),256

[State 10000, RemoveExplod]
type = RemoveExplod
trigger1 = time > 61

[State 10000, ChangeState]
type = DestroySelf
trigger1 = time > 61

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

[State 10001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 10001, AssertSpecial]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = 0+(time*50),256

[State 10001, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = .35,.35

[State 10001, AngleSet]
type = AngleSet
trigger1 = !time
value = 6*(random%60)

[State 10001, Rotate]
type = AngleAdd
trigger1 = 1
value = -12

[State 10001, RemoveExplod]
type = RemoveExplod
trigger1 = time > 60

[State 10001, ChangeState]
type = DestroySelf
trigger1 = time > 60

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

[State 10010, Varset]
type = VarSet
trigger1 = !time
var(0) = 61

[State 10010, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S10000,1

[State 100110, AngleDraw]
type = AngleDraw
trigger1 = time <= 15
scale = 0+(time*.02),0+(time*.02)

[State 10010, AngleDraw]
type = AngleDraw
trigger1 = time > 15
scale = .3,.3

[State 10010, AngleDraw]
type = AngleDraw
trigger1 = time >= var(0)
scale = 0,0

[State 10010, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 10010, Trans]
type = Trans
trigger1 = 1
trans = add

[State 10010, PalFX]
type = PalFX
trigger1 = time = 0
time = 1
add = 0,0,0

[State 10010, Helper]
type = Helper
trigger1 = Time = 0
ID = 10011
StateNo = 10011
pos = 0,0
postype = P1
name = "Spining_circle"
helpertype = normal
supermove = 1
keyctrl = 0
ownpal = 1
supermovetime = 9999
pausemovetime = 9999
size.xscale = .55
size.yscale = .55

[State 10010, Explod]
type = Explod
trigger1 = !time
anim = 10011
ID = 10011
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 15

[State 10010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10011)
ID = 10011
scale = 1-(time*.066666),1-(time*.066666)
trans = AddAlpha
alpha = ceil(100+20.4*time),256

[State 10010, Explod]
type = Explod
trigger1 = time = 15
anim = 10012
ID = 10012
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 45

[State 10010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10012)
ID = 10012
scale = .5+(.03*(time-15)),.5+(.03*(time-15))
trans = AddAlpha
alpha = ceil(100-3*(time-15)),256

[State 10010, RemoveExplod]
type = RemoveExplod
trigger1 = time > 61

[State 10010, ChangeState]
type = DestroySelf
trigger1 = time > 61

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

[State 10011, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 10011, AssertSpecial]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = 0+(time*50),256

[State 10011, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = .35,.35

[State 10011, AngleSet]
type = AngleSet
trigger1 = !time
value = 6*(random%60)

[State 10011, Rotate]
type = AngleAdd
trigger1 = 1
value = -12

[State 10011, RemoveExplod]
type = RemoveExplod
trigger1 = time > 60

[State 10011, ChangeState]
type = DestroySelf
trigger1 = time > 60

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

[State 10020, Varset]
type = VarSet
trigger1 = !time
var(0) = 61

[State 10020, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S10000,2

[State 10020, AngleDraw]
type = AngleDraw
trigger1 = time <= 15
scale = 0+(time*.02),0+(time*.02)

[State 10020, AngleDraw]
type = AngleDraw
trigger1 = time > 15
scale = .3,.3

[State 10020, AngleDraw]
type = AngleDraw
trigger1 = time >= var(0)
scale = 0,0

[State 10020, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 10020, Trans]
type = Trans
trigger1 = 1
trans = add

[State 10020, PalFX]
type = PalFX
trigger1 = time = 0
time = 1
add = 0,0,0

[State 10020, Helper]
type = Helper
trigger1 = Time = 0
ID = 10021
StateNo = 10021
pos = 0,0
postype = P1
name = "Spining_circle"
helpertype = normal
supermove = 1
keyctrl = 0
ownpal = 1
supermovetime = 9999
pausemovetime = 9999
size.xscale = .55
size.yscale = .55

[State 10020, Explod]
type = Explod
trigger1 = !time
anim = 10021
ID = 10021
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 15

[State 10020, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10021)
ID = 10021
scale = 1-(time*.066666),1-(time*.066666)
trans = AddAlpha
alpha = ceil(100+20.4*time),256

[State 10020, Explod]
type = Explod
trigger1 = time = 15
anim = 10022
ID = 10022
sprpriority = 5
postype = p1
supermovetime = -1
removetime = 45

[State 10020, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(10022)
ID = 10022
scale = .5+(.03*(time-15)),.5+(.03*(time-15))
trans = AddAlpha
alpha = ceil(100-3*(time-15)),256

[State 10020, RemoveExplod]
type = RemoveExplod
trigger1 = time > 61

[State 10020, ChangeState]
type = DestroySelf
trigger1 = time > 61

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

[State 10021, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 10021, AssertSpecial]
type = Trans
trigger1 = 1
trans = AddAlpha
alpha = 0+(time*50),256

[State 10021, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = .35,.35

[State 10021, AngleSet]
type = AngleSet
trigger1 = !time
value = 6*(random%60)

[State 10021, Rotate]
type = AngleAdd
trigger1 = 1
value = -12

[State 10021, RemoveExplod]
type = RemoveExplod
trigger1 = time > 60

[State 10021, ChangeState]
type = DestroySelf
trigger1 = time > 60

;Intro with Nanaya
;-----------------
[StateDef 7300]
Type = S
Ctrl = 0
Anim = 99999
VelSet = 0,0

[State 7300, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Intro

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

[State 7300, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 7300, explod]
type = Explod
trigger1 = time = 120
anim = 1201
ID = 1201
sprpriority = 4
pos = 60,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1

[State 7300, explod]
type = Explod
trigger1 = time = 150
anim = 1201
ID = 1201
sprpriority = 4
pos = -40,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1

[State 7300, explod]
type = Explod
trigger1 = time = 170
anim = 1201
ID = 1201
sprpriority = 4
pos = 50,0
postype = p1
bindtime = -1
removeongethit = 1
ignorehitpause = 1

[State 7300, ChangeState]
type = ChangeState
trigger1 = Time >= 240
value = 7301

[StateDef 7301]
type = A
physics = N
Ctrl = 0
Anim = 48
VelSet = 0,0

[State 7301, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Intro

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

[State 7301, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 7301, PosSet]
type = PosSet
trigger1 = time = 0
y = -250

[State 7301, VelAdd]
type = VelAdd
trigger1 = Time > 0
y = 0.55

[State 7301, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0

[State 7301, ChangeState]
type = ChangeState
trigger1 = vel Y > 0
trigger1 = Pos Y >= 0
value = 7302

[StateDef 7302]
Type = S
Physics	= S
Anim = 44
Ctrl = 0

[State 7302, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Intro

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

[State 7302, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

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

[State 7302, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S40,0

[State 7302, VelSet]
type = Velset
trigger1 = time = 0
Y = 0

[State 7302, PosSet]
type = PosSet
trigger1 = time = 0
Y = 0

[State 7302, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 7303

[StateDef 7303]
Type = S
Physics	= S
Anim = 0
Ctrl = 0

[State 7303, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Intro

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

[State 7303, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

[State 7303, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 0
trigger1 = Time >= 30
value = 195

[State 7303, PlaySnd]
type = PlaySnd
trigger1 = Anim = 195
trigger1 = AnimElem = 5
value = S410,3
channel = 0

[State 7303, ChangeState]
type = ChangeState
trigger1 = Anim = 195
trigger1 = AnimTime = 0
value = 0

;---------------------------------------------------------------------------
; Override common states (use same number to override) :
;---------------------------------------------------------------------------

;---------------------------------------------------------------------------
; 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%10
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%10
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 = 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(movehit,var(41),var(42))
ID = 8050
postype = p1
pos = ceil(ifelse(p2dist x<0,0,ifelse(p2dist x<var(43),p2dist x,var(43)))*const(size.xscale)),ceil(var(44)*const(size.yscale))
ownpal = 1
keyctrl = 0
pausemovetime = 9999
supermovetime = 9999
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 = 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(45) > 0,1.1,1)

[State -2, DefenceMulSet]
type = DefenceMulSet
triggerall = ceil(100*life/const(data.life)) <= 24
trigger1 = numenemy
value = 0.9
ignorehitpause = 1

[State -2, PowerSet]
type = PowerSet
trigger1 = Var(45) > 0
value = 0

[State -2, LifeAdd]
type = LifeAdd
triggerall = Var(45) > 0
triggerall = Movetype != H
triggerall = Alive
triggerall = RoundState = 2
triggerall = StateNo != 6000
trigger1 = Gametime%6 = 0
value = 1
ignorehitpause = 1

[State -2, Helper]
type = Helper
trigger1 = roundstate = 2
trigger1 = numhelper(6010) = 0
trigger1 = var(45) > 0
ID = 6010
name = "MAX_Bar"
stateno = 6010
ownpal = 1
postype = left
pos = 160
ignorehitpause = 1

[State -2, VarAdd]
type = VarAdd
trigger1 = var(45) > 0
trigger1 = !numhelper(20100)
trigger1 = StateNo != 6000
var(45) = -1
IgnoreHitPause = 1

[State -2, Helper]
type = Helper
Trigger1 = Var(45) > 0
Trigger1 = NumHelper(6002) = 0
helpertype = normal
name = "Aura"
ID = 6002
pos = 0, 0
postype = p1
facing = 1
stateno = 6002
keyctrl = 0
ownpal = 1
supermovetime = 9999
pausemovetime = 9999

[State -2, PalFX]
type = PalFX
triggerall = Var(45) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State -2, AssertSpecial]
type = AssertSpecial
flag = NoKOSlow
trigger1 = StateNo = [2000,4999]
trigger2 = NumHelper(2001) || NumHelper(2002) || NumHelper(2003) || NumHelper(2004) || NumHelper(2005) || NumHelper(2006) ||NumHelper(2007) || NumHelper(2008)
trigger3 = NumHelper(2051) || NumHelper(2052) || NumHelper(2053) || NumHelper(2054) || NumHelper(2055) || NumHelper(2056) ||NumHelper(2057) || NumHelper(2058)
ignorehitpause = 1

[State -2, Helper]
type = Helper
triggerall = RoundState >= 2
triggerall = WinKo && !var(37)
trigger1 = StateNo = [2000,4999]
trigger2 = MoveType = H
trigger2 = PrevStateNo = [2000,4999]
trigger3 = NumHelper(2001) || NumHelper(2002) || NumHelper(2003) || NumHelper(2004) || NumHelper(2005) || NumHelper(2006) ||NumHelper(2007) || NumHelper(2008)
trigger4 = NumHelper(2051) || NumHelper(2052) || NumHelper(2053) || NumHelper(2054) || NumHelper(2055) || NumHelper(2056) ||NumHelper(2057) || NumHelper(2058)
ID = 20150
stateno = 20100
Name = "Super_Combo_Finish"
postype = left
pos = 0,0
pausemovetime = 999999
supermovetime = 999999
ignorehitpause = 1
ownpal = 1
persistent = 0

[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, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(201)
trigger1 = Stateno != 200
ID = 201

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(211)
trigger1 = Stateno != 210
ID = 211

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(216)
trigger1 = Stateno != 215
ID = 216

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(221)
trigger1 = Stateno != 220
ID = 221

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(401)
trigger1 = Stateno != 400
ID = 401

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(411)
trigger1 = Stateno != 410
ID = 411

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(416)
trigger1 = Stateno != 415
ID = 416

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(418)
trigger1 = Stateno != 416
ID = 418

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(421)
trigger1 = Stateno != 420
ID = 421

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(431)
trigger1 = Stateno != 430
ID = 431

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(621)
trigger1 = Stateno != 620
ID = 621

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(622)
trigger1 = Stateno != 620
ID = 622

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1101)
trigger1 = Stateno != 1100
ID = 1101

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1111)
trigger1 = Stateno != 1110
ID = 1111

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1121)
trigger1 = Stateno != 1120
ID = 1121

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1131)
trigger1 = Stateno != 1130
ID = 1131

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(2104)
trigger1 = Stateno != 2100
trigger1 = Stateno != 3000
ID = 2104

[State -2, AfterImageTime]
type = afterimagetime
trigger1 = stateno != 50
trigger1 = stateno != [700,755]
trigger1 = stateno != [2000,4999]
time = 0

[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, VarSet]
type = VarSet
triggerall = !(NumHelper(1301) || NumHelper(1331) || NumHelper(1341))
trigger1 = Var(30) = 1
V = 30
Value = 0

[State -2, LifeAdd]
type = LifeAdd
trigger1 = Var(30) = 1
value = 2

[State -2, PowerAdd]
type = PowerAdd
trigger1 = Var(30) = 1
value = 13

[State -2, VarSet]
type = VarSet
trigger1 = Var(12) > 0
trigger1 = StateType != A
V = 12
value = 0
IgnoreHitPause = 1

[State -2, DisplayToClipboard]
type = DisplayToClipboard
trigger1 = 1
text = "MAX mode duration = %d"
params = var(45)

[State -2, VictoryQuote]
type = VictoryQuote
trigger1 = Enemy,Name != "Aozaki_Aoko"
trigger2 = Enemy,Name != "RajaaAoko" && Enemy,AuthorName = "RajaaBoy"
trigger3 = Enemy,Name != "Tohno_Shiki"
trigger4 = Enemy,Name != "RajaaShiki" && Enemy,AuthorName = "RajaaBoy"
trigger5 = Enemy,Name != "Arcueid"
trigger6 = Enemy,Name != "RajaaArcueid" && Enemy,AuthorName = "RajaaBoy"
trigger7 = Enemy,Name != "Nanaya_K" && Enemy,AuthorName = "Kohaku"
trigger8 = Enemy,Name != "Nanaya_Shiki"
trigger9 = Enemy,Name != "Sion TATARI" && Enemy,AuthorName = "Shiroto"
trigger10 = Enemy,Name != "RajaaSion" && Enemy,AuthorName != "RajaaBoy"
trigger11 = Enemy,Name != "Yumiduka_Satsuki" || Enemy,Name = "Yumizuka_Satsuki"
trigger12 = Enemy,Name != "RajaaSatsuki" && Enemy,AuthorName = "RajaaBoy"
value = 1+random%9

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Aozaki_Aoko"
trigger2 = Enemy,Name = "RajaaAoko" && Enemy,AuthorName = "RajaaBoy"
value = 10

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Tohno_Shiki"
trigger2 = Enemy,Name = "RajaaShiki" && Enemy,AuthorName = "RajaaBoy"
value = 11

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Arcueid"
trigger2 = Enemy,Name = "RajaaArcueid" && Enemy,AuthorName = "RajaaBoy"
value = 12

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Nanaya_K" && Enemy,AuthorName = "Kohaku"
trigger2 = Enemy,Name = "Nanaya_Shiki"
value = 13

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Sion TATARI" && Enemy,AuthorName = "Shiroto"
value = 14

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Yumiduka_Satsuki" || Enemy,Name = "Yumizuka_Satsuki"
trigger2 = Enemy,Name = "RajaaSatsuki" && Enemy,AuthorName = "RajaaBoy"
value = 15

;---------------------------------------------------------------------------
; 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, VarAdd]
type = VarAdd
trigger1 = var(25) > 0
var(25) = -1

[State -3, ExFX]
type = VarSet
trigger1 = (Stateno != [1000,1999]) || MoveType = H
var(25) = 0

[State -3, Helper]
type = Helper
triggerall = RoundState = 2 && !NumHelper(854)
triggerall = (MoveType = I && Ctrl) || (StateNo = [850,852])
triggerall = (Command != "rlsfwd" && Command != "rlsback" && command != "rlsup" && command!="rlsdown")
trigger1 = (StateType = S || StateType = C) && (Command = "fwd" || Command = "down")
trigger2 = StateType = A && Command ="fwd"
helpertype = normal
StateNo = 854
ID = 854
name = "Parry"
postype = p1
pausemovetime = 99999
supermovetime = 99999

[State -3, PalFX]
type = PalFX
trigger1 = !(gametime%2) && var(25)
time = 1
color = 0
mul = 256, 224, 0
add = 128, 128, 128
ignorehitpause = 1

[State -3, ChangeState]
type = ChangeState
trigger1 = (StateNo != [850,852]) && NumHelper(854)
trigger1 = Helper(854),StateNo = 855
value = IfElse((Helper(854),Anim = 858), 852, IfElse((Helper(854),Anim = 857), 851, 850))
ignorehitpause = 1

[State -3, HitOverride]
type = HitOverride
trigger1 = (StateNo != [850,852]) && NumHelper(854)
trigger1 = !(Helper(854),var(0)) && (Helper(854),Anim = 856)
attr = SA,AP
StateNo = 850
slot = 0
time = 1
ignorehitpause = 1

[State -3, HitOverride]
type = HitOverride
trigger1 = (StateNo != [850,852]) && NumHelper(854)
trigger1 = !(Helper(854),var(0)) && (Helper(854),Anim = 857)
attr = C,AP
StateNo = 851
slot = 0
time = 1
ignorehitpause = 1

[State -3, HitOverride]
type = HitOverride
trigger1 = (StateNo != [850,852]) && NumHelper(854)
trigger1 = !(Helper(854),var(0)) && (Helper(854),Anim = 858)
attr = SCA,AP
StateNo = 852
slot = 0
time = 1
ignorehitpause = 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
