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

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


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

[Velocity]
walk.fwd  = 2		;Walk forward
walk.back = -2		;Walk backward
run.fwd  = 9, 0		;Run forward (x, y)
run.back = -4.5,-3	;Hop backward (x, y)
jump.neu = 0,-9.5		;Neutral jumping velocity (x, y)
jump.back = -3		;Jump back Speed (x, y)
jump.fwd = 3		;Jump forward Speed (x, y)
runjump.back = -2.55 ;Running jump speeds (opt)
runjump.fwd = 5,-9	;.
airjump.neu = 0,-8	;.
airjump.back = -3	;Air jump speeds (opt)
airjump.fwd = 3		;.

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

[Quotes]
Victory1 = "I do not grasp what is happening, but as long as I continue to win, things should become more clear."
Victory2 = "Good game. You have impressive skills, but... you need to clear your mind"
Victory3 = "If that's all you can do, you haven't got the chance to beat me. Next time bring your A-game!"
Victory4 = "These fights have been really tough... This world must have its own unique battle system."
Victory5 = "Power based on despair is weak, brittle. It can't beat me or anyone else."
Victory6 = "Don't you want to 'accelerate' beyond here?"
Victory7 = "With an attitude like that, you'd never make it to Brain Burst. You need to figure out why you lost."
Victory8 = "You should still be able to go on! Stand up! Go beyond your limits!"

;---------------------------------------------------------------------------
; 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, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 170, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S170,0+Random%2
Channel = 0

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

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

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

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

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

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

[State 181, Explod]
type = Explod
trigger1 = AnimElem = 6
anim = 181
ID = 181
pos = 0,0
scale = 0.335,0.335
postype = p1
sprpriority = -7
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

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

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

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

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

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

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

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

[State 182, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 186
ID = 186
pos = -5,-18
scale = 0.15,0.15
postype = p1
sprpriority = 0
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 182, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 185
ID = 185
pos = 30,0
scale = 0.335,0.335
postype = p1
sprpriority = 1
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 182, Explod]
type = Explod
trigger1 = AnimElem = 1
anim = 186
ID = 186
pos = 32,5
scale = 0.335,0.335
postype = p1
sprpriority = 2
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 182, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 183
ID = 183
pos = 0,0
scale = 0.335,0.335
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

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

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

[State 190, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 190
trigger1 = Time >= 180
value = 191

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

[State 191, Helper]
type = Helper
trigger1 = Anim = 191
trigger1 = AnimElem = 2
helpertype = Normal
name = "Pig"
pos = 0,-90
stateno = 191
ID = 191
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

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

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

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

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

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

[State 191, VelSet]
type = Velset
trigger1 = Time = 0
x = -2
y = -2

[State 191, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) >= 0
y = 0.6

[State 191, ChangeState]
type = ChangeState
trigger1 = vel Y > 0
trigger1 = pos Y >= 0
value = 192

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

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

[State 192, VelSet]
type = Velset
trigger1 = AnimElem = 2
x = -10
y = -2

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

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

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

[State 193, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 190
trigger1 = Time >= 220
value = 191

[State 193, PlaySnd]
type = PlaySnd
trigger1 = Anim = 190
trigger1 = Time = 140
value = S191,0
Channel = 0

[State 193, Helper]
type = Helper
trigger1 = Anim = 191
trigger1 = AnimElem = 2
helpertype = Normal
name = "Pig"
pos = 0,-90
stateno = 191
ID = 191
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

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

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

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

[State 194, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 190
trigger1 = Time >= 400
value = 191

[State 194, PlaySnd]
type = PlaySnd
trigger1 = Anim = 190
trigger1 = Time = 220
value = S191,1
Channel = 0

[State 194, Helper]
type = Helper
trigger1 = Anim = 191
trigger1 = AnimElem = 2
helpertype = Normal
name = "Pig"
pos = 0,-90
stateno = 191
ID = 191
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

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

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

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

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

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

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

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

[State 200, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 201
ID = 201
pos = 0,-20
scale = 0.5,0.5
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 200, HitDef]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
animtype  = light
damage = IfElse(Var(10),18,15)
pausetime = 6,8
hitflag = MAF
guardflag = MA
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -70))
hitsound = S200,0
guardsound = S300,0
ground.type = High
air.type = High
air.animtype = back
fall.animtype = back
ground.slidetime = 12
ground.hittime  = 12
guard.hittime = 11
air.hittime = 12
ground.velocity = -5,0
air.velocity = -5,-1
getpower = 20
givepower = 15

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

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

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

[State 210, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 211
ID = 211
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 210, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
animtype  = Medium
damage = IfElse(Var(10),18,15)
pausetime = 6,9
hitflag = MAF
guardflag = MA
hitSound = S200,3
guardSound = S300,0
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
ground.type = High
air.type = High
air.animtype = back
fall.animtype = back
ground.slidetime = 15
ground.hittime  = 15
guard.hittime = 13
air.hittime = 15
ground.velocity = -4,0
air.velocity = -4,-2
getPower = 30,20
givePower = 18,9
envshake.time = 9
envshake.ampl = 2

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

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

[State 211, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 211, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5

[State 211, VelSet]
type = VelSet
trigger1 = 1 
x = 0.1
y = -0.1

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

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

[State 211, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 211, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = (var(59):=256-50*(time-25)),256-var(59)

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 220
value = 221

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 420
value = 421

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1000
value = 1001

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1010
value = 1011

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1020
value = 1021

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1100
value = 1101

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1200
value = 1201

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1210
value = 1211

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1220
value = 1221

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 211, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H

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

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

[State 220, Helper]
type = Helper
triggerall = NumHelper(211) = 0 
triggerall = NumHelper(411) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 60,-5
postype = p1
stateno = 221
ID = 221
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 220, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
animtype  = Medium
damage = IfElse(Var(10),29,24)
pausetime = 8,11
hitflag = MAF
guardflag = MA
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 150 && var(44) := -75))
hitsound = S200,4
guardsound = S300,0
ground.type = High
air.type = High
air.animtype = back
fall.animtype = back
ground.slidetime = 15
ground.hittime  = 15
guard.hittime = 15
air.hittime = 15
ground.velocity = -5
air.velocity = -3,-4
envshake.time = 9
envshake.ampl = 3
getpower = 50
givepower = 15

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

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

[State 221, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 221, VelSet]
type = VelSet
trigger1 = AnimElem = 3 
x = 1
y = -5

[State 221, VelSet]
type = VelSet
trigger1 = AnimElem = 6 
x = 0

[State 211, VelAdd]
type = VelSet
trigger1 = AnimElemTime(4) >= 0
y = 0.1

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

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

[State 221, AngleDraw]
type = AngleDraw
trigger1 = Time > 38
scale = 1-(time-38)*0.1,1+(Time-38)*0.1

[State 221, Trans]
type = Trans
trigger1 = Time >= 38
trans = addalpha
alpha = (var(59):=256-50*(time-38)),256-var(59)

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 420
value = 421

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1000
value = 1001

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1010
value = 1011

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1020
value = 1021

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1100
value = 1101

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1200
value = 1201

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1210
value = 1211

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1220
value = 1221

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 221, DestroySelf]
type = DestroySelf
trigger1 = time >= 43
trigger2 = Root,MoveType = H

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

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

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

[State 400, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 201
ID = 400
pos = 10,0
scale = 0.4,0.4
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 400, HitDef]
type = HitDef
trigger1 = AnimElem = 2
attr = C, NA
animtype  = light
damage = IfElse(Var(10),16,13)
pausetime = 6,7
hitflag = MAF
guardflag = L
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -25))
hitsound = S200,0
guardsound = S300,0
ground.type = low
air.type = low
air.animtype = back
fall.animtype = back
ground.slidetime = 12
ground.hittime  = 12
guard.hittime = 11
air.hittime = 12
ground.velocity = -4,0
air.velocity = -4,-3
getpower = 20
givepower = 15

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

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

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

[State 410, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 411
ID = 411
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 410, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = C, NA
animtype  = Medium
damage = IfElse(Var(10),25,21)
pausetime = 8,10
hitflag = MAF
guardflag = L
hitsound = S200,4
guardsound = S300,0
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -55))
ground.type = low
air.type = low
air.animtype = back
fall.animtype = back
ground.slidetime = 14
ground.hittime  = 14
guard.hittime = 12
air.hittime = 14
ground.velocity = -4.2,0
air.velocity = -2.5,-4
getpower = 35
givepower = 15
envshake.time = 9
envshake.ampl = 2

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

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

[State 411, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 411, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,0

[State 411, VelSet]
type = VelSet
trigger1 = 1 
x = 0.1

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

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

[State 411, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 411, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 220
value = 221

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 420
value = 421

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1000
value = 1001

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1010
value = 1011

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1020
value = 1021

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1100
value = 1101

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1200
value = 1201

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1210
value = 1211

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1220
value = 1221

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 411, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H
trigger3 = Root,StateType = A

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

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

[State 420, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 421
ID = 421
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 420, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = C, NA
animtype  = Medium
damage = IfElse(Var(10),37,31)
pausetime = 8,10
hitflag = MAF
guardflag = L
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -45))
hitsound = S200,5
guardsound = S300,0
ground.type = low
air.type = low
air.animtype = back
fall.animtype = back
ground.slidetime = 17
ground.hittime  = 17
guard.hittime = 15
air.hittime = 17
ground.velocity = -2,-7
air.velocity = -2,-7
fall = 1
fall.recover = 1
getpower = 45
givepower = 15
envshake.time = 9
envshake.ampl = 2
fall.recovertime = 30

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

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

[State 421, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 421, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 70,-15

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

[State 421, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 422
ID = 422
pos = 0,0
scale = 0.5,0.5
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 421, AngleDraw]
type = AngleDraw
trigger1 = Time > 35
scale = 1-(time-35)*0.1,1+(Time-35)*0.1

[State 421, Trans]
type = Trans
trigger1 = Time >= 35
trans = addalpha
alpha = var(59):=256-50*(time-35),256-var(59)

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1000
value = 1001

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1010
value = 1011

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1020
value = 1021

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1100
value = 1101

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1200
value = 1201

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1210
value = 1211

[State 411, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1220
value = 1221

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 421, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 421, DestroySelf]
type = DestroySelf
trigger1 = time >= 40
trigger2 = Root,MoveType = H
trigger3 = Root,StateType = A

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

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

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

[State 600, Explod]
type = Explod
trigger1 = AnimElem = 2
anim = 201
ID = 600
pos = 15,-10
scale = 0.5,0.5
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 600, HitDef]
type = HitDef
trigger1 = AnimElem = 2
attr = A, NA
animtype  = light
damage = IfElse(Var(10),18,15)
pausetime = 8,10
hitflag = MAF
guardflag = HA
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -75))
hitsound = S200,3
guardsound = S300,0
ground.type = low
air.type = low
air.animtype = back
fall.animtype = back
ground.slidetime =13
ground.hittime  = 13
guard.hittime = 12
air.hittime = 13
ground.velocity = -3,0
air.velocity = -2.5,-3
getpower = 24
givepower = 15

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

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

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

[State 610, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 611
ID = 611
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 610, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = A, NA
animtype  = Medium
damage = IfElse(Var(10),30,25)
pausetime = 12,14
hitflag = MAF
guardflag = HA
sparkno = -1+(0*(var(41) := 8051))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -40))
hitsound = S200,4
guardsound = S300,0
ground.type = low
air.type = low
air.animtype = back
fall.animtype = back
ground.slidetime =16
ground.hittime  = 16
guard.hittime = 14
air.hittime = 16
ground.velocity = -3,0
air.velocity = -2.5,-3
getpower = 35
givepower = 15
envshake.time = 9
envshake.ampl = 2

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

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

[State 611, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 611, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = 60,-10

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

[State 611, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 612
ID = 612
pos = 0,-120
scale = 0.4,0.4
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 611, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 611, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 620
value = 621

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1030
value = 1032

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1230
value = 1201

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1240
value = 1211

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1250
value = 1221

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 611, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 611, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A
trigger4 = NumHelper(611) = 2

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

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

[State 620, Helper]
type = Helper
triggerall = NumHelper(611) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 621
ID = 621
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 620, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = A, NA
animtype  = Hard
damage = IfElse(Var(10),44,37)
pausetime = 10,15
hitflag = MAF
guardflag = HA
hitsound = S200,5
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := ceil(enemy,Pos Y-10)))
guardSound = S300,0
ground.type = high
air.type = high
air.animtype = back
fall.animtype = back
ground.slidetime =23
ground.hittime  = 23
guard.hittime = 21
air.hittime = 23
ground.velocity = -4,0
air.velocity = -4,-2
getpower = 50
givepower = 36
envshake.time = 9
envshake.ampl = 3

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

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

[State 621, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 621, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = 60,-10

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

[State 621, Explod]
type = Explod
trigger1 = AnimElem = 4
anim = 622
ID = 622
pos = -50,50
scale = 0.7,1.5
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 621, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 621, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1030
value = 1032

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1230
value = 1201

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1240
value = 1211

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 1250
value = 1221

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 621, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 621, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A

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

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

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

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

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

[State 810, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = MoveHit = 1
v = 45
value = 3

[State 810, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = MoveGuarded = 1
v = 45
value = 1

[State 810, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = MoveContact = 1
v = 45
value = -5

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

[State 810, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S810,0+Random%3
channel = 0

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

[State 810, VelSet]
type = VelSet
trigger1 = AnimElem = 6
x = 0

[State 810, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 812
ID = 812
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 810, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = 10
attr = S,NT
guardflag = MA
hitflag = MAF
pausetime = 1,30
priority = 4,Hit
sparkno = -1+(0*(var(41) := 8050))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 80 && var(44) := -65))
hitsound = S200,2
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -5,0
getpower = 10
p2stateno = 820
kill = 0

[State 810, ChangeState]
type = ChangeState
trigger1 = Time >= 96
value = 811

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

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

[StateDef 812]
type = S
movetype = A
physics = N
sprpriority = 3
anim = 812
velset = 0,0

[State 812, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 812, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(812)
trigger1 = NumHelper(812)
trigger1 = Helper(812),MoveHit = 1
var(45) = 3-8*(!!Root,Var(46))

[State 812, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(812)
trigger1 = NumHelper(812)
trigger1 = Helper(812),MoveGuarded = 1
var(45) = 2-7*(!!Root,Var(46))

[State 812, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 40,-5

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

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

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

[State 812, Explod]
type = Explod
trigger1 = AnimElem = 3
anim = 813
ID = 813
pos = -30,0
scale = 0.9,0.5
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 812, Explod]
type = Explod
trigger1 = AnimElem = 5
anim = 622
ID = 814
pos = -10,20
scale = 0.7,1.2
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 812, Explod]
type = Explod
trigger1 = AnimElem = 8
anim = 422
ID = 815
pos = 0,0
scale = 0.8,0.8
postype = p1
sprpriority = 4
bindtime = -1
ownpal = 1
removeongethit = 1
ignorehitpause = 1

[State 812, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = 25
attr = S,NT
guardflag = MA
hitflag = MAF
pausetime = 1,30
priority = 4,Hit
ground.type = low
animtype = light
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,3
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1,0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
fall.recover = 0
getpower = 10
p1sprpriority = 3
kill = 0

[State 812, HitDef]
type = HitDef
trigger1 = AnimElem = 5
damage = 25
attr = S,NT
guardflag = MA
hitflag = MAF
pausetime = 1,30
priority = 4,Hit
ground.type = high
animtype = medium
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,4
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -1,0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
fall.recover = 0
getpower = 10
p1sprpriority = 3
kill = 0

[State 812, HitDef]
type = HitDef
trigger1 = AnimElem = 8
damage = 25
attr = S,NT
guardflag = MA
hitflag = MAF
animtype = heavy
pausetime = 5,9
priority = 4,Hit
ground.type = high
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,4
guardsound = S300,0
ground.slidetime = 13
ground.hittime = 13
ground.velocity = -8,-4
air.velocity = -8,-4
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
fall = 1
fall.recover = 0
getpower = 10
p1sprpriority = 3
p2facing = 1
p2stateno = 1035

[State 812, AngleDraw]
type = AngleDraw
trigger1 = Time > 47
scale = 1-(time-47)*0.1,1+(Time-47)*0.1

[State 812, Trans]
type = Trans
trigger1 = Time >= 47
trans = addalpha
alpha = var(59):=256-50*(time-47),256-var(59)

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

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

[State 812, ChangeState]
type = ChangeState
trigger1 = Time < 47
trigger1 = Root,StateNo = 2000
value = 2001

[State 812, ChangeState]
type = ChangeState
trigger1 = Time < 47
trigger1 = Root,StateNo = 2100
value = 2101

[State 812, ChangeState]
type = ChangeState
trigger1 = Time < 47
trigger1 = Root,StateNo = 2200
value = 2201

[State 812, ChangeState]
type = ChangeState
trigger1 = Time < 47
trigger1 = Root,StateNo = 3000
value = 3002

[State 812, ChangeState]
type = ChangeState
trigger1 = Time < 47
trigger1 = Root,StateNo = 4100
value = 4103

[State 812, DestroySelf]
type = DestroySelf
trigger1 = time >= 52
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != [810,811]

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

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

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

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

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

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

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

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

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

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

[State 950, Helper]
type = Helper
trigger1 = AnimElem = 2
helpertype = Normal
name = "Black Lotus"
pos = -125,-10
postype = p1
stateno = 951
ID = 951
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
supermovetime = 99999
pausemovetime = 99999

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

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

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

[State 951, VelSet]
type = VelSet
trigger1 = Time >= 0
x = 25

[State 951, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,15

[State 951, HitDef]
type = HitDef
trigger1 = !MoveContact
damage = 100
attr = A,ST
animtype = medium
guardflag = 
hitflag = MAF
pausetime = 0,15
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -10,-7
air.velocity = -10,-7
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
p1sprpriority = 5

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

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

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

[State 951, DestroySelf]
type = DestroySelf
trigger1 = FrontEdgeBodyDist <= -60

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

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

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

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

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

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

[StateDef 1000]
type = S
movetype = A
physics = N
ctrl = 0
poweradd = 110
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 1000

[State 1000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 1005

[State 1000, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1000,0+Random%3
channel = 0

[State 1000, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 60,-5
postype = p1
stateno = 1001
ID = 1001
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1000, HitDef]
type = HitDef
trigger1 = Var(49) <= 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),72,60),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

[State 1000, HitDef]
type = HitDef
triggerall = !NumTarget(2000)
trigger1 = Var(49) > 0 
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3
p2Stateno = 2004
p2facing = 1
ID = 2000

[State 1000, HitDef]
type = HitDef
triggerall = NumTarget(2000)
trigger1 = Var(49) > 0 
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

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

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

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

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

[State 1001, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1002, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5
ignorehitpause = 1

[State 1001, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = -5

[State 1001, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0 
trigger1 = AnimElemTime(5) <= 25
x = -0.1

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

[State 1001, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1002
ID = 1002
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1001, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1003
ID = 1003
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1001, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 1001, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 1001, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1001, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1001, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1001, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1001, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1001, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H

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

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

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

[State 1002, BindToParent]
type = BindToParent
trigger1 = Time = 0
pos = -10,-85
ignorehitpause = 1

[State 1002, BindToParent]
type = BindToParent
trigger1 = Time > 0
pos = 30,-85
ignorehitpause = 1

[State 1002, AngleDraw]
type = AngleDraw
trigger1 = Time = 0
scale = 0.5,3

[State 1002, AngleDraw]
type = AngleDraw
trigger1 = Time > 0
trigger1 = Time <= 4
scale = 1.5,3

[State 1002, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 1.5+((Time-4)*0.1875),3-((Time-4)*0.375)

[State 1002, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1000

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

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

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

[State 1003, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-75
ignorehitpause = 1

[State 1003, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
scale = 1.25,0.75

[State 1003, AngleDraw]
type = AngleDraw
trigger1 = Time > 3
scale = 1.25,0.75-((time-3)*0.093)

[State 1003, AngleSet]
type = AngleSet
trigger1 = 1
value = 90

[State 1003, DestroySelf]
type = DestroySelf
trigger1 = Time >= 11
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1000

[StateDef 1010]
type = S
movetype = A
physics = N
ctrl = 0
poweradd = 110
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1010, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 1010

[State 1010, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 1015

[State 1010, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1000,0+Random%3
channel = 0

[State 1010, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 60,-5
postype = p1
stateno = 1011
ID = 1011
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1010, HitDef]
type = HitDef
trigger1 = Var(49) <= 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),72,60),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

[State 1010, HitDef]
type = HitDef
triggerall = !NumHelper(2000)
trigger1 = Var(49) > 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3
p2Stateno = 2004
p2facing = 1
ID = 2000

[State 1010, HitDef]
type = HitDef
triggerall = NumHelper(2000)
trigger1 = Var(49) > 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

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

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

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

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

[State 1011, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1011, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5
ignorehitpause = 1

[State 1011, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = -5

[State 1011, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0 
trigger1 = AnimElemTime(5) <= 25
x = -0.1

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

[State 1011, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1012
ID = 1012
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1011, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1013
ID = 1013
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1011, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 1011, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 1011, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1011, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1011, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1011, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1011, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1011, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H

[StateDef 1012]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1002
velset = 0,0
sprpriority = 6

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

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

[State 1012, BindToParent]
type = BindToParent
trigger1 = Time = 0
pos = -10,-85
ignorehitpause = 1

[State 1012, BindToParent]
type = BindToParent
trigger1 = Time > 0
pos = 30,-85
ignorehitpause = 1

[State 1012, AngleDraw]
type = AngleDraw
trigger1 = Time = 0
scale = 0.5,3

[State 1012, AngleDraw]
type = AngleDraw
trigger1 = Time > 0
trigger1 = Time <= 4
scale = 2.5,3

[State 1012, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 2.5+((Time-4)*0.3125),3-((Time-4)*0.375)

[State 1012, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1010

[StateDef 1013]
type = A
movetype = I
physics = N
anim = 1003
ctrl = 0
velset = 0,0
sprpriority = 6

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

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

[State 1013, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-75
ignorehitpause = 1

[State 1013, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
scale = 1.25,0.75

[State 1013, AngleDraw]
type = AngleDraw
trigger1 = Time > 3
scale = 1.25,0.75-((time-3)*0.093)

[State 1013, AngleSet]
type = AngleSet
trigger1 = 1
value = 90

[State 1013, DestroySelf]
type = DestroySelf
trigger1 = Time >= 11
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1010

[StateDef 1020]
type = S
movetype = A
physics = N
ctrl = 0
poweradd = 110
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1020, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 1020

[State 1020, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 1025

[State 1020, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1000,0+Random%3
channel = 0

[State 1020, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 60,-5
postype = p1
stateno = 1021
ID = 1021
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1020, HitDef]
type = HitDef
trigger1 = Var(49) <= 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),72,60),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

[State 1020, HitDef]
type = HitDef
triggerall = !NumHelper(2000)
trigger1 = Var(49) > 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3
p2Stateno = 2004
p2facing = 1
ID = 2000

[State 1020, HitDef]
type = HitDef
triggerall = NumHelper(2000)
trigger1 = Var(49) > 0
trigger1 = AnimElem = 3
damage = IfElse(Var(10),84,70),7
attr = S,SA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3

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

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

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

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

[State 1021, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1021, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5
ignorehitpause = 1

[State 1021, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = -5

[State 1021, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0 
trigger1 = AnimElemTime(5) <= 25
x = -0.1

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

[State 1021, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1022
ID = 1022
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1021, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1023
ID = 1023
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1021, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 1021, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 1021, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1021, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1021, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1021, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1021, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1021, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H

[StateDef 1022]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1002
velset = 0,0
sprpriority = 6

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

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

[State 1022, BindToParent]
type = BindToParent
trigger1 = Time = 0
pos = -10,-85
ignorehitpause = 1

[State 1022, BindToParent]
type = BindToParent
trigger1 = Time > 0
pos = 30,-85
ignorehitpause = 1

[State 1022, AngleDraw]
type = AngleDraw
trigger1 = Time = 0
scale = 0.5,3

[State 1022, AngleDraw]
type = AngleDraw
trigger1 = Time > 0
trigger1 = Time <= 4
scale = 3.5,3

[State 1022, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 3.5+((Time-4)*0.4375),3-((Time-4)*0.375)

[State 1022, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1020

[StateDef 1023]
type = A
movetype = I
physics = N
anim = 1003
ctrl = 0
velset = 0,0
sprpriority = 6

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

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

[State 1023, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-75
ignorehitpause = 1

[State 1023, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
scale = 1.25,0.75

[State 1023, AngleDraw]
type = AngleDraw
trigger1 = Time > 3
scale = 1.25,0.75-((time-3)*0.093)

[State 1023, AngleSet]
type = AngleSet
trigger1 = 1
value = 90

[State 1023, DestroySelf]
type = DestroySelf
trigger1 = Time >= 11
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 1020

[StateDef 1030]
type = A
movetype = A
physics = N
ctrl = 0
poweradd = 110
velset = 0,0

[State 1030, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 1030

[State 1030, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 1035

[State 1030, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -1
y = -8.2

[State 1030, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) > 0
y = 0.6

[State 1030, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1000,0+Random%3
channel = 0

[State 1030, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 1032
ID = 1032
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1030, HitDef]
type = HitDef
trigger1 = AnimElem = 3
damage = IfElse(Var(10),72,60),7
attr = A,SA
animtype = heavy
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1.2,10
air.velocity = -1.2,10
yaccel = .65
fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3
p2stateno = 1035
p2facing = 1

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

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

[State 1030, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1031

[StateDef 1031]
type = S
physics = S
ctrl = 0
velset = 0,0
anim = 1031

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

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

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

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

[StateDef 1032]
type = A
movetype = I
physics = N
sprpriority = 5
anim = 1032
velset = 0,0

[State 1032, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1032, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = 40,5
ignorehitpause = 1

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

[State 1032, Helper]
type = Helper
trigger1 = AnimElemTime(3) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1033
ID = 1033
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1032, Helper]
type = Helper
trigger1 = AnimElemTime(3) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1034
ID = 1034
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1032, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 1032, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 1032, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1032, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1032, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A

[StateDef 1033]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1002
velset = 0,0
sprpriority = 6

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

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

[State 1033, BindToParent]
type = BindToParent
trigger1 = Time >= 0
pos = 30,-75
ignorehitpause = 1

[State 1033, AngleDraw]
type = AngleDraw
trigger1 = Time = 0
scale = 0.5,3

[State 1033, AngleDraw]
type = AngleDraw
trigger1 = Time > 0
trigger1 = Time <= 4
scale = 2.5,3

[State 1012, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 2.5+((Time-4)*0.3125),3-((Time-4)*0.375)

[State 1033, AngleSet]
type = AngleSet
trigger1 = 1
value = -30

[State 1033, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A
trigger4 = IsHelper(1033)
trigger4 = Root,StateNo != 1030
trigger5 = IsHelper(2032)
trigger5 = Root,StateNo != 2030

[StateDef 1034]
type = A
movetype = I
physics = N
anim = 1003
ctrl = 0
velset = 0,0
sprpriority = 6

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

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

[State 1034, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-100
ignorehitpause = 1

[State 1034, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
scale = 1.25,0.75

[State 1034, AngleDraw]
type = AngleDraw
trigger1 = Time > 3
scale = 1.25,0.75-((time-3)*0.093)

[State 1034, AngleSet]
type = AngleSet
trigger1 = 1
value = -120

[State 1034, DestroySelf]
type = DestroySelf
trigger1 = Time >= 11
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A
trigger4 = IsHelper(1034)
trigger4 = Root,StateNo != 1030
trigger5 = IsHelper(2033)
trigger5 = Root,StateNo != 2030

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

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

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

[State 1035]
type = ChangeAnim
trigger1 = 1
value = anim

[State 1035, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver=0
value = 1

[State 1035, VelSet]
type = VelSet
trigger1 = 1
y = 15
persistent = 0

[State 1035, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 1036

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

[State 1036]
type = PosSet
trigger1 = time = 0
y = 0

[State 1036, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 1036, VelSet]
type = VelSet
trigger1 = time = 0
x = -4
y = -10.5

[State 1036, VelAdd]
type = Veladd
trigger1 = 1
y = 0.65

[State 1036, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 1036, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 1036, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

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

[State 1100, VelSet]
type = VelSet
trigger1 = Time >= 0
x = 2

[State 1100, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1100,0+Random%3
channel = 0

[State 1100, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1101
ID = 1101
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1100, ChangeState]
type = ChangeState
trigger1 = Time >= 60
value = 0
ctrl = 1

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

[State 1101, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveHit = 1
trigger7 = IsHelper(1211)
trigger7 = NumHelper(1211)
trigger7 = Helper(1211),MoveHit = 1
trigger8 = IsHelper(1221)
trigger8 = NumHelper(1221)
trigger8 = Helper(1221),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1101, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveGuarded = 1
trigger7 = IsHelper(1211)
trigger7 = NumHelper(1211)
trigger7 = Helper(1211),MoveGuarded = 1
trigger8 = IsHelper(1221)
trigger8 = NumHelper(1221)
trigger8 = Helper(1221),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1101, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1101, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 1101, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 8

[State 1101, VelSet]
type = VelSet
trigger1 = AnimElem = 5
trigger2 = AnimElem = 7
x = 0

[State 1101, VelSet]
type = VelSet
trigger1 = AnimElemTime(6) > 0
x = 0.2

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

[State 1101, PlaySnd]
type = PlaySnd
trigger1 = Time = 25
trigger2 = Time = 27
trigger3 = Time = 29
trigger4 = Time = 31
value = S100,10
channel = 2

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

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

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

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

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

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

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

[State 1101, AngleDraw]
type = AngleDraw
trigger1 = Time > 55
scale = 1-(time-55)*0.1,1+(Time-55)*0.1

[State 1101, Trans]
type = Trans
trigger1 = Time >= 55
trans = addalpha
alpha = var(59):=256-50*(time-55),256-var(59)

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1000
value = 1001

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1010
value = 1011

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1020
value = 1021

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1200
value = 1201

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1210
value = 1211

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,Var(49) > 0
trigger1 = Root,StateNo = 1220
value = 1221

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1101, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1101, DestroySelf]
type = DestroySelf
trigger1 = time >= 60
trigger2 = Root,MoveType = H 
trigger3 = Root,Var(49) > 0
trigger3 = Root,StateType = A
trigger4 = Root,StateNo = 1400
trigger5 = Root,StateNo = 1410

[StateDef 1102]
type = A
movetype = I
physics = N
anim = 1102
sprpriority = 6

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

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

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

[State 1102, BindToParent]
type = BindToParent
trigger1 = 1
pos = ceil(10*const(size.xScale)),ceil(-235*const(size.yScale))
ignorehitpause = 1

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

[State 1102, Destroyself]
type = DestroySelf
trigger1 = IsHelper(1102)
trigger1 = Parent,StateNo != 1101
trigger2 = Root,Movetype = H
trigger3 = Animtime = 0
trigger4 = Root,Var(49) > 0
trigger4 = Root,StateType = A
trigger5 = Root,StateNo = 1400
trigger6 = Root,StateNo = 1410

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

[State 1200, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1200
trigger1 = Time >= 44
value = 1201

[State 1200, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1200
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1200, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Anim = 1200
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1201
ID = 1201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

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

[StateDef 1201]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1202
velset = 0,0

[State 1201, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1201, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1201, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1201, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 1201, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 20
y = -3

[State 1201, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

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

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

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

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

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

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1201, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1201, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 1200

[State 1201, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 1230

[StateDef 1202]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1203
velset = 0,0

[State 1202, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1202, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1202, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1202, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -20
y = 0

[State 1202, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

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

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

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

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

[State 1202, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1203

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1202, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1202, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1200

[State 1202, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 1230

[StateDef 1203]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1204
velset = 0,0

[State 1203, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1203, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1201)
trigger6 = NumHelper(1201)
trigger6 = Helper(1201),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1203, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1203, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 25
y = -3

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

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

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

[State 1203, HitDef]
type = HitDef
triggerall = Root,Var(49) <= 0
trigger1 = AnimElem = 1
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 8.5,0
air.velocity = 4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.67
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

[State 1203, HitDef]
type = HitDef
triggerall = Root,Var(49) > 0
trigger1 = AnimElem = 1
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -8.5,0
air.velocity = -4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.5
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

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

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

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

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

[State 1203, AngleDraw]
type = AngleDraw
trigger1 = Time > 15
scale = 1-(time-15)*0.1,1+(Time-15)*0.1

[State 1203, Trans]
type = Trans
trigger1 = Time >= 15
trans = addalpha
alpha = var(59):=256-50*(time-15),256-var(59)

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1203, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1203, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1200

[State 1203, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1230

[StateDef 1210]
type = S
movetype = A
physics = N
anim = 1200
velset = 0,0
ctrl = 0
PowerAdd = 100
sprpriority = 2

[State 1210, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1200
trigger1 = Time >= 44
value = 1201

[State 1210, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1200
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1210, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Anim = 1200
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1211
ID = 1211
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

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

[StateDef 1211]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1202
velset = 0,0

[State 1211, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1211, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1211, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1211, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 1211, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 20
y = -5

[State 1211, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

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

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

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

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

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

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1211, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1211, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1210

[State 1211, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1240

[StateDef 1212]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1203
velset = 0,0

[State 1212, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1212, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1212, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1212, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -20
y = 0

[State 1212, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

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

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

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

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

[State 1212, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1213

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1212, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1212, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1210

[State 1212, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1240

[StateDef 1213]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1204
velset = 0,0

[State 1213, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1213, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1211)
trigger6 = NumHelper(1211)
trigger6 = Helper(1211),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1213, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1213, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 25
y = -5

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

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

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

[State 1213, HitDef]
type = HitDef
triggerall = Root,Var(49) <= 0
trigger1 = AnimElem = 1
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -8.5,0
air.velocity = -4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.67
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

[State 1213, HitDef]
type = HitDef
triggerall = Root,Var(49) > 0
trigger1 = AnimElemTime(1) = 1
trigger2 = AnimElemTime(1) = 4
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 8.5,0
air.velocity = 4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.55
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

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

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

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

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

[State 1213, AngleDraw]
type = AngleDraw
trigger1 = Time > 15
scale = 1-(time-15)*0.1,1+(Time-15)*0.1

[State 1213, Trans]
type = Trans
trigger1 = Time >= 15
trans = addalpha
alpha = var(59):=256-50*(time-15),256-var(59)

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1213, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1213, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1210

[State 1213, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1240

[StateDef 1220]
type = S
movetype = A
physics = N
anim = 1200
velset = 0,0
ctrl = 0
PowerAdd = 100
sprpriority = 2

[State 1220, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1200
trigger1 = Time >= 33
value = 1206

[State 1220, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1206
trigger1 = AnimTime >= 6
value = 1207

[State 1220, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1207
trigger1 = AnimElemTime(1) = 0
statetype = A

[State 1220, VelAdd]
type = VelAdd
trigger1 = Anim = 1207
y = 0.4

[State 1220, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1200
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1220, Turn]
type = Turn
trigger1 = Anim = 1207
trigger1 = AnimElemTime(1) = 0

[State 1220, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
trigger1 = Anim = 1200
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1221
ID = 1221
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1220, PosAdd]
type = PosAdd
trigger1 = Anim = 1206
trigger1 = AnimElemTime(5) = 0
x = 180
y = -120

[State 1220, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = vel Y > 0 && pos Y >= 0
value = 1031

[State 1220, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "x" || Command = "hold_x")
value = 600

[State 1220, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "y" || Command = "hold_y")
value = 610

[State 1220, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "z" || Command = "hold_z")
value = 620

[StateDef 1221]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1202
velset = 0,0

[State 1221, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveHit = 1
var(45) = 12-27*(!!Root,Var(46))

[State 1221, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveGuarded = 1
var(45) = 6-18*(!!Root,Var(46))

[State 1221, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1221, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 1221, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 20
y = -8

[State 1221, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

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

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

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

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

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

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1221, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1221, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1220

[State 1221, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1250

[StateDef 1222]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1203
velset = 0,0

[State 1222, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1222, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1222, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1222, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -20
y = 0

[State 1222, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

[State 1222, HitDef]
type = HitDef
triggerall = Root,Var(49) > 0
trigger1 = AnimElem = 3
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 4.5,0
air.velocity = 5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.6
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

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

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

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

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

[State 1222, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1223

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2000
value = 2001

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2030
value = 2031

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2100
value = 2101

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2200
value = 2201

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 2230
value = 2201

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 3000
value = 3002

[State 1222, ChangeState]
type = ChangeState
trigger1 = Root,StateNo = 4100
value = 4103

[State 1222, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1220

[State 1222, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 1250

[StateDef 1223]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1204
velset = 0,0

[State 1223, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveHit = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveHit = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveHit = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveHit = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveHit = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveHit = 1
var(45) = 5-15*(!!Root,Var(46))

[State 1223, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(211)
trigger1 = NumHelper(211)
trigger1 = Helper(211),MoveGuarded = 1
trigger2 = IsHelper(221)
trigger2 = NumHelper(221)
trigger2 = Helper(221),MoveGuarded = 1
trigger3 = IsHelper(411)
trigger3 = NumHelper(411)
trigger3 = Helper(411),MoveGuarded = 1
trigger4 = IsHelper(421)
trigger4 = NumHelper(421)
trigger4 = Helper(421),MoveGuarded = 1
trigger5 = IsHelper(1101)
trigger5 = NumHelper(1101)
trigger5 = Helper(1101),MoveGuarded = 1
trigger6 = IsHelper(1221)
trigger6 = NumHelper(1221)
trigger6 = Helper(1221),MoveGuarded = 1
var(45) = 3-13*(!!Root,Var(46))

[State 1223, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 1223, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 25
y = -8

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

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

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

[State 1223, HitDef]
type = HitDef
triggerall = Root,Var(49) > 0
trigger1 = AnimElem = 1
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = A,SA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,5
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -5,0
air.velocity = -4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.67
fall = 0
air.fall = 1
fall.recover = 1
fall.recovertime = 38
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5

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

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

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

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

[State 1223, AngleDraw]
type = AngleDraw
trigger1 = Time > 15
scale = 1-(time-15)*0.1,1+(Time-15)*0.1

[State 1223, Trans]
type = Trans
trigger1 = Time >= 15
trans = addalpha
alpha = var(59):=256-50*(time-15),256-var(59)

[State 1223, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1220

[State 1223, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 1250

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

[State 1230, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1230
trigger1 = Time >= 44
value = 1231

[State 1230, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1230
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1230, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0
trigger1 = Anim = 1230
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1201
ID = 1201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1230, VelAdd]
type = VelAdd
trigger1 = Anim = 1231
y = 0.6

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

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

[State 1240, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1230
trigger1 = Time >= 44
value = 1231

[State 1240, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1230
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1240, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0
trigger1 = Anim = 1230
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1211
ID = 1211
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1240, VelAdd]
type = VelAdd
trigger1 = Anim = 1231
y = 0.6

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

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

[State 1250, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1230
trigger1 = Time >= 33
value = 1232

[State 1250, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1232
trigger1 = AnimTime >= 6
value = 1207

[State 1250, StateTypeSet]
type = StateTypeSet
trigger1 = Anim = 1207
trigger1 = AnimElemTime(1) = 0
statetype = A

[State 1250, VelAdd]
type = VelAdd
trigger1 = Anim = 1207
y = 0.4

[State 1250, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1230
trigger1 = time = 0
value = S1200,0+Random%2
channel = 0

[State 1250, Turn]
type = Turn
trigger1 = Anim = 1207
trigger1 = AnimElemTime(1) = 0

[State 1250, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0 
trigger1 = Anim = 1230
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 1221
ID = 1221
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 1250, PosAdd]
type = PosAdd
trigger1 = Anim = 1232
trigger1 = AnimElemTime(5) = 0
x = 180
y = -120

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

[State 1250, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "x" || Command = "hold_x")
value = 600

[State 1250, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "y" || Command = "hold_y")
value = 610

[State 1250, ChangeState]
type = ChangeState
trigger1 = Anim = 1207
trigger1 = AnimElemTime(5) >= 0 && (Command = "z" || Command = "hold_z")
value = 620

[StateDef 1300]
type = S
physics = S
velset = 0,0
poweradd = 100
ctrl = 0
anim = 1300
sprpriority = 2

[State 1300, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1300,0+Random%2
channel = 0

[State 1300, ReversalDef]
type = ReversalDef
triggerall = Anim = 1300
trigger1 = AnimElem = 4
reversal.attr = SCA, NA, SA
pausetime = 10,30
attr = S,SA
sparkno = -1
hitsound = S300,0
sprpriority = 2
p1stateno = 1301
getpower = 90

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

[StateDef 1301]
type = S
movetype = A
physics = N
ctrl = 0

[State 1301, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
value = 1301

[State 1301, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
value = 1304

[State 1301, HitDef]
type = HitDef
triggerall = Var(49) <= 0
trigger1 = Var(46) = 0
Trigger1 = AnimElem = 1
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 1
attr = S,ST          
hitflag = MA      
guardflag = MA    
priority = 1, Miss    
sparkno = -1          
sprpriority = 1       
p1facing = 1 
p2facing = 1          
p1stateno = 1302       
p2stateno = 1303      
fall = 1 
numhits = 0 

[State 1301, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 1
trigger2 = Var(49) > 0
attr = S,ST          
hitflag = MA      
guardflag = MA    
priority = 1, Miss    
sparkno = -1          
sprpriority = 1       
p1facing = 1 
p2facing = 1          
p1stateno = 1305       
p2stateno = 1306      
fall = 1 
numhits = 0 

[State 1301, Turn]
type = Turn
trigger1 = AnimElem = 2            

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

[StateDef 1302]
type = S
movetype = I
physics = N
anim = 1302
ctrl = 0

[State 1302, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = Time = 0
var(45) = 12

[State 1302, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 1
trigger1 = Time = 0
var(45) = -15

[State 1302, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1300,2
channel = 0

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

[State 1302, Turn]
type = Turn
trigger1 = AnimElem = 2  

[State 1302, TargetBind]
type = TargetBind
trigger1 = AnimElem = 1
pos = 50,-5

[State 1302, TargetBind]
type = TargetBind
trigger1 = AnimElem = 2
pos = -40,-8

[State 1302, TargetBind]
type = TargetBind
trigger1 = AnimElem = 3
pos = -35,-11

[State 1302, TargetBind]
type = TargetBind
trigger1 = AnimElem = 4
trigger2 = AnimElem = 5
pos = -25,-20

[State 1302, TargetBind]
type = TargetBind
trigger1 = AnimElem = 6
pos = 30,-25

[State 1302, TargetState]
type = TargetState
trigger1 = AnimElem = 7
value = 1304

[State 1302, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = AnimElem = 7
value = ceil(-135*(fvar(1)*fvar(2)))

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

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

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

[State 1303, ChangeAnim2]
type = ChangeAnim2
Trigger1 = Time = 0
value = 1303

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

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

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

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

[State 1304, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = 0.67

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

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

[State 1304, 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 1304, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100

[StateDef 1305]
type = S
movetype = I
physics = N
anim = 1305
ctrl = 0

[State 1305, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = Time = 0
var(45) = 12

[State 1305, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 1
trigger1 = Time = 0
var(45) = -15

[State 1305, VarAdd]
type = VarAdd
triggerall = Var(49) <= 0
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 1
v = 47
Value = -1

[State 1305, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1300,2
channel = 0

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

[State 1305, Turn]
type = Turn
trigger1 = AnimElem = 2  

[State 1305, TargetBind]
type = TargetBind
trigger1 = AnimElem = 1
pos = 50,-5

[State 1305, TargetBind]
type = TargetBind
trigger1 = AnimElem = 2
pos = -40,-8

[State 1305, TargetBind]
type = TargetBind
trigger1 = AnimElem = 3
pos = -35,-11

[State 1305, TargetBind]
type = TargetBind
trigger1 = AnimElem = 4
trigger2 = AnimElem = 5
pos = -25,-20

[State 1305, TargetBind]
type = TargetBind
trigger1 = AnimElem = 6
pos = 30,-25

[State 1305, TargetState]
type = TargetState
trigger1 = AnimElem = 7
value = 1307

[State 1305, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = AnimElem = 7
value = ceil(-135*(fvar(1)*fvar(2)))

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

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

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

[State 1306, ChangeAnim2]
type = ChangeAnim2
Trigger1 = Time = 0
value = 1303

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

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

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

[State 1307, VelSet]
type = VelSet
trigger1 = Time = 0
x = -2
y = -12

[State 1307, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = 0.55

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

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

[State 1307, 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 1307, SelfState]
type = SelfState
trigger1 = (Vel Y > 0) && (Pos Y >= 0)
value = 5100

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

[State 1400, VarSet]
type = VarSet
trigger1 = time = 0
v = 48
value = 0

[State 1400, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1400,0+Random%3
channel = 0

[State 1400, Helper]
type = Helper
trigger1 = time = 0
ID = 1401
pos = -120,-250
postype = P1
stateno = 1401
helpertype = normal
name = "Haruyuki"
keyctrl = 0
ownpal = 1
supermovetime = 1

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

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

[State 1401, VelSet]
type = VelSet
trigger1 = time > 0
X = 20
Y = 30

[State 1401, ChangeState]
Type = ChangeState
trigger1 = Vel Y > 0
trigger1 = Pos Y > 0
Value = 1402

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

[State 1402, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1401)
trigger1 = NumHelper(1401)
trigger1 = Helper(1401),MoveHit = 1
var(45) = 12-27*(!!Root,Var(46))

[State 1402, ParentVarAdd]
type = ParentVarAdd
trigger1 = IsHelper(1401)
trigger1 = NumHelper(1401)
trigger1 = Helper(1401),MoveGuarded = 1
var(45) = 6-21*(!!Root,Var(46))

[State 1402, NotHitBy]
type = NotHitBy
trigger1 = 1
value = ,NT,ST,HT

[State 1402, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,NA,SA,HA,NP,SP,HP
time = -1
StateNo = 1404

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

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

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

[State 1402, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 4
value = S100,13

[State 1402, Helper]
type = Helper
trigger1 = AnimElem = 4
helpertype = Normal
name = "Wind"
pos = 0,-90
postype = p1
stateno = 1405
ID = 1405
ownpal = 1
ignorehitpause = 1

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

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

[State 4104, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = -20

[State 4104, VelSet]
type = VelSet
trigger1 = AnimElem = 8
x = 0

[State 1402, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 6
value = S100,15

[State 1402, HitDef]
type = HitDef
trigger1 = AnimElem = 6
damage = ceil(IfElse(Root,Var(10),96,80)*(root,fvar(1)*root,fvar(2))),10
attr = S,SP
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 0,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,11
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0

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

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

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

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

[State 1402, ChangeState]
type = ChangeState
trigger1 = AnimTime = 0
value = 1403

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

[State 1403, VelSet]
type = Velset
trigger1 = Time > 0
X = -5
Y = -10

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

[StateDef 1404]
type = A
movetype = H
physics = N
ctrl = 0
anim = 1403
velset = 0,0

[State 1404, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1430,0+Random%5
Channel = 1

[State 1404, VelSet]
type = Velset
trigger1 = Time > 0
X = -5
Y = -10

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

[StateDef 1405]
Type = A
Movetype = I
Physics = N
Anim = 1404
SprPriority = 6
VelSet = 0,0

[State 1405, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

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

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

[State 1405, PalFX]
type = PalFX
trigger1 = 1
mul = 0,0,255
time = -1
ignorehitpause = 1

[State 1405, AngleDraw]
Type = AngleDraw
Trigger1 = IsHelper(1405)
Scale = 3,3

[State 1405, DestroySelf]
Type = DestroySelf
Trigger1 = AnimTime = 0
trigger2 = Parent,MoveType = H
trigger3 = Parent,StateNo != 1402

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

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

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

[State 1406, BindToParent]
type = BindToParent
trigger1 = 1
pos = -70,-95
ignorehitpause = 1

[State 1406, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time < 22
scale = 5,3

[State 1406, AngleDraw]
type = AngleDraw
trigger1 = Time >= 22
trigger1 = Time <= 26
scale = 10,3

[State 1406, AngleDraw]
type = AngleDraw
trigger1 = Time > 26
scale = 10+((Time-26)*0.1875),3-((Time-26)*0.375)

[State 1406, DestroySelf]
type = DestroySelf
trigger1 = Time >= 34
trigger2 = Parent,MoveType = H
trigger3 = Parent,StateNo != 1402

[StateDef 1410]
type = S
movetype = I
physics = S
ctrl = 0
anim = 1400
poweradd = 100
sprpriority = 2
velset = 0,0
facep2 = 1

[State 1410, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 1
v = 47
Value = -1

[State 1410, VarSet]
type = VarSet
trigger1 = time = 0
v = 48
value = 0

[State 1410, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S1400,0+Random%3
channel = 0

[State 1410, Helper]
type = Helper
trigger1 = Var(46) = 0
trigger1 = time = 0
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = time = 0
ID = 1411
pos = 0,0
postype = P1
stateno = 1411
helpertype = normal
name = "Beacon"
keyctrl = 0
ownpal = 1
supermovetime = 1

[State 1410, Helper]
type = Helper
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 0
ID = 1414
pos = 180,-250
postype = P2
facing = -1
stateno = 1414
helpertype = normal
name = "Haruyuki"
keyctrl = 0
ownpal = 1
supermovetime = 1

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

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

[State 1411, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1411)
trigger1 = NumHelper(1412)
trigger1 = Helper(1412),MoveHit = 1
var(45) = 12-27*(!!Root,var(46))
persistent = 16

[State 1411, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1411)
trigger1 = NumHelper(1412)
trigger1 = Helper(1412),MoveGuarded = 1
var(45) = 6-21*(!!Root,var(46))
persistent = 16

[State 1411, AssertSpecial]
type = AssertSpecial
trigger1 = Time >= 100
flag = invisible

[State 1411, AssertSpecial]
Type = AssertSpecial
Trigger1 = 1
Flag = Noshadow
IgnoreHitPause = 1
SuperMoveTime = 9999
PauseMoveTime = 9999

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

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

[State 1411, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 3,3

[State 1411, VelSet]
type = VelSet
trigger1 = Time <= 70
x = P2Dist X

[State 1411, VelSet]
type = VelSet
trigger1 = Time > 70
x = 0

[State 1411, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S100,13

[State 1411, PlaySnd]
type = PlaySnd
trigger1 = Time = 0 
value = S1410,2
channel = 1

[State 1411, Helper]
type = Helper
trigger1 = time = 70
ID = 1412
pos = 0,0
postype = P1
stateno = 1412
helpertype = normal
name = "Haruyuki"
keyctrl = 0
ownpal = 1
supermovetime = 1

[State 1411, DestroySelf]
Type = DestroySelf
Trigger1 = Time >= 220

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

[State 1412, BindToParent]
type = BindToParent
trigger1 = Time = 0
facing = 1
pos = -180,-250

[State 1412, VelSet]
type = VelSet
trigger1 = time > 0
X = 20
Y = 30

[State 1412, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S1410,3+Random%2
channel = 1

[State 1412, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1415
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1412, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1416
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1412, Hitdef]
type = HitDef
trigger1 = AnimElem = 1
attr = S,SA
hitflag	= MAF
guardflag = MA
damage = ceil(IfElse(Root,Var(10),60,50)*(root,fvar(1)*root,fvar(2))),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 10,10
guard.pausetime = 10,10
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,2
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 30
ground.hittime= 30
guard.hittime = 12
air.hittime = 30
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity = -0.5,-7
guard.velocity = -4
air.velocity = -2,-7
ground.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3

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

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

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

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

[State 1412, ChangeState]
Type = ChangeState
trigger1 = Vel Y > 0
trigger1 = Pos Y > 0
Value = 1413

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

[State 1413, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1414)
trigger1 = NumHelper(1414)
trigger1 = Helper(1414),MoveHit = 1
var(45) = 12-27*(!!Root,var(46))
persistent = 16

[State 1413, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1414)
trigger1 = NumHelper(1414)
trigger1 = Helper(1414),MoveGuarded = 1
var(45) = 6-21*(!!Root,var(46))
persistent = 16

[State 1413, NotHitBy]
type = NotHitBy
trigger1 = 1
value = ,NT,ST,HT

[State 1413, HitOverride]
type = HitOverride
trigger1 = 1
attr = SCA,NA,SA,HA,NP,SP,HP
time = -1
StateNo = 1404

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

[State 1413, VelSet]
type = Velset
trigger1 = Time >= 12
X = 20
Y = -20

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

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

[State 1413, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S100,16

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

[State 1413, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1417
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1413, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1418
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1413, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1419
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1413, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1415
ID = 1420
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1413, Hitdef]
type = HitDef
trigger1 = AnimElem = 3
attr = S,SA
hitflag	= MAF
guardflag = MA
damage = ceil(IfElse(Root,Var(10),48,40)*(root,fvar(1)*root,fvar(2))),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 10,10
guard.pausetime = 10,10
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,2
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.5
ground.slidetime= 30
ground.hittime= 30
guard.hittime = 12
air.hittime = 30
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity = -0.5,-15
guard.velocity = -4
air.velocity = -0.5,-15
ground.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3

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

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

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

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

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

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

[State 1414, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1414)
trigger1 = NumHelper(1414)
trigger1 = Helper(1414),MoveHit = 1
var(45) = 12-27*(!!Root,var(46))
persistent = 16

[State 1414, ParentVarAdd]
type = ParentVarAdd
trigger1 = ishelper(1414)
trigger1 = NumHelper(1414)
trigger1 = Helper(1414),MoveGuarded = 1
var(45) = 6-21*(!!Root,var(46))
persistent = 16

[State 1414, VelSet]
type = VelSet
trigger1 = time > 0
X = 20
Y = 30

[State 1414, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S1410,3+Random%2
channel = 1

[State 1414, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1416
ID = 1421
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1414, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "Wing"
pos = 0,0
stateno = 1416
ID = 1422
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 1414, Hitdef]
type = HitDef
trigger1 = AnimElem = 1
attr = S,SA
hitflag	= MAF
guardflag = MA
damage = ceil(IfElse(Root,Var(10),60,50)*(root,fvar(1)*root,fvar(2))),5
animtype = Hard
air.animtype = Back
ground.type = High
priority = 6, Hit
pausetime = 10,10
guard.pausetime = 10,10
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,2
guardsound = S300,0
fall = 1
fall.recover = 0
air.fall = 1
yaccel = 0.44
ground.slidetime= 30
ground.hittime= 30
guard.hittime = 12
air.hittime = 30
guard.ctrltime = 12
airguard.ctrltime = 12
ground.velocity = -0.5,-7
guard.velocity = -4
air.velocity = -2,-7
ground.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 3

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

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

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

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

[State 1414, ChangeState]
Type = ChangeState
trigger1 = Vel Y > 0
trigger1 = Pos Y > 0
Value = 1413

[StateDef 1415]
type = A
movetype = I
physics = N
sprpriority = 1
velset = 0,0

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1415)
pos = -25,-85

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1416)
pos = -10,-90

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1417)
pos = -5,-55

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1418)
pos = 10,-55

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1419)
pos = 5,-90

[State 1415, BindToParent]
type = BindToParent
trigger1 = IsHelper(1420)
pos = 20,-80

[State 1415, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1415)
trigger2 = IsHelper(1417)
value = 1413

[State 1415, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1416)
trigger2 = IsHelper(1418)
value = 1414

[State 1415, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1419)
value = 1415

[State 1415, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1420)
value = 1416

[State 1415, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(1415)
trigger2 = IsHelper(1416)
trigger3 = IsHelper(1417)
trigger4 = IsHelper(1419)
Scale = 1,1

[State 1415, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(1418)
Scale = 1,0.6

[State 1415, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(1420)
Scale = 0.5,0.9

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1415)
value = -15

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1416)
value = 70

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1417)
value = -45

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1418)
value = 40

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1419)
value = 0

[State 1415, AngleSet]
type = AngleSet
trigger1 = IsHelper(1420)
value = -50

[State 1415, DestroySelf]
type = DestroySelf
triggerall = IsHelper(1415) || IsHelper(1416)
trigger1 = Parent,StateNo != 1412
trigger2 = Parent,MoveType = H

[State 1415, DestroySelf]
type = DestroySelf
triggerall = IsHelper(1417) || IsHelper(1418)
trigger1 = Parent,Anim = 1412 && Time >= 11
trigger2 = Parent,MoveType = H

[State 1415, DestroySelf]
type = DestroySelf
triggerall = IsHelper(1419) || IsHelper(1420)
trigger1 = Parent,StateNo != 1413
trigger2 = AnimTime = 0
trigger3 = Time >= 74

[StateDef 1416]
type = A
movetype = I
physics = N
sprpriority = 1
velset = 0,0

[State 1416, BindToParent]
type = BindToParent
trigger1 = IsHelper(1421)
pos = -25,-85

[State 1416, BindToParent]
type = BindToParent
trigger1 = IsHelper(1422)
pos = -10,-90

[State 1416, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1421)
value = 1413

[State 1415, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(1422)
value = 1414

[State 1416, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(1421)
trigger2 = IsHelper(1422)
Scale = 1,1

[State 1416, AngleSet]
type = AngleSet
trigger1 = IsHelper(1421)
value = -15

[State 1416, AngleSet]
type = AngleSet
trigger1 = IsHelper(1422)
value = 70

[State 1416, DestroySelf]
type = DestroySelf
triggerall = IsHelper(1421) || IsHelper(1422)
trigger1 = Parent,StateNo != 1414
trigger2 = Parent,MoveType = H

[StateDef 2000]
type = S
movetype = A
physics = N
ctrl = 0
sprpriority = 2
velset = 0,0
facep2 = 1

[State 2000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 2000

[State 2000, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 2005

[State 2000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

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

[State 2000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 4
v = 47
Value = -1

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

[State 2000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

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

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

[State 2000, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2000, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2000, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2000, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S2000,0+Random%2
channel = 0

[State 2000, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
triggerall = NumHelper(812) = 0
triggerall = NumHelper(1001) = 0
triggerall = NumHelper(1011) = 0
triggerall = NumHelper(1021) = 0
triggerall = NumHelper(1101) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 60,-5
postype = p1
stateno = 2001
ID = 2001
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 2000, HitDef]
type = HitDef
triggerall = !NumTarget(2000)
trigger1 = Var(46) = 0
trigger1 = AnimElem = 3
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 3
damage = IfElse(Var(10),144,120),12
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 10,12
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -12,-6
air.velocity = -12,-6
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
p2Stateno = 2004
p2facing = 1
ID = 2000
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0

[State 2000, HitDef]
type = HitDef
triggerall = !NumTarget(2000)
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 3
damage = IfElse(Var(10),158,132),13
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 10,12
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -12,-6
air.velocity = -12,-6
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
p2Stateno = 2004
p2facing = 1
ID = 2000
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0

[State 2000, HitDef]
type = HitDef
triggerall = NumTarget(2000)
trigger1 = Var(46) = 0
trigger1 = AnimElem = 3
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 3
damage = IfElse(Var(10),144,120),12
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 10,12
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3
getpower = 0
p2facing = 1
ID = 2000
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0

[State 2000, HitDef]
type = HitDef
triggerall = NumTarget(2000)
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 3
damage = IfElse(Var(10),158,132),13
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 10,12
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -10,-5
air.velocity = -10,-5
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 1
envshake.time = 10
envshake.ampl = 3
getpower = 0
p2facing = 1
ID = 2000
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0

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

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

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

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

[State 2001, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2001, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5
ignorehitpause = 1

[State 2001, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = -5

[State 2001, VelSet]
type = VelSet
trigger1 = AnimElemTime(5) > 0 
trigger1 = AnimElemTime(5) <= 25
x = -0.1

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

[State 2001, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 2002
ID = 2002
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2001, Helper]
type = Helper
trigger1 = AnimElemTime(4) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 2003
ID = 2003
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2001, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 2001, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 2001, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H

[StateDef 2002]
type = A
movetype = I
physics = N
ctrl = 0
anim = 1002
velset = 0,0
sprpriority = 6

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

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

[State 2002, BindToParent]
type = BindToParent
trigger1 = Time = 0
pos = -10,-85
ignorehitpause = 1

[State 2002, BindToParent]
type = BindToParent
trigger1 = Time > 0
pos = 30,-85
ignorehitpause = 1

[State 2002, AngleDraw]
type = AngleDraw
trigger1 = Time = 0
scale = 0.5,3

[State 2002, AngleDraw]
type = AngleDraw
trigger1 = Time > 0
trigger1 = Time <= 4
scale = 3.5,3

[State 2002, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 3.5+((Time-4)*0.4375),3-((Time-4)*0.375)

[State 2002, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 2000

[StateDef 2003]
type = A
movetype = I
physics = N
anim = 1003
ctrl = 0
velset = 0,0
sprpriority = 6

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

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

[State 2003, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,-75
ignorehitpause = 1

[State 2003, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
scale = 1.25,0.75

[State 2003, AngleDraw]
type = AngleDraw
trigger1 = Time > 3
scale = 1.25,0.75-((time-3)*0.093)

[State 2003, AngleSet]
type = AngleSet
trigger1 = 1
value = 90

[State 2003, DestroySelf]
type = DestroySelf
trigger1 = Time >= 11
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 2000

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

[State 2004, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver = 0
value = 1

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

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

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

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

[State 2004, ChangeState]
type = ChangeState
trigger1 = GetHitVar(HitShakeTime) = 0
value = 2005

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

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

[State 2005, VelSet]
type = VelSet
trigger1 = Time = 0
x = -25

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

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

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

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

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

[State 2005]
type = ChangeState
triggerAll = Time >= 12
triggerAll = BackEdgeDist <= 1
trigger1 = 1
value = 2007

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

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

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

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

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

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

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

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

[State 2006, EnvShake]
type = VelSet
trigger1 = Time = 5
x = -2
y = -7

[State 2006, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = 0.4

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

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

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

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

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

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

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

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

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

[State 2007, VelSet]
type = VelSet
trigger1 = Time = 5
x = -1.5
y = -8

[State 2007, VelAdd]
type = VelAdd
trigger1 = Time >= 6
y = 0.4

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

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

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

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

[State 2030, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) <= 0
trigger1 = Time = 0 
value = 1030

[State 2030, ChangeAnim]
type = ChangeAnim
trigger1 = Var(49) > 0
trigger1 = Time = 0 
value = 1035

[State 2030, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

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

[State 2030, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 4
v = 47
Value = -1

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

[State 2030, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2030, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 13

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

[State 2030, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2030, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2030, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2030, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -1
y = -8.2

[State 2030, VelAdd]
type = VelAdd
trigger1 = AnimElemTime(3) > 0
y = 0.6

[State 2030, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S2000,0+Random%2
channel = 0

[State 2030, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0
triggerall = NumHelper(1032) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 2031
ID = 2031
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2030, HitDef]
type = HitDef
trigger1 = Var(46) = 0
trigger1 = AnimElem = 3
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = AnimElem = 3
damage = IfElse(Var(10),144,120),12
attr = A,HA
animtype = heavy
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1.2,10
air.velocity = -1.2,10
yaccel = .65
fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
p2stateno = 2032
p2facing = 1
getpower = 0

[State 2030, HitDef]
type = HitDef
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = AnimElem = 3
damage = IfElse(Var(10),158,132),13
attr = A,HA
animtype = heavy
guardflag = MA
hitflag = MAF
pausetime = 8,10
priority = 7,Hit
sparkno = -1
guard.sparkno = -1
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -1.2,10
air.velocity = -1.2,10
yaccel = .65
fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.freq = 90
envshake.ampl = 4
p2stateno = 2032
getpower = 0

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

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

[State 2030, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 1031

[StateDef 2031]
type = A
movetype = I
physics = N
sprpriority = 5
anim = 1032
velset = 0,0

[State 2031, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2031, BindToRoot]
type = BindToRoot
trigger1 = 1
pos = 40,5
ignorehitpause = 1

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

[State 2031, Helper]
type = Helper
trigger1 = AnimElemTime(3) = 0
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1033
ID = 2032
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2031, Helper]
type = Helper
trigger1 = AnimElemTime(3) = 1
helpertype = Normal
name = "Piercing"
pos = 0,0
stateno = 1034
ID = 2033
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State 2031, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 2031, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = var(59):=256-50*(time-25),256-var(59)

[State 2031, DestroySelf]
type = DestroySelf
trigger1 = time >= 30
trigger2 = Root,MoveType = H
trigger3 = Root,StateType != A

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

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

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

[State 2032, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = anim

[State 2032, PosFreeze]
type = PosFreeze
trigger1 = HitShakeOver=0
value = 1

[State 2032, VelSet]
type = VelSet
trigger1 = 1
y = 15
persistent = 0

[State 2032, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 2033

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

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

[State 2033, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 2033, VelSet]
type = VelSet
trigger1 = time = 0
x = -1
y = -15

[State 2033, VelAdd]
type = Veladd
trigger1 = 1
y = 0.5

[State 2033, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 2033, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 2033, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

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

[State 2100, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

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

[State 2100, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 1
trigger1 = Time = 103
v = 47
Value = -1

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

[State 2100, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2100, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 13

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

[State 2100, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2100, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2100, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S2000,0+Random%2
channel = 0

[State 2100, VelSet]
type = VelSet
trigger1 = Time >= 0
x = 0.75

[State 2100, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S4100,1
channel = 0

[State 2100, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
triggerall = NumHelper(812) = 0
triggerall = NumHelper(1001) = 0
triggerall = NumHelper(1011) = 0
triggerall = NumHelper(1021) = 0
triggerall = NumHelper(1101) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 2101
ID = 2101
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 2100, ChangeState]
type = ChangeState
trigger1 = Time >= 133
value = 0
ctrl = 1

[StateDef 2101]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 2100
velset = 0,0

[State 2101, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2101, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 2101, VelSet]
type = VelSet
trigger1 = AnimElem = 4
x = 8

[State 2101, VelSet]
type = VelSet
trigger1 = AnimElem = 5
trigger2 = AnimElem = 7
x = 0

[State 2101, VelSet]
type = VelSet
trigger1 = AnimElemTime(6) > 0
x = 0.2

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

[State 2101, PlaySnd]
type = PlaySnd
trigger1 = Time > 23
trigger1 = Time <= 89
trigger1 = Time%2 = 1
value = S100,10
channel = 2

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

[State 2101, HitDef]
type = HitDef
trigger1 = AnimElem = 4
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,-4
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
p1sprpriority = 5
getpower = 0
givepower = IfElse(Root,Var(46) = 1 && Root,Var(47) >= 1,-14,8),IfElse(Root,Var(46) = 1 && Root,Var(47) >= 1,-3,2)

[State 2101, HitDef]
type = HitDef
trigger1 = (time > 23)*(time%3 = 1)
damage = ceil(IfElse(Root,Var(10),8,6)*(root,fvar(1)*root,fvar(2))),1
attr = S,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,7
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,9
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.65
fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
p1sprpriority = 5
getpower = 0
givepower = IfElse(Root,Var(46) = 1 && Root,Var(47) >= 1,-14,8),IfElse(Root,Var(46) = 1 && Root,Var(47) >= 1,-3,2)

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

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

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

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

[State 2101, AngleDraw]
type = AngleDraw
trigger1 = Time > 128
scale = 1-(time-128)*0.1,1+(Time-128)*0.1

[State 2101, Trans]
type = Trans
trigger1 = Time >= 128
trans = addalpha
alpha = var(59):=256-50*(time-128),256-var(59)

[State 2101, DestroySelf]
type = DestroySelf
trigger1 = time >= 133
trigger2 = Root,MoveType = H

[StateDef 2102]
type = A
movetype = I
physics = N
anim = 1102
sprpriority = 6

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

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

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

[State 2102, BindToParent]
type = BindToParent
trigger1 = 1
pos = ceil(10*const(size.xScale)),ceil(-235*const(size.yScale))
ignorehitpause = 1

[State 2102, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 0.85,0.85

[State 2102, Destroyself]
type = DestroySelf
trigger1 = Parent,StateNo != 2101
trigger2 = Root,Movetype = H
trigger3 = Time >= 79

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

[State 2200, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

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

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

[State 2200, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2200, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 14

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

[State 2200, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2200, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2200, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2200, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1200
trigger1 = Time >= 44
value = 1201

[State 2200, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S2200,0
channel = 0

[State 2200, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
triggerall = NumHelper(812) = 0
triggerall = NumHelper(1001) = 0
triggerall = NumHelper(1011) = 0
triggerall = NumHelper(1021) = 0
triggerall = NumHelper(1101) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 2201
ID = 2201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 2200, ChangeState]
type = ChangeState
trigger1 = Anim = 1201
trigger1 = AnimTime = 0
value = 0
ctrl = 1

[StateDef 2201]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1202
velset = 0,0

[State 2201, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2201, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 30,-10
ignorehitpause = 1

[State 2201, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = 30
y = -4

[State 2201, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

[State 2201, HitDef]
type = HitDef
triggerall = Root,Var(46) = 1
trigger1 = Time
damage = ceil(IfElse(Root,Var(10),17,14)*(root,fvar(1)*root,fvar(2))),2
attr = A,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = -1
guardsound = -1
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -4.5,0
air.velocity = -5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.55
fall = 0
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
p1sprpriority = 5
getpower = 0

[State 2201, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveHit = 1
value = S200,10
channel = 2

[State 2201, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveGuarded = 1
value = S300,0
channel = 3

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

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

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

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

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

[State 2201, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 2200

[State 2201, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 2230

[StateDef 2202]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1203
velset = 0,0

[State 2202, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2202, VelSet]
type = VelSet
trigger1 = AnimElem = 3
x = -30
y = 0

[State 2202, AfterImage]
type = AfterImage
trigger1 = AnimElem = 3
time = 8
timegap = 1
framegap = 4
length = 9
palbright = 0,0,0
palcontrast = 128,128,128
paladd = 0,0,0
palmul = .9,.9,.9
trans = add1

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

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

[State 2202, HitDef]
type = HitDef
triggerall = Root,Var(46) = 1
trigger1 = Time
damage = ceil(IfElse(Root,Var(10),17,14)*(root,fvar(1)*root,fvar(2))),2
attr = A,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = -1
guardsound = -1
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = 4.5,0
air.velocity = 5,-4
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.55
fall = 0
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 4
p1sprpriority = 5
getpower = 0

[State 2201, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveHit = 1
value = S200,10
channel = 2

[State 2201, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveGuarded = 1
value = S300,0
channel = 3

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

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

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

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

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

[State 2202, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 2200

[State 2202, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Root,StateNo != 2230

[StateDef 2203]
type = A
movetype = A
physics = N
sprpriority = 5
anim = 1204
velset = 0,0

[State 2203, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 2203, VelSet]
type = VelSet
trigger1 = AnimElem = 1
x = 35
y = -4

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

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

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

[State 2203, HitDef]
type = HitDef
triggerall = Root,Var(46) = 0
trigger1 = AnimElem = 1
damage = ceil(IfElse(Root,Var(10),62,50)*(root,fvar(1)*root,fvar(2))),10
attr = A,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = S200,10
guardsound = S300,0
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -8.5,-4
air.velocity = -4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.55
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5
getpower = 0

[State 2203, HitDef]
type = HitDef
triggerall = Root,Var(46) = 1
trigger1 = Time
damage = ceil(IfElse(Root,Var(10),17,14)*(root,fvar(1)*root,fvar(2))),3
attr = A,HA
animtype = medium
guardflag = MA
hitflag = MAF
pausetime = 0,9
priority = 5,Hit
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = -1
guardsound = -1
ground.type = low
ground.slidetime = 12
ground.hittime = 12
ground.velocity = -8.5,-4
air.velocity = -4,-3
ground.cornerPush.velOff = 0
guard.cornerPush.velOff = 0
air.cornerPush.velOff = 0
yaccel = 0.55
fall = 1
air.fall = 1
fall.recover = 0
envshake.time = 10
envshake.ampl = 3
p1sprpriority = 5
getpower = 0

[State 2203, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveHit = 1
value = S200,10
channel = 2

[State 2203, PlaySnd]
type = PlaySnd
triggerall = Root,Var(46) = 1
trigger1 = MoveGuarded = 1
value = S300,0
channel = 3

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

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

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

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

[State 2203, AngleDraw]
type = AngleDraw
trigger1 = Time > 15
scale = 1-(time-15)*0.1,1+(Time-15)*0.1

[State 2203, Trans]
type = Trans
trigger1 = Time >= 15
trans = addalpha
alpha = var(59):=256-50*(time-15),256-var(59)

[State 2203, DestroySelf]
type = DestroySelf
triggerall = Root,StateType != A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 2200

[State 2203, DestroySelf]
type = DestroySelf
triggerall = Root,StateType = A
trigger1 = Root,MoveType = H 
trigger2 = Time >= 20
trigger3 = Root,StateNo != 2230

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

[State 2230, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 50

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

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

[State 2230, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 300

[State 2230, NotHitBy]
type = NotHitBy
trigger1 = time = 0
value = SCA
time = 13

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

[State 2230, Helper]
type = Helper
trigger1 = Time = 0
name = "EX"
ID = 6200
stateno = 6200
pos = 0,0
postype = p1
ownpal = 1
supermovetime = 999
pausemovetime = 999
ignorehitpause = 1

[State 2230, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 0
time = 1
add = 0,76,224
color = 124
ignorehitpause = 1

[State 2230, PalFX]
type = PalFX
trigger1 = GameTime % 3 = 1
time = 1
add = 0,46,164
color = 256
ignorehitpause = 1

[State 2230, ChangeAnim]
type = ChangeAnim
trigger1 = Anim = 1230
trigger1 = Time >= 44
value = 1231

[State 2230, PlaySnd]
type = PlaySnd
trigger1 = Anim = 1230
trigger1 = time = 0
value = S2200,0
channel = 0

[State 2230, Helper]
type = Helper
triggerall = NumHelper(611) = 0
triggerall = NumHelper(621) = 0
triggerall = NumHelper(1032) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Anim = 1230
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 30,-10
postype = p1
stateno = 2201
ID = 2201
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 2230, VelAdd]
type = VelAdd
trigger1 = Anim = 1231
y = 0.6

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

[StateDef 3000]
Type = S
Physics = S
MoveType = I
Anim = 3000
VelSet = 0,0
ctrl = 0
sprpriority = 1

[State 3000, VarAdd]
type = VarAdd
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 3
v = 47
Value = -3

[State 3000, VarSet]
type = VarSet
trigger1 = Var(46) = 0
trigger1 = AnimElem = 3
var(49) = 420
ignorehitpause = 1

[State 3000, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = AnimElem = 3
var(49) = 600
ignorehitpause = 1

[State 3000, NotHitBy]
type = NotHitBy
trigger1 = Anim = 3000
value = SCA

[State 3000, Super]
type = Pause
trigger1 = Anim = 3000
trigger1 = time = 0
time = 35
movetime = 35

[State 3000, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
stateno = 3010
ID = 3010
name = "Effect"
postype = p1
pos = 0,-95
SuperMovetime = 9999
PauseMovetime = 9999
size.xscale = 0.335
size.yscale = 0.335
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3011
ID = 3011
name = "Portrait"
SuperMovetime = 9999
PauseMovetime = 9999
ownpal = 1

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3012
ID = 3012
Name = "Trigger"
postype = Left
pos = 320,-140
facing = 1
sprpriority = 1
ownpal = 1
ignorehitpause = 1
persistent = 0
Pausemovetime = 9999
SuperMovetime = 9999

[State 3000, Helper]
type = Helper
trigger1 = Time = 0
stateno = 3013
ID = 3013
Name = "Trigger"
postype = Left
pos = 320,-100
facing = 1
sprpriority = 1
ownpal = 1
ignorehitpause = 1
persistent = 0
Pausemovetime = 9999
SuperMovetime = 9999

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S3000,0+Random%2
channel = 0

[State 3000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,6

[State 3000, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
triggerall = NumHelper(812) = 0
triggerall = NumHelper(1001) = 0
triggerall = NumHelper(1011) = 0
triggerall = NumHelper(1021) = 0
triggerall = NumHelper(1101) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 3002
ID = 3002
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
supermovetime = 99999
pausemovetime = 99999

[State 3000, helper]
type = Helper
trigger1 = AnimElem = 3
stateno = 3001
ID = 3001
Name = "Meter"
postype = P1
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

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

[StateDef 3001]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 3001, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

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

[State 3001, BindToParent]
type = BindToParent
trigger1 = 1
pos = 0,0

[State 3001, Explod]
type = explod
trigger1 = Numexplod(6017)=0
ID = 6017
anim = IfElse(Teamside = 1,6017,6018)
pos = Ifelse(Teamside = 1,-10,10),15
postype = P1
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 3001, Explod]
type = explod
trigger1 = NumExplod(6019) = 0
id = 6019
anim = 6019
pos = Ifelse(Teamside = 1,-12,12),6
postype = P1
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 3001, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6019
Scale = .5*Root,Var(49)/600,0.50

[State 3001, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(49) <= 0
id = 6017

[State 3001, RemoveExplod]
type = RemoveExplod
trigger1 = Root,Var(49) <= 0
id = 6019

[State 3001, DestroySelf]
type = DestroySelf
trigger1 = Root,Var(49) <= 0

[StateDef 3002]
type = A
movetype = I
physics = N
sprpriority = 2
anim = 3001
velset = 0,0

[State 3002, PalFX]
type = PalFX
trigger1 = Anim = 3001
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 3002, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 70,-20

[State 3002, AngleDraw]
type = AngleDraw
trigger1 = Time > 25
scale = 1-(time-25)*0.1,1+(Time-25)*0.1

[State 3002, Trans]
type = Trans
trigger1 = Time >= 25
trans = addalpha
alpha = (var(59):=256-50*(time-25)),256-var(59)

[State 3002, DestroySelf]
type = DestroySelf
trigger1 = time >= 30

[StateDef 3010]
Type = A
Physics = N
MoveType = I
Anim = 3010
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 3010, AngleSet]
type = AngleSet
trigger1 = Time = 0
value = 6*(random%60)

[State 3010, AngleAdd]
type = AngleAdd
trigger1 = 1
value = -6

[State 3010, AngleDraw]
type = AngleDraw
trigger1 = time < 8
scale = (0.0625*time),(0.0625*time)

[State 3010, AngleDraw]
type = AngleDraw
trigger1 = time >= 8
scale = 0.5,0.5

[State 3010, Trans]
type = Trans
trigger1 = time < 16
trans = AddAlpha
alpha = 256, 256

[State 3010, Trans]
type = Trans
trigger1 = time >= 16
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 3010, Explod]
type = explod
trigger1 = Time = 0
anim = 3011
ID = 3011
sprpriority = 5
postype = p1
facing = IfElse(random<500,-1,1)
vfacing = IfElse(random<500,-1,1)
removetime = 16
supermovetime = -1

[State 3010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(3011)
ID = 3011
scale = 2-(.125*time), 2-(.125*time)
trans = AddAlpha
alpha = IfElse(time<4, 64*time, 256), 256

[State 3010, Explod]
type = Explod
trigger1 = time = 16
anim = 3012
ID = 3012
sprpriority = 5
postype = p1
removetime = 32
supermovetime = -1

[State 3010, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(3012)
ID = 3012
scale = (.1*(time-16)), (.1*(time-16))
trans = AddAlpha
alpha = ceil(256 - 25.6*(time-16)), 256

[State 3010, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 26

[State 3010, DestroySelf]
type = DestroySelf
trigger1 = time >= 26

[StateDef 3011]
Type = S
Physics = N
MoveType = I
Anim = 99999
Ctrl = 0
velset = 0,0
sprpriority = 5

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

[State 3011, BGPalFX]
type = BGPalFX
trigger1 = time > 0
trigger1 = time <= 51
time = 1
color= 5*time
mul = 5*time, 5*time, 5*time

[State 3011, Explod]
type = Explod
trigger1 = time = 0
anim = 3013
id = 3013
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-40)
postype = left
sprpriority = -8
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 3011, Explod]
type = Explod
trigger1 = time = 0
anim = 3014
ID = 3014
pos = ceil(gamewidth/2.0),ceil(gameheight/2.0-40)
postype = left
sprpriority = -7
bindtime = -1
ownpal = 1
Scale = .5,.5
ignorehitpause = 1
supermovetime = 9999
pausemovetime = 9999

[State 3011, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 3013
Scale = 0.5,0.5-((time-65)*0.1)

[State 3011, ModifyExplod]
type = ModifyExplod
trigger1 = time >= 65
ID = 3014
Scale = 0.5,0.5-((time-65)*0.1)

[State 3011, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
ID = 3013

[State 3011 RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 70
ID = 3014

[State 3011, DestroySelf]
type = DestroySelf
trigger1 = Time >= 70

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

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

[State 3012, Explod]
type = Explod
Trigger1 = TeamSide = 1
Trigger1 = Time = 0
Anim = 3015
id = 3015
Pos = 0,ceil((1.33*gameheight/gamewidth)*54)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3012, Explod]
type = Explod
Trigger1 = TeamSide = 2
Trigger1 = Time = 0
Anim = 3015
id = 3015
Pos = 0,ceil((1.33*gameheight/gamewidth)*54)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3012, RemoveExplod]
type = RemoveExplod
ID = 3015
trigger1 = Time >= 73

[State 3012, DestroySelf]
type = DestroySelf
trigger1 = Time >= 73

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

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

[State 3013, Explod]
type = Explod
Trigger1 = TeamSide = 1
Trigger1 = Time = 0
Anim = 3016
id = 3016
Pos = 238,ceil((1.33*gameheight/gamewidth)*114)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3013, Explod]
type = Explod
Trigger1 = TeamSide = 2
Trigger1 = Time = 0
Anim = 3016
id = 3016
Pos = 238,ceil((1.33*gameheight/gamewidth)*114)
PosType = left
ownpal = 1
bindtime = -1
pausemovetime = 9999
supermove = 9999
ignorehitpause = 1
sprpriority = -5
scale = 0.5,0.5

[State 3013, RemoveExplod]
type = RemoveExplod
ID = 3016
trigger1 = Time >= 73

[State 3013, DestroySelf]
type = DestroySelf
trigger1 = Time >=73

[StateDef 4000]
type = S
movetype = A
physics = N
ctrl = 0
Velset = 0,0
anim = 4000
facep2 = 1

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
v = 45
Value = 75

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

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = AnimElem = 8
v = 47
Value = -1

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = AnimElem = 8
v = 47
Value = -2

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = AnimElem = 8
v = 47
Value = -3

[State 4000, VarAdd]
type = VarAdd
trigger1 = Var(49) > 0
trigger1 = Time = 0
var(49) = 300
ignorehitpause = 1

[State 4000, VarSet]
type = VarSet
trigger1 = Var(49) > 600
trigger1 = Time = 0
var(49) = 600
ignorehitpause = 1

[State 4000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 0
trigger1 = Time = 0
value = -3000

[State 4000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = Time = 0
value = 500

[State 4000, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 55

[State 4000, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4000, Pause]
type = Pause
trigger1 = Time = 0
time = 50
movetime = 50

[state ]
type=helper
stateno=20200
id=20200
postype=left
ownpal=1
pausemovetime=2147483647
supermovetime=2147483647
trigger1=time=0

[State 4000, Helper]
type = Helper
trigger1 = Time = 0
name = "EX2"
ID = 6210
stateno = 6210
pos = -5,-90
postype = p1
ownpal = 1
supermovetime = 99999
pausemovetime = 99999
ignorehitpause = 1

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,5

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S4000,0
channel = 0

[State 4000, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = S,HT
animtype = Heavy
damage = 0,0
hitflag = MAF
guardflag = MA
pausetime = 0,0
sparkno = -1
guard.sparkno = -1
sparkxy = 0,0
hitsound = -1
guardsound = S300,0
ground.type = High
ground.slidetime = 12
ground.hittime  = 12
ground.velocity = -3
air.velocity = -4,-4
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
p1stateno = 4001
p2stateno = 4006
kill = 0
getpower = 0
p2facing = 1
forcenofall = 1
numhits = 0

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

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

[StateDef 4001]
type = S
movetype = I
physics = N
ctrl = 0
Velset = 0,0
anim = 4001

[State 4001, VarSet]
type = VarSet
trigger1 = time = 0
var(1) = 0

[State 4001, VarAdd]
type = VarAdd
trigger1 = time >= 0
var(1) = 25

[State 4001, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4001, TargetBind]
type = TargetBind
trigger1 = Time = 0
pos = 100,0

[State 4001, Helper]
type = Helper
trigger1 = Time = 60
helpertype = Normal
name = "White"
pos = 0,0
stateno = 4009
ID = 4009
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4001, AllPalFX]
type = AllPalFX
trigger1 = time > 0
trigger1 = time <= 9
add = 250-var(1),250-var(1),250-var(1)
time = 1
ignorehitpause = 1

[State 4001, PalFX]
type = PalFX
trigger1 = Time > 65
trigger1 = Time <= 70
time = 1
mul = 255-((time-65)*50),255-((time-65)*50),255-((time-65)*50)
ignorehitpause = 1

[State 4001, PalFX]
type = PalFX
trigger1 = Time > 70
time = 1
mul = 0,0,0
ignorehitpause = 1

[State 4001, PosSet]
type = PosSet 
trigger1 = Time = 0
x = IfElse(Facing = 1,-50,50)

[State 4001, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Black Lotus"
pos = 130,-15
postype = p1
stateno = 4004
ID = 4004
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 4001, ChangeState]
type = ChangeState
trigger1 = Time >= 130
value = 4002

[StateDef 4002]
type = S
movetype = I
physics = N
ctrl = 0
Velset = 0,0
anim = 4002

[State 4002, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = Time = 21
v = 47
Value = -1

[State 4002, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = Time = 21
v = 47
Value = -2

[State 4002, VarAdd]
type = VarAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = Time = 21
v = 47
Value = -3

[State 4002, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 0
trigger1 = time = 11
value = S4000,2
channel = 0

[State 4002, PlaySnd]
type = PlaySnd
trigger1 = Var(46) = 1
trigger1 = time = 11
value = S4000,1
channel = 0

[State 4002, PalFX]
type = PalFX
trigger1 = Anim = 4002
time = 1
mul = 0,0,0
ignorehitpause = 1

[State 4002, HitAdd]
type = HitAdd
trigger1 = Time = 20 
value = 1 

[State 4002, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Var(46) = 0
trigger1 = Time = 20
trigger2 = Var(46) = 1
trigger2 = Var(47) = 0
trigger2 = Time = 20
value = ceil(-325*(fvar(1)*fvar(2)))

[State 4002, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 1
trigger1 = Time = 20
value = ceil(-358*(fvar(1)*fvar(2)))

[State 4002, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) = 2
trigger1 = Time = 20
value = ceil(-390*(fvar(1)*fvar(2)))

[State 4002, TargetLifeAdd]
type = TargetLifeAdd
trigger1 = Var(46) = 1
trigger1 = Var(47) >= 3
trigger1 = Time = 20
value = ceil(-423*(fvar(1)*fvar(2)))

[State 4002, ChangeState]
type = ChangeState
trigger1 = Time >= 100
value = 4003

[StateDef 4003]
type = S
movetype = I
physics = N
ctrl = 0
Velset = 0,0
anim = 4003

[State 4003, PalFX]
type = PalFX
trigger1 = Time = 0
time = 1
mul = 256,256,256
ignorehitpause = 1

[State 4003, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4003, Helper]
type = Helper
trigger1 = Time = 0
helpertype = Normal
name = "White"
pos = 0,0
stateno = 4012
ID = 4012
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4003, PlaySnd]
type = PlaySnd
trigger1 = time = 15
value = S4000,3+Random%3
channel = 0

[State 4003, TargetState]
type = TargetState
trigger1 = Time = 0
value = 4007

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

[StateDef 4004]
type = A
movetype = I
physics = N
sprpriority = -1
anim = 4004
velset = 0,0

[State 4004, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 4
scale = 0+(time*0.2),2-(Time*0.2)

[State 4004, AngleDraw]
type = AngleDraw
trigger1 = Time > 4
scale = 1,1

[State 4004, Trans]
type = Trans
trigger1 = Time >= 0
trigger1 = Time < 5
trans = addalpha
alpha = 0+50*(time),256

[State 4004, PalFX]
type = PalFX
trigger1 = Time >= 0
trigger1 = Time <= 4
time = 1
mul = 255-(time*50),255-(time*50),255-(time*50)
ignorehitpause = 1

[State 4004, PalFX]
type = PalFX
trigger1 = Time > 4
time = 1
mul = 0,0,0
ignorehitpause = 1

[State 4004, ChangeState]
type = ChangeState
trigger1 = Time > 9
value = 4005

[StateDef 4005]
type = A
movetype = I
physics = N
sprpriority = -1
anim = 4005
velset = 0,0

[State 4005, PalFX]
type = PalFX
trigger1 = Anim = 4005
trigger2 = Anim = 4006
time = 1
mul = 0,0,0

[State 4005, EnvShake]
type = EnvShake
trigger1 = time = [61,140]
trigger1 = time%10 = 0
time = 10
ampl = 4
freq = 127

[State 4005, ChangeAnim]
type = ChangeAnim
trigger1 = Time >= 70
value = 4006

[State 4005, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Splatter"
pos = -10,-60
postype = p1
stateno = 4010
ID = 4010
ownpal = 1
ignorehitpause = 1
size.xscale = 1
size.yscale = 1

[State 4005, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Circle"
pos = -10,-90
postype = p1
stateno = 4013
ID = 4013
ownpal = 1
ignorehitpause = 1
size.xscale = 1
size.yscale = 1

[State 4005, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Circle"
pos = -10,-90
postype = p1
stateno = 4013
ID = 4014
ownpal = 1
ignorehitpause = 1
size.xscale = 1
size.yscale = 1

[State 4001, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Line"
pos = 0,-70
stateno = 4011
ID = 4011
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4001, Helper]
type = Helper
trigger1 = Time = 70
helpertype = Normal
name = "Line"
pos = 0,-70
stateno = 4011
ID = 4012
ownpal = 1
ignorehitpause = 1
persistent = 0

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = Anim = 4006
trigger1 = Time = 70
value = S200,10

[State 4000, PlaySnd]
type = PlaySnd
trigger1 = Anim = 4006
trigger1 = Time = 70
value = S200,11

[State 4005, DestroySelf]
type = DestroySelf
trigger1 = Anim = 4006
trigger1 = Time >= 150

[StateDef 4006]
type = S
movetype = H
physics = N
ctrl = 0
velset = 0,0

[State 4006, ChangeAnim2]
type = ChangeAnim2
trigger1 = time = 0
value = 4011

[State 4006, PalFX]
type = PalFX
trigger1 = Time > 65
trigger1 = Time <= 70
time = 1
mul = 255-((time-65)*50),255-((time-65)*50),255-((time-65)*50)
ignorehitpause = 1

[State 4006, PalFX]
type = PalFX
trigger1 = Time > 70
time = 1
mul = 0,0,0
ignorehitpause = 1

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

[State 4007, ChangeAnim]
type = ChangeAnim
trigger1 = Time = 0
value = 5090

[State 4007, ScreenBound]
type = ScreenBound
trigger1 = 1
value = 0

[State 4007, PosSet]
type = PosSet
trigger1 = Time = 0
y = -200

[State 4007, VelSet]
type = VelSet
trigger1 = 1
y = 10
persistent = 0

[State 4007, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && HitShakeOver = 1
value = 4008

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

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

[State 4008, EnvShake]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 160
ampl = -4

[State 4008, VelSet]
type = VelSet
trigger1 = time = 0
x = -2
y = -10.5

[State 4008, VelAdd]
type = Veladd
trigger1 = 1
y = 0.65

[State 4008, ChangeAnim2]
type = Changeanim2
trigger1 =! SelfAnimExist(5030)
value = 5030

[State 4008, ChangeAnim]
type = Changeanim
trigger1 = SelfAnimExist(5030)
value = 5030

[State 4008, SelfState]
type = SelfState
trigger1 = time = 15 && Anim = 5030 && Pos Y <= -2
value = 5050

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

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

[State 4009, Explod]
Type = Explod
Trigger1 = Time = 0
Anim = 4007
ID = 4007
PosType = Left
Pos = 0,0
RemoveTime = 170
BindTime = -1
Ownpal = 1
scale = 10,10
SprPriority = -10
IgnoreHitPause = 1
Persistent = 0

[State 4009, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != [4001,4002]

[StateDef 4010]
type = A
movetype = I
physics = N
velset = 0,0
anim = 4008
sprpriority = 1

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

[State 4010, PalFX]
type = PalFX
trigger1 = 1
time = 1
mul = 0,0,0
ignorehitpause = 1

[State 4010, DestroySelf]
Type = DestroySelf
trigger1 = AnimTime = 0

[StateDef 4011]
type = A
movetype = I
physics = N
velset = 0,0
anim = 4009
sprpriority = 15

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

[State 4011, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4011)
trigger1 = Time >= 0
Scale = 5,1.5-(time*0.1)

[State 4011, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4012)
trigger1 = Time >= 0
Scale = 5,0.45-(time*0.03)

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4011)
value = -23

[State 4011, AngleSet]
type = AngleSet
trigger1 = IsHelper(4012)
value = -110

[State 4011, DestroySelf]
type = DestroySelf
trigger1 = Time >= 15

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

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

[State 4012, Explod]
Type = Explod
Trigger1 = Time = 0
Anim = 4012
ID = 4012
PosType = Left
Pos = 0,0
RemoveTime = 9
BindTime = -1
Ownpal = 1
scale = 10,10
SprPriority = 10
IgnoreHitPause = 1
Persistent = 0

[State 4012, DestroySelf]
type = DestroySelf
trigger1 = Root,StateNo != 4002

[StateDef 4013]
type = A
movetype = I
physics = N
velset = 0,0
anim = 4013
sprpriority = 13

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

[State 4013, Trans]
Type = Trans
Trigger1 = 1
Trans = Sub

[State 4013, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
Scale = 0+(Time*0.2),0+(time*0.05)

[State 4013, AngleSet]
type = AngleSet
trigger1 = IsHelper(4013)
value = -30

[State 4013, AngleSet]
type = AngleSet
trigger1 = IsHelper(4014)
value = 30

[State 4013, DestroySelf]
type = DestroySelf
trigger1 = Time >= 15

[StateDef 4100]
type = S
movetype = I
physics = N
ctrl = 0
Velset = 0,0
anim = 4100
facep2 = 1

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

[State 4100, VarAdd]
type = VarAdd
trigger1 = Var(49) > 0
trigger1 = Time = 0
var(49) = 300
ignorehitpause = 1

[State 4100, VarSet]
type = VarSet
trigger1 = Var(49) > 600
trigger1 = Time = 0
var(49) = 600
ignorehitpause = 1

[State 4100, VarRandom]
type = Varrandom
trigger1 = Time = 0
v = 0
range = 0,1

[State 4100, PowerAdd]
type = PowerAdd
trigger1 = Time = 0
value = -3000

[State 4100, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4100, NotHitBy]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 53

[State 4100, Pause]
type = Pause
trigger1 = Time = 0
time = 107
movetime = 107

[state ]
type=helper
stateno=20200
id=20200
postype=left
ownpal=1
pausemovetime=2147483647
supermovetime=2147483647
trigger1=time=0

[State 4100, Helper]
type = Helper
trigger1 = Time = 0
name = "EX2"
ID = 6210
stateno = 6210
pos = 5,-90
postype = p1
ownpal = 1
supermovetime = 99999
pausemovetime = 99999
ignorehitpause = 1

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S10000,5

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S4100,4
channel = 0

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Var(0) = 0
trigger1 = Time = 40
value = S4100,0
channel = 0

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Var(0) = 1
trigger1 = Time = 40
value = S4100,5
channel = 0

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Var(0) = 0
trigger1 = Time = 100
value = S4100,2
channel = 0

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Var(0) = 0
trigger1 = Time = 190
value = S4100,3
channel = 0

[State 4100, PlaySnd]
type = PlaySnd
trigger1 = Var(0) = 1
trigger1 = Time = 190
value = S4100,6
channel = 0

[State 4100, StateTypeSet]
type = StateTypeSet
trigger1 = AnimElem = 2
statetype = A
physics = N

[State 4100, Helper]
type = Helper
triggerall = NumHelper(211) = 0
triggerall = NumHelper(221) = 0 
triggerall = NumHelper(411) = 0
triggerall = NumHelper(421) = 0
triggerall = NumHelper(812) = 0
triggerall = NumHelper(1001) = 0
triggerall = NumHelper(1011) = 0
triggerall = NumHelper(1021) = 0
triggerall = NumHelper(1101) = 0
triggerall = NumHelper(1201) = 0
triggerall = NumHelper(1211) = 0
triggerall = NumHelper(1221) = 0
trigger1 = Time = 0
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 4103
ID = 4103
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335
pausemovetime = 99999

[State 4100, VelSet]
type = Velset
trigger1 = Time >= 0
trigger1 = Time < 3
y = -2

[State 4100, VelSet]
type = Velset
trigger1 = Time >= 3
y = 0

[State 4100, VelSet]
type = Velset
trigger1 = Time >= 107
x = -0.05

[State 4100, ChangeState]
type = ChangeState
trigger1 = Time >= 267
value = 4101

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

[State 4101, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

[State 4101, VelAdd]
type = VelAdd
trigger1 = Time > 0
y = 0.55

[State 4101, ChangeState]
type = ChangeState
trigger1 = vel Y > 0 && pos Y >= 0
value = 4102

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

[State 4102, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = NoBG
flag2 = NoFG
pausemovetime = 9999
supermovetime = 9999
ignorehitpause = 1

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

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

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

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

[StateDef 4103]
type = A
movetype = I
physics = N
sprpriority = 5
anim = 4103
velset = 0,0

[State 4103, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 4103, BindToRoot]
type = BindToRoot
trigger1 = Time = 0
pos = 60,-5

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

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = Time = 0
helpertype = Normal
name = "Blade"
pos = 50,-85
postype = p1
stateno = 4110
ID = 4110
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = Time = 0
helpertype = Normal
name = "Blade"
pos = 75,-85
postype = p1
stateno = 4110
ID = 4111
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 2
helpertype = Normal
name = "Blade"
pos = -30,-70
postype = p1
stateno = 4110
ID = 4112
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 2
helpertype = Normal
name = "Blade"
pos = 20,-65
postype = p1
stateno = 4110
ID = 4113
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 3
helpertype = Normal
name = "Blade"
pos = -40,-85
postype = p1
stateno = 4110
ID = 4114
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 3
helpertype = Normal
name = "Blade"
pos = 15,-79
postype = p1
stateno = 4110
ID = 4115
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 4
helpertype = Normal
name = "Blade"
pos = -35,-100
postype = p1
stateno = 4110
ID = 4116
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 4
helpertype = Normal
name = "Blade"
pos = 15,-95
postype = p1
stateno = 4110
ID = 4117
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = -30,-110
postype = p1
stateno = 4110
ID = 4118
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Anim = 4103
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = 15,-105
postype = p1
stateno = 4110
ID = 4119
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 44
helpertype = Normal
name = "Starburst"
pos = -50,20
postype = p1
stateno = 4106
ID = 4106
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 44
helpertype = Normal
name = "Starburst"
pos = 0,20
postype = p1
stateno = 4106
ID = 4107
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 48
helpertype = Normal
name = "Starburst"
pos = -80,0
postype = p1
stateno = 4106
ID = 4108
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 48
helpertype = Normal
name = "Starburst"
pos = 30,0
postype = p1
stateno = 4106
ID = 4109
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 52
helpertype = Normal
name = "Starburst"
pos = -100,-25
postype = p1
stateno = 4106
ID = 4110
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 52
helpertype = Normal
name = "Starburst"
pos = 50,-25
postype = p1
stateno = 4106
ID = 4111
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 56
helpertype = Normal
name = "Starburst"
pos = -110,-55
postype = p1
stateno = 4106
ID = 4112
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 56
helpertype = Normal
name = "Starburst"
pos = 60,-55
postype = p1
stateno = 4106
ID = 4113
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 60
helpertype = Normal
name = "Starburst"
pos = -110,-85
postype = p1
stateno = 4106
ID = 4114
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 60
helpertype = Normal
name = "Starburst"
pos = 60,-85
postype = p1
stateno = 4106
ID = 4115
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 64
helpertype = Normal
name = "Starburst"
pos = -100,-115
postype = p1
stateno = 4106
ID = 4116
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 64
helpertype = Normal
name = "Starburst"
pos = 50,-120
postype = p1
stateno = 4106
ID = 4117
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 68
helpertype = Normal
name = "Starburst"
pos = -80,-140
postype = p1
stateno = 4106
ID = 4118
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 68
helpertype = Normal
name = "Starburst"
pos = 30,-145
postype = p1
stateno = 4106
ID = 4119
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 72
helpertype = Normal
name = "Starburst"
pos = -50,-160
postype = p1
stateno = 4106
ID = 4120
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, Helper]
type = Helper
trigger1 = Time = 72
helpertype = Normal
name = "Starburst"
pos = 0,-160
postype = p1
stateno = 4106
ID = 4121
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4103, ChangeState]
type = ChangeState
trigger1 = Time >= 100
value = 4104

[State 4103, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100

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

[State 4104, PalFX]
type = PalFX
trigger1 = Root,Var(49) > 0
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 1
helpertype = Normal
name = "Blade"
pos = -15,-84
postype = p1
stateno = 4110
ID = 4120
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 1
helpertype = Normal
name = "Blade"
pos = 25,-84
postype = p1
stateno = 4110
ID = 4121
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 2
helpertype = Normal
name = "Blade"
pos = -25,-84
postype = p1
stateno = 4110
ID = 4120
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 2
helpertype = Normal
name = "Blade"
pos = 25,-80
postype = p1
stateno = 4110
ID = 4121
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 3
helpertype = Normal
name = "Blade"
pos = 25,-90
postype = p1
stateno = 4110
ID = 4122
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 3
helpertype = Normal
name = "Blade"
pos = 5,-70
postype = p1
stateno = 4110
ID = 4123
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 4
helpertype = Normal
name = "Blade"
pos = 25,-92
postype = p1
stateno = 4110
ID = 4124
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 4
helpertype = Normal
name = "Blade"
pos = 5,-70
postype = p1
stateno = 4110
ID = 4125
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = 50,-85
postype = p1
stateno = 4110
ID = 4126
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = 75,-85
postype = p1
stateno = 4110
ID = 4127
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = 50,-85
postype = p1
stateno = 4110
ID = 4126
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 5
helpertype = Normal
name = "Blade"
pos = 75,-85
postype = p1
stateno = 4110
ID = 4127
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 7
helpertype = Normal
name = "Blade"
pos = 50,-85
postype = p1
stateno = 4110
ID = 4128
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 7
helpertype = Normal
name = "Blade"
pos = 75,-85
postype = p1
stateno = 4110
ID = 4129
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 8
helpertype = Normal
name = "Blade"
pos = 50,-85
postype = p1
stateno = 4110
ID = 4130
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Anim = 4104
trigger1 = AnimElem = 8
helpertype = Normal
name = "Blade"
pos = 75,-85
postype = p1
stateno = 4110
ID = 4131
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999

[State 4104, VelSet]
type = Velset
trigger1 = AnimElemTime(3) >= 0
x = -0.1

[State 4104, Helper]
type = Helper
trigger1 = Time = 4
helpertype = Normal
name = "Starburst"
pos = 0,20
postype = p1
stateno = 4108
ID = 4107
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 8
helpertype = Normal
name = "Starburst"
pos = -100,-25
postype = p1
stateno = 4108
ID = 4110
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 16
helpertype = Normal
name = "Starburst"
pos = 60,-55
postype = p1
stateno = 4108
ID = 4113
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 28
helpertype = Normal
name = "Starburst"
pos = 30,0
postype = p1
stateno = 4108
ID = 4109
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 16
helpertype = Normal
name = "Starburst"
pos = -50,20
postype = p1
stateno = 4108
ID = 4106
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 28
helpertype = Normal
name = "Starburst"
pos = -110,-55
postype = p1
stateno = 4108
ID = 4112
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 42
helpertype = Normal
name = "Starburst"
pos = -80,0
postype = p1
stateno = 4108
ID = 4108
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 32
helpertype = Normal
name = "Starburst"
pos = -80,-140
postype = p1
stateno = 4108
ID = 4118
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 40
helpertype = Normal
name = "Starburst"
pos = -100,-115
postype = p1
stateno = 4108
ID = 4116
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 48
helpertype = Normal
name = "Starburst"
pos = 50,-120
postype = p1
stateno = 4108
ID = 4117
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 52
helpertype = Normal
name = "Starburst"
pos = 50,-25
postype = p1
stateno = 4108
ID = 4111
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 60
helpertype = Normal
name = "Starburst"
pos = -50,-160
postype = p1
stateno = 4108
ID = 4120
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 60
helpertype = Normal
name = "Starburst"
pos = -110,-85
postype = p1
stateno = 4108
ID = 4114
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 68
helpertype = Normal
name = "Starburst"
pos = 60,-85
postype = p1
stateno = 4108
ID = 4115
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 72
helpertype = Normal
name = "Starburst"
pos = 30,-145
postype = p1
stateno = 4108
ID = 4119
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = Time = 72
helpertype = Normal
name = "Starburst"
pos = 0,-160
postype = p1
stateno = 4108
ID = 4121
ownpal = 1
ignorehitpause = 1
pausemovetime = 99999
supermovetime = 99999

[State 4104, Helper]
type = Helper
trigger1 = AnimElem = 7
helpertype = Normal
name = "Stream"
pos = 0,-90
postype = p1
stateno = 4109
ID = 4109
ownpal = 1
ignorehitpause = 1

[State 4104, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = -40

[State 4104, VelSet]
type = VelSet
trigger1 = AnimElem = 8
x = 0

[State 4104, HitDef]
type = HitDef
trigger1 = Time = [10,80]
trigger1 = Time%5 = 0
damage = ceil(IfElse(Root,Var(10),24,20)*(root,fvar(1)*root,fvar(2))),2
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 0,60
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = -1
guardsound = -1
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -4
air.velocity = -2,-6.5
yaccel = .65
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
kill = 0
p1sprpriority = 5

[State 4104, PlaySnd]
type = PlaySnd
trigger1 = MoveHit = 1
value = S200,8
channel = 2

[State 4104, PlaySnd]
type = PlaySnd
trigger1 = MoveGuarded = 1
value = S300,0
channel = 2

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

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

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

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

[State 4104, AngleDraw]
type = AngleDraw
trigger1 = Time > 145
scale = 1-(time-145)*0.1,1+(Time-145)*0.1

[State 4104, Trans]
type = Trans
trigger1 = Time >= 145
trans = addalpha
alpha = var(59):=256-50*(time-145),256-var(59)

[State 4104, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 150

[StateDef 4106]
type = A
movetype = I
physics = N
ctrl = 0
anim = 4106
sprpriority = 6*(1-2*(parentdist x<0))

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

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

[State 4106, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 4
Scale = 0+(Time*0.2),0+(Time*0.2)

[State 4106, AngleDraw]
type = AngleDraw
trigger1 = Time >= 5
Scale = 1,1

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4107)
trigger1 = Time >= 60
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4110)
trigger1 = Time >= 56
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4113)
trigger1 = Time >= 60
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4109)
trigger1 = Time >= 80
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4106)
trigger1 = Time >= 72
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4112)
trigger1 = Time >= 72
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4108)
trigger1 = Time >= 96
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4118)
trigger1 = Time >= 64
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4116)
trigger1 = Time >= 76
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4117)
trigger1 = Time >= 84
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4111)
trigger1 = Time >= 100
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4120)
trigger1 = Time >= 88
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4114)
trigger1 = Time >= 100
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4115)
trigger1 = Time >= 100
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4119)
trigger1 = Time >= 104
value = 4107

[State 4106, ChangeState]
type = ChangeState
trigger1 = IsHelper(4121)
trigger1 = Time >= 104
value = 4107

[State 4106, DestroySelf]
Type = DestroySelf
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100

[StateDef 4107]
type = A
movetype = I
physics = N
sprpriority = 6*(1-2*(parentdist x<0))
anim = 4106
velset = 0,0

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

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

[State 4107, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 3
Scale = 2,2

[State 4107, AngleDraw]
type = AngleDraw
trigger1 = Time >= 4
trigger1 = Time <= 7
Scale = 2.4,2.4

[State 4107, AngleDraw]
type = AngleDraw
trigger1 = Time >= 8
Scale = 2.4-((Time-8)*0.8),2.4-((Time-8)*0.8)

[State 4107, AngleDraw]
type = AngleDraw
trigger1 = Time >= 10
Scale = 0,0

[State 4107, DestroySelf]
type = DestroySelf
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 10

[StateDef 4108]
type = A
movetype = I
physics = N
sprpriority = 10
anim = 4107
velset = 0,0

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

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

[State 4108, AngleDraw]
type = AngleDraw
trigger1 = Time >= 0
trigger1 = Time <= 2
Scale = 0+(Time*1),1.5

[State 4108, AngleDraw]
type = AngleDraw
trigger1 = Time >= 3
trigger1 = Time <= 7
Scale = 2.4,1.5

[State 4108, AngleDraw]
type = AngleDraw
trigger1 = Time >= 7
Scale = 2.4,0.5-((Time-7)*0.1)

[State 4108, AngleDraw]
type = AngleDraw
trigger1 = Time >= 12
Scale = 0,0

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4110)
value = 10

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4119)
value = -15

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4107)
value = 15

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4113)
value = 5

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4118)
value = -5

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4112)
value = 0

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4109)
value = 10

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4116)
value = -5

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4106)
value = 10

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4117)
value = -10

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4120)
value = -10

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4108)
value = 5

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4111)
value = 0

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4114)
value = -5

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4115)
value = -3

[State 4108, AngleSet]
type = AngleSet
trigger1 = IsHelper(4121)
value = -15

[State 4108, DestroySelf]
type = DestroySelf
trigger1 = Time >= 12
trigger2 = Root,MoveType = H
trigger3 = Root,StateNo != 4100

[StateDef 4109]
type = A
movetype = A
physics = N
sprpriority = 10
anim = 4108
velset = 0,0

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

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

[State 4109, AngleDraw]
type = AngleDraw
trigger1 = 1
Scale = 4,4
ignorehitpause = 1

[State 4109, VelSet]
type = VelSet
trigger1 = 1
x = 30
ignorehitpause = 1

[State 4109, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S100,14

[State 4109, HitDef]
type = HitDef
trigger1 = !MoveContact
damage = ceil(IfElse(Root,Var(10),120,100)*(root,fvar(1)*root,fvar(2))),10
attr = S,HA
animtype = heavy
guardflag = MA 
hitflag = MAF
pausetime = 10,10
priority = 7,Hit
sparkno = -1
guard.sparkno=-1
hitsound = S200,8
guardsound = S300,0
ground.type = low
ground.slidetime = 15
ground.hittime = 15
ground.velocity = -15,-7
air.velocity = -15,-7
yaccel = .65
fall = 1
air.fall = 1
fall.recover = 0
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 4
getpower = 0
p1sprpriority = 10

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

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

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

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

[State 4109, DestroySelf]
type = DestroySelf
trigger1 = FrontEdgeBodyDist <= -60

[StateDef 4110]
type = A
movetype = I
physics = N
velset = 0,0

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

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

[State 4110, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(4110)
trigger2 = IsHelper(4112)
trigger3 = IsHelper(4114)
trigger4 = IsHelper(4116)
trigger5 = IsHelper(4118)
trigger6 = IsHelper(4120)
trigger7 = IsHelper(4122)
trigger8 = IsHelper(4124)
trigger9 = IsHelper(4126)
trigger10 = IsHelper(4128)
trigger11 = IsHelper(4130)
value = 4109

[State 4110, ChangeAnim]
type = ChangeAnim
trigger1 = IsHelper(4111)
trigger2 = IsHelper(4113)
trigger3 = IsHelper(4115)
trigger4 = IsHelper(4117)
trigger5 = IsHelper(4119)
trigger6 = IsHelper(4121)
trigger7 = IsHelper(4123)
trigger8 = IsHelper(4125)
trigger9 = IsHelper(4127)
trigger10 = IsHelper(4129)
trigger11 = IsHelper(4131)
value = 4110

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4110)
trigger2 = IsHelper(4126)
pos = -11,-85

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4111)
trigger2 = IsHelper(4127)
pos = 15,-85

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4124)
pos = 25,-90

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4125)
pos = 10,-72

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4128)
trigger2 = IsHelper(4130)
pos = -35,-65

[State 4110, BindToParent]
type = BindToParent
trigger1 = IsHelper(4129)
trigger2 = IsHelper(4131)
pos = 13,-72

[State 4110, SprPriority]
type = SprPriority
trigger1 = IsHelper(4110)
trigger2 = IsHelper(4126)
value = 9

[State 4110, SprPriority]
type = SprPriority
trigger1 = !IsHelper(4110)
trigger1 = !IsHelper(4126)
value = 8

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4110)
trigger2 = IsHelper(4111)
trigger3 = IsHelper(4112)
trigger4 = IsHelper(4118)
trigger5 = IsHelper(4126)
trigger6 = IsHelper(4127)
trigger7 = IsHelper(4128)
trigger8 = IsHelper(4129)
trigger9 = IsHelper(4130)
trigger10 = IsHelper(4131)
Scale = 1,1

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4113)
Scale = 0.8,0.8

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4114)
Scale = 1.2,1.2

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4115)
Scale = 0.4,0.4

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4116)
Scale = 1.1,1.1

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4117)
Scale = 0.4,0.5

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4119)
Scale = 0.4,0.55

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4120)
Scale = 0.75,0.5

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4121)
Scale = 0.7,0.5

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4122)
trigger2 = IsHelper(4124)
Scale = 1.1,0.7

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4123)
trigger2 = IsHelper(4125)
Scale = 0.2,0.3

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4110)
trigger2 = IsHelper(4126)
value = 45

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4111)
trigger2 = IsHelper(4127)
value = 120

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4112)
value = -113

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4113)
value = -35

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4114)
value = -175

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4115)
value = -35

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4116)
value = -210

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4117)
value = 40

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4118)
value = -220

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4119)
value = 50

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4120)
value = -190

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4121)
value = 170

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4122)
value = 12

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4124)
value = 11

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4123)
trigger2 = IsHelper(4125)
value = -5

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4128)
value = -130

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4129)
value = -65

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4130)
value = -125

[State 4110, AngleSet]
type = AngleSet
trigger1 = IsHelper(4131)
value = -60

[State 4110, AngleDraw]
type = AngleDraw
trigger1 = IsHelper(4130)
trigger1 = Time > 50
trigger2 = IsHelper(4131)
trigger2 = Time > 50
scale = 1-(time-50)*0.1,1+(Time-50)*0.1

[State 4110, Trans]
type = Trans
trigger1 = IsHelper(4130)
trigger1 = Time >= 50
trigger2 = IsHelper(4131)
trigger2 = Time >= 50
trans = addalpha
alpha = var(59):=256-50*(time-50),256-var(59)

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4110)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 50

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4111)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 50

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4112)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4113)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4108, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4114)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4115)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4116)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4117)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 4

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4118)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 38

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4119)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 38

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4120)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 3

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4121)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 3

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4122)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 3

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4123)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 3

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4124)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 57

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4125)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 57

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4126)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 24

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4127)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 24

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4128)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 5

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4129)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 5

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4130)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 55

[State 4110, DestroySelf]
type = DestroySelf
triggerall = IsHelper(4131)
trigger1 = Root,MoveType = H
trigger2 = Root,StateNo != 4100
trigger3 = Time >= 55

[StateDef 6000]
Type = S
Physics = S
MoveType = A
Anim = 6000
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 6000, VarSet]
type = VarSet
trigger1 = AnimElem = 3
V = 46
Value = 1

[State 6000, VarAdd]
type = VarAdd
trigger1 = AnimElem = 3
var(45) = -50
ignorehitpause = 1

[State 6000, VarSet]
type = VarAdd
triggerall = Var(47) < 3
trigger1 = Var(46) = 1
trigger1 = time = 11
trigger1 = Var(49) <= 0
v = 47
Value = 1

[State 6000, PowerAdd]
type = PowerAdd
trigger1 = Var(46) = 1
trigger1 = time = 10
trigger1 = Var(47) < 3
trigger1 = Var(49) <= 0
value = 200

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

[State 6000, HitDef]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 10
animtype = Heavy
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0,30
guard.pausetime = 0,16
sparkno = -1+(0*(var(41) := 8052))
guard.sparkno = -1+(0*(var(42) := 9000))
sparkxy = 0,0+(0*(var(43) := 100 && var(44) := -65))
hitsound = S200,2
guardsound = S300,0
ground.type = high
ground.slidetime = 18
ground.hittime = 18
ground.velocity = -3
airguard.ctrltime = 2
guard.velocity = -3
air.velocity = -1.5,-4.4
envshake.time = 9
envshake.ampl = 3
getpower = 0
givepower = 15
yaccel = 0.4

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

[State 6000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 3
value = S10000,4

[State 6000, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1
value = S6000,0+Random%5
Channel = 0

[State 6000, Helper]
type = Helper
trigger1 = AnimElem = 3
Helpertype = normal
StateNo = 6001
ID = 6001
name = "Burst"
postype = p1
pos = ceil(0 * const(size.xscale)), ceil(-53 * const(size.yscale))
size.xscale = 1
size.yscale = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ownpal = 1

[State 6000, Helper]
type = Helper
trigger1 = AnimElem = 3
helpertype = normal
stateno = 6002
ID = 6002
name = "MAX"
postype = p1
pos = ceil(-6 * const(size.xscale)), ceil(-64 * const(size.yscale))
size.xscale = 0.335
size.yscale = 0.335
pausemovetime=-2**31-1
supermovetime=-2**31-1
ownpal = 1

[State 6000, helper]
type = Helper
trigger1 = AnimElem = 3
stateno = 6003
ID = 6003
Name = "Cooldown"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

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

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

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

[State 6001, Explod]
type = Explod
trigger1 = Time = 0
Anim = 6020
ID = 6020
sprpriority = 3
postype = p1
pos = 0,-50
removetime = 16
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

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

[State 6001, Explod]
type = Explod
trigger1 = time = 0
anim = 6021
ID = 6021
sprpriority = -2
postype = p1
pos = 0,-ceil(pos y)
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

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

[StateDef 6002]
anim = 0
ctrl = 0
sprpriority = -6

[State 6002, Bindtoroot]
type = BindToRoot
trigger1 = 1

[State 6002, Turn]
type = turn
trigger1 = facing != Root,facing

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

[State 6002, VarSet]
type = VarSet
trigger1 = Root,HitPauseTime = 0
var(0) = Root,AnimElemNo(0)

[State 6002, Anim]
type = ChangeAnim
triggerall = SelfAnimExist(Root,Anim)
triggerall = AnimExist(Root,Anim)
trigger1 = Root,Anim < 6003
value = Root,Anim
elem = Var(0)

[State 6002, Anim]
type = ChangeAnim
triggerall = SelfAnimExist(Root,Anim)
triggerall = AnimExist(Root,Anim)
triggerall = Root,HitPauseTime > 0
trigger1 = Root,AnimElemNo(0) > AnimElemNo(0)
value = Root,Anim
elem = Root,AnimElemNo(0)

[State 6002, AssertSpecial]
type = AssertSpecial
trigger1 = Time <= 0
trigger2 = !SelfAnimExist(Root,Anim)
trigger3 = !AnimExist(Root,Anim)
trigger4 = Root,StateNo >= 160
trigger4 = Root,StateNo < 5000
trigger4 = Root,MoveType = H
trigger5 = Root,StateNo >= 6000
trigger5 = Root,MoveType = H
trigger6 = Root,Anim >= 160
trigger6 = Root,Anim < 5000
trigger6 = Root,MoveType = H
trigger7 = Root,Anim >= 6000
trigger7 = Root,MoveType = H
trigger8 = Root,Stateno = [190,194]
trigger9 = Root,Stateno = 5150
flag = Invisible

[State 6002, AngleDraw]
type = angledraw
trigger1 = 1
scale = 1+var(1)*.002,1+var(1)*.0015

[State 6002, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256, 256

[State 6002, PalFx]
type = PalFX
trigger1 = 1
time = 1
add = 255,-220,-220
invertall = 0
color = 256

[State 6002, VarAdd]
type = varadd
trigger1 = 1
var(2) = 1

[State 6002, VarAdd]
type = varadd
trigger1 = var(2) <= 30
var(1) = 1

[State 6002, VarAdd]
type = varadd
trigger1 = var(2) > 30
var(1) = -1

[State 6002, VarAdd]
type = varset
trigger1 = var(2) >= 60
var(2) = 0

[State 6002, DestroySelf]
type = DestroySelf
trigger1 = Root,Var(46) = 0

[StateDef 6003]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 6003, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[State 6003, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

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

[State 6003, Explod]
type = explod
trigger1 = Time = 0
id = 6022
anim = 6022
pos = Ifelse(Teamside = 1,34,282),ifelse(1.0*gamewidth/gameheight<1.34,227,167)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6003, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 300
id = 6022

[State 6003, DestroySelf]
type = DestroySelf
trigger1 = Time >= 300

[StateDef 6004]
type = A
movetype = I
physics = N
anim = 99999
ctrl = 0
velset = 0,0
sprpriority = -99

[State 6004, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[State 6004, VarRandom]
type = Varrandom
trigger1 = Time = 0
v = 1
range = 0,1

[State 6004, nothitby]
type = nothitby
trigger1 = 1
value = SCA
time = 999

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

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 0
trigger1 = IsHelper(6004)
trigger1 = Time = 0
value = S1420,0

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 1
trigger1 = IsHelper(6004)
trigger1 = Time = 0
value = S1420,1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 0
trigger1 = IsHelper(6004)
trigger1 = time = 0
ID = 6040
anim = IfElse(Teamside = 1,6041,6051)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 1
trigger1 = IsHelper(6004)
trigger1 = time = 0
ID = 6040
anim = IfElse(Teamside = 1,6040,6050)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 0
trigger1 = IsHelper(181)
trigger1 = Time = 0
value = S1440,0

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 1
trigger1 = IsHelper(181)
trigger1 = Time = 0
value = S1440,1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 0
trigger1 = IsHelper(181)
trigger1 = time = 0
ID = 6060
anim = IfElse(Teamside = 1,6060,6070)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 1
trigger1 = IsHelper(181)
trigger1 = time = 0
ID = 6060
anim = IfElse(Teamside = 1,6061,6071)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 0
trigger1 = IsHelper(6080)
trigger1 = Time = 0
value = S1450,0

[State 6004, PlaySnd]
type = PlaySnd
trigger1 = Var(1) = 1
trigger1 = IsHelper(6080)
trigger1 = Time = 0
value = S1450,1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 0
trigger1 = IsHelper(6080)
trigger1 = time = 0
ID = 6080
anim = IfElse(Teamside = 1,6080,6090)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, Explod]
type = explod
trigger1 = Var(1) = 1
trigger1 = IsHelper(6080)
trigger1 = time = 0
ID = 6080
anim = IfElse(Teamside = 1,6081,6091)
pos = Ifelse(Teamside = 1,62,257),ifelse(1.0*gamewidth/gameheight<1.34,227,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6040

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6060

[State 6004, RemoveExplod]
type = RemoveExplod
trigger1 = Time >= 120
id = 6080

[StateDef 6005]
Type = S
Physics = S
MoveType = I
Anim = 6001
VelSet = 0,0
ctrl = 0
sprpriority = 2

[State 6005, VarSet]
type = VarSet
trigger1 = Time = 0
V = 46
Value = 0

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

[StateDef 6010]
movetype = I
physics = N
anim = 99999
ctrl = 0

[State -2, VarSet]
type = ParentVarSet
trigger1 = root,Var(45) > 500
v = 45
Value = 500

[State -2, VarSet]
type = ParentVarSet
trigger1 = root,Var(45) < 0
v = 45
Value = 0

[State 6010, Null]
type = Null
trigger1 = Root,NumPartner!=0
trigger1 = (Partner,ID) < (Root,ID)
trigger1 = Partner,Authorname = "Kohaku"
trigger1 = var(0):=1

[state ]
type=removeexplod
trigger1=var(1)-root,var(45)/100
trigger1=0*(var(1):=root,var(45)/100)*(var(5):=1)
trigger2=var(2)-(root,var(45)/10)%10
trigger2=0*(var(2):=(root,var(45)/10)%10)*(var(5):=1)
trigger3=var(3)-root,var(45)%10
trigger3=0*(var(3):=root,var(45)%10)*(var(5):=1)
trigger4=var(4)-root,var(47)
trigger4=0*(var(4):=root,var(47))*(var(5):=1)
trigger5=var(5)
trigger5=1||(var(5):=0)

[State 6010, Explod]
type = explod
trigger1 = Numexplod(6010)=0
ID = 6010
anim = IfElse(Teamside = 1,6010,6011)
pos = Ifelse(Teamside = 1,5,314),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6012) = 0
id = 6012
anim = 6012
pos = Ifelse(Teamside = 1,6,313),ifelse(1.0*gamewidth/gameheight<1.34,235,175)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 0
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6012
Scale = .5*Root,Var(45)/500,0.50

[State 6010, PalFX]
type = PalFx
trigger1 = Root,Var(46)
time = 1
add = (-12*(time+10))%240+240,(-12*(time+10))%240+240,(-12*(time+10))%240+240

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6013) = 0
id = 6013
anim = 6013
pos = Ifelse(Teamside = 1,70,248),ifelse(1.0*gamewidth/gameheight<1.34,228,168)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, ModifyExplod]
type = modifyexplod
trigger1 = 1
id = 6013
Scale = .5*Root,Var(48)/420,0.50

[State 6010, Explod]
type = explod
trigger1 = NumExplod(6014) = 0
trigger1 = var(4)
id = 6014
anim = 6013+var(4)+3*(var(4)>6)
pos = Ifelse(Teamside = 1,3,316),ifelse(1.0*gamewidth/gameheight<1.34,229,169)-(20*(var(0)))
postype = left
scale = 0.5,0.5
ownpal = 1
bindtime = -1
removetime = -1
ontop = 1
facing = ifelse(teamside=1,1,-1)
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6030) = 0
anim = 6030+Var(1)
ID = 6030
pos = Ifelse(Teamside = 1,113,190),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6031) = 0
anim = 6030+Var(2)
ID = 6031
pos = Ifelse(Teamside = 1,119,196),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

[State 6010, Explod]
type = Explod
trigger1 = NumExplod(6032) = 0
anim = 6030+Var(3)
ID = 6032
pos = Ifelse(Teamside = 1,125,202),ifelse(1.0*gamewidth/gameheight<1.34,238,178)-(20*(var(0)))
postype = left
bindtime = -1
removetime = -1
scale = 0.5,0.5
ontop = 1
ownpal = 1
pausemovetime=-1
supermovetime=-1

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

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

[State 6200, ChangeAnim]
type = ChangeAnim
trigger1 = 1
value = Root,Anim
elem = Root,AnimElemNo(0)

[state 6200, Trans]
type = trans
trigger1 = 1||(fvar(0):=sin(time*pi/120))+(fvar(1):=sin(time*pi/60))
trans = AddAlpha
alpha = floor(256*(1-fvar(0))+.5),floor(256*fvar(0)+.5)

[State 6200, AngleDraw]
type = AngleDraw
trigger1 = 1
scale = 1+.25*fvar(1),1+.25*fvar(1)

[State 6200, PosSet]
type = Posset
trigger1 = 1
x = Root,Pos x
y = Root,Pos y+16*fvar(1)

[State 6200, PalFX]
type = PalFX
trigger1 = !time
time = -1
mul = 0,128,256
trigger1 = !time

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6200
ID = 6200
sprpriority = 20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
anim = 6201
ID = 6201
sprpriority = 20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6202
ID = 6202
sprpriority = -20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, Explod]
type = Explod
trigger1 = time = 0
Anim = 6203
ID = 6200
sprpriority = -20
postype = p1
pos = -10,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 0.5,0.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, DestroySelf]
type = DestroySelf
trigger1 = Time >= 60
trigger2 = Root,MoveType = H

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

[State 6210, Explod]
type = Explod
trigger1 = time = 0
Anim = 6210
ID = 6210
sprpriority = 20
postype = p1
pos = 0,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 1,1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6210, Explod]
type = Explod
trigger1 = time = 0
anim = 6211
ID = 6211
sprpriority = 20
postype = p1
pos = 0,0
bindtime = 1
ignorehitpause = 1
persistent = 0
under = 0
ownpal = 1
scale = 1.5,1.5
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State 6200, DestroySelf]
type = DestroySelf
trigger1 = Time >= 33

[StateDef 8030]
type = A
anim = 99999
velset = 0, 0
sprpriority = 5

[State 8030, PosSet]
type = PosSet
trigger1 = !time = 0
y = 0

[State 8030, Explod]
type = Explod
trigger1 = time = 0 || time = 3 || time = 6
anim = 8030
ID = ifelse((time = 6), 8032, ifelse((time = 3), 8031, 8030))
postype = p1
pos = 0, -4
random = 8, 8
vel = -3 -(random / 1000.0), -2 -(random / 2000.0)
facing = ifelse(random < 500, -1, 1)
vfacing = ifelse(random < 500, -1, 1)
removetime = 16
sprpriority = 3
pausemovetime = -1
supermovetime = -1

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8030)
ID = 8030
scale = 0.1 + (0.025 * time), 0.1 + (0.025 * time)
trans = addalpha
alpha = 256 -(16 * time), 256

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8031)
ID = 8031
scale = 0.1 + (0.025 * (time -3)), 0.1 + (0.025 * (time -3))
trans = addalpha
alpha = 256 -(16 * (time -3)), 256

[State 8030, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8032)
ID = 8032
scale = 0.1 + (0.025 * (time -6)), 0.1 + (0.025 * (time -6))
trans = addalpha
alpha = 256 -(16 * (time -6)), 256

[State 8030, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 22

[State 8030, DestroySelf]
type = DestroySelf
trigger1 = !NumExplod

[StateDef 8050]
type = A
physics = N
movetype = I
anim = 8050
velset=0,0
sprpriority=5

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

[State 8050, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8050, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8050, AngleDraw]
type = AngleDraw
trigger1 = time < 10
scale = .3-(time*.03), .3-(time*.03)

[State 8050, AngleDraw]
type = AngleDraw
trigger1= time >= 10
scale = 0,0

[State 8050, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8050, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale = .15+(.009375*time),.15+(.009375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8050, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8052)
ID = 8052
scale = .15+(.009375*time),.15+(.009375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8050, Explod]
type = Explod
trigger1= !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8050, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8053)
ID = 8053
scale = .3-(.0375*time),.3-(.0375*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8050, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

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

[StateDef 8051]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

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

[State 8051, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8051, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8051, AngleDraw]
type = AngleDraw
trigger1 = time<10
scale = .35-(time*.035), .35-(time*.035)

[State 8051, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8051, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale =.175+(.0109375*time),.175+(.0109375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8052)
ID = 8052
scale = .175+(.0109375*time),.175+(.0109375*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8051, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8051, ModifyExplod]
type = ModifyExplod
trigger1= NumExplod(8053)
ID = 8053
scale = .35-(.04375*time),.35-(.04375*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8051, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

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

[StateDef 8052]
type = A
physics = N
movetype = I
anim = 8050
velset=0,0
sprpriority=5

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

[State 8052, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8052, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8052, AngleDraw]
type = AngleDraw
trigger1 = time < 10
scale = .4-(time*.04), .4-(time*.04)

[State 8052, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8052, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8051)
ID = 8051
scale =.2+(.0125*time),.2+(.0125*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8052)
ID = 8052
scale = .2+(.0125*time),.2+(.0125*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8052, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8052, ModifyExplod]
type = ModifyExplod
trigger1 = NumExplod(8053)
ID = 8053
scale = .4-(.05*time),.4-(.05*time)
trans = addalpha
alpha = 128-(16*time),256

[State 8052, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

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

[StateDef 8053]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

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

[State 8053, AngleSet]
type = AngleSet
trigger1 = !time
value = 30*(random%12)

[State 8053, AngleAdd]
type = AngleAdd
trigger1 = 1
value = 30

[State 8053, AngelDraw]
type = AngleDraw
trigger1 = time < 10
scale = .5-(time*.05), .5-(time*.05)

[State 8053, AngleDraw]
type = AngleDraw
trigger1 = time >= 10
scale = 0,0

[State 8053, Trans]
type = Trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8051)
ID = 8051
scale = .25+(.015625*time),.25+(.015625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8052)
ID = 8052
scale = .25+(.015625*time),.25+(.015625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8054
ID = 8054
postype = p1
vfacing = ifelse(random < 500,-1,1)
sprpriority = -3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8054)
ID = 8054
scale = .5,.5
trans = addalpha
alpha = 256-(32*time),256

[State 8053, Explod]
type = Explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8053, ModifyExplod]
type = ModifyExplod
trigger1 = numexplod(8053)
ID = 8053
scale = .5-(.0625*time),.5-(.0625*time)
trans = addalpha
alpha = 256-(32*time),256

[State 8053, RemoveExplod]
type = RemoveExplod
trigger1 = time >= 16

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

[StateDef 8054]
type = A
physics = N
movetype = I
anim = 8050
velset = 0,0
sprpriority = 5

[State 8054, AssertSpecial]
type = assertspecial
trigger1 = 1
flag = noshadow

[State 8054, Angle]
type = angleset
trigger1 = !time
value = 30*(random%12)

[State 8054, AngleAdd]
type = angleadd
trigger1 = 1
value = 30

[State 8054, AngleDraw]
type = angledraw
trigger1 = time < 10
scale = .45-(time*.045), .45-(time*.045)

[State 8054, AngleDraw]
type = angledraw
trigger1 = time >= 10
scale = 0,0

[State 8054, Trans]
type = trans
trigger1 = 1
trans = addalpha
alpha = 256,256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8051
ID = 8051
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8051)
ID = 8051
scale = .225+(.0140625*time),.225+(.0140625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8052
ID = 8052
postype = p1
facing = ifelse(random<500,-1,1)
vfacing = ifelse(random<500,-1,1)
sprpriority = 5
removetime = 16
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8052)
ID = 8052
scale = .225+(.0140625*time),.225+(.0140625*time)
trans = addalpha
alpha = 256-(16*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8054
ID = 8054
postype = p1
vfacing = ifelse(random < 500,-1,1)
sprpriority = -3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8054)
ID = 8054
scale = .4,.4
trans = addalpha
alpha = 256-(32*time),256

[State 8054, Explod]
type = explod
trigger1 = !time
anim = 8053
ID = 8053
postype = p1
facing = ifelse(random < 500,-1,1)
vfacing = ifelse(random < 500,-1,1)
sprpriority = 3
removetime = 8
pausemovetime = -1
supermovetime = -1

[State 8054, ModifyExplod]
type = modifyexplod
trigger1 = numexplod(8053)
ID = 8053
scale = .45-(.05625*time),.45-(.05625*time)
trans = addalpha
alpha = 192-(24*time),256

[State 8054, RemoveExplod]
type = RemoveExplod
trigger1= time >= 16

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

[StateDef 8100]
type = A
velSet = 0,0
anim = 99999

[State 8100, VarSet]
type = VarSet
trigger1 = !Time
var(0) = Parent,var(43)

[State 8100, PosSet]
type = PosSet
trigger1 = PlayerIDexist(var(0))
x = ceil(PlayerID(var(0)), pos x)
y = ceil(PlayerID(var(0)), pos y) + (PlayerID(var(0)), const(size.mid.pos.y))

[State 8100, PosSet]
type = PosSet
trigger1 = PlayerIDexist(var(0))
trigger1 = PlayerID(var(0)), StateType = L
x = ceil(PlayerID(var(0)), pos x)
y = ceil(PlayerID(var(0)), pos y) - 20

[State 8100, Turn]
type = Turn
trigger1 = PlayerIDexist(var(0))
trigger1 = Facing != (PlayerID(var(0)), Facing)

[State 8100, Explod]
type = Explod
trigger1 = PlayerIDexist(var(0))
anim = 8100
sprPriority = 3
posType = P1
random = 40,40
vel = (Random / 2000.0), -0.5 - (Random / 2000.0)
facing = ifElse(Random < 500, -1, 1)
vfacing = ifElse(Random < 500, -1, 1)
scale = 0.5,0.5
ownpal = 1

[State 8100, Explod]
type = Explod
trigger1 = PlayerIDexist(var(0))
anim = 8100
sprPriority = 3
posType = P1
random = 60,60
vel = (Random / 2000.0), -0.5 - (Random / 2000.0)
facing = ifElse(Random < 500, -1, 1)
vfacing = ifElse(Random < 500, -1, 1)
scale = 0.5,0.5
ownpal = 1

[State 8100, DestroySelf]
type = DestroySelf
triggerAll = PlayerIDexist(var(0))
trigger1 = PlayerID(var(0)), ctrl
trigger2 = PlayerID(var(0)), Movetype != H || PlayerID(var(0)), StateNo = 5300
trigger3 = PlayerID(var(0)), StateType = L && (PlayerID(var(0)), StateNo != [5080,5081])

[StateDef 8700]
type = A
physics = N
velset = 0,0
anim = 99999

[State 8700, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S8700,0
channel = 2

[State 8700, Explod]
type = explod
trigger1 = Time = 0
anim = IfElse(TeamSide = 1,8700,8701)
pos = IfElse(Teamside = 1,0,320),110
ID = 8700
sprpriority = -1
postype = Left
removetime = 60
BindTime = -1
pausemovetime = -1
supermovetime = -1
ownpal = 1
scale = 0.335,0.335

[State 8700, RemoveExplod]
type = removeexplod
trigger1 = time >= 60

[State 8700, DestroySelf]
type = destroyself
trigger1 = time >= 60

[StateDef 8710]
type = A
physics = N
velset = 0,0
anim = 99999

[State 8710, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = S8710,0+Random%3
channel = 2

[State 8710, Explod]
type = explod
trigger1 = Time = 0
anim = IfElse(TeamSide = 1,8710,8711)
pos = IfElse(Teamside = 1,0,320),125
ID = 8710
sprpriority = -1
postype = Left
removetime = 60
BindTime = -1
pausemovetime = -1
supermovetime = -1
ownpal = 1
scale = 0.335,0.335

[State 8710, RemoveExplod]
type = removeexplod
trigger1 = time >= 60

[State 8710, DestroySelf]
type = destroyself
trigger1 = time >= 60

[StateDef 9000]
type = A
physics = N
movetype = I
anim = 9000
velset = 0,0
sprpriority = 5

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

[State 9000, AnglDraw]
type = AngleDraw
trigger1 = 1
scale = .125+(.046875*time), .125+(.046875*time)

[State 9000, Trans]
type = Trans
trigger1 = time < 4
trans = addalpha
alpha = 256, 256

[State 9000, Trans]
type = Trans
trigger1 = time >= 4
trans = addalpha
alpha = 256 - 64*(time-4), 256

[State 9000, DstroySelf]
type = DestroySelf
trigger1 = time >= 8

[statedef 20200]
anim=99999
[state ]
type=null
time=50
anim=-1
p2defmul=1
darken=0
trigger1=1||(var(0):=5*(random%3))||(var(1):=(floor((1.3333333 * GameHeight / GameWidth) * 121))-120)
[state ]
type=explod
anim=20200
id=20200
facing=root,facing
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=1
[state ]
type=explod
anim=20215
id=20200
facing=root,facing
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=1
[state ]
type=explod
anim=20202
id=20200
facing=root,facing
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=1
[state ]
type=explod
anim=20201
id=20200
facing=root,facing
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=1
[state ]
type=explod
anim=20200+var(0)
id=20200
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=var(0)
[state ]
type=explod
anim=20202+var(0)
id=20200
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=var(0)
[state ]
type=explod
anim=20201+var(0)
id=20200
scale=.33333333,.33333333
ontop=1
pausemovetime=2147483647
supermovetime=2147483647
postype=left
pos=160,var(1)
trigger1=var(0)
[state ]
type=playsnd
value=s20200,random%4
volumescale=140
abspan=0
trigger1=1
[state ]
type=changestate
value=20201
trigger1=1
[statedef 20201]
[state ]
type=destroyself
trigger1=numexplod=0
[state ]
type=modifyexplod
id=20200
postype=left
pos=160,var(1)
trigger1=1
[state ]
type=modifyexplod
id=20203
postype=left
pos=0,0
trigger1=numexplod(20203)

;---------------------------------------------------------------------------
; States that are always executed (use statedef -2)
;---------------------------------------------------------------------------
[StateDef -2]

[State -2, PlaySnd]
type = playsnd
triggerall = alive && time = 1
triggerall = stateno = 5000 || stateno = 5010
trigger1 = gethitvar(animtype) >= 2 && random < 500
trigger2 = gethitvar(animtype) = 1 && random < 500
trigger3 = gethitvar(animtype) = 0 && random < 500
value = S5000,0+random%9
channel = 0
ignorehitpause = 1

[State -2, PlaySnd]
type = playsnd
triggerall = alive && time = 1
trigger1 = (stateno = 5000 || stateno = 5010) && numenemy
trigger1 = gethitvar(fall) || (enemynear, hitdefattr = SCA, SA, HA)
trigger2 = (stateno = 5020 || stateno = 5070 || stateno = 5080)
trigger3 = (stateno = 5050 || stateno = 5100) && (prevstateno != [5000, 5199])
value = S5000,0+random%9
channel = 0
ignorehitpause = 1

[State -2, PlaySnd]
type = PlaySnd
triggerall = time = 1
trigger1 = StateNo = [5200,5210]
value = S5200,0+Random%3
persistent = 0
channel = 0

[State -2, PlaySnd]
type = PlaySnd
triggerall = time = 1
trigger1 = stateno = 5120
value = S5200,0+Random%3
persistent = 0
channel = 0

[State -2, VarSet]
type = Varset
trigger1 = numenemy
fvar(0) = enemynear,gethitvar(hitcount)
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = numenemy
trigger1 = (enemynear,movetype!=H)
trigger2 = !numenemy
fvar(0) = 1

[State -2, VarSet]
type = VarSet
trigger1 = 1
fvar(1) = ifelse(fvar(0) = 0, 1, ifelse(fvar(0) = 1, 1, .96875**fvar(0)))
ignorehitpause = 1

[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = 1
value = fvar(1)*fvar(2)
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = 1
fvar(2) = IfElse(Var(46) = 1,1.1,1)

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

[State -2, Helper]
type = Helper
trigger1 = var(40) = hitpausetime
trigger1 = var(41) >0 || var(42) > 0
trigger1 = MoveContact = 1
helpertype = normal
name="Hit_Spark"
stateNo = Ifelse(MoveGuarded, var(42),var(41))
ID = 8050
postype = p1
pos = Ifelse(P2Dist x < 0, 0, Ifelse(P2Dist x < var(43), ceil(P2Dist x), var(43))), var(44)
ownpal = 1
keyctrl = 0
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
size.xscale = 1
size.yscale = 1

[State -2, Helper]
type = Helper
trigger1 = MoveHit = 1 && Var(40) = HitPauseTime
trigger1 = NumEnemy && Var(10)
trigger1 = !(HitDefAttr = SCA, AT) && (EnemyNear,MoveReversed != 1)
helpertype = normal
stateno = 8700
ID = 8700
name = "Counter"
postype = p1
pos = ifelse(p2dist x<40, 40, ifelse(p2dist x<140, ceil(p2dist x), 140)), -70
ownpal = 1
size.xscale = 1
size.yscale = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1

[State -2, VarSet]
type = Varset
trigger1 = NumEnemy
var(10) = (EnemyNear,MoveType = A)
ignorehitpause = 1

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

[State -2, VarRangeSet]
type = VarRangeSet
trigger1 = movetype = I
trigger2 = movetype = H && time
trigger3 = var(41)>0||var(42)>0
trigger3 = movecontact=1
first = 40
last = 44
value = -1
ignorehitpause = 1

[State -2, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = Var(45) <= 0
trigger2 = Var(46) = 0
trigger2 = Var(45) <=0
v = 45
Value = 0

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveHit = 1
trigger1 = StateNo != [800,810]
trigger1 = StateNo != 950
trigger1 = StateNo != [1300,1309]
trigger1 = StateNo != [2000,4999]
v = 45
value = 12

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
trigger1 = MoveGuarded = 1
trigger1 = StateNo != [800,810]
trigger1 = StateNo != 950
trigger1 = StateNo != [1300,1309]
trigger1 = StateNo != [2000,4999]
v = 45
value = 6

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 1
trigger1 = MoveContact = 1
trigger1 = StateNo != [800,810]
trigger1 = StateNo != 950
trigger1 = StateNo != [1300,1309]
trigger1 = StateNo != 6000
trigger1 = StateNo != [2000,4999]
v = 45
value = -15

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
trigger1 = MoveType = H
trigger1 = GetHitVar(damage)!=0
trigger1 = StateNo != [120,159]
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
trigger1 = MoveType = H
trigger1 = GetHitVar(damage)!=0
trigger1 = StateNo = [120,159]
v = 45
value = 2

[State -2, VarAdd]
type = VarAdd
triggerall = Var(45) <= 500
triggerall = Var(46) = 0
triggerall = Alive
triggerall = RoundState = 2
triggerall = ((Life*100)/LifeMax) <= 20
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
trigger1 = Gametime%10 = 0
v = 45
value = 1

[State -2, VarSet]
type = VarSet
trigger1 = Var(46) = 1
trigger1 = Var(45) <= 0
v = 46
Value = 0

[State -2, VarSet]
type = VarSet
trigger1 = RoundState < 2
trigger1 = Var(48) != 420
trigger2 = Var(48) > 420
var(48) = 420

[State -2, VarAdd]
type = VarAdd
triggerall = !(Numhelper(1401) || NumHelper(1411) || NumHelper(1412) || NumHelper(1414))
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
trigger1 = Var(48) < 420
trigger1 = time
v = 48
value = 1
ignorehitpause = 1

[State -2, VarAdd]
type = VarAdd
trigger1 = var(49) > 0
trigger1 = !numhelper(20100)
trigger1 = StateNo != 3000
trigger1 = StateNo != [4000,4199]
var(49) = -1
IgnoreHitPause = 1

[State -2, VarSet]
type = VarSet
trigger1 = RoundState = 1 
v = 49
value = 0

;[State -2, VarAdd];Testing Purposes
;type = VarAdd
;triggerall = Var(45) <= 500
;trigger1 = Command = "b"
;v = 45
;value = 500

;[State -2, VarSet];Testing Purposes
;type = VarSet
;triggerall = Var(47) <= 3
;trigger1 = Command = "c"
;v = 47
;value = 3

[State -2, PalFX]
type = PalFX
triggerall = Var(46) = 1
trigger1 = !(GameTime % 2)
time = 1
add = 60,60,60
ignorehitpause = 1

[State -2, Helper]
type = Helper
Trigger1 = Var(46) = 1
Trigger1 = NumHelper(6002) = 0
Trigger1 = Var(45) >= 0
helpertype = normal
name = "Aura"
ID = 6002
pos = 0, 0
postype = p1
facing = 1
stateno = 6002
keyctrl = 0
ownpal = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, AssertSpecial]
type = AssertSpecial
flag = NoKOSlow
trigger1 = StateNo = [4000,4199]
ignorehitpause = 1

[State -2, Helper]
type = Helper
triggerall = RoundState >= 2
triggerall = WinKo && !var(37)
trigger1 = StateNo = [4000,4199]
trigger2=movetype=h
trigger2=prevstateno=[4000,4199]
ID = 20150
stateno = 20100
Name = "Super_Combo_Finish"
postype = left
pos = 0,0
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1
ownpal = 1
persistent = 0
size.xscale = 1
size.yscale = 1

[State -2, VarAdd]
type = VarAdd
trigger1 = roundstate = 3
ignorehitpause = 1
var(37) = 1

[State -2, VarSet]
type = Varset
trigger1 = roundstate = 0
ignorehitpause = 1
var(37) = 0

[State -2, Helper]
type = Helper
trigger1 = 1
trigger1 = numhelper(6010) = 0
ID = 6010
name = "MAX_Bar"
stateno = 6010
ownpal = 1
postype = left
pos = 160,
pausemovetime=-2**31-1
supermovetime=-2**31-1
ignorehitpause = 1

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

[State -2, Helper]
type = Helper
triggerall = NumHelper(6080) = 0
triggerall = RoundState = 4
trigger1 = Alive = 0
trigger2 = StateNo = 170
stateno = 6004
ID = 6080
Name = "Speech"
postype = left
facing = 1
sprpriority = 5
ownpal = 1
ignorehitpause = 1
persistent = 0
Helpertype = Normal
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, VarAdd]
type = VarAdd
trigger1 = 100*Life/LifeMax <= 20
v = 11
value = 1

[State -2, VarSet]
type = VarSet
trigger1 = 100*Life/LifeMax > 20
v = 11
value = 0

[State -2, Helper]
type = Helper
trigger1 = Var(11) = 1
persistent = 0
id = 8710
name = "Danger"
pos = 0,0
postype = P1
stateno = 8710
helpertype = normal
keyctrl = 0
ownpal = 1
ignorehitpause = 1
pausemovetime=-2**31-1
supermovetime=-2**31-1

[State -2, Helper]
type = Helper
trigger1 = NumHelper(123) = 0
trigger1 = stateno = [120,155]
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 123
ID = 123
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State -2, Helper]
type = Helper
trigger1 = NumHelper(124) = 0
trigger1 = stateno = [120,155]
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 124
ID = 124
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State -2, Helper]
type = Helper
trigger1 = NumHelper(125) = 0
trigger1 = stateno = [120,155]
helpertype = Normal
name = "Black Lotus"
pos = 0,0
postype = p1
stateno = 125
ID = 125
ownpal = 1
ignorehitpause = 1
size.xscale = 0.335
size.yscale = 0.335

[State -2, LifeAdd]
type = LifeAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
trigger1 = Enemy,Var(30) = 1
value = -5
kill = 0

[State -2, PowerAdd]
type = PowerAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "VAkiha_K"
trigger1 = Enemy,Var(30) = 1
value = -26

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Senna_K"
triggerall = Enemy,StateNo = 810
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 6
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Homura_K"
triggerall = Enemy,StateNo = 4003
triggerall = MoveType = H
trigger1 = Enemy,time = 203
v = 45
value = 46

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4103
triggerall = MoveType = H
trigger1 = Enemy,time%8 = 0
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4004
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 3
trigger2 = Enemy,AnimElem = 8
trigger3 = Enemy,AnimElem = 12
trigger4 = Enemy,AnimElem = 16
trigger5 = Enemy,AnimElem = 20
trigger6 = Enemy,AnimElem = 24
trigger7 = Enemy,AnimElem = 28
trigger8 = Enemy,AnimElem = 32
trigger9 = Enemy,AnimElem = 36
trigger10 = Enemy,AnimElem = 40
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Taiga_K"
triggerall = Enemy,StateNo = 4005
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 4
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Rentaro_K"
triggerall = Enemy,StateNo = 4005
triggerall = MoveType = H
trigger1 = Enemy,Time = 16
v = 45
value = 46

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Miyuki_K"
triggerall = Enemy,StateNo = 4104
triggerall = MoveType = H
trigger1 = Enemy,Time >= 24
trigger1 = Enemy,Time%3 = 0
trigger1 = Enemy,Time < 75
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Miyuki_K"
triggerall = Enemy,StateNo = 4105
triggerall = MoveType = H
trigger1 = Enemy,Time = 12
trigger2 = Enemy,Time = 137
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Kirino_K"
triggerall = Enemy,StateNo = 951
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 13
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Kirino_K"
triggerall = Enemy,StateNo = 4005
triggerall = MoveType = H
trigger1 = Enemy,Time = 184
v = 45
value = 50

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Kuroyukihime_K"
triggerall = Enemy,StateNo = 4002
triggerall = MoveType = H
trigger1 = Enemy,Time = 20
v = 45
value = 50

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Selvaria_K"
triggerall = Enemy,StateNo = 810
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 2
trigger2 = Enemy,AnimElem = 9
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Selvaria_K"
triggerall = Enemy,StateNo = 1503 
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 5
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Selvaria_K"
triggerall = Enemy,StateNo = 2502 
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 5
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Selvaria_K"
triggerall = Enemy,StateNo = 4003
triggerall = MoveType = H
trigger1 = Enemy,Time%2 = 0
trigger1 = Enemy,Time > 45
trigger1 = Enemy,Time <= 77
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Emi_K"
triggerall = Enemy,StateNo = 810 
triggerall = MoveType = H
trigger1 = Enemy,AnimElem = 4
v = 45
value = 4

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Emi_K"
triggerall = Enemy,StateNo = 4004 
triggerall = MoveType = H
trigger1 = Enemy,Time = 95
v = 45
value = 50

[State -2, VarAdd]
type = VarAdd
triggerall = NumEnemy
triggerall = Enemy,AuthorName = "Kohaku" && Enemy,Name = "Emi_K"
triggerall = Enemy,StateNo = 4108 
triggerall = MoveType = H
trigger1 = Enemy,Time = 4
trigger2 = Enemy,Time = 9
trigger3 = Enemy,Time = 14
trigger4 = Enemy,Time = 19
trigger5 = Enemy,Time = 24
trigger6 = Enemy,Time = 29
trigger7 = Enemy,Time = 34
trigger8 = Enemy,Time = 39
trigger9 = Enemy,Time = 44
trigger10 = Enemy,Time = 49
trigger11 = Enemy,Time = 52
trigger12 = Enemy,Time = 55
trigger13 = Enemy,Time = 58
trigger14 = Enemy,Time = 61
trigger15 = Enemy,Time = 64
trigger16 = Enemy,Time = 67
trigger17 = Enemy,Time = 70
trigger18 = Enemy,Time = 73
trigger19 = Enemy,Time = 74
trigger20 = Enemy,Time = 75
trigger21 = Enemy,Time = 76
trigger21 = Enemy,Time = 77
trigger22 = Enemy,Time = 78
trigger23 = Enemy,Time = 79
trigger24 = Enemy,Time = 80
trigger25 = Enemy,Time = 81
trigger26 = Enemy,Time = 104
v = 45
value = 2

;---------------------------------------------------------------------------
; States that are executed when in self's state file (use statedef -3)
;---------------------------------------------------------------------------

[Statedef -3]

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(20) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = movecontact
trigger3 = Statetype = A
trigger3 = (Stateno = [600,699])
trigger3 = MoveContact
var(20) = 1

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(21) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [1000,1999])
trigger2 = MoveContact
var(21) = 1

[State -3, VarSet]
type = VarSet
trigger1 = 1
var(22) = 0

[State -3, VarSet]
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [2000,3999])
trigger2 = stateno != [4000,4999]
trigger2 = MoveContact
var(22) = 1

[State -3, ChangeState]
type = ChangeState
trigger1 = !alive && (stateno = [5000,5010])
trigger1 = (prevstateno = [120,121]) || (prevstateno = [130,131]) || (prevstateno = [140,141]) || (prevstateno = [150,153])
value = 5950
ignorehitpause = 1

[State -3, AssertSpecial]
type = AssertSpecial
trigger1 = (stateno = [5000,5010])
trigger1 = (prevstateno = [120,121]) || (prevstateno = [130,131]) || (prevstateno = [140,141]) || (prevstateno = [150,153])
flag = nokosnd
ignorehitpause = 1

[State -3, Width]
type = Width
trigger1 = 1
edge = 4,0
ignorehitpause = 1

;This controller plays a sound everytime the player lands from a jump, or
;from a back-dash.
[State -3, Landing Sound]
type = PlaySnd
triggerall = Time = 1
trigger1 = stateno = 52 ;Jump land
trigger2 = stateno = 106 ;Run-back land
value = 40, 0
