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

[Data]
life = 1000			;Amount of life to start with
power = 3000		;Amount of maximum power
attack = 100		;attack power (more is stronger)
defence = 100		;defensive power (more is stronger)
fall.defence_up = 50	;Percentage to increase defense everytime player is knocked down
liedown.time = 60		;Time which player lies down for, before getting up
airjuggle = 15		;Number of points for juggling
sparkno = 2			;Default hit spark number for HitDefs
guard.sparkno = 40	;Default guard spark number
KO.echo = 0			;1 to enable echo on KO
volume = 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 = 11		;Player width (back, ground)
ground.front = 12		;Player width (front, ground)
air.back = 15		;Player width (back, air)
air.front = 17		;Player width (front, air)
height = 45			;Height of player (for opponent to jump over)
attack.dist = 160		;Default attack distance
proj.attack.dist = 90	;Default attack distance for projectiles
proj.doscale = 0		;Set to 1 to scale projectiles too   
head.pos = -5, -70	;Approximate position of head
mid.pos = -5, -40		;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  = 1.6		;Walk forward
walk.back = -1.3		;Walk backward
run.fwd  = 5, 0		;Run forward (x, y)
run.back = -4.5,-4.2	;Hop backward (x, y)
jump.neu = 0,-9.4		;Neutral jumping velocity (x, y)
jump.back = -2		;Jump back Speed (x, y)
jump.fwd = 2.5		;Jump forward Speed (x, y)
runjump.back = -2.8,-9.51;Running jump speeds (opt)
runjump.fwd = 4,-9.5	;.
airjump.neu = 0,-8.7	;.
airjump.back = -2.5	;Air jump speeds (opt)
airjump.fwd = 2.5		;.

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

[Quotes]
Victory1 = "Goodbye, my once living opponent. And welcome, my undead guest."
Victory2 = "Shall we have some fun together? This is the Land Beyond the Mirror, a timeless paradise. You won't have to worry about the white rabbit anymore."
Victory3 = "Won't you come closer? This place has warm pastries and tea, it's a capsule of undisturbed rest. I'll also treat you with great love and affection."
Victory4 = "You are a sheep, a protector of this garden. Your name is...ah, how is Dolly?"
Victory5 = "I bid you farewell ladies and gentlemen. Let's hold the next ball after your slumber."
Victory6 = "Is this your first time on my snow fields? Then be careful. If you keep pulling a different reality with you, Sirius may come after you."
Victory7 = "A frozen Swan Lake, a burnt out Giselle. A nutcracker with no awakening. Fufu, don't all of these sound wonderful? I'll show you an endless nightmare."
Victory8 = "Welcome to the gateway to paradise. I'd like to extend my hospitality to you, my dear guest. Please enjoy your eternal stay in this miniature garden."
Victory9 = "I removed that squalid stain of reality from you. This is the untainted country of dreams. I'll close the door behind you, so that I may enjoy your forever sleeping face."
Victory10 = "No matter how many I beat, they just keep coming! Giving me, the ruler of dreams a nightmare...it's like something out of a comedy..."
Victory11 = "Do you dislike your talkative side that much? Being tacit maybe ladylike, but your case is pure reticence."
Victory12 = "Make sure you put rose petals in the bath next time Kohaku. And next time, don't forget to prepare some first-class short cake after I'm finished."
Victory13 = "You truly are the lady in red. I prefer this wild side over your normal self."
Victory14 = "You can't be a gentleman just from being kind. You have the base for one, but you need to be more proud. Well, I'm sure that's why Len likes you."
Victory15 = "I-I guess you show some promise. You still have a long way to go before becoming a real gentleman, but I wouldn't mind remembering you..."
Victory16 = "Thanks for the meal. I'll enjoy every last morsel of information that you so earnestly collected."

;---------------------------------------------------------------------------
; 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 170, PlaySnd]
type = PlaySnd
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
anim = 180
velset = 0,0

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

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

[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, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Intro

[State 190, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,12

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

[State 190, Explod]
Type = Explod
Trigger1 = Animelem = 2
ID = 191
PosType = P1
Pos = 0,5
Anim = 191
Ownpal = 1
SprPriority = -5
IgnoreHitPause = 0
Persistent = 0
BindTime = -1

[State -1]
Type = ChangeState
Trigger1 = animTime = 0
Value = 0
ctrl = 0

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

[State 195, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 10
value = S100,13

[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
triggerall = MoveType != H && Random < 650
trigger1 = time = 1
value = S400,0+random%3
channel = 0

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

[State 200, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
damage = 15,IfElse(var(45) > 0,2,0)
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 8,8
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 40 && var(44) := -60))
hitsound = S200,0
guardsound = S300,0
ground.type = Low
ground.slidetime = 11
ground.hittime  = 11
ground.velocity = -4,0
airguard.velocity = -1.4,-3.5
air.type = High
air.velocity = -1.4,-3.6
guard.kill = 0
air.fall = 1
getpower = 20
yaccel = 0.35

[State 200, Explod]
type = Explod
trigger1 = Time = 0
Anim = 201
ID = 201
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[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 = 35
ctrl = 0
velset = 0,0
anim = 210

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

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

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

[State 210, VelSet]
type = velset
trigger1 = AnimElem = 2
x = 3.5

[State 210, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = S, NA
animtype = Medium
damage = 26,IfElse(var(45) > 0,3,0)
guardflag = MA
hitflag = MAF
priority = 4, Hit
pausetime = 10,11
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,1
guardsound = S300,0
ground.type = High
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -5.5
air.velocity = -2.0,-5.3
guard.kill = 0
air.fall = 1
getpower = 20
envshake.time = 9
envshake.ampl = 2
yaccel = 0.35

[State 210, 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 < 650
trigger1 = time = 0
trigger2 = AnimElem = 12
value = S400,3+random%2
channel = 0

[State 220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
trigger2 = AnimElem = 13
value = S100,10

[State 220, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(5) < 0
trigger2 = AnimElemTime(7) >= 0 && AnimElemTime(14) < 0
x = 3

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

[State 220, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
attr = S, NA
animtype = Hard
damage = 18,IfElse(var(45) > 0,2,0)
guardflag = MA
hitflag = MAF
priority = 4, Hit
pausetime = 7,9
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,1
guardsound = S300,0
ground.type = High
ground.slidetime = 16
ground.hittime  = 18
ground.velocity = -5.5
air.velocity = -2.5,-2
getpower = 30
givepower = 9
envshake.time = 9
envshake.ampl = 3

[State 220, HitDef]
type = HitDef
trigger1 = AnimElem = 15
trigger2 = AnimElem = 16
attr = S, NA
animtype  = Hard
damage = 21,IfElse(var(45) > 0,2,0)
guardflag = MA
hitflag = MAF
priority = 4, Hit
pausetime = 7,9
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,2
guardsound = S300,0
ground.type = Low
ground.slidetime = 16
ground.hittime  = 18
ground.velocity = -5.5
air.velocity = -2.5,-2
getpower = 20
givepower = 6
envshake.time = 9
envshake.ampl = 3

[State 220, 5]
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 = 230

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

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

[State 230, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 15,IfElse(var(45) > 0,2,0)
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 8,8
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 = Low
ground.slidetime = 11
ground.hittime  = 11
ground.velocity = -4,0
airguard.velocity = -1.4,-3.5
air.type = High
air.velocity = -1.4,-3.6
guard.kill = 0
air.fall = 1
getpower = 20
yaccel = 0.35

[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 = 35
ctrl = 0
velset = 0,0
anim = 240

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

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

[State 240, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 241
ID = 241
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 240, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(4) < 0
x = 7.5

[State 240, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(4) >= 0 && AnimElemTime(5) < 0
x = 9.375

[State 240, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = S,NA
damage = 35,IfElse(var(45) > 0,4,0)
guardflag = M
hitflag = MAF
priority = 3,Hit
pausetime = 12,12
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,1
guardsound = S300,0
animtype = medium
ground.type = low
air.type = low
ground.slidetime = 14
ground.hittime = 14
air.hittime = 100
ground.velocity = -8
air.velocity = -3.5,-8.5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel=.5
getpower = 25
givepower = 15
fall = 0
forcestand = 1
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 < 650
trigger1 = time = 0
trigger2 = AnimElem = 12
value = S400,3+random%2
channel = 0

[State 250, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,10

[State 250, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 251
ID = 251
pos = 0, 0
postype = P1
sprpriority = 3
bindtime = -1
ownpal = 1

[State 250, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(5) < 0
x = 4.5

[State 250, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(5) >= 0 && AnimElemTime(6) < 0
x = 9.375

[State 250, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = S,NA
damage = 46,IfElse(var(45) > 0,5,0)
guardflag = M
hitflag = MAF
priority = 3,Hit
pausetime = 12,12
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -75))
hitsound = S200,2
guardsound = S300,0
animtype = hard
ground.type = low
air.type = low
ground.slidetime = 17
ground.hittime = 17
air.hittime = 100
ground.velocity = -4.5
guard.velocity = -12
air.velocity = -4.5,15
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 35
givepower = 25
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 100
fall.animtype = hard
envshake.time = 9
envshake.ampl = 3

[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 = 15
ctrl = 0
anim = 400
VelSet = 0,0

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

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

[State 400, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = C, NA
damage = 23,IfElse(var(45) > 0,2,0)
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 6,7
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
ground.type = High
ground.slidetime = 10
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
getpower = 20
givepower = 11

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

[State 400, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
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,2+random%3
channel = 0

[State 410, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 8
value = S100,9

[State 410, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 12
value = S100,10

[State 410, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 411
ID = 411
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 0
bindtime = -1
ownpal = 1

[State 410, Explod]
type = Explod
trigger1 = AnimElem = 10
anim = 412
ID = 412
pos = 0, 0
postype = P1
sprpriority = 1
ignorehitpause = 0
bindtime = -1
ownpal = 1

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = C, NA
damage = 15,IfElse(var(45) > 0,2,0)
animtype = Medium
guardflag = LA
hitflag = MAF
priority = 3, Hit
pausetime = 9,10
guard.pausetime = 8,8
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -25))
hitsound = S200,1
guardsound = S300,0
ground.type = Low
ground.slidetime = 11
ground.hittime  = 14
ground.velocity = -5
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
getpower =25
givepower = 15
envshake.time = 9
envshake.ampl = 2

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 13
attr = C, NA
animtype  = Medium
damage = 28,IfElse(var(45) > 0,3,0)
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10,11
guard.pausetime = 8,8
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -25))
hitsound = S200,1
guardsound = S300,0
ground.type = Trip
ground.slidetime = 13
ground.hittime = 14
ground.velocity = -.5,-3
air.velocity = -.5,-3
envshake.time = 9
envshake.ampl = 2
getpower = 25,25
givepower = 15
fall = 1
fall.recover = 0
air.fall.recover = 1

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

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

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

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

[State 420, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = C, NA
animtype  = Hard
damage = 42,IfElse(var(45) > 0,4,0)
guardflag = LA
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -10))
hitsound = S200,2
guardsound = S300,0
ground.type = Trip
ground.slidetime = 21
ground.hittime = 22
ground.velocity = -1,-5
air.velocity = -1,-5
getpower = 25
givepower = 16
envshake.time = 9
envshake.ampl = 3
yaccel = 0.4
fall.recover = 0
fall = 1

[State 420, ChangeState]
Type = ChangeState
Trigger1 = command = "z"
Trigger1 = AnimElemTime(9) >= 1
Trigger1 = AnimElemTime(11) <= 3
Value = 425
Ctrl = 0

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

[StateDef 425]
Type = C
MoveType = A
Physics = S
Ctrl = 0
Anim = 425
SprPriority = 2
Facep2 = 1

[State 425, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(5) <= 0
StateType = C

[State 425, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(5) >= 1
Trigger1 = AnimElemTime(12) <= 0
StateType = A

[State 425, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(12) >= 1
StateType = C

[State 425, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 421
ID = 421
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 425, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,10

[State 425, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 12
value = S40,0

[State 425, Explod]
type = Explod
trigger1 = AnimElem = 12
anim = 8020
sprpriority = -3
postype = p1
pos = 23,0
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 425, HitDef]
Type = HitDef
Trigger1 = AnimElem = 8
Attr = A, NA
Damage = 31,IfElse(var(45) > 0,3,0)
AnimType = Medium
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 8,9
Guard.PauseTime = 8,9
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 = Trip
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -2,7
Guard.Velocity = -10
Air.Velocity = -2,7
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 1
GetPower = 15
GivePower = 8
envshake.time = 9
envshake.ampl = 3

[State 425, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(4) = 0
y = -3
persistent = 0

[State 425, VelSet]
Type = VelSet
Trigger1 = AnimElemTime(5) >= 0
trigger1 = AnimElemTime(12) <= 0
x = 2.5
persistent = 1

[State 425, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(5) >= 0
trigger1 = AnimElemTime(12) <= 0
y = 0.3

[State 425, VelSet]
Type = VelSet
trigger1 = AnimElemTime(12) = 1
x = 0
y = 0

[State 425, PosSet]
Type = PosSet
trigger1 = AnimElem = 12
y = 0

[State 425, ChangeState]
Type = ChangeState
Trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

;---------------------------------------------------------------------------
; Crouching Light Kick
; CNS difficulty: easy
[Statedef 430]
type    = C
movetype= A
physics = C
poweradd = 22
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 = 3
value = S100,9

[State 430, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = C, NA
damage = 17,IfElse(var(45) > 0,2,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) := -35))
hitsound = S200,0
guardsound = S300,0
ground.type = High
ground.slidetime = 10
ground.hittime  = 12
ground.velocity = -3.5
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
getpower = 20
givepower = 11

[State 430, Explod]
type = Explod
trigger1 = AnimElem = 3
Anim = 431
ID = 431
pos = -15,40
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[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,2+random%3
channel = 0

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

[State 440, Helper]
type = Helper
trigger1 = AnimElem = 2
ID = 441
stateno = 441
name = "Ball"
postype = p1
Pos = -60,90
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 440, HitDef]
type = HitDef
trigger1 = AnimElem = 1
attr = C,NA
damage = 38,IfElse(var(45) > 0,4,0)
animtype = Medium
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 9, 9
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -25))
hitsound = S200,1
guardsound = S300,0
ground.type = Low
ground.slidetime = 10
ground.hittime  = 13
ground.velocity = -5
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
getpower = 25
givepower = 15
envshake.time = 9
envshake.ampl = 2

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

[StateDef 441]
type = A
movetype = I
physics = N
anim = 441
sprpriority = 3

[State 441, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

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

[State 441, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1.5,1.5

[State 441, VelSet]
type = VelSet
trigger1 = Time = 0
x = 5

[State 441, VelSet]
type = VelSet
trigger1 = Time > 8
y = -1

[State 441, VelSet]
type = VelSet
trigger1 = AnimElem = 2
x = 0

[State 441, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,Stateno != 440
trigger3 = Root,Anim != 440
trigger4 = Root,MoveType = H

;---------------------------------------------------------------------------
; 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, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(3) >= 0 && AnimElemTime(9) < 0
x = 6

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

[State 450, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 10
value = S40,0

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

[State 450, HitDef]
type = HitDef
trigger1 = !MoveContact
attr = C,NA
damage = 47,IfElse(var(45) > 0,5,0)
guardflag = L
hitflag = MAF
priority = 5,Hit
pausetime = 10,15
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -30))
hitsound = S200,2
guardsound = S300,0
animtype = hard
ground.type = trip
air.type = trip
ground.slidetime = 17
ground.hittime = 17
air.hittime = 100
ground.velocity = -3,-5
guard.velocity = -7
air.velocity = -3,-5
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower= 45
givepower = 15
envshake.time = 9
envshake.ampl = 3
fall = 1
fall.recover = 0

[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 = 1
value = S100,9

[State 600, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 601
ID = 601
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 600, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = A, NA
damage = 22,IfElse(var(45) > 0,2,0)
animtype = Light
guardflag = HA
hitflag = MAF
priority = 3, Hit
pausetime = 6, 7
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,0
guardsound = S300,0
ground.type = High
ground.slidetime = 8
ground.hittime  = 10
ground.velocity = -4
air.velocity = -1.4,-3
getpower = 20
givepower = 12

[State 600, 5]
type = CtrlSet
trigger1 = Time >= 22
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,2+random%3
channel = 0

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

[State 610, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 611
ID = 611
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 610, HitDef]
Type = HitDef
Trigger1 = AnimElem = 6
Attr = A, NA
Damage = 44,IfElse(var(45) > 0,4,0)
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 8,9
Guard.PauseTime = 8,9
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) := -70))
AnimType = Med
Ground.Type = High
Ground.SlideTime = 11
Ground.HitTime  = 11
Ground.Velocity = -5
Guard.Velocity = -7.5
Air.Velocity = -1.3,-1.6
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2.6,-2.5
Ground.CornerPush.VelOff = -6
Air.CornerPush.VelOff = -2.3
Down.CornerPush.VelOff = -3.6
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 1
Fall.RecoverTime = 25
GetPower = 24
GivePower = 16
envshake.time = 9
envshake.ampl = 2

[State 610, 5]
type = CtrlSet
trigger1 = Time >= 30
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 < 650
trigger1 = time = 0
value = S400,3+random%2
channel = 0

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

[State 620, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 621
ID = 621
pos = 0, 0
postype = P1
sprpriority = 1
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 620, HitDef]
Type = HitDef
Trigger1 = AnimElem = 5
Attr = A, NA
Damage = 69,IfElse(var(45) > 0,7,0)
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 10,11
Guard.PauseTime = 10,11
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))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 15
Ground.HitTime  = 15
Ground.Velocity = -5.5
Guard.Velocity = -8.5
Air.Velocity = -1.6,-3.8
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6.5
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 1
Fall.RecoverTime = 27
GetPower = 35
GivePower = 15
envshake.time = 9
envshake.ampl = 3

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

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

[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 = 1
value = S100,9

[State 630, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 601
ID = 631
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 630, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = A, NA
damage = 22,IfElse(var(45) > 0,2,0)
animtype = Light
guardflag = HA
hitflag = MAF
priority = 3, Hit
pausetime = 6, 7
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -50))
hitsound = S200,0
guardsound = S300,0
ground.type = High
ground.slidetime = 8
ground.hittime  = 10
ground.velocity = -4
air.velocity = -1.4,-3
getpower = 20
givepower = 12

[State 630, 5]
type = CtrlSet
trigger1 = Time >= 22
value = 1

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

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

[State 640, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = A, NA
damage = 49,IfElse(var(45) > 0,5,0)
priority  = 3,Hit
animtype = hard
hitflag = MAF
guardflag = HA
pausetime = 8,10
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -50))
hitsound = S200,1
guardsound = S300,0
ground.type = High
ground.slidetime = 12
ground.hittime = 16
ground.velocity = -4
air.velocity = -2,-3.8
fall.recovertime = 31
air.fall = 1
yaccel = 0.4
GetPower = 24
GivePower = 16
envshake.time = 9
envshake.ampl = 2

[State 640, 5]
type = CtrlSet
trigger1 = Time >= 30
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 < 650
trigger1 = time = 0
value = S400,3+random%2
channel = 0

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

[State 650, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 651
ID = 651
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 650, HitDef]
Type = HitDef
Trigger1 = AnimElem = 6
Attr = A, NA
Damage = 75,IfElse(var(45) > 0,8,0)
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 10,11
Guard.PauseTime = 10,11
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))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 15
Ground.HitTime  = 15
Ground.Velocity = -5.5
Guard.Velocity = -8.5
Air.Velocity = -1.6,-3.8
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6.5
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 1
Fall.RecoverTime = 27
GetPower = 35
GivePower = 15
envshake.time = 9
envshake.ampl = 3

[State 650, 5]
type = CtrlSet
trigger1 = Time = 44
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,26+Random%2
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 = 17

[State 700, AfterImage]
type = Afterimage
trigger1 = AnimElem = 1
time = 15
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 = 5
value = S40,3

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

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

[State 750, VelSet]
type = VelSet
trigger1 = AnimElem = 5
x = 3

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

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

[State 750, PlayerPush]
type = PlayerPush
trigger1 = AnimElemTime(5) > 0
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, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S40,3

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

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

[State 751, VelSet]
type = VelSet
trigger1 = AnimElem = 5
x = -3

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

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

[State 751, Push]
type = PlayerPush
trigger1 = AnimElemTime(5) > 0
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).
[Statedef 800]
type    = S
movetype= A
physics = S
juggle  = 0
velset = 0,0
ctrl = 0
anim = 800

; Notes: The '-' symbol in the hitflag field means that it only affects
;   players who are not in a hit state. This prevents the player from combo-ing
;   into the throw. The priority should be set to a low number, such as
;   1 or 2, so that the throw does not take precedence over normal attacks.
;   The type of priority must always be set to "Miss" or "Dodge" for throws,
;   otherwise strange behavior can result.
[State 800, HitDef]
type = HitDef
Trigger1 = AnimElem = 2
attr = S, NT
hitflag = M-
priority = 1, Miss
sparkno = -1
sprpriority = 1
hitsound = S800,7
p1facing = ifelse(command = "holdback", 1, -1)
p2facing = 1
p1stateno = 810
p2stateno = 820
guard.dist = 0
fall = 1

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

[State 80, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,13

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

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

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

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

[State 810, PlaySnd]
type = PlaySnd
trigger1 = Time = 32
value = S100,13

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 2
Pos = 30, 0

[State 810, Width]
type = Width
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(13) < 0
Edge = 30,0

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 5
Pos = 10, -20

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 6
Pos = 0, -30

[State 810, TargetBind]
type = TargetBind
trigger1 = AnimElem = 7
Pos = -7, -33

[State 810, TargetLifeAdd]
type = TargetLifeAdd
Trigger1 = AnimElem = 7
Value = IfElse(Var(45) > 0,-125,-100)

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

[State 810]
type = TargetState
trigger1 = Time = 32
value = 821

[State 810, Turn]
type = Turn
trigger1 = AnimTime = 0

[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, PlayerPush]
type = PlayerPush
trigger1 = 1
value = 0

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

[State 820, ChangeAnim]
type = ChangeAnim
trigger1 = EnemyNear,Time >= 14
trigger1 = Time = 0
value = 5000

[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 = 2.6,-8

[State 821, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.4

[State 820, Turn]
type = Turn
trigger1 = Time = 0

[State 820, NotHitBy]
type = NotHitBy
trigger1 = Vel Y <= 4
value = SAC, AT,AA,AP
time = 0

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

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

[State 820, 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 820, SelfState]
type = SelfState
triggerall = time > 30
triggerAll = Vel Y > 4
triggerAll = Pos Y >= -20
triggerAll = Alive
triggerAll = CanRecover
trigger1 = Command = "recovery"
value = 5200

[State 820, SelfState]
type = SelfState
triggerall = time > 30
triggerAll = Vel Y > 4
triggerall = Pos Y >= -20
triggerAll = Alive
triggerAll = CanRecover
trigger1 = Command = "recovery"
value = 5210

[State 820, HitFallSet]
type = HitFallSet
triggerAll = Vel Y > 4
trigger1 = 1
value = 1

[State 820, SelfState]
type = SelfState
trigger1 = GetHitVar(fall.recover) = 1
trigger1 = Vel Y > 0
trigger1 = Pos Y >= -20
value = 5035

[State 820, SelfState]
type = SelfState
trigger1 = Vel Y > 4
trigger1 = Pos Y >= 0
value = 5100

[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 = 24,-67
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 = 35,-32
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 = 24,-55
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,3+Random%2
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-58)/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

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

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

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

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

[State 950, Explod]
type = Explod
trigger1 = AnimElem = 7
anim = 953
ID = 953
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

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

[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 = 20

[State 950, HitDef]
type = HitDef
trigger1 = AnimElem = 8
attr = S,SA
animtype = Hard
damage = 100
hitflag = MAF
guardflag =
priority = 4, Hit
pausetime = 10,10
guard.pausetime = 10,10
hitsound = S200,2
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 = -3,-12
air.velocity = -3,-12
down.velocity = -4,-2
yaccel = .54
fall = 1
fall.recover = 0
getpower = 0
envshake.time = 10
envshake.ampl = 3
envshake.freq = 90

[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
poweradd = 65
ctrl = 0
velset = 0,0
anim = 1000
sprpriority = 2

[State 1000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S410,5+Random%2

[State 1000, Helper]
type = Helper
trigger1 = AnimElem = 6
name = "Icicle"
stateno = 1001
ID = 1001
pos = 44,-35
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1001]
type = A
movetype= A
physics = N
ctrl = 0
velset = 0,0
anim = 1001
sprpriority = 5

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

[State 1001, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1001, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1001, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = Heavy
damage = ceil(80*(root,fvar(1)*root,fvar(2))),7
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,5
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = Trip
ground.slidetime = 18
ground.hittime  = 18
ground.velocity = -2.3,-2
air.velocity = -2.3,-2
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 30
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1001, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 20)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1001, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 20)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

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

[State 1010, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 7
value = S410,5+Random%2

[State 1010, Helper]
type = Helper
trigger1 = AnimElem = 7
name = "Icicle"
stateno = 1011
ID = 1011
pos = 40,-45
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1011]
type = A
movetype= A
physics = N
ctrl = 0
velset = 0,0
anim = 1011
sprpriority = 5

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

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

[State 1011, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1011, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1011, AngleDraw]
type = AngleDraw
trigger1 = 1
value = 15

[State 1011, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = Heavy
damage = ceil(80*(root,fvar(1)*root,fvar(2))),7
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,5
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = Low
ground.slidetime = 18
ground.hittime  = 18
ground.velocity = -3.3,-2
air.velocity = -3.3,-2
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 30
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1011, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 55)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1011, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 55)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

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

[State 1020, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S410,5+Random%2

[State 1020, Helper]
type = Helper
trigger1 = AnimElem = 6
name = "Icicle"
stateno = 1021
ID = 1021
pos = 30,-50
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1021]
type = A
movetype= A
physics = N
ctrl = 0
velset = 0,0
anim = 1021
sprpriority = 5

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

[State 1021, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1021, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1021, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = up
damage = ceil(80*(root,fvar(1)*root,fvar(2))),7
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,5
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = High
ground.slidetime = 18
ground.hittime  = 18
ground.velocity = -3.5,-5
air.velocity = -3.5,-2
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 30
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1021, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 70)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1021, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
helpertype = normal
stateno = 9000
ID = 9000
name = "Guard_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 70)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

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

[State 1030, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,10
channel = 0

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

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

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

[State 1030, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 7

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

[State 1030, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = IfElse(Var(45) > 0,0,-500)

[State 1030, Helper]
type = Helper
trigger1 = AnimElem = 7
name = "Icicle"
stateno = 1031
ID = 1031
pos = 0,-75
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

[State 1030, Helper]
type = Helper
trigger1 = AnimElem = 7
name = "Icicle"
stateno = 1031
ID = 1032
pos = 40,-45
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

[State 1030, Helper]
type = Helper
trigger1 = AnimElem = 7
name = "Icicle"
stateno = 1031
ID = 1031
pos = 0,-15
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1031]
type = A
movetype= A
physics = N
ctrl = 0
velset = 0,0
anim = 1011

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

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

[State 1031, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1031, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1031, AngleDraw]
type = AngleDraw
trigger1 = 1
value = 15

[State 1031, SprPriority]
type = SprPriority
trigger1 = IsHelper(1031)
value = 5

[State 1031, SprPriority]
type = SprPriority
trigger1 = IsHelper(1032)
value = 1

[State 1031, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = Heavy
damage = ceil(30*(root,fvar(1)*root,fvar(2))),9
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,5
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = Low
ground.slidetime = 22
ground.hittime  = 22
ground.velocity = -7.3,-5
air.velocity = -7.3,-5
fall = 1
air.fall = 1
fall.recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 0
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1031, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 55)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1031, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 55)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

[StateDef 1050]
type = A
movetype = A
physics = N
poweradd = 50
anim = 1050
ctrl = 0
sprpriority = 2
velSet = 0,0

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

[state 1050, VelSet]
type = VelSet
trigger1 = AnimElem = 3
y = 0.2

[State 1050, Helper]
type = Helper
trigger1 = AnimElem = 4
name = "Icicle"
stateno = 1051
ID = 1051
pos = 44,-45
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1051]
type = A
movetype= A
physics = N
ctrl = 0
velset = 0,0
anim = 1001
sprpriority = 5

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

[State 1051, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1051, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1051, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = Heavy
damage = ceil(80*(root,fvar(1)*root,fvar(2))),7
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,5
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = Low
ground.slidetime = 18
ground.hittime  = 18
ground.velocity = -2.3,-5
air.velocity = -2.3,-5
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 30
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1051, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 60)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1051, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 60)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

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

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

[state 1060, VelSet]
type = VelSet
trigger1 = AnimElem = 3
y = 0.2

[State 1060, Helper]
type = Helper
trigger1 = AnimElem = 4
name = "Icicle"
stateno = 1011
ID = 1011
pos = 44,-55
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1070]
type = A
movetype = A
physics = N
poweradd = 50
anim = 1070
ctrl = 0
sprpriority = 2
velSet = 0,0

[State 1070, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S410,5+Random%2

[state 1070, VelSet]
type = VelSet
trigger1 = AnimElem = 4
y = 0.2

[State 1070, Helper]
type = Helper
trigger1 = AnimElem = 5
name = "Icicle"
stateno = 1021
ID = 1021
pos = 24,-65
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

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

[StateDef 1080]
type = A
movetype = A
physics = N
poweradd = 0
anim = 1050
ctrl = 0
sprpriority = 2
velSet = 0,0

[State 1080, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,10
channel = 0

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

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

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

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

[State 1080, 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 1080, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = IfElse(Var(45) > 0,0,-500)

[state 1080, VelSet]
type = VelSet
trigger1 = AnimElem = 3
y = 0.2

[State 1080, Helper]
type = Helper
trigger1 = AnimElem = 4
name = "Icicle"
stateno = 1081
ID = 1081
pos = 44,-45
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

[State 1080, Helper]
type = Helper
trigger1 = AnimElem = 4
name = "Icicle"
stateno = 1081
ID = 1081
pos = 24,-25
postype = p1
helpertype = normal
bindtime = -1
keyctrl = 0
ownpal = 1
persistent = 0

[State 1080, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 7
physics = A

[StateDef 1081]
type = A
movetype = A
physics = N
ctrl = 0
velset = 0,0
anim = 1001
sprpriority = 5

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

[State 1081, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,10

[State 1081, PlaySnd]
type = PlaySnd
trigger1 = Time = 36
value = S100,12

[State 1081, HitDef]
type = HitDef
trigger1 = time >= 1
trigger1 = !Movecontact
attr = A, SP
animtype = Heavy
damage = ceil(45*(root,fvar(1)*root,fvar(2))),7
priority = 5,hit
guardflag = MA
hitflag = MAF
pausetime = 0,10
guard.pausetime = 0,2
sparkno = -1
guard.sparkno = -1
sparkxy = -20,-20
hitsound = S200,9
guardsound = S300,0
ground.type = Low
ground.slidetime = 18
ground.hittime  = 18
ground.velocity = -2.3,-5
air.velocity = -2.3,-5
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
getpower = 0
envshake.time = 10
envshake.ampl = 3
sprpriority = 5
yaccel = 0.5

[State 1081, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 60)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1081, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 60)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

[StateDef 1100]
Type = S
MoveType = A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1100
PowerAdd = 30

[State 1100, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 2
StateType = A
MoveType = A
Physics = A

[State 1100, VelSet]
Type = VelSet
Trigger1 = AnimElem = 2
X = 2
Y = -5

[State 1100, VelSet]
Type = VelSet
Trigger1 = AnimElem = 5
X = 2
Y = -5

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

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

[State 1100, PlaySnd]
type = PlaySnd
triggerall = Random < 500
trigger1 = Time = 0
value = S410,37
Channel = 0

[State 1100, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
anim = 1103
ID = 1103
pos = 0,40
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 1100, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 1101
ID = 1101
pos = 10,-10
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = 1
ownpal = 1

[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
attr = S, SA
damage = 51,5
animtype = light
hitflag = MAF
guardflag = M
priority = 4,Hit
pausetime = 10,11
guard.pausetime = 8,8
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
air.hittime  = 12
ground.velocity = -1,-6
guard.velocity = -4.5
airguard.velocity = -3,-5
air.velocity = -1,-6
getpower = 30
yaccel = .54
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
envshake.time = 10
envshake.ampl = 3

[StateDef 1110]
Type = S
MoveType = A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1100
PowerAdd = 30

[State 1110, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 2
StateType = A
MoveType = A
Physics = A

[State 1110, VelSet]
Type = VelSet
Trigger1 = AnimElem = 2
X = 2
Y = -8

[State 1110, VelSet]
Type = VelSet
Trigger1 = AnimElem = 5
X = 2
Y = -8

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

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

[State 1110, PlaySnd]
type = PlaySnd
triggerall = Random < 500
trigger1 = Time = 0
value = S410,37
Channel = 0

[State 1110, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
anim = 1103
ID = 1103
pos = 0,40
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 1110, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 1101
ID = 1101
pos = 10,-30
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = 1
ownpal = 1

[State 1110, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
attr = S, SA
damage = 51,5
animtype = light
hitflag = MAF
guardflag = M
priority = 4,Hit
pausetime = 10,11
guard.pausetime = 8,8
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
air.hittime  = 12
ground.velocity = -1, -6
guard.velocity = -4.5
airguard.velocity = -3,-5
air.velocity = -1,-6
getpower = 30
yaccel = .54
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
envshake.time = 10
envshake.ampl = 3

[StateDef 1120]
Type = S
MoveType = A
Physics = S
Ctrl = 0
VelSet = 0,0
Anim = 1120
PowerAdd = 30

[State 1120, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 12
StateType = A
MoveType = A
Physics = A

[State 1120, VelSet]
type = VelSet
trigger1 = time = [8,24]
x = 3

[State 1120, VelSet]
Type = VelSet
Trigger1 = AnimElem = 12
X = 2
Y = -8

[State 1120, VelSet]
Type = VelSet
Trigger1 = AnimElem = 15
X = 2
Y = -8

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
trigger2 = AnimElem = 15
value = S100,2

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
trigger2 = AnimElem = 12
value = S100,10

[State 1120, PlaySnd]
type = PlaySnd
triggerall = Random < 500
trigger1 = Time = 0
value = S410,37
Channel = 0

[State 1120, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
trigger3 = AnimElem = 7
trigger4 = AnimElem = 9
anim = 1103
ID = 1103
pos = 0,40
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 1120, Explod]
type = Explod
trigger1 = AnimElem = 13
trigger2 = AnimElem = 15
trigger3 = AnimElem = 17
trigger4 = AnimElem = 19
anim = 1103
ID = 1103
pos = 0,40
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 1120, Explod]
type = Explod
trigger1 = AnimElem = 5
trigger2 = AnimElem = 15
anim = 1101
ID = 1101
pos = 10,-10
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = 1
ownpal = 1

[State 1120, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S40,0

[State 1120, Explod]
type = Explod
trigger1 = AnimElem = 11
anim = 8020
sprpriority = -3
postype = p1
pos = 23,0
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
trigger3 = AnimElem = 15
trigger4 = AnimElem = 16
attr = S, SA
damage = 42,4
animtype = light
hitflag = MAF
guardflag = M
priority = 4,Hit
pausetime = 10,11
guard.pausetime = 8,8
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
air.hittime  = 12
ground.velocity = -1, -6
guard.velocity = -4.5
airguard.velocity = -3,-5
air.velocity = -1,-6
getpower = 30
yaccel = .54
fall = 1
air.fall = 1
fall.recover = 1
fall.recovertime = 30
envshake.time = 10
envshake.ampl = 3

[StateDef 1130]
Type = S
MoveType = A
Physics = N
Ctrl = 0
VelSet = 0,0
Anim = 1130
PowerAdd = 0

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

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

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

[State 1130, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = -500

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

[State 1130, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 1102
ID = 1102
pos = 0,0
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1

[State 1130, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 2
StateType = A

[State 1130, VelSet]
Type = VelSet
Trigger1 = AnimElem = 2
trigger2 = AnimElem = 11
trigger3 = AnimElem = 20
X = 1
Y = -4

[State 1130, PlaySnd]
type = PlaySnd
Trigger1 = AnimElem = 5
trigger2 = AnimElem = 14
trigger3 = AnimElem = 23
value = S100,11

[State 1130, PlaySnd]
type = PlaySnd
Trigger1 = AnimElem = 2
trigger2 = AnimElem = 11
trigger3 = AnimElem = 20
value = S100,10

[State 1130, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,31+Random%2
Channel = 0

[State 1130, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 7
trigger3 = AnimElem = 11
trigger4 = AnimElem = 15
trigger5 = AnimElem = 19
anim = 1103
ID = 1103
pos = 0,40
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 1130, Explod]
type = Explod
Trigger1 = AnimElem = 5
trigger2 = AnimElem = 14
trigger3 = AnimElem = 23
anim = 1101
ID = 1101
pos = 10,-10
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = 1
ownpal = 1

[State 1130, HitDef]
type = HitDef
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
trigger3 = AnimElem = 14
trigger4 = AnimElem = 15
attr = S,SA
damage = 27,3
animtype = Heavy
hitflag = MAF
guardflag = MA
priority = 4,Hit
pausetime = 5,8
guard.pausetime = 5,8
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
air.hittime  = 12
ground.velocity = -1, -9
guard.velocity = -4.5
airguard.velocity = -3,-5
air.velocity = -1,-9
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
yaccel = .48
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1130, HitDef]
type = HitDef
trigger1 = AnimElem = 23
trigger2 = AnimElem = 24
attr = S,SA
damage = 27,3
animtype = Heavy
hitflag = MAF
guardflag = MA
priority = 4,Hit
pausetime = 5,8
guard.pausetime = 5,8
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 12
guard.slidetime = 12
ground.hittime = 12
air.hittime  = 12
ground.velocity = -3, -4
guard.velocity = -4.5
airguard.velocity = -3,-5
air.velocity = -3,-4
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
yaccel = .48
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1130, VelAdd]
Type = VelAdd
Trigger1 = Time > 37
y = 0.4

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

[StateDef 1140]
Type = S
MoveType = A
Physics = S
Ctrl = 0
Anim = 1140
PowerAdd = 0
Facep2 = 1

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

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

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

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

[State 1140, NotHitBy]
type = NotHitBy
trigger1 = Time < 49
Value = SAC, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = 1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1140, PlayerPush]
type = PlayerPush
trigger1 = 1
Value = 0
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

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

[State 1140, Helper]
type = Helper
trigger1 = Time = 3
StateNo = 1141
ID = 1141
Name = "Clone"
Postype = P1
Pos = 0,0
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1140, Helper]
type = Helper
trigger1 = Time = 14
StateNo = 1141
ID = 1141
Name = "Clone"
Postype = P1
Pos = 0,0
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1140, Helper]
type = Helper
trigger1 = Time = 25
StateNo = 1141
ID = 1141
Name = "Clone"
Postype = P1
Pos = 0,0
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1140, Helper]
type = Helper
trigger1 = Time = 36
StateNo = 1141
ID = 1141
Postype = P1
Pos = 0,0
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 1
Persistent = 0

[State 1140, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
Value = S100,7

[State 1140, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 17
Value = S100,6

[State 1140, VelSet]
type = VelSet
trigger1 = Time = [4,45]
X = 7

[State 1140, VelSet]
type = VelSet
trigger1 = Time >= 46
X = 3

[State 1140, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

[StateDef 1141]
Type = A
MoveType = A
Physics = N
Velset = 0,0
Anim = 1141
SprPriority = 3

[State 1141, VarAdd]
type = VarAdd
trigger1 = AnimTime >= -12
V = 0
Value = 20

[State 1141, Trans]
type = Trans
trigger1 = 1
Trans = AddAlpha
Alpha = 255-Var(0),64+Var(0)

[State 1141, HitOverRide]
type = HitOverRide
trigger1 = 1
Attr = SCA, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = -1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1141, NotHitBy]
type = NotHitBy
trigger1 = 1
Value = SAC, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = -1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1141, VelSet]
type = VelSet
trigger1 = Time = [6,26]
X = 4.4

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [7,8]
Y = -4

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [9,12]
Y = -3

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [13,14]
Y = -2

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [14,15]
Y = -1

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [16,17]
Y = 1

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [18,20]
Y = 2

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [21,24]
Y = 3

[State 1141, PosAdd]
type = PosAdd
trigger1 = Time = [25,26]
Y = 4

[State 1141, VelSet]
type = VelSet
trigger1 = Time = 26
X = 0
Y = 0

[State 1141, PosSet]
type = PosSet
trigger1 = Time = 26
Y = 0

[State 1141, StateTypeSet]
type = StateTypeSet
trigger1 = Time = 26
StateType = S
Physics = S
IgnoreHitPause = 1

[State 1141, PlaySnd]
type = PlaySnd
trigger1 = Time = 35
Value = S100,2

[State 1141, Explod]
type = Explod
trigger1 = AnimElem = 11
Anim = 1142
ID = 1142
PosType = P1
Pos = 0,0
Ownpal = 1
SprPriority = 5
IgnoreHitPause = 0
RemoveTime = -2
BindTime = -1
RemoveOnGetHit = 1
Persistent = 0

[State 1141, HitDef]
type = HitDef
trigger1 = AnimElem = 4
trigger2 = AnimElem = 6
attr = S,SA
damage = ceil(10*(root,fvar(1)*root,fvar(2))),2
animtype = Hard
hitflag = MAF
guardflag = MA
priority = 4,Hit
pausetime = 4,13
guard.pausetime = 4,3
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 20
guard.slidetime = 20
ground.hittime = 20
air.hittime  = 20
ground.velocity = -5.5
guard.velocity = -7.5
airguard.velocity = -4,-1.4
air.velocity = -3,-6.2
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
yaccel = .48
fall = 0
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1141, HitDef]
type = HitDef
trigger1 = AnimElem = 8
attr = S,SA
damage = ceil(20*(root,fvar(1)*root,fvar(2))),2
animtype = Hard
hitflag = MAF
guardflag = MA
priority = 4,Dodge
pausetime = 4,13
guard.pausetime = 4,5
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 17
guard.slidetime = 17
ground.hittime = 17
air.hittime  = 17
ground.velocity = -5.5
guard.velocity = -8
airguard.velocity = -4,-1.4
air.velocity = -3,-6.2
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
yaccel = .48
fall = 0
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3

[State 1141, HitDef]
type = HitDef
trigger1 = AnimElem = 16
attr = S,SA
damage = ceil(35*(root,fvar(1)*root,fvar(2))),7
animtype = Hard
hitflag = MAF
guardflag = MA
priority = 4,Dodge
pausetime = 8,8
guard.pausetime = 8,5
sparkno = -1+(0*(var(41) := 8054))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,2
guardsound = S300,0
ground.type = High
ground.slidetime = 20
guard.slidetime = 20
ground.hittime = 20
ground.velocity = -5
guard.velocity = -11
airguard.velocity = -4,-1.4
air.velocity = -3,-5.2
ground.cornerPush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
yaccel = .48
envshake.time = 10
envshake.ampl = 3
p2stateno = 1231
p2facing = 1

[State 1141, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 1141, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8054)
ID = 8050
postype = p1
pos = ceil(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 1141, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 1141, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 1141, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

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

[State 1200, NotHitBy]
type = NotHitBy
trigger1 = AnimElemTime(3) >= 0
value = , NP, SP, HP
time = 1

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S410,6
channel = 0

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S100,0

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
value = S100,11

[State 1200, Explod]
type = Explod
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
ID = 1201
PosType = P1
pos = -10,0
anim = 1201
ownpal = 1
sprpriority = 4
ignorehitpause = 0
persistent = 1
bindtime = 1
removetime = -2

[State 1200, HitDef]
Type = HitDef
Trigger1 = AnimElem = 12
Attr = C, SA
Damage = 75,8
AnimType = Medium
HitFlag = MAF
GuardFlag = L
Priority = 3, Hit
PauseTime = 8,9
Guard.PauseTime = 8,9
HitSound = S200,2
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) := -15))
Ground.Type = hard
Ground.SlideTime = 13
Ground.HitTime  = 13
Ground.Velocity = -1,-3.4
Guard.Velocity = -10
Air.Velocity = -5,-3
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
GetPower = 35
envshake.time = 10
envshake.ampl = 3

[State 1200, VelSet]
type = VelSet
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(9) < 0
x = 5.5

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

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

[State 1210, NotHitBy]
Type = NotHitBy
Trigger1 = AnimElemTime(3) >= 0
Trigger3 = AnimElemTime(8) >= 0
Trigger3 = AnimElemTime(9) < 3
Value = , NP, SP, HP
Time = 1

[State 1210, PlaySnd]
Type = PlaySnd
trigger1 = AnimElem = 13
value = S100,10

[State 1210, PlaySnd]
Type = PlaySnd
trigger1 = AnimElem = 14
value = S410,28
channel = 0

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
value = S100,11

[State 1210, Explod]
type = Explod
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
trigger4 = AnimElem = 8
trigger5 = AnimElem = 10
ID = 1201
PosType = P1
pos = -10,0
anim = 1201
ownpal = 1
sprpriority = 4
persistent = 1
bindtime = 1
removetime = -2

[State 1210, Explod]
type = Explod
trigger1 = AnimElem = 7
ID = 1212
PosType = P1
Pos = 0,0
Anim = 1212
Ownpal = 1
SprPriority = 4
IgnoreHitPause = 1
Persistent = 1
BindTime = 10
RemoveTime = -2
RemoveOnGetHit = 1

[State 1210, HitDef]
Type = HitDef
Trigger1 = !MoveContact
Attr = S,SA
Damage = 94,12
HitFlag = MAF
GuardFlag = HA
Priority = 2, Hit
PauseTime = 10,11
Guard.PauseTime = 10,11
HitSound = S200,2
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))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 15
Ground.HitTime  = 15
Ground.Velocity = -5.5,-4
Guard.Velocity = -8.5
Air.Velocity = -1.6,5
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6.5
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 1
Fall.RecoverTime = 26
GetPower = 40
envshake.time = 10
envshake.ampl = 3

[State 1210, VelSet]
Type = VelSet
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(10) < 0
x = 5

[State 1210, ChangeState]
type = ChangeState
triggerall = time >= 14
trigger1 = command = "x" || command = "y" || command = "z"
value = 1211

[State 1210, ChangeState]
Type = ChangeState
trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

[StateDef 1211]
Type = S
MoveType = I
Physics = N
Ctrl = 0
VelSet = 0,0
Anim = 1211
SprPriority = 2

[State 1211, NotHitBy]
Type = NotHitBy
Trigger1 = AnimElemTime(1) >= 0
Trigger1 = AnimElemTime(3) < 3
Value = , NP, SP, HP
Time = 1

[State 1211, ChangeState]
Type = ChangeState
trigger1 = AnimTime = 0
value = 0
Ctrl = 1

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

[State 1220, NotHitBy]
Type = NotHitBy
Trigger1 = AnimElemTime(3) >= 0
Trigger3 = AnimElemTime(8) >= 0
Trigger3 = AnimElemTime(9) < 3
Value = , NP, SP, HP
Time = 1

[State 1220, PlaySnd]
Type = PlaySnd
trigger1 = AnimElem = 13
value = S100,10

[State 1220, PlaySnd]
Type = PlaySnd
trigger1 = AnimElem = 14
value = S410,28
channel = 0

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
value = S100,11

[State 1220, Explod]
type = Explod
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
trigger4 = AnimElem = 8
trigger5 = AnimElem = 10
ID = 1201
PosType = P1
pos = -10,0
anim = 1201
ownpal = 1
sprpriority = 4
persistent = 1
bindtime = 1
removetime = -2

[State 1220, Explod]
type = Explod
trigger1 = AnimElem = 7
ID = 1212
PosType = P1
Pos = 0,0
Anim = 1212
Ownpal = 1
SprPriority = 4
IgnoreHitPause = 1
Persistent = 1
BindTime = 10
RemoveTime = -2
RemoveOnGetHit = 1

[State 1220, HitDef]
Type = HitDef
Trigger1 = !MoveContact
Attr = S,SA
Damage = 94,12
HitFlag = MAF
GuardFlag = HA
Priority = 2, Hit
PauseTime = 10,11
Guard.PauseTime = 10,11
HitSound = S200,2
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))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 15
Ground.HitTime  = 15
Ground.Velocity = -5.5,-4
Guard.Velocity = -8.5
Air.Velocity = -1.6,5
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6.5
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 1
Fall.RecoverTime = 26
GetPower = 40
envshake.time = 10
envshake.ampl = 3
p2stateno = 1231
p2facing = 1

[State 1220, VelSet]
Type = VelSet
trigger1 = AnimElemTime(3) >= 0
trigger1 = AnimElemTime(10) < 0
x = 7

[State 1220, ChangeState]
type = ChangeState
triggerall = time >= 14
trigger1 = command = "x" || command = "y" || command = "z"
value = 1211

[State 1220, ChangeState]
Type = ChangeState
trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

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

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

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

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

[State 1230, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(-5 * const(size.xscale)), ceil(-45 * 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 = 10

[State 1230, PlaySnd]
Type = PlaySnd
Trigger1 = time = 0
Value = S410,29
Channel = 0

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

[State 1230, VelSet]
Type = VelSet
trigger1 = Anim = 1230
trigger1 = AnimElemTime(5) >= 0
X = 4

[State 1230, ChangeAnim]
Type = changeanim
trigger1 = Anim = 1230
trigger1 = time = 50
Value = 1231

[State 1230, PlaySnd]
Type = PlaySnd
Trigger1 = Anim = 1231
Trigger1 = AnimElem = 6
Value = S100,10

[State 1230, PlaySnd]
type = PlaySnd
triggerall = Anim = 1230
trigger1 = AnimElem = 2
trigger2 = AnimElem = 4
trigger3 = AnimElem = 6
value = S100,11

[State 1230, Explod]
type = Explod
triggerall = Anim = 1230
trigger1 = AnimElem = 5
trigger2 = AnimElem = 6
trigger3 = AnimElem = 7
trigger4 = AnimElem = 8
ID = 1201
PosType = P1
pos = -10,0
anim = 1201
ownpal = 1
sprpriority = 4
persistent = 1
bindtime = 1
removetime = -2

[State 1230, Explod]
type = Explod
trigger1 = Time = 44
ID = 1212
PosType = P1
Pos = 0,0
Anim = 1212
Ownpal = 1
SprPriority = 4
IgnoreHitPause = 0
Persistent = 0
BindTime = 10
RemoveTime = -2
RemoveOnGetHit = 1

[State 1230, HitDef]
Type = HitDef
TriggerAll = Anim = 1230
Trigger1 = time%4 = 0
Attr = S, SA
AnimType = low
Damage = 13,2
GuardFlag = MA
Priority = 4, Hit
PauseTime = 6,8
Guard.PauseTime = 6,8
HitSound = S200,1
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 = low
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -5
Guard.Velocity = -8
Air.Velocity = -1.6,-2
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
YAccel = .48
Fall.Recover = 0
GetPower = 0, 0
envshake.time = 10
envshake.ampl = 3

[State 1230, HitDef]
Type = HitDef
Trigger1 = Anim = 1231
Trigger1 = AnimElem = 7
Attr = S,SA
Damage = 120,12
HitFlag = MAF
GuardFlag = HA
Priority = 4
PauseTime = 10,11
Guard.PauseTime = 10,11
HitSound = S200,2
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))
AnimType = Hard
Ground.Type = High
Ground.SlideTime = 15
Ground.HitTime  = 15
Ground.Velocity = -5.5,-6
Guard.Velocity = -8.5
Air.Velocity = -1.6,6.2
AirGuard.Velocity = -3,-1.4
Down.Velocity = -3.2,-2.5
Ground.CornerPush.VelOff = -6.5
Air.CornerPush.VelOff = -2.6
Down.CornerPush.VelOff = -4.2
getpower = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
envshake.time = 10
envshake.ampl = 3
p2stateno = 1231
p2facing = 1

[State 1230, ChangeState]
Type = ChangeState
Trigger1 = Anim = 1231
Trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

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

[State 1231, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 0

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

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

[State 1231, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5030)
trigger1 = 1
value = 5030

[State 1231, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 1232

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

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

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

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

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

[State 1232, 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 1232, ScreenBound]
type = ScreenBound
trigger1 = Time <= 25
value = 1
MoveCamera = 1,1

[State 1232, ScreenBound]
type = ScreenBound
trigger1 = Time > 25
value = 1
MoveCamera = 0,1

[State 1232, ChangeState]
type = ChangeState
triggerAll = Time = [0,11]
triggerAll = BackEdgeDist <= 1
trigger1 = 1
value = 1233

[State 1232]
type = ChangeState
triggerAll = Time >= 12
triggerAll = BackEdgeDist <= 1
trigger1 = 1
value = 1234

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

[State 1233, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = F7,2

[State 1233, HitFallSet]
type = HitFallSet
trigger1 = Vel Y > 0
trigger1 = Pos Y >= -30
trigger2 = Vel Y > 4
value = 1

[State 1233, SelfState]
type = SelfState
triggerall = Vel Y > 0
triggerall = Pos Y >= -30
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5200

[State 1233, SelfState]
type = SelfState
triggerall = Vel Y > 4
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5210

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

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

[State 1233, 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 1233, EnvShake]
type = EnvShake
trigger1 = Time = 0
time = 10
ampl = 5
freq = 90

[State 1233, EnvShake]
type = VelSet
trigger1 = Time = 5
x = -1.5
y = -6

[State 1233, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = .54

[State 1233, 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 1233, Turn]
Type = Turn
Trigger1 = Time = 0

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

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

[State 1234, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = F7,2

[State 1234, 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 1234, SelfState]
type = SelfState
triggerall = Pos Y >= -20
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5200

[State 1234, SelfState]
Type = SelfState
triggerall = Time >= 6
triggerall = Alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5210

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

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

[State 1234, 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 1234, EnvShake]
type = EnvShake
trigger1 = Time = 0
time = 10
ampl = 5
freq = 90

[State 1234, VelSet]
type = VelSet
trigger1 = Time = 5
x = -1.5
y = -6

[State 1234, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = .54

[State 1234, HitFallSet]
type = HitFallSet
triggerAll = Time = 6
trigger1 = 1
value = 1

[State 1234, Turn]
type = Turn
trigger1 = Time = 0

[State 1234, SelfState]
Type = SelfState
Trigger1 = (Vel Y > 0) && (Pos Y >= 0)
Value = 5100

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

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

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

[State 1300, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = 1

[State 1300, VelSet]
type = VelSet
trigger1 = AnimElemTime(8) = 6
x = 0

[State 1300, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1301
sprpriority = 3
pos = floor(-5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
bindtime = -1
scale = const(size.xscale), const(size.yscale)
removeongethit = 1
ignorehitpause = 0
trans = add

[State 1300, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = normal
name = "Ice"
ID = 1301
stateno = 1301
pos = floor(-5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
ignorehitpause = 1

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

[StateDef 1301]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1302
sprpriority = 3
ignorehitpause = 1

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

[State 1301, Explod]
type = Explod
trigger1 = timemod = 4,0
anim = 1304
ID = 1304
pos = 10-random%20,10-random%20
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 0.8,0.8

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

[State 1301, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 3.5
y = -7.5

[State 1301, VelAdd]
type = velAdd
trigger1 = 1
y = 0.65

[State 1301, AngleDraw]
type = AngleDraw
trigger1 = 1

[State 1301, AngleAdd]
type = AngleAdd
trigger1 = Time%3 > 0
value = -45

[State 1301, Trans]
type = Trans
trigger1 = 1
trans = add

[State 1301, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 1302

[State 1301, ChangeState]
type = ChangeState
trigger1 = frontedgedist < -5 && time > 0
value = 1303

[StateDef 1302]
type = S
movetype = A
physics = N
ctrl = 0
anim = 1303
sprpriority = 3
ignorehitpause = 1

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

[State 1302, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S100,20

[State 1302, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S100,12

[State 1302, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 0
y = 0

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

[State 1302, HitDef]
type = HitDef
trigger1 = AnimElemTime(6) >= 0
trigger1 = !MoveContact
attr = S, SP
animtype = heavy
hitflag = MAF
guardflag = MA
ground.type = high
air.type = low
sparkno = -1
guard.sparkno = -1
sparkxy = 0, 0
hitsound = S200,0
guardsound = S300,0
damage = ceil(68*(root,fvar(1)*root,fvar(2))), 7
priority = 5, Hit
getpower = 27,
pausetime = 0, 11
ground.slidetime = 19
guard.slidetime = 17
ground.hittime = 19
guard.hittime = 17
guard.ctrltime = 17
air.hittime = 99
airguard.ctrltime = 10
ground.velocity = -6
air.velocity = -3,-5
airguard.velocity = -3,-5
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
Sprpriority = 3

[State 1302, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 15)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1302, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 15)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

[StateDef 1303]
type = A
movetype = I
physics = N
ctrl = 0
sprpriority = 5
velset = 0,0

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

[State 1303, Explod]
type = Explod
trigger1 = timemod = 4,0
anim = 1304
ID = 1304
pos = 10-random%20,10-random%20
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 0.8,0.8

[State 1303, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S100,20

[State 1303, VarSet]
type = varset
trigger1 = time = 0
var(0) = 0

[State 1303, VelSet]
type = VelSet
trigger1 = time = 0
x = 4
y = -3.65

[State 1303, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.45

[State 1303, Trans]
type = Trans
trigger1 = 1
trans = Add
IgnoreHitPause = 1

[State 1303, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1,1
IgnoreHitPause = 1

[State 1303, VarAdd]
type = varadd
trigger1 = 1
var(0) = -15

[State 1303, AngleSet]
type = Angleset
trigger1 = 1
value = var(0)
IgnoreHitPause = 1

[State 1303, SprPriority]
type = SprPriority
trigger1 = 1
value = 5

[State 1303, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1303, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.5

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

[State 1303, VelSet]
type = VelSet
trigger1 = time = 0
x = 3
y = -2

[State 1303, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 1302

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

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

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

[State 1310, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = 1

[State 1310, VelSet]
type = VelSet
trigger1 = AnimElemTime(8) = 6
x = 0

[State 1310, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1301
sprpriority = 3
pos = floor(-5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
bindtime = -1
scale = const(size.xscale), const(size.yscale)
removeongethit = 1
ignorehitpause = 0
trans = add

[State 1310, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = normal
name = "Ice"
ID = 1311
stateno = 1311
pos = floor(-5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
ignorehitpause = 1

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

[StateDef 1311]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1302
sprpriority = 3
ignorehitpause = 1

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

[State 1311, Explod]
type = Explod
trigger1 = timemod = 4,0
anim = 1304
ID = 1304
pos = 10-random%20,10-random%20
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 0.8,0.8

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

[State 1311, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 5
y = -7.5

[State 1311, VelAdd]
type = velAdd
trigger1 = 1
y = 0.48

[State 1311, AngleDraw]
type = AngleDraw
trigger1 = 1

[State 1311, AngleAdd]
type = AngleAdd
trigger1 = Time%3 > 0
value = -45

[State 1311, Trans]
type = Trans
trigger1 = 1
trans = add

[State 1311, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 1302

[State 1302, ChangeState]
type = ChangeState
trigger1 = frontedgedist < -5 && time > 0
value = 1303

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

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

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

[State 1320, VelSet]
type = VelSet
trigger1 = AnimElem = 9
x = 1

[State 1320, VelSet]
type = VelSet
trigger1 = AnimElemTime(10) = 6
x = 0

[State 1320, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 1322
sprpriority = 3
pos = floor(-10 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
bindtime = -1
scale = const(size.xscale), const(size.yscale)
removeongethit = 1
removetime = 12
ignorehitpause = 0
trans = add

[State 1320, Helper]
type = Helper
trigger1 = AnimElem = 9
helpertype = normal
name = "Ice"
ID = 1321
stateno = 1321
pos = floor(-5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1
ignorehitpause = 1

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

[StateDef 1321]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1302
sprpriority = 3
ignorehitpause = 1

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

[State 1321, Explod]
type = Explod
trigger1 = timemod = 4,0
anim = 1304
ID = 1304
pos = 10-random%20,10-random%20
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 0.8,0.8

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

[State 1321, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 3.5
y = -7.5

[State 1321, VelAdd]
type = velAdd
trigger1 = 1
y = 0.65

[State 1321, AngleDraw]
type = AngleDraw
trigger1 = 1

[State 1321, AngleAdd]
type = AngleAdd
trigger1 = Time%3 > 0
value = -45

[State 1321, Trans]
type = Trans
trigger1 = 1
trans = add

[State 1321, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 1322

[State 1321, ChangeState]
type = ChangeState
trigger1 = frontedgedist < -5 && time > 0
value = 1324

[StateDef 1322]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1302
sprpriority = 3
ignorehitpause = 1

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

[State 1322, Trans]
type = Trans
trigger1 = 1
trans = add

[State 1322, AngleDraw]
type = AngleDraw
trigger1 = 1

[State 1322, AngleAdd]
type = AngleAdd
trigger1 = Time%3 > 0
value = -45

[State 1322, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 3.5
y = -5.5

[State 1322, VelAdd]
type = velAdd
trigger1 = 1
y = 0.45

[State 1322, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
name = "Ice"
ID = 1322
stateno = 1302
pos = 0,0
postype = p1
ownpal = 1
ignorehitpause = 1

[State 1322, ChangeState]
type = ChangeState
trigger1 = Time >= 10
trigger1 = Vel Y > 0 && Pos Y >= 0
Value = 1323

[StateDef 1323]
type = A
movetype = A
physics = N
ctrl = 0
anim = 1321
sprpriority = 3
ignorehitpause = 1

[State 1323, AngleDraw]
type = AngleDraw
trigger1 = 1

[State 1323, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = 0

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

[State 1323, Trans]
type = Trans
trigger1 = 1
Trans = Add

[State 1323, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S100,20

[State 1323, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S100,12

[State 1323, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 0
y = 0

[State 1323, PosSet]
type = PosSet
trigger1 = AnimElem = 1
y = -5

[State 1323, HitDef]
type = HitDef
trigger1 = AnimElemTime(4) >= 0
trigger1 = !MoveContact
attr = S,SP
animtype = heavy
hitflag = MAF
guardflag = MA
ground.type = high
air.type = low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,1
guardsound = S300,0
damage = ceil(78*(root,fvar(1)*root,fvar(2))),7
priority = 5, Hit
getpower = 47, 47
givepower = 16, 16
pausetime = 0, 11
ground.slidetime = 19
guard.slidetime = 17
ground.hittime = 19
guard.hittime = 17
guard.ctrltime = 17
air.hittime = 99
airguard.ctrltime = 10
ground.velocity = -6
air.velocity = -3,-5
airguard.velocity = -3,-5
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
sprpriority = 3

[State 1323, Helper]
type = Helper
trigger1 = MoveHit && NumEnemy
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 15)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 1323, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 15)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

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

[StateDef 1324]
type = A
movetype = I
physics = N
ctrl = 0
sprpriority = 5
velset = 0,0

[State 1324, Explod]
type = Explod
trigger1 = timemod = 4,0
anim = 1304
ID = 1304
pos = 10-random%20,10-random%20
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 0.8,0.8

[State 1324, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S100,20

[State 1324, VarSet]
type = varset
trigger1 = time = 0
var(0) = 0

[State 1324, VelSet]
type = VelSet
trigger1 = time = 0
x = 4
y = -3.65

[State 1324, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.45

[State 1324, Trans]
type = Trans
trigger1 = 1
trans = Add
IgnoreHitPause = 1

[State 1324, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1,1
IgnoreHitPause = 1

[State 1324, VarAdd]
type = varadd
trigger1 = 1
var(0) = -15

[State 1324, AngleSet]
type = Angleset
trigger1 = 1
value = var(0)
IgnoreHitPause = 1

[State 1324, SprPriority]
type = SprPriority
trigger1 = 1
value = 5

[State 1324, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1324, VelAdd]
type = VelAdd
trigger1 = 1
y = 0.5

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

[State 1324, VelSet]
type = VelSet
trigger1 = time = 0
x = 3
y = -2

[State 1324, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 1322

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

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

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

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

[State 1330, Explod]
type = Explod
trigger1 = !time
anim = 11000
sprpriority = 3
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-50 * 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 = 34

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

[State 1330, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 7
StateType = A

[State 1330, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 13
StateType = S

[State 1330, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S410,35+Random%2
channel = 0

[State 1330, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = -2
y = -5

[State 1330, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(7) >= 0
trigger1 = AnimElemTime(13) < 0
y = 0.38

[State 1330, VelSet]
type = VelSet
trigger1 = AnimElem = 13
x = 0
y = 0

[State 1330, PosSet]
type = PosSet
trigger1 = AnimElem = 13
y = 0

[State 1330, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
name = "Ice"
ID = 1331
stateno = 1331
pos = floor(5 * const(size.xscale)), floor(-100 * const(size.yscale))
postype = p1
ownpal = 1

[State 1330, Helper]
type = Helper
trigger1 = AnimElem = 9
helpertype = normal
name = "Ice2"
ID = 1334
stateno = 1332
pos = 75,0
postype = p1
ownpal = 1

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

[StateDef 1331]
type = A
movetype = I
physics = N
ctrl = 0
sprpriority = 2
ignorehitpause = 1

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

[State 1331, ChangeAnim]
type = changeAnim
trigger1 = time = 0
value = 1331 + NumHelper(1331)

[State 1331, Helper]
type = Helper
trigger1 = time = 0
trigger1 = NumHelper(1331) <= 2
helpertype = normal
name = "Ice"
ID = 1331
stateno = 1331
pos = floor(IfElse(Anim = 1333, 8, -37) * const(size.xscale)), floor(-10 * const(size.yscale))
postype = p1
ownpal = 1
ignorehitpause = 1
superMoveTime = 99
pauseMoveTime = 99

[State 1331, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) >= -10
trigger1 = AnimElemTime(2) < 0
scale = AnimElemTime(2) * -0.1, AnimElemTime(2) * -0.1

[State 1331, AngleDraw]
type = AngleDraw
trigger1 = AnimElemTime(2) >= 0
value = IfElse(Anim = 1332, -165, IfElse(Anim = 1333, -120, -140))
scale = 1, IfElse(Anim = 1332, 0.45, IfElse(Anim = 1333, 0.8, 0.65))

[State 1331, PlaySnd]
type = PlaySnd
trigger1 = Time = 30
value = S100,21

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

[State 1331, Trans]
type = Trans
trigger1 = AnimElemTime(1) >= 0
trigger1 = AnimElemTime(1) <= 10
trans = AddAlpha
alpha = AnimElemTime(1) * 25, 255

[State 1331, Trans]
type = Trans
trigger1 = AnimElemTime(2) >= 0
trans = AddAlpha
alpha = floor(sin(AnimElemTime(2) / pi) * 255), 255

[State 1331, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H

[StateDef 1332]
type = S
movetype = A
physics = N
ctrl = 0
Anim = 1331
sprpriority = 5
ignorehitpause = 1

[State 1332. PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1332, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow
ignorehitpause = 1

[State 1332, HitDef]
type = HitDef
trigger1 = AnimElemTime(5) >= 0
trigger1 = AnimElemTime(17) < 0
trigger1 = AnimElemTime(5) % 2 = 0
attr = S, SP
animtype = heavy
hitflag = MAF
guardflag = MA
ground.type = low
air.type = low
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
damage = ceil(31*(root,fvar(1)*root,fvar(2))), 3
priority = 6, Hit
getpower = 0, 0
givepower = 16, 16
pausetime = 0, 11
ground.slidetime = 19
guard.slidetime = 17
ground.hittime = 19
guard.hittime = 17
guard.ctrltime = 17
air.hittime = 99
airguard.ctrltime = 10
ground.velocity = -8
guard.velocity = -8
air.velocity = -3, -4
airguard.velocity = -3, -5
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
getpower = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 7
envshake.freq = 100
envshake.ampl = 3
envshake.phase = 100
sprpriority = 5

[State 1332, Helper]
type = Helper
trigger1 = MoveHit = 1
helpertype = normal
ID = 8054
stateno = 8054
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 25)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 16

[State 1332, Helper]
type = Helper
trigger1 = MoveGuarded = 1
helpertype = normal
ID = 9000
stateno = 9000
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 25)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
ignorehitpause = 1
persistent = 16

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

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

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

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

[State 2000, AfterImage]
type = AfterImage
trigger1 = time = 0
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, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(5 * const(size.xscale)), ceil(-40 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

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

[State 2000, Helper]
type = Helper
trigger1 = Time = 0
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 = Time = 0
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 = Time = 0
Value = S410,0
Channel = 0

[State 2000, PlaySnd]
Type = PlaySnd
Trigger1 = AnimElem = 27
Value = S410,1
Channel = 0

[State 2000, PowerAdd]
Type = PowerAdd
Trigger1 = Time = 0
value = IfElse(Var(45) > 0,0,-1000)

[State 2000, Helper]
Type = Helper
Trigger1 = AnimElem = 27
StateNo = 2001
ID = 2001
Name = "Icicle"
Postype = P1
Pos = 0,-53
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 0
Persistent = 0

[State 2000, HitDef]
Type = HitDef
Trigger1 = Time = 92
trigger2 = Time = 95
trigger3 = Time = 98
trigger4 = Time = 101
trigger5 = Time = 104
trigger6 = Time = 107
trigger7 = Time = 110
trigger8 = Time = 113
Attr = S,HP
AnimType = Up
Damage = 31,6
hitflag = MAF
guardflag = MA
Priority = 6,Hit
PauseTime = 3,6
Guard.PauseTime = 3,6
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := ceil(enemy,Pos Y-50)))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime  = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
GetPower = 0, 0

[State 2000, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,10
Channel = 1

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

[State 2000, ChangeState]
Type = ChangeState
Trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

[StateDef 2001]
Type = A
Physics = N
SprPriority = 5
Anim = 2002

[State 2001, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

[State 2001, AssertSpecial]
Type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 2001, AngleDraw]
Type = AngleDraw
Trigger1 = 1
Scale = 1,1

[State 2001, AngleSet]
type = Angleset
trigger1 = time = 0
trigger1 = NumHelper(2001) = 1
value = -25

[State 2001, AngleSet]
type = Angleset
trigger1 = time = 0
trigger1 = NumHelper(2001) = 2
value = 135

[State 2001, AngleSet]
type = Angleset
trigger1 = time = 0
trigger1 = NumHelper(2001) = 3
value = 58

[State 2001, AngleSet]
type = Angleset
trigger1 = time = 0
trigger1 = NumHelper(2001) = 4
value = 20

[State 2001, AngleSet]
type = Angleset
trigger1 = time = 0
trigger1 = NumHelper(2001) = 5
value = 96

[State 2001, Helper]
type = Helper
trigger1 = time = 0
trigger1 = NumHelper(2001) < 5
stateno = 2001
ID = 2001
name = "Icicle"
sprpriority = 4
pos = 0,0
postype = p1
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1

[State 2001, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 0
Value = S100,9

[State 2001, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 32
Value = S100,12

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

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

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

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

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

[State 2050, AfterImage]
type = AfterImage
trigger1 = time = 0
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, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(10 * const(size.xscale)), ceil(-50 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

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

[State 2050, Helper]
type = Helper
trigger1 = Time = 0
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 = Time = 0
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, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 0
Value = S410,7
Channel = 0

[State 2050, VelSet]
type = VelSet
trigger1 = time = 0
x = 0
y = 0

[State 2050, Helper]
type = Helper
trigger1 = Time = 63
StateNo = 2052
ID = 2050
Name = "Godmother of Icicles"
Postype = P1
Pos = -20,-25
Ownpal = 1
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 0
Persistent = 0

[State 2050, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 7
physics = A

[StateDef 2052]
Type = A
MoveType = A
Physics = N
anim = 99999

[State 2050, DestroySelf]
type = DestroySelf
trigger1=time
trigger1=numhelper(2051)+numhelper(2052)+numhelper(2053)+numhelper(2054)+numhelper(2055)=0

[State 2050, Helper]
type = Helper
trigger1 = time<5
StateNo = 2051
ID = 2051+time
Name = "Icicle"
Postype = P1
Pos = 0,0
Ownpal = 0
Scale = 1,1
SprPriority = 5
IgnoreHitPause = 0
Persistent = 1

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

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

[State 2051, Trans]
Type = Trans
Trigger1 = 1
Trans = Add

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

[State 2051, VarRandom]
type = VarRandom
trigger1 = time = 0
v = 1
range = -10,45
IgnoreHitPause = 1
Persistent = 0

[State 2051, VarRandom]
type = varrandom
trigger1 = time = 0
v = 2
range = -25,30
IgnoreHitPause = 1
Persistent = 0

[State 2051, PosAdd]
Type = PosAdd
Trigger1 = Time = 0
x = Var(1)
y = -Var(2)

[State 2051, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 2051, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
postype = p1
pos = ceil(ifelse(p2dist x<var(43),p2dist x,var(43))*const(size.xscale)),ceil(var(44)*const(size.yscale))
ownpal = 0
keyctrl = 0
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

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

[State 2051, HitDef]
Type = HitDef
triggerall = IsHelper(2051)
trigger1 = Time = 6
Attr = A,HP
AnimType = Up
Damage = ceil(48*root,fvar(1)),3
hitflag = MAF
guardflag = HA
Priority = 6,Hit
PauseTime = 3,4
Guard.PauseTime = 3,4
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
sprpriority = 5
GetPower = 0, 0

[State 2051, HitDef]
Type = HitDef
triggerall = IsHelper(2052)
trigger1 = Time = 9
Attr = A,HP
AnimType = Up
Damage = ceil(48*root,fvar(1)),3
hitflag = MAF
guardflag = HA
Priority = 6,Hit
PauseTime = 3,4
Guard.PauseTime = 3,4
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
sprpriority = 5
GetPower = 0, 0

[State 2051, HitDef]
Type = HitDef
triggerall = IsHelper(2053)
trigger1 = Time = 12
Attr = A,HP
AnimType = Up
Damage = ceil(48*root,fvar(1)),3
hitflag = MAF
guardflag = HA
Priority = 6,Hit
PauseTime = 3,4
Guard.PauseTime = 3,4
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
sprpriority = 5
GetPower = 0, 0

[State 2051, HitDef]
Type = HitDef
triggerall = IsHelper(2054)
trigger1 = Time = 15
Attr = A,HP
AnimType = Up
Damage = ceil(48*root,fvar(1)),3
hitflag = MAF
guardflag = HA
Priority = 6,Hit
PauseTime = 3,4
Guard.PauseTime = 3,4
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
sprpriority = 5
GetPower = 0, 0

[State 2051, HitDef]
Type = HitDef
triggerall = IsHelper(2055)
trigger1 = Time = 18
Attr = A,HP
AnimType = Up
Damage = ceil(48*root,fvar(1)),3
hitflag = MAF
guardflag = HA
Priority = 6,Hit
PauseTime = 3,4
Guard.PauseTime = 3,4
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
Ground.Type = High
Ground.SlideTime = 13
Ground.HitTime = 13
Ground.Velocity = 0,-10.8
Guard.Velocity = -6
Air.Velocity = -3,-5
Down.Velocity = -5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
YAccel = .48
Fall = 1
Air.Fall = 1
Fall.Recover = 0
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
envshake.time = 10
envshake.ampl = 4
sprpriority = 5
GetPower = 0, 0

[State 2051, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,10
Channel = 1

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

[State 2051, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 0
Value = S100,9

[State 2051, PlaySnd]
Type = PlaySnd
Trigger1 = Time = 32
Value = S100,12

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

[State 2100, PowerAdd]
type = PowerAdd
trigger1 = time = 0
value = -1000

[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, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 2100, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-45 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 2000, 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 = 7006
stateno = 7006
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 = 7007
stateno = 7007
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2100, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 70
ignorehitpause = 1

[State 2100, Explod]
type = Explod
trigger1 = Time = 12
anim = 2101
ID = 2101
pos = 10,-60
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,11+Random%2
Channel = 0

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,14

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,15

[State 2100, Helper]
type = Helper
trigger1 = Time = 61
stateno = 2101
ID = 2101
name = "Utakata"
sprpriority = 4
pos = 10,-60
postype = p1
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1

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

[StateDef 2101]
type = A
movetype = A
physics = N
anim = 2102
sprpriority = 4

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

[State 2101, VarSet]
type = VarSet
trigger1 = time = 0
v = 19
value = 0
ignorehitpause = 1

[State 2101, VarAdd]
type = VarAdd
trigger1 = Movecontact
v = 19
value = 1
ignorehitpause = 1

[State 2101, VelSet]
type = VelSet
trigger1 = AnimElemTime(7) >= 1
x = 5

[State 2101, Explod]
type = Explod
trigger1 = !numexplod
trigger1 = AnimElemTime(7) >= 0
ID = 2103
anim = 2103
postype = p1
pos = 0,0
bindtime = -1
removetime =-1
scale = 1,1
ownpal = 1
sprpriority = 4

[State 2101, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 2101, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
postype = p1
pos = ceil(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 2101, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 2101, HitDef]
type = HitDef
trigger1 = time%2
trigger1 = time >= 1
trigger1 = var(19) < 20
attr = A,HP
animtype = Hard
damage = ceil(18*(root,fvar(1)*root,fvar(2))),2
priority = 6,hit
guardflag = MA
hitflag = MAF
pausetime = 4,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
hitsound = S200,6
guardsound = S300,0
ground.type = High
ground.slidetime = 11
ground.hittime = 11
ground.velocity = -5.5
air.velocity = -3.5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 20
envshake.time = 10
envshake.ampl = 4
getpower = 0
yaccel = 0.35

[State 2101, MoveHitReset]
type = MoveHitReset
trigger1 = Movecontact
ignorehitpause = 1

[State 2101, RemoveExplod]
type = RemoveExplod
trigger1 = frontedgedist < -100
ID = 2103

[State 2101, DestroySelf]
type = DestroySelf
trigger1 = time >= 1
trigger1 = frontedgedist < -100

[StateDef 2110]
type = S
movetype = I
physics = S
velset = 0,0
anim = 2100
ctrl = 0
sprpriority = 2
facep2 = 1

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

[State 2110, 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 2110, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 2110, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-45 * const(size.yscale))
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

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

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

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

[State 2110, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 70
ignorehitpause = 1

[State 2110, Explod]
type = Explod
trigger1 = Time = 12
anim = 2101
ID = 2101
pos = 10,-60
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 2110, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,11+Random%2
Channel = 0

[State 2110, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,14

[State 2110, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,15

[State 2110, Helper]
type = Helper
trigger1 = Time = 61
stateno = 2111
ID = 2111
name = "Utakata_Awakened"
sprpriority = 4
pos = 10,-60
postype = p1
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1

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

[StateDef 2111]
type = A
movetype = A
physics = N
anim = 2102
sprpriority = 4

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

[State 2111, VelSet]
type = VelSet
trigger1 = AnimElemTime(7) >= 1
x = 5

[State 2111, Explod]
type = Explod
trigger1 = !numexplod
trigger1 = AnimElemTime(7) >= 0
ID = 2103
anim = 2103
postype = p1
pos = 0,0
bindtime = -1
removetime =-1
scale = 1,1
ownpal = 1
sprpriority = 4

[State 2111, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 2111, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
postype = p1
pos = ceil(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 2111, VarSet]
type = VarSet
trigger1 = 1
var(40) = -1

[State 2111, HitDef]
type = HitDef
trigger1 = time >= 1
attr = A,HP
animtype = Hard
damage = ceil(10*(root,fvar(1)*root,fvar(2))),2
priority = 3,Dodge
guardflag = MA
hitflag = MAF
pausetime = 0,14
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
hitsound = S200,6
guardsound = S300,0
ground.type = High
ground.slidetime = 11
ground.hittime = 11
ground.velocity = -5.5
air.velocity = -3.5,-2.5
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
fall = 1
fall.recover = 1
fall.recovertime = 20
envshake.time = 10
envshake.ampl = 4
getpower = 0
yaccel = 0.35

[State 2111, ChangeState]
type = ChangeState
trigger1 = MoveContact = 1
value = 2112
persistent = 1
IgnoreHitPause = 1

[State 2111, RemoveExplod]
type = RemoveExplod
trigger1 = frontedgedist < -100
ID = 2103

[State 2111, DestroySelf]
type = DestroySelf
trigger1 = time >= 1
trigger1 = frontedgedist < -100

[StateDef 2112]
Type = A
MoveType = A
Physics = N
SprPriority = 5
VelSet = 0,0
Ctrl = 0
Anim = 2110

[State 2112, RemoveExplod]
type = RemoveExplod
trigger1 = Time = 0
ID = 2103

[State 2112, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2112, PalFX]
type = PalFX
trigger1 = time >= 0
time = 1
add = 0,0,0
mul = 256,256,256
invertall = 0
color = 200

[State 2112, HitOverride]
type = HitOverRide
trigger1 = 1
Attr = SCA, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
time = -1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2112, NotHitBy]
type = NotHitBy
trigger1 = 1
Value = SAC, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = 1

[State 2112, MoveHitReset]
type = MoveHitReset
trigger1 = Time = 0
IgnoreHitPause = 1
Persistent = 0

[State 2112, PlaySnd]
type = PlaySnd
trigger1 = Time = [0,60]
value = S100,22
Channel = 4
IgnoreHitPause = 1
Persistent = 10

[State 2112, Helper]
type = Helper
trigger1 = Time = [10,60]
StateNo = 2113
ID = 2113
Ownpal = 1
SprPriority = 5
IgnoreHitPause = 1
Persistent = 10

[State 2112, HitDef]
type = HitDef
trigger1 = time%7 = 0
attr = S,HP
animtype = Hard
damage = ceil(13*(root,fvar(1)*root,fvar(2))),3
priority = 6,hit
guardflag = MA
hitflag = MAF
pausetime = 0,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := 0))
hitsound = S200,3
guardsound = S300,0
ground.type = High
ground.slidetime = 14
ground.hittime = 14
ground.velocity = -7
air.velocity = -2.4,-7.2
Ground.CornerPush.VelOff = 0
Air.CornerPush.VelOff = 0
Down.CornerPush.VelOff = 0
Guard.CornerPush.VelOff = 0
fall = 1
fall.recover = 1
fall.recovertime = 25
envshake.time = 10
envshake.ampl = 4
getpower = 0
yaccel = 0.48

[State 2112, VarSet]
type = VarSet
trigger1 = MoveContact = 1 && var(40)<0
var(40) = hitpausetime
ignorehitpause = 1

[State 2112, Helper]
type = Helper
trigger1 = Var(40) = hitpausetime
trigger1 = MoveContact = 1
helpertype = normal
name ="Hit_Spark"
stateno = ifelse(moveguarded,9000,8053)
ID = 8050
postype = p1
pos = ceil(ifelse(p2dist x<var(43),p2dist x,var(43))*const(size.xscale)),ceil(var(44)*const(size.yscale))
keyctrl = 0
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 4

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

[State 2112, DestroySelf]
Type = DestroySelf
Trigger1 = Time >= 70
Trigger1 = NumHelper(2113) = 0
Trigger2 = FrontEdgeDist <= -40
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[StateDef 2113]
Type = A
MoveType = A
Physics = N
SprPriority = 5
VelSet = 0,0
Ctrl = 0
Anim = 2110

[State 2113, AssertSpecial]
type = AssertSpecial
trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2113, VarRandom]
type = VarRandom
trigger1 = Time = 0
V = 0
Range = 0,1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2113, VarRandom]
type = VarRandom
trigger1 = Time = 0
V = 1
Range = 0,359
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2113, PalFX]
type = PalFX
trigger1 = time >= 0
time = 1
add = 0,0,0
mul = 256,256,256
invertall = 0
color = 200

[State 2113, Explod]
type = Explod
trigger1 = Time = 0
Anim = 2111
ID = 2111
PosType = p1
Pos = Floor((Random/25)*IfElse(Var(0) = 1,1,-1)),Floor((Random/25)*IfElse(Var(0) = 1,1,-1))
RemoveTime = -2
RemoveOnGetHit = 1
BindTime = -1
Ownpal = 1
SprPriority = 6
IgnoreHitPause = 0
Persistent = 0
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2113, HitOverRide]
type = HitOverRide
trigger1 = 1
Attr = SCA, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = -1
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 2113, NotHitBy]
type = NotHitBy
trigger1 = 1
Value = SAC, NT, ST, HT ,NA, SA, HA ,NP, SP, HP
Time = 1

[State 2113, PosAdd]
type = PosAdd
trigger1 = Time = 0
X = 10+Floor((Random/25)*IfElse(Var(0) = 1,1,-1))
Y = Floor((Random/25)*IfElse(Var(0) = 1,1,-1))

[State 2113, Trans]
type = Trans
trigger1 = 1
Trans = Add

[State 2113, AngleSet]
type = AngleSet
trigger1 = Time = 0
Value = Var(1)

[State 2113, DestroySelf]
type = DestroySelf
trigger1 = Time = 68
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

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

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

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

[State 2200, AfterImage]
type = AfterImage
trigger1 = Time = 0
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, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10000
ID = 10000
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-40 * 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 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7004
stateno = 7004
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2200, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7005
stateno = 7005
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 2200, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 241
ID = 241
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 2200, Explod]
type = Explod
trigger1 = AnimElem = 6
anim = 2204
ID = 2204
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 2200, Explod]
type = Explod
trigger1 = AnimElem = 11
anim = 2205
ID = 2205
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 2200, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(4) < 0
x = 7.5

[State 2200, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(4) >= 0 && AnimElemTime(5) < 0
x = 9.375

[State 2200, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(7) >= 0 && AnimElemTime(10) < 0
x = 4.5

[State 2200, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(11) >= 0 && AnimElemTime(12) < 0
x = 9.375

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
trigger2 = AnimElem = 8
trigger3 = AnimElem = 12
value = S100,10

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,33
Channel = 0

[State 2200, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S,HA
damage = 28,5
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -50))
hitsound = S200,6
guardsound = S300,0
animtype = hard
ground.type = low
air.type = high
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -3.5,-3
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 2200, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = S,HA
damage = 30,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,7
guardsound = S300,0
animtype = hard
ground.type = high
air.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -3.5,-3
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 2200, HitDef]
type = HitDef
trigger1 = AnimElem = 13
attr = S,HA
damage = 30,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,10
guard.pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -55))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
air.type = high
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -2,-4
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 2200, PowerAdd]
Type = PowerAdd
Trigger1 = Time = 0
value = IfElse(Var(45) > 0,0,-1000)

[State 2200, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 2201

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

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

[State 2201, PlaySnd]
type = PlaySnd
triggerall = Random < 500
trigger1 = AnimElem = 7
value = S400,0+random%5
channel = 0

[State 2201, HitDef]
type = HitDef
trigger1 = AnimElem = 8
attr = S,HA
damage = 43,7
guardflag = L
hitflag = MAFD
priority = 6,Hit
pausetime = 2,8
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -10))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
air.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -1,0
guard.velocity = -7
air.velocity = -1,-9
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = back

[State 2201, VelSet]
Type = VelSet
Trigger1 = AnimElem = 3
x = 6

[State 2201, VelSet]
Type = VelSet
Trigger1 = AnimElem = 8
x = 0

[State 2201, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 2202

[StateDef 2202]
Type = S
MoveType = A
Physics = N
Ctrl = 0
Anim = 2202
SprPriority = 2

[State 2202, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(4) <= 0
StateType = S

[State 2202, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(4) >= 1
Trigger1 = AnimElemTime(11) <= 0
StateType = A

[State 2202, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(11) >= 1
StateType = S

[State 2202, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 421
ID = 421
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 2202, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,10

[State 2202, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S40,0

[State 2202, Explod]
type = Explod
trigger1 = AnimElem = 11
anim = 8020
sprpriority = -3
postype = p1
pos = 23,0
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 2202, HitDef]
Type = HitDef
Trigger1 = P2Statetype != A
Trigger1 = AnimElem = 7
Attr = A, HA
Damage = 31,4
AnimType = Medium
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 2,8
Guard.PauseTime = 2,8
HitSound = S200,7
GuardSound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
Ground.Type = High
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -3
Guard.Velocity = -8
Air.Velocity = -2,14
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 0
GetPower = 0
envshake.time = 10
envshake.ampl = 4

[State 2202, HitDef]
Type = HitDef
Trigger1 = P2Statetype = A
Trigger1 = AnimElem = 7
Attr = A, HA
Damage = 31,4
AnimType = Medium
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 2,6
Guard.PauseTime = 2,6
HitSound = S200,7
GuardSound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
Ground.Type = High
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -3
Guard.Velocity = -8
Air.Velocity = -2,14
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 0
GetPower = 0
envshake.time = 10
envshake.ampl = 4
p2stateno = 2204

[State 2202, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(4) = 0
y = -3
persistent = 0

[State 2202, VelSet]
Type = VelSet
Trigger1 = AnimElemTime(4) >= 0
trigger1 = AnimElemTime(11) <= 0
x = 2.5
persistent = 1

[State 2202, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(4) >= 0
trigger1 = AnimElemTime(11) <= 0
y = 0.3

[State 2202, VelSet]
Type = VelSet
trigger1 = AnimElemTime(11) = 1
x = 0
y = 0

[State 2202, PosSet]
Type = PosSet
trigger1 = AnimElem = 11
y = 0

[State 2202, ChangeState]
Type = ChangeState
Trigger1 = AnimTime = 0
Value = 2203

[StateDef 2203]
Type = S
MoveType = A
Physics = N
Ctrl = 0
Anim = 2203
SprPriority = 2

[State 2203, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 3
StateType = A

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

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

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

[State 2203, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1102
ID = 1102
pos = 0,0
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1

[State 2203, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 7
trigger3 = AnimElem = 13
anim = 1103
ID = 1103
pos = -15,20
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 2203, Explod]
type = Explod
trigger1 = AnimElem = 6
anim = 1101
ID = 1101
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 2203, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 4

[State 2203, VelSet]
type = VelSet
trigger1 = AnimElem = 3
y = -5

[State 2203, VelSet]
type = VelSet
trigger1 = AnimElem = 9
x = 3

[State 2203, VelAdd]
type = VelAdd
trigger1 = Time > 16
y = 0.5

[State 2203, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = A,HA
damage = 60,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
ground.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3,-10
guard.velocity = -7
air.velocity = -3,-10
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 1
air.fall = 1
fall.recover = 0
fall.animtype = medium

[State 2203, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = A,HA
damage = 42,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
ground.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -4,-7
guard.velocity = -7
air.velocity = -4,-7
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 1
air.fall = 1
fall.recover = 0
fall.animtype = hard

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

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

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

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

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

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

[State 2204, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 2205

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

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

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

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

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

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

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

[State 2206, 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 2206, 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 2206, ChangeAnim]
type = ChangeAnim
triggerall = SelfAnimExist(5061)
trigger1 = Time = 0
value = 5061

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

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

[State 2206, 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 2206, VelSet]
type = VelSet
trigger1 = Time = 0
x = -2
y = -7

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

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

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

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

[StateDef 3000]
type = S
movetype = I
physics = S
anim = 3000
ctrl = 0
VelSet = 0,0
sprpriority = 2

[State 3000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 55

[State 3000, AfterImage]
type = AfterImage
trigger1 = Time = 0
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, SuperPause]
type = SuperPause
trigger1 = AnimElem = 1
anim = -1
time = 61
movetime = 61
p2defmul = 1
darken = 0
unhittable = 1

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10010
ID = 10010
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-45 * 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 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7008
stateno = 7008
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7009
stateno = 7009
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3000, PowerAdd]
type = PowerAdd
trigger1 = time = 0
value = -2000

[State 3000, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 2101
ID = 2101
pos = 10,-60
postype = p1
sprpriority = 5
bindtime = -1
ownpal = 1
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S410,13
Channel = 0

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,14

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 2
value = S100,15

[State 3000, Helper]
type = Helper
trigger1 = AnimElem = 29
stateno = 3004
ID = 3004
name = "Yume"
sprpriority = 4
pos = 10,-60
postype = p1
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1

[State 3000, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 3010

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

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

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

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

[State 3002, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 7
value = S410,14
channel = 0

[State 3002, ChangeState]
type = ChangeState
trigger1 = time > 65
Trigger1 = NumHelper(3006) = 0
value = 3003
ctrl = 0

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

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

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

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

[StateDef 3004]
type = A
movetype= A
physics = N
Anim = 2102
sprpriority = 4

[State 3004, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoShadow

[State 3004, VelSet]
type = VelSet
trigger1 = AnimElemTime(7) >= 1
x = 9

[State 3004, HitDef]
type = HitDef
trigger1 = 1
attr = A, HP
animtype = Hard
damage = 0, 0
priority = 7,hit
guardflag = M
hitflag = MAF
pausetime = 3,10
guard.pausetime = 2,10
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,8
guardsound = S300,0
ground.type = Low
ground.slidetime = 15
ground.hittime  = 15
ground.velocity = 0
air.velocity = 0,0
air.fall = 1
fall.recover = 0
p1stateno = 3005
p2stateno = 3007
p2facing = 1
getpower = 0
kill = 0
yaccel = 0.35
envshake.time = 10
envshake.ampl = 4

[State 3004, Explod]
type = Explod
trigger1 = !numexplod
trigger1 = AnimElemTime(7) >= 0
ID = 3004
anim = 2103
postype = p1
pos = 0,0
bindtime = -1
removetime =-1
scale = 1,1
ownpal = 1
sprpriority = 4

[State 3004, Helper]
type = Helper
trigger1 = MoveGuarded && NumEnemy
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 - 60)
ownpal = 1
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1
persistent = 0

[State 3004, ChangeState]
type = ChangeState
trigger1 = time >= 1
trigger1 = frontedgedist < -40
trigger2 = Movecontact
trigger3 = Root,MoveType = H
trigger4 = time > 400
value = 3009

[StateDef 3005]
Type = A
MoveType = A
Physics = N
SprPriority = -5
anim = 99999
facep2 = 1

[State 3005, RemoveExplod]
type = RemoveExplod
trigger1 = Time = 0
ID = 3004

[State 3005, AssertSpecial]
type = AssertSpecial
trigger1 = time = [8,210]
flag = GlobalNoShadow
flag2 = NoFG
flag3 = NoBG

[State 3005, Helper]
type = Helper
trigger1 = Time = 0
ID = 8053
stateno = 8053
name = "Hit_Spark"
postype = p1
Pos = Ceil(EnemyNear,Pos X - Pos X) * Facing,Ceil(EnemyNear,Pos Y - Pos Y - 60)
pausemovetime = 9999
supermovetime = 9999
ownpal = 1
persistent = 0
ignorehitpause = 1

[State 3005, Explod]
type = Explod
trigger1 = time = 0
anim = 3008
ID = 3008
sprpriority = -5
postype = Back
pos = 0,ceil((1.33*gameheight/gamewidth)*0)
under = 1
ownpal = 1
scale = 1,1
removetime = 200
bindtime = -1

[State 3005, Explod]
type = Explod
trigger1 = time = 0
anim = 3006
ID = 3006
sprpriority = -4
postype = Back
pos = 172,ceil((1.33*gameheight/gamewidth)*210)
ownpal = 1
scale = 1,1
removetime = -2
bindtime = -1

[State 3005, Explod]
type = Explod
trigger1 = time = 0
anim = 3007
ID = 3007
sprpriority = -4
postype = Back
pos = 172,ceil((1.33*gameheight/gamewidth)*210)
ownpal = 1
scale = 1,1
removetime = 220
bindtime = -1

[State 3005, Helper]
type = Helper
trigger1 = time = 40
stateno = 3006
ID = 3006
name = "Shards"
sprpriority = 5
pos = 0,0
postype = Back
helpertype = normal
keyctrl = 0
ownpal = 1
bindtime = -1

[State 3005, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = TimeMod = 4,0
trigger1 = Time = [75,196]
value = ceil(-12*Root,fvar(1))
kill = IfElse((Time) >= 194,1,0)
absolute = 0

[State 3005, HitAdd]
type = HitAdd
trigger1 = TimeMod = 4,0
trigger1 = Time = [75,196]
value = 1

[State 3005, TargetState]
type = TargetState
trigger1 = Time < 205
value = 3007

[State 3005, TargetState]
type = TargetState
trigger1 = Time = 205
value = 3008

[State 3005, DestroySelf]
type = DestroySelf
trigger1 = time > 210
trigger1 = NumHelper(3006) = 0

[StateDef 3006]
Type = A
MoveType = I
Physics = N
SprPriority = 5
pos = 0,0
anim = 99999

[State 3006, Explod]
type = Explod
trigger1 = time = 0
anim = 3004
ID = 3004
sprpriority = 8
postype = Back
ontop = 0
pos = IfElse(facing = 1,0,1),ceil((1.33*gameheight/gamewidth)*0)
ownpal = 1
scale = 1,1
bindtime = -1

[State 3006, Explod]
Type = Explod
Trigger1 = Time = [77,172]
Anim = 3005
ID = 3005
PosType = back
ontop = 1
Pos = 160,ceil((1.33*gameheight/gamewidth)*240)
Scale = 0.56-fvar(2),0.56-fvar(2)
RemoveTime = 1
RemoveOnGetHit = 1
BindTime = -1
Ownpal = 1
SprPriority = 9

[State 3006, AllPalFX]
Type = AllPalFx
Trigger1 = Time = [76,96]
Time = 1
Add = 255-(9*(Time-76)),255-(9*(Time-76)),255-(9*(Time-76))

[State 3006, VarSet]
Type = Varset
Trigger1 = Time = 0
fv = 2
value = 0

[State 3006, VarAdd]
Type = VarAdd
Trigger1 = Time = [86,175]
trigger1 = fvar(2) < 0.06
fv = 2
value = 0.002

[State 3006, VarSet]
Type = Varset
Trigger1 = Time = 0
v = 2
value = 0

[State 3006, VarAdd]
Type = VarAdd
Trigger1 = Time >= 160
trigger1 = var(2) < 250
v = 2
value = 25

[State 3006, AllPalFX]
type = AllPalFX
trigger1 = time = [160,170]
time = 10
add = var(2),var(2),var(2)

[State 3006, RemoveExplod]
Type = RemoveExplod
Trigger1 = Time = 180
ID = 3004

[State 3006, DestroySelf]
Type = DestroySelf
Trigger1 = time > 0
trigger1 = time = 185

[StateDef 3007]
type = A
movetype = H
physics = N
velset = 0,0
sprpriority = 0

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

[State 3007, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 0

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

[StateDef 3008]
type = A
movetype = H
physics = N
sprpriority = 0

[State 3008, VelSet]
type = VelSet
trigger1 = Time = 0
x = -2
y = -8

[State 3008, HitFallSet]
type = HitFallSet
trigger1 = 1
value = 1

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

[State 3008, ChangeAnim]
type = ChangeAnim
triggerAll = SelfAnimExist(5061)
trigger1 = Time = 1
value = 5061

[State 3008, ChangeAnim]
type = ChangeAnim
triggerAll =! SelfAnimExist(5061)
triggerAll = SelfAnimExist(5030)
trigger1 = Time = 1
value = 5030

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

[State 3008, 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 3008, VelAdd]
type = VelAdd
trigger1 = Time >= 2
y = .42

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

[StateDef 3009]
type = A
movetype = I
physics = N

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

[State 3009, RemoveExplod]
type = RemoveExplod
trigger1 = Time = 0
ID = 3004

[State 3009, DestroySelf]
type = DestroySelf
trigger1 = Time = 0

[StateDef 3010]
type = S
movetype = I
physics = S
poweradd= 0
velset = 0,0
anim = 3009
ctrl = 0
VelSet = 0,0
sprpriority = 2

[State 3010, ChangeState]
type = ChangeState
trigger1 = NumHelper(3004)
trigger1 = Helper(3004),StateNo = 3005
value = 3002

[State 3010, ChangeState]
type = ChangeState
trigger1 = time >= 100
trigger1 = NumHelper(3004) = 0
value = 3001

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

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

[State 3100, AfterImage]
type = AfterImage
trigger1 = Time = 0
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, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
stateno = 10010
ID = 10010
name = "Superpause FX"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-40 * 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 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7004
stateno = 7004
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3100, Helper]
type = Helper
trigger1 = Time = 0
helpertype = normal
name = "AfterImage"
ID = 7005
stateno = 7005
pos = 0,0
postype = p1
facing = 1
keyctrl = 0
ownpal = 1
supermovetime = 999999
pausemovetime = 999999

[State 3100, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 241
ID = 241
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 3100, Explod]
type = Explod
trigger1 = AnimElem = 6
anim = 2204
ID = 2204
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 3100, Explod]
type = Explod
trigger1 = AnimElem = 11
anim = 2205
ID = 2205
pos = 0,0
postype = p1
sprpriority = 3
bindtime = -1
ownpal = 1
removeongethit = 1

[State 3100, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(4) < 0
x = 7.5

[State 3100, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(4) >= 0 && AnimElemTime(5) < 0
x = 9.375

[State 3100, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(7) >= 0 && AnimElemTime(10) < 0
x = 4.5

[State 3100, PosAdd]
type = PosAdd
trigger1 = AnimElemTime(11) >= 0 && AnimElemTime(12) < 0
x = 9.375

[State 3100, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
trigger2 = AnimElem = 8
trigger3 = AnimElem = 12
value = S100,10

[State 3100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S410,34
Channel = 0

[State 3100, HitDef]
type = HitDef
trigger1 = AnimElem = 4
attr = S,HA
damage = 35,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -50))
hitsound = S200,6
guardsound = S300,0
animtype = hard
ground.type = low
air.type = high
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -3.5,-3
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 3100, HitDef]
type = HitDef
trigger1 = AnimElem = 9
attr = S,HA
damage = 35,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -70))
hitsound = S200,7
guardsound = S300,0
animtype = hard
ground.type = high
air.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -3.5,-3
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 3100, HitDef]
type = HitDef
trigger1 = AnimElem = 13
attr = S,HA
damage = 35,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 2,10
guard.pausetime = 2,5
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -55))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
air.type = high
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3
guard.velocity = -3
air.velocity = -2,-4
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = hard

[State 3100, PowerAdd]
Type = PowerAdd
Trigger1 = Time = 0
Value = -2000

[State 3100, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 3101

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

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

[State 3101, PlaySnd]
type = PlaySnd
triggerall = Random < 500
trigger1 = AnimElem = 7
value = S400,0+random%5
channel = 0

[State 3101, HitDef]
type = HitDef
trigger1 = AnimElem = 8
attr = S,HA
damage = 40,7
guardflag = L
hitflag = MAFD
priority = 6,Hit
pausetime = 2,8
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -10))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
air.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -1,0
guard.velocity = -7
air.velocity = -1,-9
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 0
air.fall = 1
fall.recover = 0
fall.animtype = back

[State 3101, VelSet]
Type = VelSet
Trigger1 = AnimElem = 3
x = 6

[State 3101, VelSet]
Type = VelSet
Trigger1 = AnimElem = 8
x = 0

[State 3101, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 3102

[StateDef 3102]
Type = S
MoveType = A
Physics = N
Ctrl = 0
Anim = 2202
SprPriority = 2

[State 3102, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(4) <= 0
StateType = S

[State 3102, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(4) >= 1
Trigger1 = AnimElemTime(11) <= 0
StateType = A

[State 3102, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElemTime(11) >= 1
StateType = S

[State 3102, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 421
ID = 421
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 3102, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 5
value = S100,10

[State 3102, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 11
value = S40,0

[State 3102, Explod]
type = Explod
trigger1 = AnimElem = 11
anim = 8020
sprpriority = -3
postype = p1
pos = 23,0
scale= 0.5,0.5
pausemovetime = -1
supermovetime = -1
ownpal = 1

[State 3102, HitDef]
Type = HitDef
Trigger1 = P2Statetype != A
Trigger1 = AnimElem = 7
Attr = A, HA
Damage = 36,4
AnimType = Medium
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 2,8
Guard.PauseTime = 2,8
HitSound = S200,7
GuardSound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
Ground.Type = High
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -3
Guard.Velocity = -8
Air.Velocity = -2,14
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 0
GetPower = 0
envshake.time = 10
envshake.ampl = 4

[State 3102, HitDef]
Type = HitDef
Trigger1 = P2Statetype = A
Trigger1 = AnimElem = 7
Attr = A, HA
Damage = 36,4
AnimType = Medium
HitFlag = MAF
GuardFlag = HA
Priority = 3, Hit
PauseTime = 2,6
Guard.PauseTime = 2,6
HitSound = S200,7
GuardSound = S300,0
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
Ground.Type = High
Ground.SlideTime = 16
Ground.HitTime  = 16
Ground.Velocity = -3
Guard.Velocity = -8
Air.Velocity = -2,14
AirGuard.Velocity = -3,-1.4
Down.Velocity = -2,-2.5
Ground.CornerPush.VelOff = -2
Air.CornerPush.VelOff = -2
Down.CornerPush.VelOff = -6
YAccel = .48
Fall = 0
Air.Fall = 1
Fall.Recover = 0
GetPower = 0
envshake.time = 10
envshake.ampl = 4
p2Stateno = 2204

[State 3102, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(4) = 0
y = -3
persistent = 0

[State 3102, VelSet]
Type = VelSet
Trigger1 = AnimElemTime(4) >= 0
trigger1 = AnimElemTime(11) <= 0
x = 2.5
persistent = 1

[State 3102, VelAdd]
Type = VelAdd
Trigger1 = AnimElemTime(4) >= 0
trigger1 = AnimElemTime(11) <= 0
y = 0.3

[State 3102, VelSet]
Type = VelSet
trigger1 = AnimElemTime(11) = 1
x = 0
y = 0

[State 3102, PosSet]
Type = PosSet
trigger1 = AnimElem = 11
y = 0

[State 3102, ChangeState]
Type = ChangeState
Trigger1 = AnimTime = 0
Value = 3103

[StateDef 3103]
Type = S
MoveType = A
Physics = N
Ctrl = 0
Anim = 2203
SprPriority = 2

[State 3103, StateTypeSet]
Type = StateTypeSet
Trigger1 = AnimElem = 3
StateType = A

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

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

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

[State 3103, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 1102
ID = 1102
pos = 0,0
postype = p1
sprpriority = 3
bindtime = 1
ownpal = 1

[State 3103, Explod]
type = Explod
trigger1 = AnimElem = 3
trigger2 = AnimElem = 7
trigger3 = AnimElem = 13
anim = 1103
ID = 1103
pos = -15,20
postype = p1
vel = -0.2,0.7
sprpriority = 3
bindtime = 1
ownpal = 1
scale = 1.3,1.3

[State 3103, Explod]
type = Explod
trigger1 = AnimElem = 6
anim = 1101
ID = 1101
pos = 0, 0
postype = P1
sprpriority = 3
ignorehitpause = 1
bindtime = -1
ownpal = 1

[State 3103, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 4

[State 3103, VelSet]
type = VelSet
trigger1 = AnimElem = 3
y = -3

[State 3103, VelSet]
type = VelSet
trigger1 = AnimElem = 9
x = 2

[State 3103, VelAdd]
type = VelAdd
trigger1 = Time > 16
y = 0.4

[State 3103, HitDef]
type = HitDef
trigger1 = AnimElem = 6
attr = A,HA
damage = 55,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,8
guardsound = S300,0
animtype = hard
ground.type = low
ground.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -3,-10
guard.velocity = -7
air.velocity = -3,-10
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .5
getpower = 0
envshake.time = 10
envshake.ampl = 4
fall = 1
air.fall = 1
fall.recover = 0
fall.animtype = medium

[State 3103, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = A,HA
damage = 45,7
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
hitsound = S200,8
guardsound = S300,0
animtype = up
ground.type = low
ground.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -1,-14
guard.velocity = -7
air.velocity = -1,-14
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .4
envshake.time = 10
envshake.ampl = 4
fall = 1
air.fall = 1
fall.recover = 0
fall.animtype = hard
getpower = 0

[State 3103, ChangeState]
type = ChangeState
trigger1 = Vel Y > 0 && Pos Y >= 0
value = 3104

[StateDef 3104]
Type = S
MoveType = A
Physics = N
Ctrl = 0
Anim = 47
velset = 0,0
SprPriority = 2

[State 3104, PosSet]
type = PosSet
trigger1 = Anim = 47
trigger1 = Time = 0
y = 0

[State 3104, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 47
Trigger1 = AnimElem = 1
Value = S40,0

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

[State 3104, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 47
trigger1 = AnimTime = 0
value = 3100

[State 3104, Explod]
Type = Explod
trigger1 = Anim = 3100
Trigger1 = AnimElem = 6
Anim = 3101
ID = 3101
Pos = 30,0
PosType = P1
Ownpal = 1
Keyctrl = 0
SprPriority = 5
removetime = -2
BindTime = 1
scale = 1.5,1.5

[State 3104, PlaySnd]
type = PlaySnd
trigger1 = Anim = 3100
trigger1 = AnimElem = 7
value = S100,10

[State 3104, PlaySnd]
type = PlaySnd
trigger1 = Anim = 3100
trigger1 = AnimElem = 7
value = S100,12

[State 3104, PlaySnd]
type = PlaySnd
trigger1 = Anim = 3100
trigger1 = AnimElem = 7
value = S100,13

[State 3104, PlaySnd]
type = PlaySnd
trigger1 = Anim = 3100
trigger1 = AnimElem = 6
value = S100,19

[State 3104, PlaySnd]
type = PlaySnd
trigger1 = Anim = 3100
trigger1 = AnimElem = 6
value = S410,25
Channel = 0

[State 3104, HitDef]
type = HitDef
trigger1 = Anim = 3100
trigger1 = AnimElem = 6
attr = A,HA
damage = 80,8
guardflag = M
hitflag = MAF
priority = 6,Hit
pausetime = 10,10
sparkno = -1+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -75))
hitsound = S200,8
guardsound = S300,0
animtype = up
ground.type = low
ground.type = low
ground.slidetime = 20
ground.hittime = 20
air.hittime = 100
ground.velocity = -2,-12
guard.velocity = -7
air.velocity = -2,-12
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
yaccel = .54
envshake.time = 10
envshake.ampl = 4
Palfx.Time = 30
Palfx.Mul = 255,255,255
Palfx.Add = 120,120,140
Palfx.SinAdd = 20,20,30,10
fall = 1
air.fall = 1
fall.recover = 0
fall.animtype = hard
getpower = 0

[State 3104, ChangeState]
type = ChangeState
trigger1 = Anim = 3100
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[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 = 60

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

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

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

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

[State 4000, SuperPause]
type = SuperPause
trigger1 = AnimElem = 2
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 = 2
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, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 4008
ID = 4008
pos = 25,-60
postype = p1
facing = 1
vfacing = 1
bindtime = 1
removetime = -2
scale = 1,1
sprpriority = 3

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = time = 31
value = S410,16
Channel = 0

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

[State 4000, HitDef]
type = HitDef
trigger1 = Time >= 0
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+(0*(var(41) := 8053))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -60))
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
envshake.time = 10
envshake.ampl = 4

[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, ChangeAnim]
Type = Changeanim
trigger1 = time = 90
trigger1 = Anim != 4002
Value = 4002

[State 4001, PosSet]
type = PosSet
trigger1 = Anim = 4002
trigger1 = AnimElemTime(1) = [20,50]
x = IfElse(facing = 1,-15,15)
y = 0

[State 4001, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 4002
Trigger1 = AnimElem = 1
Value = S410,17+Random%5
Channel = 0

[State 4001, TargetBind]
type = TargetBind
Trigger1 = Anim = 4002
Trigger1 = AnimElemTime(1) = 50
postype = p1
pos = 40,-20

[State 4001, AllPalFX]
Type = AllPalFx
Trigger1 = Anim = 4002
Trigger1 = Time = 286
Time = 10
Add = 250,250,250

[State 4001, AssertSpecial]
Type = AssertSpecial
Trigger1 = Anim = 4002
Trigger1 = AnimElemTime(50) = [0,8]
Flag = Noshadow

[State 4001, EnvShake]
type = EnvShake
Trigger1 = Anim = 4002
Trigger1 = AnimElemTime(50) = [0,8]
time = 5
ampl = 8

[State 4001, TargetState]
Type = TargetState
Trigger1 = Anim = 4002
Trigger1 = AnimElemTime(50) = 2
Value = 4004

[State 4001, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(50) = 2
Value = S410,22
Channel = 0

[State 4001, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,15

[State 4001, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,14

[State 4001, TargetLifeAdd]
type = TargetLifeAdd
Trigger1 = Anim = 4002
Trigger1 = AnimElem = 52
value = ceil(-513*fvar(1))
Absolute = 0
kill = 1

[State 4001, PosSet]
Type = PosSet
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(51) = 0
x = 0
y = ceil((1.33*gameheight/gamewidth)*0)

[State 4001, AfterImageTime]
type = AfterImageTime
trigger1 = Time = 0
time = 0

[State 4001, Explod]
Type = Explod
Trigger1 = Time = 0
Anim = 4003
ID = 4003
PosType = Left
Pos = 0,ceil((1.33*gameheight/gamewidth)*0)
RemoveTime = -2
RemoveOnGetHit = 1
BindTime = -1
Ownpal = 1
SprPriority = 10
IgnoreHitPause = 0
Persistent = 0

[State 4001, RemoveExplod]
Type = RemoveExplod
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(1) = 90
ID = 4003
Persistent = 0

[State 4001, PosSet]
Type = PosSet
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(1) = 50
y = pos y + 218 - screenpos y
IgnoreHitPause = 1
Persistent = 0

[State 4001, Helper]
Type = Helper
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(1) = 90
stateno = 4002
ID = 4002
PosType = left
Pos = 0,0
RemoveTime = 100
RemoveOnGetHit = 1
BindTime = 1
Ownpal = 1
SprPriority = 10
IgnoreHitPause = 0
Persistent = 0
ontop = 1

[State 4001, Explod]
Type = Explod
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(30) = 0
Anim = 4005
ID = 4005
PosType = Left
Pos = 0,ceil((1.33*gameheight/gamewidth)*0)
RemoveTime = -2
RemoveOnGetHit = 1
BindTime = -1
Ownpal = 1
SprPriority = 10
IgnoreHitPause = 0
Persistent = 0

[State 4001, Explod]
type = Explod
trigger1 = Anim = 4002
trigger1 = Time = 246
Anim = 4006
ID = 4006
sprpriority = 5
postype = P1
pos = 15,-60
postype = Left
ownpal = 1
removetime = 10
scale = 0,0
trans = AddAlpha
Alpha = 256,256

[State 4001, ModifyExplod]
type = ModifyExplod
trigger1 = Anim = 4002
trigger1 = Time = [246,256]
ID = 4006
scale = 0+((Time-246)*0.2),0+((Time-246)*0.2)
trans = AddAlpha
Alpha = 256,256

[State 4001, ModifyExplod]
type = ModifyExplod
trigger1 = Anim = 4002
trigger1 = Time = [246,256]
ID = 4006
trans = AddAlpha
Alpha = 256-((time-246)*25),256

[State 4001, Explod]
Type = Explod
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(30) = 0
Anim = 4007
ID = 4007
PosType = p1
Pos = -135,-210
RemoveTime = -2
RemoveOnGetHit = 1
BindTime = -1
Ownpal = 1
SprPriority = 12
IgnoreHitPause = 0
Persistent = 0

[State 4001, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(30) = 0
Value = S100,17

[State 4001, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(1) = 90
Value = S100,16

[State 4001, PlaySnd]
Type = PlaySnd
trigger1 = Anim = 4002
Trigger1 = AnimElemTime(50) = 0
Value = S100,18

[State 4001, EnvShake]
type = EnvShake
trigger1 = time = [288,315]
trigger1 = time%10 = 0
trigger1 = Anim = 4002
time = 10
ampl = 6
freq = 150

[State 4001, AssertSpecial]
type = AssertSpecial
Trigger1 = Anim != 4002
trigger1 = time >= 0
Trigger2 = Anim = 4002
Trigger2 = AnimElemTime(50) <= 0
flag = nobg
flag2 = nofg
flag3 = nobardisplay
time = 1

[State 4001, VarSet]
Type = Varset
Trigger1 = time = 0
v = 27
Value = 0

[State 4001, VarAdd]
Type = VarAdd
Trigger1 = time >= 50
v = 27
Value = 10

[State 4001, Trans]
Type = Trans
Trigger1 = Anim != 4002
Trigger1 = time >= 50
Trigger2 = Anim = 4002
Trigger2 = AnimElemTime(1) <= 80
Trans = AddAlpha
Alpha = 255-Var(27),64+Var(27)
IgnoreHitPause = 0
time = 1
persistent = 1

[State 4001, ChangeState]
Type = ChangeState
Trigger1 = Anim = 4002
trigger1 = AnimTime = 0
Value = 0
Ctrl = 1

[StateDef 4002]
Type = A
MoveType = A
Physics = N
SprPriority = 5
Ctrl = 0
Anim = 4004
ontop = 1

[State 4002, PosSet]
Type = PosSet
Trigger1 = Time = 0
Y = -Ceil(ScreenPos Y+Pos Y)
PosType = left
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

[State 4002, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow

[State 4002, DestroySelf]
Type = DestroySelf
Trigger1 = time = 107

[StateDef 4003]
Type = A
MoveType = H
Physics = N
VelSet = 0,0
SprPriority = 0

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

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

[State 4003, VarSet]
Type = Varset
Trigger1 = time = 0
V = 10
Value = 0

[State 4003, VarAdd]
Type = VarAdd
Trigger1 = time > 0
Trigger1 = var(10) <= 240
V = 10
Value = 10

[State 4003, Trans]
Type = Trans
Trigger1 = time > 0
Trans = AddAlpha
Alpha = 255-Var(10),64+Var(10)
time = 1

[State 4003, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow

[State 4003, AssertSpecial]
Type = AssertSpecial
Trigger1 = time >= 50
Flag = invisible
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999
persistent = 1

[State 4003, HitFallSet]
Type = HitFallSet
Trigger1 = 1
Value = 0
IgnoreHitPause = 1
Persistent = 0

[State 4003, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5030)
Trigger1 = Time = 0
Value = 5030

[StateDef 4004]
Type = A
MoveType = H
Physics = N
SprPriority = 0
VelSet = -1.2,-6.5

[State 4004, ScreenBound]
type = ScreenBound
trigger1 = time >= 0
value = 1
movecamera = 0,0

[State 4004, HitFallSet]
Type = HitFallSet
Trigger1 = 1
Value = 1
IgnoreHitPause = 1
Persistent = 0

[State 4004, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA
Time = 30

[State 4004, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5061)
Trigger1 = Time = 1
Value = 5061

[State 4004, ChangeAnim]
Type = ChangeAnim
TriggerAll =! SelfAnimExist(5061)
TriggerAll = SelfAnimExist(5030)
Trigger1 = Time = 1
Value = 5030

[State 4004, ChangeAnim]
Type = ChangeAnim
TriggerAll = SelfAnimExist(5035)
Trigger1 =! SelfAnimExist(5030)
Trigger1 = Time = 1
Trigger2 = Anim = 5030
Trigger2 = AnimTime = 0
Value = 5035

[State 4004, 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 4004, VelAdd]
Type = VelAdd
Trigger1 = Time >= 2
Y = .35

[State 4004, SelfState]
Type = SelfState
Trigger1 = ((Pos Y >= 0 && Vel Y > 0))
Value = 5100

[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(-54 * 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 7008]
physics = N
anim = 7004

[State 7008, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7008, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7008, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7008, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7008, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7008, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7009]
physics = N
anim = 7004

[State 7009, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7009, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7009, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7009, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7009, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7009, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7010]
physics = N
anim = 7005

[State 7010, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

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

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

[State 7010, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7010, BindToRoot]
type = BindToRoot
trigger1 = time = 0
time = 1
pos = 0,0

[State 7010, VelSet]
type = VelSet
trigger1 = 1
x = .4
y = ifelse((root,statetype != A),0,-.4)

[State 7010, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7010, DestroySelf]
type = DestroySelf
trigger1 = Time >= 61
trigger2 = root,movetype = H

[StateDef 7011]
physics = N
anim = 7005

[State 7011, SprPriority]
type = SprPriority
trigger1 = 1
value = 0

[State 7011, BindToRoot]
type = BindToroot
trigger1 = time = 0
time = 1
pos = 0,0

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

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

[State 7011, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0
movecamera = 0,0
ignorehitpause = 1

[State 7011, VelSet]
type = VelSet
trigger1 = 1
x = -.4
y = ifelse((root,statetype != A),0,.4)

[State 7011, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 120-2*(time),256

[State 7011, 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 8100, 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 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

;---------------------------------------------------------------------------
; 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%7
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%7
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,3+random%7
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<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, 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, RemoveExplod]
Type = RemoveExplod
Trigger1 = StateNo != [120,159]
ID = 125

[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(221)
trigger1 = Stateno != 220
ID = 221

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(241)
trigger1 = Stateno != 240
trigger1 = Stateno != 2200
trigger1 = Stateno != 3100
ID = 241

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(251)
trigger1 = Stateno != 250
ID = 251

[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(412)
trigger1 = Stateno != 410
ID = 412

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(421)
trigger1 = Stateno != 425
trigger1 = Stateno != 2202
trigger1 = Stateno != 3102
ID = 421

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(431)
trigger1 = Stateno != 430
ID = 431

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(601)
trigger1 = Stateno != 600
ID = 601

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(611)
trigger1 = Stateno != 610
ID = 611

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(621)
trigger1 = Stateno != 620
ID = 621

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(631)
trigger1 = Stateno != 630
ID = 631

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(651)
trigger1 = Stateno != 650
ID = 651

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(953)
trigger1 = Stateno != 950
ID = 953

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(1212)
trigger1 = Stateno != 1210
trigger1 = Stateno != 1220
trigger1 = Stateno != 1230
ID = 1212

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(2204)
trigger1 = Stateno != 2200
trigger1 = Stateno != 3100
ID = 2204

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(2205)
trigger1 = Stateno != 2200
trigger1 = Stateno != 3100
ID = 2205

[State -2, AssertSpecial]
type = AssertSpecial
flag = NoKOSlow
trigger1 = StateNo = [2000,4999]
trigger2 = NumHelper(2051) || NumHelper(2101) || NumHelper(2111) || NumHelper(2112) || NumHelper(2113)
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(2051) || NumHelper(2101) || NumHelper(2111) || NumHelper(2112) || NumHelper(2113)
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, 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)) >= 75
trigger1 = numenemy
value = 1
ignorehitpause = 1

[State -2, DefenceMulSet]
type = DefenceMulSet
triggerall = ceil(100*life/const(data.life)) = [50,74]
trigger1 = numenemy
value = 0.9
ignorehitpause = 1

[State -2, DefenceMulSet]
type = DefenceMulSet
triggerall = ceil(100*life/const(data.life)) <= 49
trigger1 = numenemy
value = 0.8
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%5 = 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, AfterImageTime]
type = afterimagetime
trigger1 = stateno != 50
trigger1 = stateno != [700,760]
trigger1 = stateno != [2000,4999]
time = 0

[State -2, DisplayToClipboard]
type = DisplayToClipboard
trigger1 = 1
text = "MAX mode duration = %d"
params = var(45)

[State -2, LifeAdd]
Type = LifeAdd
TriggerAll = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
Trigger1 = Enemy,Var(30) = 1
Value = -5
Kill = 0

[State -2]
Type = PowerAdd
TriggerAll = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
Trigger1 = Enemy,Var(30) = 1
Value = -26

[State -2, VictoryQuote]
type = VictoryQuote
trigger1 = Enemy,Name != "Kohaku_K" && Enemy,AuthorName != "Kohaku"
trigger2 = Enemy,Name != "Kohaku"
trigger3 = Enemy,Name != "Len"
trigger4 = Enemy,Name != "RajaaLen" && Enemy,AuthorName != "RajaaBoy"
trigger5 = Enemy,Name != "Akiha_Vermillion"
trigger6 = Enemy,Name != "Tohno_Shiki"
trigger7 = Enemy,Name != "Nanaya_Shiki"
trigger8 = Enemy,Name != "Sion_Eltnam_Atlasia"
trigger9 = Enemy,Name != "RajaaSion" && Enemy,AuthorName != "RajaaBoy"
trigger10 = Enemy,Name != "Nanaya_K" && Enemy,AuthorName != "Kohaku"
value = 1+random%10

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Len"
trigger2 = Enemy,Name = "RajaaLen" && Enemy,AuthorName = "RajaaBoy"
value = 11

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Kohaku_K" && Enemy,AuthorName = "Kohaku"
trigger2 = Enemy,Name = "Kohaku"
value = 12

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "VAkiha_K" && Enemy,AuthorName = "Kohaku"
trigger2 = Enemy,Name = "Akiha_Vermillion"
value = 13

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Tohno_Shiki"
value = 14

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Nanaya_K" && Enemy,AuthorName = "Kohaku"
trigger2 = Enemy,Name = "Nanaya_Shiki"
value = 15

[State -2, VictoryQuote]
type = VictoryQuote
triggerall = NumEnemy
trigger1 = Enemy,Name = "Sion_Eltnam_Atlasia"
trigger2 = Enemy,Name = "RajaaSion" && Enemy,AuthorName = "RajaaBoy"
value = 16

;---------------------------------------------------------------------------
; States that are executed when in self's state file (use statedef -3)
;---------------------------------------------------------------------------

[Statedef -3]

;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

[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, PalFX]
type = PalFX
trigger1 = !(gametime%2) && var(25)
time = 1
color = 0
mul = 256, 224, 0
add = 128, 128, 128
ignorehitpause = 1

[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, 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
