
; special


;-------------------------
; hadou
; g

[statedef 1000]
type=s
physics=s
movetype=a
anim=1000
poweradd=100
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=time=0
	var(10)=(command="sp1_s")
[state 0]
	type=varset
	trigger1=time=0 && var(51)>0
	var(10)=(p2bodydist x>160 || random<200)

[state 0]
	type=playsnd
	trigger1=(animelem=4)
	value=0,10
	channel=0
[state 0]
	type=playsnd
	trigger1=(animelem=5)
	value=f200,2
	channel=1
[state 0]
	type=playsnd
	trigger1=(animelem=7)
	value=2,0
	channel=2

[state 0]
	type=width
	trigger1=(animelem=7)
	value=28,0

;---
[state 0]
	type=varset
	trigger1=1
	var(11)=0
[state 0]
	type=varset
	trigger1=(animelem=3,>=0) && (animelem=7,<0)
	var(11)=1

;---
[state 0]
	type=projectile
	trigger1=(animelem=3,>=0) && (animelem=4,<0)
	trigger1=1|| var(11):=-16 || var(12):=-66 || fvar(1):=0.25
	trigger2=(animelem=4,>=0) && (animelem=5,<0)
	trigger2=1|| var(11):=-16 || var(12):=-68 || fvar(1):=0.4
	trigger3=(animelem=5,>=0) && (animelem=6,<0)
	trigger3=1|| var(11):=-16 || var(12):=-69 || fvar(1):=0.5
	trigger4=(animelem=6,>=0) && (animelem=7,<0)
	trigger4=1|| var(11):=-6 || var(12):=-66 || fvar(1):=0.5
	projanim=1002
	projsprpriority=3
	postype=p1
	offset=floor(var(11)*const(size.xscale)), floor(var(12)*const(size.yscale))
	projedgebound=800
	projstagebound=800
	projscale=fvar(1),fvar(1)
	projremovetime=1

;---
[state 0]
	type=helper
	trigger1=(animelem=7) && (sysfvar(0)>0)
	id=1000
	size.height=222;;<-(removetime+options)
	pos=floor(60*const(size.xscale)),floor(-66*const(size.yscale))
	stateno=91000
	size.head.pos=1005,1006;;<-anim,hitanim
	size.mid.pos=ifelse(var(10),5200,3500),0;;<-speed_x,y(1/1000)
	size.ground.front=1009;;<-max_hits/miss_time
	size.ground.back=800010;;<-damage hit/guard
	size.air.front=600550;; <vel_x,y_hit
	size.air.back= 620530;; <vel_x,y_guard
	size.shadowoffset=2;;<-fall(10=recovery/1=ground/2=air/3=g&a)
	ownpal=1
	size.xscale=1
	size.yscale=1

;---
[state 0]
	type=projectile
	trigger1=(animelem=7) && (sysfvar(0)<=0)
	projid=91000
	projanim=1005
	projhitanim=1006
	projpriority=1
	projsprpriority=3
	projscale=1,1
	projremovetime=222
	projhits=1
	offset=floor(60*const(size.xscale)),floor(-66*const(size.yscale))
	velocity=ifelse(var(10),5.2,3.5), 0
	attr=s,sp
	damage=80,10
	hitflag=maf
	guardflag=ma
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	ground.type=high
	air.type=low
	pausetime=9,10
	sparkno=3
	guard.sparkno =41
	hitsound=5,4
	guardsound=6,0
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-9
	air.velocity=   -5,-4
	guard.velocity= -11
	air.juggle=8
	getpower=0,0
	fall=0
	air.fall=1
	fall.recover=0

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=7)
	movetype=i
;--- shorten
[state 0]
	type=changeanim
	trigger1=(((animelem=10,>3) && !var(10)) || (animelem=10,>8)) && (animelem=11,<0)
	value=anim
	elem=11
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1


;------------------------
; g̍\itFCNj
[statedef 1001]
type=s
physics=s
movetype=i
anim=1001
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=width
	trigger1=(animelem=7)
	value=28,0
[state 0]
	type=playsnd
	trigger1=(animelem=6)
	value=0,(random%2)
	channel=0
	persistent=0
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1


;-------------------------
; fire_hadou
; ܔMg

[statedef 1010]
type=s
physics=s
movetype=a
anim=1010
poweradd=120
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=time=0
	var(10)=(command="sp2_s")

[state 0]
	type=playsnd
	trigger1=(animelem=4)
	value=0,10
	channel=0
[state 0]
	type=playsnd
	trigger1=(animelem=5)
	value=f200,2
	channel=1
[state 0]
	type=playsnd
	trigger1=(animelem=7)
	value=2,0
	channel=2

[state 0]
	type=width
	trigger1=(animelem=7)
	value=28,0

;---
[state 0]
	type=projectile
	trigger1=(animelem=3,>=0) && (animelem=4,<0)
	trigger1=1|| var(11):=-16 || var(12):=-66 || fvar(1):=0.25
	trigger2=(animelem=4,>=0) && (animelem=5,<0)
	trigger2=1|| var(11):=-16 || var(12):=-68 || fvar(1):=0.4
	trigger3=(animelem=5,>=0) && (animelem=6,<0)
	trigger3=1|| var(11):=-16 || var(12):=-69 || fvar(1):=0.5
	trigger4=(animelem=6,>=0) && (animelem=7,<0)
	trigger4=1|| var(11):=-6 || var(12):=-66 || fvar(1):=0.5
	projanim=1003
	projsprpriority=3
	postype=p1
	offset=floor(var(11)*const(size.xscale)), floor(var(12)*const(size.yscale))
	projedgebound=800
	projstagebound=800
	projscale=fvar(1),fvar(1)
	projremovetime=1

;---
[state 0]
	type=helper
	trigger1=(animelem=7) && (sysfvar(0)>0)
	id=1000
	size.height=10222;;<-(removetime+options)
	pos=floor(60*const(size.xscale)),floor(-66*const(size.yscale))
	stateno=91000
	size.head.pos=1011,1012;;<-anim,hitanim
	size.mid.pos=ifelse(var(10),5000,3000),0;;<-speed_x,y(1/1000)
	size.ground.front=1009;;<-max_hits/miss_time
	size.ground.back=1250025;;<-damage hit/guard
	size.air.front=600550;; <vel_x,y_hit
	size.air.back= 620530;; <vel_x,y_guard
	size.shadowoffset=3;;<-fall(10=recovery/1=ground/2=air/3=g&a)
	ownpal=1
	size.xscale=1
	size.yscale=1

;---
[state 0]
	type=projectile
	trigger1=(animelem=7) && (sysfvar(0)<=0)
	projid=91000
	projanim=1011
	projhitanim=1012
	projpriority=1
	projsprpriority=3
	projscale=1,1
	projremovetime=222
	projhits=1
	offset=floor(60*const(size.xscale)),floor(-66*const(size.yscale))
	velocity=ifelse(var(10),5.2,3.5), 0
	attr=s,sp
	damage=120,15
	hitflag=maf
	guardflag=ma
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	ground.type=high
	air.type=low
	pausetime=9,10
	sparkno=3
	guard.sparkno =41
	hitsound=5,4
	guardsound=6,0
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-9
	air.velocity=   -5,-5
	guard.velocity= -11
	air.juggle=8
	getpower=0,0
	fall=1
	air.fall=1
	fall.recover=0
	;---
	palfx.time=32
	palfx.add=210,10,-200
	palfx.mul=200,200,200
	palfx.sinadd=60,40,50,20
	palfx.color=0
	palfx.invertall=1

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=7)
	movetype=i
;---shorten
[state 0]
	type=changeanim
	trigger1=(animelem=10,=6) && (animelem=11,<0) && !var(10)
	value=anim
	elem=11
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1


;-------------------------
; syo_ryu
; 

[statedef 1100]
type=s
physics=s
movetype=a
anim=1100
juggle=8
poweradd=100
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=time=0
	var(10)=(command="sp3_s")

;---
[state 0]
	type=nothitby
	trigger1=!time
	value=sca
	time=ifelse(var(10), 18, 10)

;---
[state 0]
	type=playsnd
	trigger1=(animelem=3)
	value=0,11
	channel=0
	ignorehitpause=1
	persistent=0

[state 0]
	type=playsnd
	trigger1=(animelem=4)
	value=f200,2
	channel=1
	persistent=0

;---
[state 0]
	type=posadd
	trigger1=!time
	x=5 *const(size.xscale)

;---
[state 0] ; dash_dust
	type=helper
	trigger1=(animelem=3) && (sysfvar(0)>0)
	id=152040
	stateno=152040
	pos=floor(-2*const(size.xscale)),0
	size.xscale=ifelse(var(10),0.75,0.65)
	size.yscale=ifelse(var(10),0.75,0.65)
	ignorehitpause=1
	persistent=0

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=4)
	statetype=a
	physics=n

[state 0]
	type=gravity
	trigger1=(animelem=4,>0)

[state 0]
	type=velset
	trigger1=(animelem=4)
	x= ifelse(var(10), 9, 5)
	y=-ifelse(var(10),11, 7)
[state 0]
	type=velmul
	trigger1=(vel x>0)
	x=0.92
[state 0]
	type=velset
	trigger1=(vel y>0)
	x=0

;---
[state 0]
	type=hitdef
	trigger1=(animelem=3)
	attr=s,sa
	damage=ifelse(var(10),160,120),12
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	air.type=low
	guardflag=m
	hitflag=maf
	pausetime=13,13
	sparkxy=-10,-75
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	hitsound=300,4
	guardsound=41,0
	ground.type=high
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-ifelse(var(10),12,2), ifelse(var(10),0,-9)
	air.velocity=   -2, -9
	guard.velocity= -9
	getpower=60,30
	fall=ifelse(var(10),0,1)
	air.fall=1
	fall.recover=0
	air.recover=0
	yaccel=0.5
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510575 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

[state 0]
	type=hitdef
	trigger1=(animelem=4,>=0) && (!movecontact)
	attr=a,sa
	damage=110,10
	animtype=back
	air.animtype=back
	fall.animtype=back
	guardflag=ma
	hitflag=maf
	pausetime=13,13
	sparkxy=-10,-90
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	hitsound=300,4
	guardsound=41,0
	ground.type=high
	air.type=low
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-2-vel x*0.1, -6+vel y*0.5
	air.velocity=   -2-vel x*0.1, -6+vel y*0.5
	guard.velocity= -9
	getpower=60,30
	fall=1
	air.fall=1
	fall.recover=0
	air.recover=0
	yaccel=0.5
	persistent=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510590 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=changestate
	trigger1=(animelem=4,>0)
	trigger1=(pos y<0) && (vel y>0)
	value=1101 ;; fall

;---------------- fall
[statedef 1101]
type=a
physics=n
movetype=i
anim=1101
velset=0,0
ctrl=0

[state 0]
	type=gravity
	trigger1=1

[state 0]
	type=changestate
	trigger1=(pos y+vel y>=0) && (vel y>0)
	value=1105 ;; land

;----------------
; land
; n
[statedef 1105]
type=s
physics=s
movetype=i
anim=1105
velset=0,0
ctrl=0

[state 0]
	type=posset
	trigger1=time=0
	y=0
[state 0]
	type=afterimagetime
	trigger1=animtime=0
	time=0
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1


;-------------------------
; tatsu_maki
; r

[statedef 1200]
type=a
physics=n
movetype=a
anim=1200
juggle=8
poweradd=100
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=!time
	var(10)=(command="sp4_s")

[state 0]
	type=varset
	trigger1=!time
	var(11)=ifelse(var(10),3,1)

[state 0]
	type=velset
	trigger1=!time
	x= ifelse(var(10),4,2)
	y=-2.5

[state 0]
	type=playsnd
	trigger1=time=2
	value=0,12
	channel=0

;---
[state 0] ; dash_dust
	type=helper
	trigger1=!time && (sysfvar(0)>0)
	id=152040
	stateno=152040
	pos=floor(-12*const(size.xscale)), floor(-pos y)
	size.xscale=0.75
	size.yscale=0.75

[state 0]
	type=changestate
	trigger1=animtime=0
	value=1201

;--------------
; maki_maki
[statedef 1201]
type=a
physics=n
movetype=a
anim=1201
ctrl=0

[state 0]
	type=velset
	trigger1=!time
	x=ifelse(var(10),4,2)
	y=0

[state 0]
	type=playsnd
	trigger1=(animelem=1,=1)
	value=f200,3
	channel=1

;---
[state 0]
	type=hitdef
	triggerall=(animelem=2)||(animelem=5)
	trigger1=!numtarget(1200)
	trigger2=numtarget(1200) && !movehit
	attr=s,sa
	damage=120,10
	animtype=hard
	air.animtype=back
	fall.animtype=back
	ground.type=high
	air.type=low
	guardflag=ma
	hitflag=maf
	pausetime=13,13
	sparkxy=-10,-60
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	hitsound=300,3
	guardsound=41,0
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-3,-7
	air.velocity=   -3,-6
	guard.velocity= -9
	getpower=60,30
	fall=1
	air.fall=1
	id=1200
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510560 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=varadd
	trigger1=(animtime=0)
	var(11)=-1
[state 0]
	type=changestate
	trigger1=(animtime=0) && var(11)<1
	value=1205

;-------------- fall
[statedef 1205]
type=a
physics=a
movetype=i
anim=1205
ctrl=0

[state 0]
	type=changestate
	trigger1=(pos y+vel y>=0) && (vel y>0)
	value=52


;-------------------------
; air_tatsu_maki
; 󒆗r

[statedef 1210]
type=a
physics=a
movetype=a
anim=1210
poweradd=100
juggle=5
ctrl=0

[state 0]
	type=varset
	trigger1=time=0
	var(10)=(command="sp4_s")
[state 0]
	type=varset
	trigger1=time=0
	var(11)=ifelse(var(10),2,1)

[state 0]
	type=veladd
	trigger1=1
	y=-const(movement.yaccel)*0.33

[state 0]
	type=playsnd
	trigger1=time=2
	value=0,12
	channel=0

;---
[state 0]
	type=changeanim
	trigger1=(animtime=0) && (anim=stateno)
	value=1201 ;; <- tatsu_tatsu
;---
[state 0]
	type=varadd
	trigger1=(animtime=0) && (anim=1201)
	var(11)=-1
[state 0]
	type=changeanim
	trigger1=(animtime=0) && (anim=1201) && var(11)<1
	value=1205 ;; <- ochi_ochi

[state 0]
	type=playsnd
	trigger1=(animelem=1,=1) && (anim=1201)
	value=f200,3
	channel=1

;---
[state 0]
	type=hitdef
	trigger1=(anim=1201)
	attr=s,sa
	damage=120,10
	animtype=hard
	air.animtype=back
	fall.animtype=back
	guardflag=ma
	hitflag=maf
	pausetime=13,13
	sparkxy=-10,-60
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	hitsound=300,3
	guardsound=41,0
	ground.type=high
	air.type=low
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-2,-7
	air.velocity=   -2,-7
	guard.velocity= -9
	getpower=60,30
	fall=1
	persistent=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510560 )
	fall.envshake.time= id
	fall.envshake.ampl= 0


;---------------------
; joudan sokutou geri
; i|R/R

[statedef 1300]
type=s
physics=n
movetype=a
anim=1300
sprpriority=1
juggle=8
poweradd=80
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=!time
	var(10)=(command="sp5_s")
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(10)=(p2movetype=h || random<333)

[state 0]
	type=changeanim
	trigger1=!time && var(10)
	value=1301

;---
[state 0]
	type=playsnd
	trigger1=(animelem=4)
	value=0,2
	channel=0

[state 0]
	type=playsnd
	trigger1=(animelem=6)
	value=f200,3
	channel=1

;---
[state 0]
	type=posadd
	trigger1=(animelem=1) && (p2bodydist x>16)
	x=floor(23*const(size.xscale))
[state 0]
	type=posadd
	trigger1=(animelem=2)||(animelem=3)||(animelem=4)||(animelem=5)
	trigger1=(p2bodydist x>0)
	x=floor(6*const(size.xscale))

[state 0]
	type=velset
	trigger1=(animelem=6)
	x=ifelse(var(10),6,2)
[state 0]
	type=velmul
	trigger1=(animelem=6,>0)
	x=0.85

[state 0]
	type=posadd
	trigger1=(animelem=10)
	x=floor(16*const(size.xscale))
[state 0]
	type=posadd
	trigger1=(animelem=11) || (animtime=0)
	x=floor(9*const(size.xscale))

;---
[state 0] ; dash_dust
	type=helper
	trigger1=(animelem=5) && (sysfvar(0)>0)
	id=152040
	stateno=152040
	pos=floor(-2*const(size.xscale)),0
	size.xscale=0.65
	size.yscale=0.65

;---
[state 0]
	type=hitdef
	trigger1=!time
	attr=s,sa
	damage=ifelse(var(10),120,80),10
	animtype=heavy
	air.animtype=back
	fall.animtype=diagup
	guardflag=m
	hitflag=maf
	pausetime=13,13
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-78
	hitsound=300,4
	guardsound=41,0
	ground.type=low
	sir.type=low
	ground.slidetime=18
	ground.hittime=18
	air.hittime=18
	ground.velocity=-7,-7
	air.velocity=   -7,-7
	guard.velocity=-15
	getpower=60,30
	fall=1
	fall.recover=0
	yaccel=0.5
	persistent=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510578 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=8)
	movetype=i
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1


;[EOF]
