;===========================================================================
;                                    Chapter 1.
;=============================;-| basics  Motions. |-;=======================
;                                    ) begin (
;============================================================================
; Standing Light Punch
[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
;Commonly-used controllers:
velset = 0,0			;Set velocity (x,y) (Def: no change)
ctrl = 0				;Set ctrl (Def: no change)
anim = 200				;Change animation (Def: no change)
poweradd = 20			;Power to add (Def: 0)
sprpriority = 2		;Set layering priority to 2 (in front)

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = s2,0+random%2
volume = 900

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

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

[State 200, 1]
type = HitDef
trigger1 = Time = 0
attr = S, NA			;Attribute: Standing, Normal Attack
damage = 15, 5			;Damage that move inflicts, guard damage
animtype = Light		;Animation type: Light, Medium, Heavy, Back (def: Light)
guardflag = MA			;Flags on how move is to be guarded against
hitflag = MAF			;Flags of conditions that move can hit
priority = 3, Hit		;Attack priority: 0 (least) to 7 (most), 4 default					;Hit/Miss/Dodge type (Def: Hit)
pausetime = 8, 8		;Time attacker pauses, time opponent shakes
sparkno = S8115+RANDOM%2			;Spark anim no (Def: set above)
sparkxy = -30, -50		;X-offset for the "hit spark" rel. to p2,					;Y-offset for the spark rel. to p1
hitsound = s7, 1		;Sound to play on hit
guardsound = s120, 0		;Sound to play on guard
ground.type = High		;Type: High, Low, Trip (def: Normal)
ground.slidetime = 5		;Time that the opponent slides back
ground.hittime  = 12		;Time opponent is in hit state
ground.velocity = -4		;Velocity at which opponent is pushed
airguard.velocity = -1.9,-.8	;Guard velocity in air (def: (air.xvel*1.5, air.yvel/2))
air.type = High			;Type: High, Low, Trip (def: same as ground.type)
air.velocity = -1.4,-3		;X-velocity at which opponent is pushed,					;Y-velocity at which opponent is pushed
air.hittime = 12	        ;Time before opponent regains control in air
envshake.time = 7
envshake.ampl = 3

[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
juggle  = 1
velset = 0,0
ctrl = 0
anim = 210
poweradd = 20
sprpriority = 2

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s2,3+random%2
volume = 900

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s3,8
volume = 900

[State 210, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 20,5
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 17
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = s7, 2
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = 2
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 0, Explod]
type = Explod
trigger1 = animelem = 2
anim = 211
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 3
anim = 212
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 213
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 5
anim = 214
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 6
anim = 215
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 7
anim = 216
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

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

;---------------------------------------------------------------------------
; Standing Strong Punch
; CNS difficulty: easy
[StateDef 220]
type = S
movetype= A
physics = S
juggle  = 1
velset = 0,0
ctrl = 0
anim = 220
poweradd = 20
sprpriority = 2

[State 0, PlaySnd]
type = PlaySnd
trigger1 = !time
value = 2,IfElse(random < 500,3,8)
volume = 900

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 4
value = s6,4
volume = 900

[State 220, 1]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
damage = 25,5
animtype = hard
guardflag = MA
hitflag = MAFD
priority = 3, Hit
pausetime = 0, 15
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = s7, 2
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 0, Explod]
type = Explod
trigger1 = animelem = 4
anim = 221
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 5
anim = 222
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 6
anim = 223
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 7
anim = 224
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 0, Explod]
type = Explod
trigger1 = animelem = 8
anim = 225
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

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

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = s2,0+random%2
volume = 900

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

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

[State 400, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 15,5
animtype = hard
guardflag = MA
hitflag = MAFD
priority = 3, Hit
pausetime = 0, 10
sparkno = S8115+RANDOM%2
sparkxy = -30, -10
hitsound = s7, 1
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

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

;---------------------------------------------------------------------------
; Crouching Medium Punch
[StateDef 410]
type = C
movetype= A
physics = C
juggle  = 1
velset = 0,0
ctrl = 0
anim = 410
poweradd = 20
sprpriority = 2

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s2,3+random%2
volume = 900
channel = 1

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s3,8
volume = 900

[State 410, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 20,5
animtype = hard
guardflag = MA
hitflag = MAFD
priority = 3, Hit
pausetime = 0, 10
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = s7, 2
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 0, Explod]
type = Explod
trigger1 = animelem = 2
anim = 415
ID = 415
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

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

;---------------------------------------------------------------------------
; Crouching Strong Punch
[StateDef 420]
type = C
movetype= A
physics = C
juggle  = 1
velset = 0,0
ctrl = 0
anim = 420
poweradd = 20
sprpriority = 2

[State 0, PlaySnd]
type = PlaySnd
trigger1 = !time
value = 2,IfElse(random < 500,3,8)
volume = 900

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s6,4
volume = 900

[State 420, 1]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
damage = 25,5
animtype = hard
guardflag = MA
hitflag = MAFD
priority = 3, Hit
pausetime = 0, 17
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = S7, 2
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 18
ground.velocity = -2,-7
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1,-8
air.hittime = 25
envshake.time = 7
envshake.ampl = 3

[State 420, Explod]
type = Explod
trigger1 = animelem = 4
anim = 421
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 5
anim = 422
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 6
anim = 423
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 7
anim = 424
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, ChangeState]
type = ChangeState
trigger1 = command = "holdup" && time >= 27 && var(20) = 0
trigger2 = var(20) = 1 && animelemtime(4)>0
value = 40
ctrl = 0

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

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

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

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = s2,0+random%2
volume = 900

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

[State 600, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 15,5
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 10
sparkno = S8115+RANDOM%2
sparkxy = 0, -40
hitsound = s7, 1
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 600, 5]
type = CtrlSet
trigger1 = Time = 100
value = 1
ctrl = 0

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

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

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 3
value = s2,3+random%2
volume = 900
channel = 1

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = s3,8
volume = 900

[State 610, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 20,5
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0, 10
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = s7, 2
guardsound = s120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 0, Explod]
type = Explod
trigger1 = animelem = 2
anim = 615
ID = 615
pos = 0,0
postype = p1  ;p2,front,back,left,right
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 610, 5]
type = CtrlSet
trigger1 = Time = 100
value = 1
ctrl = 0

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

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

[State 0, PlaySnd]
type = PlaySnd
trigger1 = !time
value = 2,IfElse(random < 500,3,8)
volume = 900

[State 700, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = s6,4
volume = 900

[State 600, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 30,5
animtype = hard
guardflag = MA
hitflag = MAFD
priority = 3, Hit
pausetime = 0, 10
sparkno = S8100+RANDOM%14
sparkxy = -15, -46
hitsound = S7, 2
guardsound = S120, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
envshake.time = 7
envshake.ampl = 3

[State 420, Explod]
type = Explod
trigger1 = animelem = 2
anim = 621
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 3
anim = 622
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 4
anim = 623
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 5
anim = 624
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 6
anim = 625
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 420, Explod]
type = Explod
trigger1 = animelem = 7
anim = 626
pos = 0,0
postype = p1
facing = 1
vfacing = 1
bindtime = -1
removetime = -2
sprpriority = 4
removeongethit = 1

[State 620, 5]
type = CtrlSet
trigger1 = Time = 100
value = 1
ctrl = 0

