[Data]
life = 1000			;Amount of life to start with
power = 9999000		;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 = 50		;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 = 60	;Variables with this index and above will not have their values
FloatPersistIndex = 40  ;reset to 0 between rounds or matches. There are 60 int variables,
  				;indexed from 0 to 59, and 40 float variables, indexed from 0 to 39.
  				;If omitted, then it defaults to 60 and 40 for integer and float
  				;variables repectively, meaning that none are persistent, i.e. all
  				;are reset. If you want your variables to persist between matches,
  				;you need to override state 5900 from common1.cns.


[Size]
xscale = 1			;Horizontal scaling factor.
yscale = 1			;Vertical scaling factor.
ground.back = 9  ;Player width (back, ground)
ground.front = 13  ;Player width (front, ground)
air.back = 11  ;Player width (back, air)
air.front = 15  ;Player width (front, air) 	;Player width (front, air)
height = 20			;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 = -0, -30    ;Approximate position of head
mid.pos = -0, -16  ;Approximate position of midsection		;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  = 3	;Walk forward
walk.back = -3		;Walk backward
run.fwd  = 7, 0		;Run forward (x, y)
run.back = -5.5,-6.2	;Hop backward (x, y)
jump.neu = 0,-8.4		;Neutral jumping velocity (x, y)
jump.back = -2.5			;Jump back Speed (x, y)
jump.fwd = 2.5		;Jump forward Speed (x, y)
runjump.back = -2.55,-8.1;Running jump speeds (opt)
runjump.fwd = 4,-8.1	;.
airjump.neu = 0,-8.1	;.
airjump.back = -2.55	;Air jump speeds (opt)
airjump.fwd = 2.5		;.

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

;---------------------------------------------------------------------------
; 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 = ?
; ...

; Stand
[Statedef 0]
type = S
physics = S
sprpriority = 0

[State 0, 1]
type = ChangeAnim
trigger1 = Anim != 0 && Anim != 5
trigger2 = Anim = 5 && AnimTime = 0 ;Turn anim over
value = 0

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

[State 0, 3] ;Stop moving if low velocity or 4 ticks pass
type = VelSet
trigger1 = abs(vel x) < 2
trigger2 = Time = 4
x = 0

[State 0, 4] ;Are you dead?
type = ChangeState
trigger1 = !alive
value = 5050


; Jump Land
[Statedef 52]
type    = S
physics = S
ctrl = 0
anim = 47

[State 0, Explod]
type = Explod
trigger1 = Time = 0
anim = 48
pos = 2,7
postype = p1  ;p2,front,back,left,right
scale = .5,.5
sprpriority = -1
ontop = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S0,5

[State 52, 1]
type = VelSet
trigger1 = Time = 0
y = 0

[State 52, 2]
type = PosSet
trigger1 = Time = 0
y = 0

[State 52, 3]
type = CtrlSet
trigger1 = Time = 3
value = 1

[State 52, 4]
type = VelSet
trigger1 = abs(vel x) < 2
x = 0

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

[State 100, 4]
type = ChangeState
triggerall = var(0) = 1
trigger1 = command = "holdfwd"
value = 20
ctrl = 1

[State 100, 4]
type = ChangeState
triggerall = var(0) = 2
trigger1 = command = "holdfwd"
value = 100
ctrl = 1
;---------------------------------------------------------------------------
; Lose by Time Over
[Statedef 170]
type = S
ctrl = 0
anim = 170
velset = 0,0

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

;---------------------------------------------------------------------------
; Win state decider
[Statedef 180]
type = S

[State 180, 1]
type = ChangeState
trigger1 = Time = 0
value = 181

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

[State 181, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1
;---------------------------------------------------------------------------
; Introduction
[Statedef 190]
type = S
ctrl = 0
anim = 190
velset = 0,0

[State 190, 1] ;Freeze animation until PreIntro is over
type = ChangeAnim
trigger1 = RoundState = 0
value = 190

[State 0, EnvShake]
type = EnvShake
trigger1 = animelem=3
time = 298
freq = 140
ampl = 5
[State 0, EnvShake]
type = EnvShake
trigger1 = animelem=4
time = 15
freq = 180
ampl = 15

[State 0, Explod]
type = Explod
trigger1 = animelem=3
anim = 19000
ID = 19000
pos = 11,-25
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = 298
pausemovetime = 0
scale = .55,.55
sprpriority = 65535
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem=3
anim = 19001
ID = 19001
pos = 11,-25
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = 298
pausemovetime = 0
scale = .7,.7
sprpriority = 65535
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem=4
anim = 19002
ID = 19002
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1.2,1.2
sprpriority = 65535
ontop = 1
ownpal = 1
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(3)=3
value = S10000,46
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(3)=7
value = S10000,47
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem=4
value = S10000,57
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem=4
value = S10000,22
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem=4
value = S1000,ifelse(random<501,15,17)

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

[State 190, 4] ;Change to stand state
type = ChangeState
trigger1 = AnimTime = 0
value = 0
;---------------------------------------------------------------------------
;Vs Squirtle
[Statedef 192]
type = S
ctrl = 0
anim = 191
velset = 0,0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = AnimElem = 1, = 3
value = S300,0
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

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

[State 191, 4] ;Change to stand state
type = ChangeState
trigger1 = AnimTime = 0
value = 0
;---------------------------------------------------------------------------
; Taunt
[Statedef 195]
type = S
ctrl = 0
anim = 195
velset = 0,0
movetype = I
physics = S
sprpriority = 2

[State 195, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
; Run
[Statedef 165]
type = A
movetype = I
ctrl = 0
anim = 100
velset = 0,0
poweradd = -50

[state a]
type = AfterImage
trigger1 = Time = 0
time = 16
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 0,0,0
palcontrast = 100,100,200

[State 101]
type = VelSet
trigger1 = time<=5
x = 5+(anim = 46)*-10
y = vel y*.1

[State 101]
type = Veladd
trigger1 = time<=2
x = vel x*4.3

[State 101]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 75
ampl = -3

[State 0, Explod]
type = Explod
trigger1 = Time = 0
anim = 101
pos = 0,3
postype = p1  ;p2,front,back,left,right
scale = .3,.3
sprpriority = 0
ontop = 1

[State 0, ChangeState]
type = ChangeState
trigger1 = time = 10
value = 50
ctrl = 0

;Hop Back
[Statedef 166]
type = A
movetype = I
ctrl = 0
anim = 46
velset = 0,0
poweradd = -50

[State 101]
type = EnvShake
trigger1 = time = 0
time = 5
freq = 75
ampl = -3

[state a]
type = AfterImage
trigger1 = Time = 0
time = 16
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 0,0,0
palcontrast = 100,100,200

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 0
value = S0,1

[State 101]
type = VelSet
trigger1 = time<=5
x = 5+(anim = 46)*-10
y = vel y*.1

[State 101]
type = Veladd
trigger1 = time<=2
x = vel x*4.3

[State 0, ChangeState]
type = ChangeState
trigger1 = time = 10
value = 50
ctrl = 0

;---------------------------------------------------------------------------
; Hit 1
[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
juggle  = 1				;Number of air juggle points move takes
velset = 0,0			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 200				;Change animation (Def: no change)
poweradd = 20			;Power to add (Def: 0)
sprpriority = 2

[State 200]
type = AfterImage
trigger1 = Time = 0
time = 16
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S200,0
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, Spark]
type = Explod
trigger1 = movehit = 1
anim = 6000
pos = 24,-15
scale = .7,.7
ontop = 1
ownpal = 1

[State 0, VelSet]
type = VelSet
trigger1 = 1
x = 3

[State 0, VelSet]
type = VelSet
trigger1 = movehit
x = -1

[State 0, HitDef]
type = HitDef
trigger1 = time = 0
attr = S, NA
damage = 20
animtype = Light
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 0
sparkno = S7999
sparkxy = -10, -40
hitsound = S210, 0
guard.sparkno = -1
guardsound = S2136, 0
ground.type = High
ground.slidetime = 0
ground.hittime  = 16
ground.velocity = -2, -2
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = 0
air.hittime = 16
envshake.time = 20
envshake.freq = 60
envshake.ampl = -3
envshake.phase = 20
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0			;Time before opponent regains control in air

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

; Hit 2
[Statedef 210]
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
juggle  = 1				;Number of air juggle points move takes
velset = 0,0			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 210				;Change animation (Def: no change)
poweradd = 20			;Power to add (Def: 0)
sprpriority = -1

[State 200]
type = AfterImage
trigger1 = Time = 0
time = 16
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250

[State 0, Spark]
type = Explod
trigger1 = movehit = 1
anim = 6000
pos = 15,-15
scale = .7,.7
ontop = 1
ownpal = 1

[State 0, VelSet]
type = VelSet
trigger1 = animelem = 2
x = 2

[State 0, VelSet]
type = VelSet
trigger1 = frontedgebodydist < 30
x = -6

[State 0, HitDef]
type = HitDef
trigger1 = time = 0
attr = S, NA
damage = 30
animtype = medium
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 0
sparkno = S7999
sparkxy = -10, -40
hitsound = S210, 1
guard.sparkno = -1
guardsound = S2136, 0
ground.type = High
ground.slidetime = 0
ground.hittime  = 16
ground.velocity = -2
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = 0
air.hittime = 16
envshake.time = 20
envshake.freq = 60
envshake.ampl = -3
envshake.phase = 20			;Time before opponent regains control in air

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

; Hit 3
[Statedef 220]
type    = S				;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A				;Move-type: A-attack, I-idle, H-gethit
physics = N				;Physics: S-stand, C-crouch, A-air
juggle  = 1				;Number of air juggle points move takes			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 220				;Change animation (Def: no change)
poweradd = 20			;Power to add (Def: 0)
sprpriority = 2

[State 200]
type = AfterImage
trigger1 = Time = 0
time = 47
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S200,1
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, Spark]
type = Explod
trigger1 = movehit = 1
anim = 6000
pos = 10,-6
scale = .7,.7
ontop = 1
ownpal = 1

[State 0, VelSet]
type = VelSet
trigger1 = time = 0
x = 4

[State 0, VelMul]
type = VelMul
trigger1 = time >34
x = .5

[State 0, VelSet]
type = VelSet
trigger1 = movehit
x = -2

[State 0, HitDef]
type = HitDef
trigger1 = time = 0
attr = S, NA
damage = 40
animtype = medium
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 0
sparkno = S7999
sparkxy = -10, -40
hitsound = S210, 1
guard.sparkno = -1
guardsound = S2136, 0
ground.type = High
ground.slidetime = 0
ground.hittime  = 0
ground.velocity = -2
airguard.velocity = (IfElse(Time <= 16, 0, -.75)),-.5
air.type = High
air.velocity = (IfElse(Time <= 16, 0, -1.5)),-1
air.hittime = 20
envshake.time = 20
envshake.freq = 60
envshake.ampl = -3
envshake.phase = 20

[State 0, HitDef]
type = HitDef
trigger1 = animelem = 8
attr = S, NA
damage = 4
animtype = light
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 0
sparkno = S7999
sparkxy = -10, -40
hitsound = S210, 4
guard.sparkno = -1
guardsound = S2136, 0
ground.type = High
ground.slidetime = 0
ground.hittime  = 16
ground.velocity = -6, -2
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = 0
air.hittime = 16
envshake.time = 20
envshake.freq = 60
envshake.ampl = -3
envshake.phase = 20
fall = 1

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

; Ember
[StateDef 300]
type    = S
movetype= A
physics = S
juggle  = 4
poweradd= -1000
ctrl = 0
velset = 0,0
anim = 6100

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 5
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 14
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 24
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 34
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 44
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 54
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = time = 58
value = S300,3
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0


[State 200]
type = AfterImage
trigger1 = animelem = 1
trigger2 = animelem = 2
trigger3 = animelem = 3
trigger4 = animelem = 4
trigger5 = animelem = 5
time = 5
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250


[State 300, Helper]
type = Helper
trigger1 = Timemod = 7,0
helpertype = normal ;player
name = "Ember"
ID = 301
stateno = 301
pos = 35,-11
postype = p1    ;p2,front,back,left,right
facing = 1
keyctrl = 0
sprpriority = 80
size.xscale = 1
size.yscale = 1
ownpal = 1
supermove
pausemove

[State 300, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
;---------------------------------------------------------------------------
[StateDef 301]
type = S
movetype= A
physics = S
juggle  = 1
ctrl = 0
anim = 6101
poweradd = 0
sprpriority = 2

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

[State 0, AngleDraw]
type = AngleDraw
trigger1 = 1
value = 90

[State 0, VelSet]
type = VelSet
trigger1 = 1
x = IfElse(Random<500,6,IfElse(Random>500,7,12))

[State 0, VelSet]
type = VelSet
trigger1 = !TIME
y = -2+random%4

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

[State 301, 1]
type = HitDef
trigger1 = AnimElem = 1
trigger2 = AnimElem = 2
trigger3 = AnimElem = 3
trigger4 = AnimElem = 4
trigger5 = AnimElem = 5
trigger6 = AnimElem = 6
trigger7 = AnimElem = 7
trigger8 = AnimElem = 8
trigger9 = AnimElem = 9
attr = S, HP
damage = 12
getpower = 0,0
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 0
hitsound = S300, 1
sparkno = s45215210
sparkxy = -10, -15
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 5
ground.velocity = 0
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 0, HitOverride]
type = HitOverride
trigger1 = 1
attr = S,HP
slot = 0
stateno = 302
time = 99
forceair = 0

[State 0, ChangeState]
type = ChangeState
trigger1 = Movecontact
trigger2 = FrontEdgeBodyDist < 10
trigger3 = MoveGuarded
trigger4 = Time = 100
value = 302
ctrl = 0

[StateDef 302]
type = S
movetype= A
physics = S
juggle  = 1
ctrl = 0
anim = 6102
poweradd = 0
sprpriority = 2

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

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

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

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

; Flamethrower
[StateDef 400]
type    = S
movetype= A
physics = S
juggle  = 4
poweradd= -2000
ctrl = 0
velset = 0,0
anim = 6300

[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 6700
ID = 6700
pos = 15,-25
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = 1
vel = 0,0
accel = 0,0
random = 0,0
removetime = -2
pausemovetime = 0
scale = .1,.1
sprpriority = 25
ontop = 0
shadow = 0,0,0
ownpal = 0
removeongethit = 0

[State 400]
type = AfterImage
trigger1 = animelem = 1
trigger2 = animelem = 2
trigger3 = animelem = 3
trigger4 = animelem = 4
trigger5 = animelem = 5
trigger6 = animelem = 6
trigger7 = animelem = 7
trigger8 = animelem = 8
trigger9 = animelem = 9
trigger10 = animelem = 10
trigger11 = animelem = 11
trigger12 = animelem = 12
trigger13 = animelem = 13
time = 5
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250

[State 400, Helper]
type = Helper
trigger1 = animelem = 3
helpertype = normal ;player
name = "Flame"
ID = 401
stateno = 401
pos = 180,720
postype = p1    ;p2,front,back,left,right
facing = 1
keyctrl = 0
sprpriority = -1
size.xscale = .5
size.yscale = .5
ownpal = 1
supermove
pausemove

[State 400, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
;---------------------------------------------------------------------------
[StateDef 401]
type = S
movetype= A
physics = S
juggle  = 1
ctrl = 0
anim = 6400
sprpriority = 25

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

[State 0, AngleDraw]
type = AngleDraw
trigger1 = 1
value = 40

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S300,1
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, AssertSpecial]
type = AssertSpecial
trigger1 = 1
flag = unguardable

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

[State 401, 1]
type = HitDef
trigger1 = AnimElem = 1
trigger2 = AnimElem = 2
trigger3 = AnimElem = 3
trigger4 = AnimElem = 4
trigger5 = AnimElem = 5
trigger6 = AnimElem = 6
trigger7 = AnimElem = 7
trigger8 = AnimElem = 8
trigger9 = AnimElem = 9
trigger10 = AnimElem = 10
trigger11 = AnimElem = 11
trigger12 = AnimElem = 12
trigger13 = AnimElem = 13
trigger14 = AnimElem = 14
trigger15 = AnimElem = 15
attr = S, HP
damage = 30
getpower = 0,0
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 0
sparkno = s55555555555550
sparkxy = -10, -15
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 25
ground.velocity = -2
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 401, 1]
type = HitDef
trigger1 = AnimElem = 16
attr = S, HP
damage = 30
getpower = 0,0
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 0
sparkno = s55555555555550
sparkxy = -10, -15
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 25
ground.velocity = -2, -3
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
fall = 1

[State 1304, NotHitBy]
Type = NotHitBy
Trigger1 = 1
Value = SCA
Time = 1

[State 1304, BindToParent]
Type = BindToParent
Trigger1 = 1
Time = 1
Pos = 7,-11

[State 0, DestroySelf]
type = DestroySelf
trigger1 = time = 80

; Metal Claw
[Statedef 500]
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
juggle  = 1				;Number of air juggle points move takes
velset = 0,0			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 6800				;Change animation (Def: no change)
sprpriority = 2

[State 0, PalFXWiz]
type = PalFX
trigger1 = 1
time = 2
add = 100,100,100
mul = 256,256,256
sinadd = -80,-80,-80,10
invertall = 1
color = 0

[State 200]
type = AfterImage
trigger1 = Time = 0
time = 47
trans = add1
timegap = 1
framegap = 1
length = 9
palcolor = 256
palbright = 20,20,20
palcontrast = 220,220,250

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S200,1
volume = 0
channel = -1
freqmul = 1.0
loop = 0
pan = 0

[State 0, Spark]
type = Explod
trigger1 = movehit = 1
anim = 6000
pos = 10,-13
scale = .7,.7
ontop = 1
ownpal = 1

[State 0, VelSet]
type = VelSet
trigger1 = animelem = 3
x = 4

[State 0, VelSet]
type = VelSet
trigger1 = movehit
x = -1

[State 0, HitDef]
type = HitDef
trigger1 = time = 0
attr = S, NP
damage = 150
animtype = medium
guardflag = MA
hitflag = MAF
priority = 5, Hit
pausetime = 0, 0
sparkno = S7999
sparkxy = -10, -40
hitsound = S210, 1
guard.sparkno = -1
guardsound = S2136, 0
ground.type = High
ground.slidetime = 0
ground.hittime  = 16
ground.velocity = -4,-2
airguard.velocity = (IfElse(Time <= 16, 0, -.75)),-.5
air.type = High
air.velocity = (IfElse(Time <= 16, 0, -1.5)),-1
air.hittime = 20
envshake.time = 20
envshake.freq = 60
envshake.ampl = -3
envshake.phase = 20
fall = 1

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

;Charge
[Statedef 600]
type = S
physics = S
movetype = I
anim = 6201
ctrl = 0
velset = 0,0

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = S500,0
volume = 900

[State 0, PlaySnd]
type = PlaySnd
trigger1 = timemod = 30,1
value = S300,3
volume = 900

[State 0, StopSnd]
type = StopSnd
trigger1 = (Command != "hold_s"||Power >= 2899)
channel = -1

[State 230, PowerAdd]
type = PowerAdd
trigger1 = Command = "hold_s"
value = 8

[State 0, Explod]
type = Explod
trigger1 = time = 10
anim = 6900
ID = 2222
pos = 0,3
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = 5555555555
removetime = -1
scale = 2, 2
sprpriority = 10
ontop = 1
removeongethit = 1

[State 0, RemoveExplod]
type = RemoveExplod
trigger1 = Command != "hold_s"
trigger2 = power >= 2999
ID = 2222

[State 600, ChangeState]
type = ChangeState
trigger1 = (Command != "hold_s"||Power >= 2999)
value = ifelse(pos Y < 0,1500,0)
ctrl = 1

[State 0, end]
type = ChangeState
trigger1 = Command != "hold_s"||Power >= 2999
value = ifelse(pos Y < 0,1500,0)
ctrl = 1

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

; Notes: The '-' symbol in the hitflag field means that it only affects
;   players who are not in a hit state. This prevents the player from combo-ing
;   into the throw. The priority should be set to a low number, such as
;   1 or 2, so that the throw does not take precedence over normal attacks.
;   The type of priority must always be set to "Miss" or "Dodge" for throws,
;   otherwise strange behavior can result.
[State 800, 1]
type = HitDef
Trigger1 = Time = 0
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
sprpriority = 1       ;Draw in front of p2
p1facing = ifelse (command = "holdfwd", -1, 1) ;Turn if holding forwards
p2facing = 1          ;Force p2 to face player
p1stateno = 810       ;On success, player changes to state 810
p2stateno = 820       ;If hit, p2 changes to state 820 in player's cns
fall = 1              ;Force p2 into falling down

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

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

[State 810, Bind 1]
type = TargetBind
trigger1 = AnimElemTime(2) < 0
pos = 28, 0

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

[State 810, Bind 2-4]
type = TargetBind
trigger1 = AnimElemTime(2) >= 0 && AnimElemTime(5) < 0
pos = 58, 0

[State 810, Bind 5]
type = TargetBind
trigger1 = AnimElemTime(5) >= 0 && AnimElemTime(6) < 0
pos = 47, 0

[State 810, Bind 6]
type = TargetBind
trigger1 = AnimElemTime(6) >= 0 && AnimElemTime(7) < 0
pos = 41, -60

[State 810, Bind 7]
type = TargetBind
trigger1 = AnimElemTime(7) >= 0 && AnimElemTime(8) < 0
pos = 25, -75

[State 810, Bind 8]
type = TargetBind
trigger1 = AnimElemTime(8) >= 0 && AnimElemTime(9) < 0
pos = 15, -90

[State 810, Bind 9]
type = TargetBind
trigger1 = AnimElemTime(9) >= 0 && AnimElemTime(10) < 0
pos = -5, -96

[State 810, Bind 10]
type = TargetBind
trigger1 = AnimElemTime(10) >= 0 && AnimElemTime(11) < 0
pos = -14, -90

[State 810, Bind 11]
type = TargetBind
trigger1 = AnimElem = 11
pos = -50, -50

[State 810, Hurt 11]
type = TargetLifeAdd
trigger1 = AnimElem = 11
value = -78

[State 810, Throw 11]
type = TargetState
trigger1 = AnimElem = 11
value = 821

[State 810, Turn 12]
type = Turn
trigger1 = AnimElem = 12

[State 810, Pos 15]
type = PosAdd
trigger1 = AnimElem = 15
x = -10

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

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

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

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

[State 821, 1] ;Gravity
type = VelAdd
Trigger1 = 1
y = .4

[State 821, 2] ; Recover near ground (use ChangeState)
type = ChangeState
triggerall = Vel Y > 0
triggerall = Pos Y >= -20
triggerall = alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5200 ;HITFALL_RECOVER

[State 821, 3] ; Recover in mid air (use SelfState)
type = SelfState
triggerall = Vel Y > 0
triggerall = alive
triggerall = CanRecover
trigger1 = Command = "recovery"
value = 5210 ;HITFALL_AIRRECOVER

[State 821, 4] ;Hit ground
type = SelfState
trigger1 = Vel Y > 0
trigger1 = Pos Y >= 0
value = 5100 ;Hit ground

;---------------------------------------------------------------------------
; Override common states (use same number to override) :
;---------------------------------------------------------------------------
;///////////////////////////////////////////////////////////////////////////
[StateDef 10000]
type    = S
movetype= A
physics = S
juggle  = 4
ctrl = 0
velset = 0,0
anim = 30000

[State ]
type=Projectile
trigger1=animelemno(0)=4&&gametime%3=1
attr=SCA,NA,NP,NT
damage=999
getpower=999
givepower=-99999
animtype = Hard
pausetime = 0,0
offset = 0,0
velocity = 0,0
accel = 0,0
projID = 666
projanim = 60000
projhitanim = 60000
projremanim = 60000
projscale = 0.5,0.5
projshadow = 0,0,0
projhits = 1
projremovetime = 1
projmisstime = 1
projpriority = 999999999999999999999999999999
projremovetime = -1
hitflag = MAFDPLH
guardflag =
priority = 999999999999999999999999999999
sparkno = 0
sparkxy = 30,-30
guard.sparkno = 2
ground.type = High
ground.slidetime = 14
ground.hittime = 16
ground.velocity = -6,0
air.velocity = -3,-4
p2stateno=5150
[State 0, EnvShake]
type = EnvShake
trigger1 = animelemno(0)=4
time = 2
freq = 170
ampl = -3+(random%7)

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,33
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,34
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1000,45
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,42
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,42
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,43
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,21
freqmul = 0.3

[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31000
ID = 31000
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .4,.4
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31001
ID = 31001
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .44,.44
ontop = 1
ownpal = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 10000
ID = 10000
pos = 10,-24
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = 290
pausemovetime = 0
scale = .45,.45
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelemno(0) = 4 && time%8=1
anim = 10001
ID = 10001
pos = 10,-24
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1.4,1.4
ontop = 1
ownpal = 1

[State 400, end]
type = ChangeState
trigger1 = time=381
value = 10001

;///////////////////////////////////////////////////////////////////////////
[StateDef 10001]
type    = S
movetype= I
physics = S
juggle  = 4
ctrl = 0
velset = 0,0
anim = 30001

[State 400, end]
type = ChangeState
trigger1 = !animtime
value = 0
ctrl = 1

;///////////////////////////////////////////////////////////////////////////
[StateDef 11000]
type    = S
movetype= A
physics = S
juggle  = 4
ctrl = 0
velset = 0,0
anim = 30000

[State ]
type=EnvColor
trigger1=1
value=255,255,255
time=1
under=1

[State 0, TargetState]
type = TargetState
trigger1 = 1
value = 5110
ID = -1
[State 0, TargetState]
type = TargetLifeAdd
trigger1 = 1
value = -2147483647
ID = -1

[State ]
type=Projectile
trigger1=animelemno(0)=4&&gametime%3=1
attr=SCA,NA,NP,NT
damage=999
getpower=999
givepower=-99999
animtype = Hard
pausetime = 0,0
offset = 0,0
velocity = 0,0
accel = 0,0
projID = 666
projanim = 60000
projhitanim = 60000
projremanim = 60000
projscale = 0.5,0.5
projshadow = 0,0,0
projhits = 1
projremovetime = 1
projmisstime = 1
projpriority = 999999999999999999999999999999
projremovetime = -1
hitflag = MAFDPLH
guardflag =
priority = 999999999999999999999999999999
sparkno = 0
sparkxy = 30,-30
guard.sparkno = 2
ground.type = High
ground.slidetime = 14
ground.hittime = 16
ground.velocity = -6,0
air.velocity = -3,-4
p2stateno=5150
[State 0, EnvShake]
type = EnvShake
trigger1 = animelemno(0)=4
time = 2
freq = 170
ampl = -3+(random%7)

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,33
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,34
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1000,28
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = S10000,64
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,44
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,47
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelemno(0) = 4 && time%20=1
value = S10000,45

[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31000
ID = 31000
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .4,.4
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31001
ID = 31001
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .44,.44
ontop = 1
ownpal = 1

[State 0, Explod]
type = Explod
trigger1 = animelemno(0) = 4 && time%7=1
anim = 10002
ID = 10002
pos = 160,90
postype = left
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1.1,1.1
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelemno(0) = 4 && time%3=1
anim = 12222
ID = 12222
pos = random%321,240
postype = left
facing = 1
bindtime = 1
removetime = -2
pausemovetime = 0
vel = 0,-4
scale = .8,.8
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelemno(0) = 4 && time%9=1
anim = 10004
ID = 10004
pos = 160,90
postype = left
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1.8,1.8
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 10003
ID = 10003
pos = 160,90
postype = left
facing = 1
bindtime = -1
removetime = 350
pausemovetime = 0
scale = .88,.88
ontop = 1
ownpal = 1

[State 400, end]
type = ChangeState
trigger1 = time=381
value = 10001
;///////////////////////////////////////////////////////////////////////////
[StateDef 12000]
type    = S
movetype= A
physics = S
juggle  = 4
ctrl = 0
velset = 0,0
anim = 30000

[State ]
type=EnvColor
trigger1=1
value=0,0,0
time=1
under=1

[State 0, TargetState]
type = TargetLifeAdd
trigger1 = 1
value = -2147483647
ID = -1

[State ]
type=Projectile
trigger1=animelemno(0)=4&&gametime%3=1
attr=SCA,NA,NP,NT
damage=999
getpower=999
givepower=-99999
animtype = Hard
pausetime = 0,0
offset = 0,0
velocity = 0,0
accel = 0,0
projID = 666
projanim = 60000
projhitanim = 60000
projremanim = 60000
projscale = 0.5,0.5
projshadow = 0,0,0
projhits = 1
projremovetime = 1
projmisstime = 1
projpriority = 999999999999999999999999999999
projremovetime = -1
hitflag = MAFDPLH
guardflag =
priority = 999999999999999999999999999999
sparkno = 0
sparkxy = 30,-30
guard.sparkno = 2
ground.type = High
ground.slidetime = 14
ground.hittime = 16
ground.velocity = -6,0
air.velocity = -3,-4
p2stateno=5150
[State 0, EnvShake]
type = EnvShake
trigger1 = animelemno(0)=4
time = 2
freq = 170
ampl = -3+(random%7)

[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,33
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S10000,34
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1000,35
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = S10000,46
[State 0, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(4) = 23 || animelemtime(4) = 57
trigger2 = animelemtime(4) = 69 || animelemtime(4) = 83
trigger3 = animelemtime(4) = 88 || animelemtime(4) = 92
trigger4 = animelemtime(4) = 105|| animelemtime(4) = 109
trigger5 = animelemtime(4) = 117|| animelemtime(4) = 127
trigger6 = animelemtime(4) = 131|| animelemtime(4) = 148
trigger7 = animelemtime(4) = 151|| animelemtime(4) = 154
trigger8 = animelemtime(4) = 159|| animelemtime(4) = 161||animelemtime(4)=163
trigger9 = animelemtime(4) = 175|| animelemtime(4) = 197
value = S10000,17

[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31000
ID = 31000
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .4,.4
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 1
anim = 31001
ID = 31001
pos = 0,-14
postype = p1  ;p2,front,back,left,right
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .44,.44
ontop = 1
ownpal = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 10005
ID = 10005
pos = 0,0
postype = left
facing = 1
bindtime = -1
removetime = 230
pausemovetime = 0
scale = 1,1
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 10006
ID = 10006
pos = 0,0
postype = left
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1,1
ontop = 1
ownpal = 1
[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 10007
ID = 10007
pos = 0,0
postype = left
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = 1,1
ontop = 1
ownpal = 1


[State 400, end]
type = ChangeState
trigger1 = time=230+55+4+4+4
value = 10001
;---------------------------------------------------------------------------
; States that are always executed (use statedef -2)
;---------------------------------------------------------------------------
[Statedef -2]
[State 0, Explod]
type = Explod
trigger1 = stateno=0&&time%27=5
anim = 90000
ID = 90000
pos = 0,0
postype = p1
facing = 1
bindtime = -1
removetime = -2
pausemovetime = 0
scale = .3,.3
ontop = 1
ownpal = 1
[State ]
type=NotHitBy
trigger1=!ishelper
value=SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
[State ]
type=Helper
trigger1=!numhelper(9000)
helpertype=player
name="Armor"
ID=9000
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(666)
helpertype=player
name="DC_01"
ID=666
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(150)
helpertype=player
name="DC_02"
ID=150
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(151)
helpertype=player
name="DC_03"
ID=151
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(152)
helpertype=player
name="DC_04"
ID=152
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(153)
helpertype=player
name="DC_05"
ID=153
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(154)
helpertype=player
name="DC_06"
ID=154
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(155)
helpertype=player
name="DC_07"
ID=155
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(156)
helpertype=player
name="DC_08"
ID=156
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=!numhelper(157)
helpertype=player
name="DC_09"
ID=157
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=Helper
trigger1=numhelper(160)<2&&helper(150),numtarget=0
helpertype=player
name="DCA_01"
ID=160
stateno=120
pos=0,0
postype=p1
facing=1
keyctrl=0
ownpal=1
[State ]
type=ScreenBound
trigger1=ishelper
value=0
[State ]
type=SelfState
trigger1=ishelper
value=120
;---------------------------------------------------------------------------
; States that are executed when in self's state file (use statedef -3)
;---------------------------------------------------------------------------

[Statedef -3]

;This controller plays a sound everytime the player lands from a jump, or
;from a back-dash.
[State -3, Landing Sound]
type = PlaySnd
triggerall = Time = 1
trigger1 = stateno = 52 ;Jump land
trigger2 = stateno = 106 ;Run-back land
value = 40, 0

