
; v0 : temp ; 
; v1 : level ; Z
; v2 : power-up
; v4-5 : _b

; v10-19: temp eff-pos x / y
; fv0-5: temp eff-scale / vel


;--------------
;--- W

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

[state 0]
	type=varset
	trigger1=!time
	var(1)=(command="sp1_s")
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(1)=(random<500)
;---
[state 0]
	type=poweradd
	trigger1=!time
	value=100+var(1)*20
;---
; GW
[state 0]
	type=nothitby
	trigger1=var(2)
	value=sca
	time=1
	ignorehitpause=1
[state 0]
	type=palfx
	trigger1=var(2) && (gametime%4=0)
	add=0,128,128
	time=2
	ignorehitpause=1
;---
[state 0]
	type=playsnd
	trigger1=time=1
	value=1,2
	channel=0

;---
[state 0]
	type=hitdef
	trigger1=time=0
	attr=s,sa
	damage=110+var(1)*20+(var(2)>0)*80,10+(var(2)>0)*10
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	air.type=low
	ground.type=high
	getpower=80,40
	guardflag=m
	hitsound=300,4
	guardsound=41,0
	pausetime=13,13
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-76
	ground.slidetime=18
	ground.hittime=22
	air.hittime=22
	ground.velocity=-2,-ifelse(var(1),11,8)
	air.velocity=   -2,-ifelse(var(1),11,8)
	guard.velocity= -ifelse(var(1),9,7)
	yaccel=0.5
	fall=1
	air.fall=1
	fall.recover=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510576 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0] ; dash_dust
	type=helper
	trigger1=(animelem=3) && (sysfvar(0)>0)
	id=152040
	stateno=152040
	pos=floor(-12*const(size.xscale)),0
	size.xscale=0.75
	size.yscale=0.75
;---
[state 0]
	type=changestate
	trigger1=animtime=0
	value=1010


;--------------
;--- ㏸

[statedef 1010]
type=a
movetype=a
physics=n
anim=1010+var(1)
juggle=8
ctrl=0

[state 0]
	type=posadd
	trigger1=!time
	x=16
[state 0]
	type=velset
	trigger1=!time
	x= ifelse(var(1), 4, 0)
	y=-ifelse(var(1), 13, 9)

[state 0]
	type=posadd
	trigger1=(animelem=2)
	x=9

[state 0]
	type=velmul
	trigger1=(vel y<0)
	x=0.9
	y=0.925
[state 0]
	type=veladd
	trigger1=1
	y=0.2

;---
; GW
[state 0]
	type=nothitby
	trigger1=var(2)
	value=sca
	time=1
	ignorehitpause=1
[state 0]
	type=palfx
	trigger1=var(2) && (gametime%4=0)
	add=0,128,128
	time=2
	ignorehitpause=1
;---
[state 0]
	type=playsnd
	trigger1=time=1
	value=500,1
	channel=1

;---
[state 0]
	type=hitdef
	trigger1=time=0
	attr=a,sa
	damage=110+(var(2)>0)*50,10+(var(2)>0)*10
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	air.type=low
	ground.type=high
	getpower=60,30
	guardflag=ma
	hitsound=300,4
	guardsound=41,0
	pausetime=13,13
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-90
	ground.slidetime=18
	ground.hittime=22
	air.hittime=22
	ground.velocity=-2,-ifelse(var(1),11,8)
	air.velocity=   -2,-ifelse(var(1),11,8)
	guard.velocity= -ifelse(var(1),9,7)
	yaccel=0.5
	fall=1
	air.fall=1
	fall.recover=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510590 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=changestate
	trigger1=(pos y<0) && (vel y>=0)
	value=1020 +(var(2):=0)

;--------------
; ~ ; fall

[statedef 1020]
type=a
movetype=i
physics=n
anim=1020
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=1030

;--------------
; n() ; land

[statedef 1030]
type=s
movetype=i
physics=s
anim=1030 +(var(1)>=100)
velset=0,0
ctrl=0

[state 0]
	type=posset
	trigger1=!time
	y=0

[state 0]
	type=changeanim
	trigger1=!time && (prevstateno=[1210,1240])
	value=anim
	elem=3

[state 0]
	type=afterimagetime
	trigger1=(animelem=4)
	time=0

[state 0]
	type=changestate
	trigger1=(animelem=5,>=0) && (command="holddown")
	value=11
	ctrl=1
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1




;--------------
;--- 䓹

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

[state 0]
	type=varset
	trigger1=!time
	var(1)=(command="sp2_s")
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(1)=(random<500)
;---
[state 0]
	type=changeanim
	trigger1=(animelem=1,>3) && (animelem=2,<0) && !var(1)
	value=anim
	elem=2
[state 0]
	type=changeanim
	trigger1=(animelem=4,>7) && (animelem=5,<0) && !var(1)
	value=anim
	elem=6
;---
[state 0]
	type=playsnd
	trigger1=(animelem=3)
	value=1,0
	channel=0
[state 0]
	type=playsnd
	trigger1=(animelem=4)
	value=500,0 ;uV[v
	channel=1
;---
[state 0]
	type=explod
	trigger1=(animelem=2,<0)
	trigger1=1|| var(11):=-20 || var(12):=-99 || fvar(1):=0.5+(gametime%3)*0.1+var(1)*0.2 || fvar(2):=fvar(1)
	trigger2=(animelem=2,>=0) && (animelem=3,<0)
	trigger2=1|| var(11):=-27 || var(12):=-85 || fvar(1):=0.5+(gametime%3)*0.1+var(1)*0.2 || fvar(2):=fvar(1)
	trigger3=(animelem=3,>=0) && (animelem=4,<0)
	trigger3=1|| var(11):=0   || var(12):=-75 || fvar(1):=0.5+(gametime%3)*0.1+var(1)*0.2 || fvar(2):=fvar(1)
	trigger4=(animelem=4,>=0) && (animelem=4,<11) ;; - x
	trigger4=1|| var(11):=22  || var(12):=-75 || fvar(1):=2.6 || fvar(2):=(11-(animelemtime(4)))*0.03
	anim=1115
	sprpriority=3
	postype=p1
	pos=floor(var(11)*const(size.xscale)), floor(var(12)*const(size.yscale))
	scale=fvar(1)*const(size.xscale),fvar(2)*const(size.yscale)
	removetime=1
	removeongethit=1
;---
[state 0]
	type=helper
	trigger1=(animelem=4) && (sysfvar(0)>0)
	id=1000
	size.height=8+var(2)/10;;<-(removetime+options)
	pos=floor(50*const(size.xscale)),floor(-75*const(size.yscale))
	stateno=91000
	size.head.pos=1110,1112;;<-anim,hitanim
	size.mid.pos=ifelse(var(1),4200,2600),0;;<-speed_x,y(1/1000)
	size.ground.front=1006;;<-max_hits/miss_time
	size.ground.back=800008;;<-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=0.75
	size.yscale=0.75

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=4)
	movetype=i
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0 +(var(2):=0)
	ctrl=1



;--------------
;--- fr

[statedef 1200]
type=s
movetype=a
physics=s
anim=1200
juggle=7
poweradd=0
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=!time
	var(1)=(command="sp3_s")
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(1)=(random<500)
;---
[state 0]
	type=poweradd
	trigger1=!time
	value=100+var(1)*20

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

;--------------
[statedef 1210]
type=a
movetype=a
physics=n
anim=1210+var(1)*10
ctrl=0
;---
[state 0]
	type=posadd
	trigger1=!time
	x= 12
	y=-15
[state 0]
	type=posadd
	trigger1=(animelem=7) && (anim=1210)
	trigger2=(animelem=14)
	y=15
;---
[state 0]
	type=velset
	trigger1=(animelem=2)
	x= ifelse((anim=1210),3,4)
	y=-6
[state 0]
	type=veladd
	trigger1=(animelem=2,>0)
	y=0.45
[state 0]
	type=velset
	trigger1=(animelem=12,<0) && (vel y>0) && (anim=1220)
	y=0
;---
;---
[state 0]
	type=playsnd
	trigger1=(animelem=4) || (((animelem=8)||(animelem=11))&&(anim=1220))
	value=0,1+(animelem=11)*3
	channel=0
; 0,1 ; [!]
; 0,4 ; [!]
[state 0]
	type=playsnd
	trigger1=(animelem=4) || (((animelem=8)||(animelem=11))&&(anim=1220))
	value=f200,3
	channel=1

;---
[state 0]
	type=hitdef
	trigger1=((animelem=4) && (anim=1210)) || ((animelem=11) && (anim=1220))
	trigger1=1|| var(10):=84 || fvar(1):=3.8 || fvar(2):=8 || fvar(3):=3.8 || fvar(4):=7 || fvar(5):=15
	trigger2=(animelem=4) && (anim=1220)
	trigger2=1|| var(10):=42 || fvar(1):=6.2 || fvar(2):=0 || fvar(3):=4.2 || fvar(4):=4 || fvar(5):=8
	trigger3=(animelem=8) && (anim=1220)
	trigger3=1|| var(10):=42 || fvar(1):=6.2 || fvar(2):=0 || fvar(3):=4.2 || fvar(4):=4 || fvar(5):=8
	attr=a,sa
	damage=var(10),var(10)/6
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	air.type=low
	ground.type=high
	getpower=var(10)/2,var(10)/4
	guardflag=ma
	hitsound=300,4
	guardsound=41,0
	pausetime=13,13
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-40
	ground.slidetime=18
	ground.hittime=20
	air.hittime=20
	ground.velocity=-fvar(1),-fvar(2)
	air.velocity=   -fvar(3),-fvar(4)
	guard.velocity= -fvar(5)
;;	airguard.velocity=-#,-#
	yaccel=0.5
	fall=(fvar(2)>0)
	air.fall=1
;;	fall.recover=0
	fall.recovertime=52
	nochainid=3000
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510540 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=statetypeset
	trigger1=((animelem=5) && (anim=1210)) || (animelem=12)
	movetype=i
[state 0]
	type=changestate
	trigger1=(pos y+vel y>=0) && (vel y>0)
	value=1030 ;; n




;--------------
;---  - fr

[statedef 1230]
type=a
movetype=a
physics=n
juggle=7
ctrl=0
;---
[state 0]
	type=varset
	trigger1=!time
	var(1)=(command="sp3_s")
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(1)=(random<500)
;---
[state 0]
	type=changeanim
	trigger1=!time
	value=1210+var(1)*10
	elem=2
[state 0]
	type=poweradd
	trigger1=!time
	value=100+var(1)*20
;---
[state 0]
	type=posadd
	trigger1=!time
	x= 12
	y=-15
[state 0]
	type=posadd
	trigger1=((animelem=7) && (anim=1210)) || (animelem=14)
	y=15
;---
[state 0]
	type=velset
	trigger1=!time
	x= ifelse(vel x>=0, 3.5, -2.8)
	y=-ifelse((anim=1210),5,6)
[state 0]
	type=veladd
	trigger1=1
	y=0.45
[state 0]
	type=velset
	trigger1=(animelem=10,<0) && (vel y>0) && (anim=1220)
	y=0
;---
[state 0]
	type=playsnd
	trigger1=(animelem=4) || (((animelem=8)||(animelem=11))&&(anim=1220))
	value=0,1+(animelem=11)*3
	channel=0
; 0,1 ; [!]
; 0,4 ; [!]
[state 0]
	type=playsnd
	trigger1=(animelem=4) || (((animelem=8)||(animelem=11))&&(anim=1220))
	value=f200,3
	channel=1

;---
[state 0]
	type=hitdef
	trigger1=((animelem=4) && (anim=1210)) || ((animelem=11) && (anim=1220))
	trigger1=1|| var(10):=84 || fvar(1):=3.9 || fvar(2):=7 || fvar(5):=15
	trigger2=(animelem=4) && (anim=1220)
	trigger2=1|| var(10):=42 || fvar(1):=4.2 || fvar(2):=6 || fvar(5):=8
	trigger3=(animelem=8) && (anim=1220)
	trigger3=1|| var(10):=42 || fvar(1):=4.2 || fvar(2):=4 || fvar(5):=8
	attr=a,sa
	damage=var(10),var(10)/6
	animtype=heavy
	air.animtype=back
	fall.animtype=back
	air.type=low
	ground.type=high
	getpower=var(10)/2,var(10)/4
	guardflag=ma
	hitsound=300,4
	guardsound=41,0
	pausetime=13,13
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-40
	ground.slidetime=18
	ground.hittime=20
	air.hittime=20
	ground.velocity=-fvar(1),-fvar(2)
	air.velocity=   -fvar(1),-fvar(2)
	guard.velocity= -fvar(5)
	yaccel=0.5
	fall=1
	air.fall=1
	fall.recover=0
	nochainid=3000
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510540 )
	fall.envshake.time= id
	fall.envshake.ampl= 0

;---
[state 0]
	type=statetypeset
	trigger1=((animelem=5) && (anim=1210)) || (animelem=12)
	movetype=i
[state 0]
	type=changestate
	trigger1=(pos y+vel y>=0) && (vel y>0)
	value=1030 ;; n





;--------------
;--- O/]

[statedef 1400]
type=c
movetype=i
physics=c
anim=1400
velset=0,0
ctrl=0
facep2=1
;---
[state 0]
	type=varset
	trigger1=!time
	var(1)=ifelse((command="sp4_b"),-1,1)
[state 0]
	type=varset
	trigger1=!time && var(51)>0
	var(1)=ifelse(random<500,-1,1)
;---
[state 0]
	type=changeanim
	trigger1=!time && var(1)=-1
	value=1420
;---
[state 0]
	type=playerpush
	trigger1=(animelem=8,<0)
	value=0
[state 0]
	type=posadd
	trigger1=(animelem=4,>=0) && (animelem=8,<0)
	x=6*var(1)
;---
[state 0] ; dash_dust
	type=helper
	trigger1=(animelem=4) && (sysfvar(0)>0)
	id=152040
	stateno=152040
	pos=floor(12*const(size.xscale))*var(1), 0
	size.xscale=0.5*var(1)
	size.yscale=0.5
;---
[state 0]
	type=playsnd
	trigger1=(animelem=11)
	value=4,0
	channel=0

; GW
[state 0]
	type=poweradd
	trigger1=(animelem=11)
	value=100 +(var(2):=var(2)+300)*0
;---
[state 0]
	type=statetypeset
	trigger1=(animelem=8)
	type=s
	movetype=i
	physics=s
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1




;--------------
;--- 䓹

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

[state 0]
	type=playsnd
	trigger1=time=1 || (animelem=15,=12)
	value=3,(time>1)
	channel=0
; 3,0 ; [䓹!]
; 3,1 ; [!]
[state 0]
	type=playsnd
	trigger1=(animelem=15)
	value=500,1;uV[v
	channel=1

[state 0]
	type=posadd
	trigger1=(animelem=15)
	x=6

;---
[state 0]
	type=explod
	trigger1=(animelem=3,>0) && (animelem=14,<0)
	anim=1115
	sprpriority=-5
	postype=p1
	pos=floor(-8*const(size.xscale)), floor(-pos y)
	scale=((animelemtime(3)%7)*0.5+1)*const(size.xscale),0.36*const(size.yscale)
	removetime=1
	removeongethit=1

;---
[state 0]
	type=helper
	trigger1=(animelem=15) && (sysfvar(0)>0)
	id=1000
	size.height=500012+var(2)/10;;<-(removetime+options)
	pos=floor(56*const(size.xscale)),floor(-80*const(size.yscale))
	stateno=91000
	size.head.pos=1510,1512;;<-anim,hitanim
	size.mid.pos=3500,0;;<-speed_x,y(1/1000)
	size.ground.front=8005;;<-max_hits/miss_time
	size.ground.back=200005;;<-damage hit/guard
	size.air.front=620560;; <vel_x,y_hit
	size.air.back= 640530;; <vel_x,y_guard
	size.shadowoffset=13;;<-fall(10=recovery/1=ground/2=air/3=g&a)
	ownpal=1
	size.xscale=1.0
	size.yscale=1.0

;---
[state 0]
	type=statetypeset
	trigger1=(animelem=15)
	movetype=i
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0 +(var(2):=0)
	ctrl=1






;--------------
;--- ꌂK!

[statedef 1600]
type=s
movetype=i ;;a
physics=s
anim=stateno
poweradd=50
velset=0,0
ctrl=0
facep2=1

[state 0]
	type=varset
	trigger1=!time
	var(0)=-1
[state 0]
	type=playsnd
	trigger1=time=1
	value=3,2 ;; [ꌂKE!]
	channel=0
[state 0]
	type=playsnd
	trigger1=time=1
	value=2000,2
	channel=1
;---
[state 0]
	type=changestate
	trigger1=animtime=0
	value=1605

;--------------
[statedef 1605]
type=s
movetype=a
physics=s
anim=stateno
poweradd=50 ;; <-per block
velset=0,0
ctrl=0
facep2=1

;---
[state 0]
	type=explod
	trigger1=(animelem=3,<0) && (time%3=0) && numexplod(1600)<6
	trigger1=1|| fvar(0):=(random%360) || fvar(3):=(35+(random%25)) || fvar(1):=fvar(3)*cos(fvar(0)*0.0174) || fvar(2):=-fvar(3)*sin(fvar(0)*0.0174)
	id=1600
	anim=1630
	sprpriority=3
	ownpal=1
	postype=p1
	pos=floor((-5+fvar(1))*const(size.xscale)),floor((-69+fvar(2))*const(size.yscale))
	vel=-fvar(1)*0.15,-fvar(2)*0.15
	accel=fvar(1)*0.015,fvar(2)*0.015
	scale=0.25*facing,0.25
	removeongethit=1
	angle=fvar(0)

[state 0]
	type=removeexplod
	trigger1=(animelem=3,>=0)
	id=1600

;---
[state 0]
	type=varadd
	trigger1=!time
	var(0)=1

[state 0]
	type=hitby
	trigger1=(!time && var(0)>0) || var(0)>2
	value=sca,nt,st,ht
	time=6

[state 0]
	type=palfx
	trigger1=var(0)>2 && (gametime%4=0)
	add=0,-64,-64
	time=2
	ignorehitpause=1

;---
[state 0]
	type=varset
	trigger1=1
	var(1)=0
	ignorehitpause=1
[state 0]
	type=varset
	trigger1=!time && (hitpausetime=10) && (sysfvar(0)>0)
	trigger1=roundstate=2 && !ishelper
	var(1)=1
	ignorehitpause=1
	persistent=0

;---
;; guard_spark
[state 0]
	type=helper
	trigger1=var(1)
	id=152100
	stateno=152100
	helpertype=normal
	ownpal=0
	keyctrl=0
	postype=p1
	pos=floor((5+(random%30))*const(size.xscale)),floor((-70-(random%45))*const(size.yscale))
	size.height=42
	ignorehitpause=1
	persistent=0

;---
;--- op-> no-ko & mod-life
[state 0]
	type=null
	trigger1=var(1)
	trigger1=(sysfvar(0)>0) && playeridexist(floor(sysfvar(0)))
	trigger1=playerid(floor(sysfvar(0))),var(0)=90900
	trigger1=1|| playerid(floor(sysfvar(0))),cond(1, var(9):= (var(9)|196608) ,0)
	ignorehitpause=1
	persistent=0

[state 0]
	type=lifeadd
	trigger1=var(1)
	value=-ifelse(life>20,20,0)
	kill=0
	ignorehitpause=1
	persistent=0

;---
[state 0]
	type=attackdist
	trigger1=1
	value=0
;---
[state 0]
	type=reversaldef
	triggerall=(animelem=5,<0)
	triggerall=(time>0 && var(0)>0) || (var(0)<1)
	trigger1=var(0)<3
	trigger2=var(0)>2 && (command="sp3_h")
	attr=s,nt
	numhits=0
;ex;	reversal.attr=sca,na,sa,ha,np,sp,hp
	reversal.attr=sa,na,sa,ha,np,sp,hp
	pausetime=11,11
	hitsound=40,0
	sparkno=-1 ;; 40
;;	sparkxy=10+(random%10),-(random%35)
	p1stateno=stateno

[state 0]
	type=hitoverride
	triggerall=(animelem=5,<0)
	triggerall=(time>0 && var(0)>0) || (var(0)<1)
	trigger1=var(0)<3
	trigger2=var(0)>2 && (command="sp3_h")
	attr=sca,np,sp,hp
	stateno=stateno

[state 0]
	type=changeanim
	trigger1=(animelem=2,<0)
	trigger1=var(0)>2 && command!="sp3_h"
	value=anim
	elem=2
;---
[state 0]
	type=posadd
	trigger1=(animelem=5)
	x=41

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

[state 0]
	type=width
	trigger1=(animelem=4,>=0)
	value=20,0

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

;---
[state 0] ; ground_wave
	type=helper
	trigger1=(animelem=5) && (sysfvar(0)>0)
	pos=floor(22*const(size.xscale)),0
	id=159005
	stateno=159005
	size.height=3

;--- x
[state 0]
	type=explod
	trigger1=(animelem=6)
	anim=1115
	sprpriority=2
	facing= ifelse(random<500,1,-1)
	vfacing=ifelse(random<500,1,-1)
	ownpal=1
	postype=p1
	pos=floor(12*const(size.xscale)),floor(-73*const(size.yscale))
	scale=3.5*const(size.xscale),0.3*const(size.yscale)
	vel=0.5,0
	removeongethit=1

;---
[state 0]
	type=hitdef
	trigger1=(animelem=6)
	attr=s,sa
	id=1700
	damage=150+var(0)*50
	animtype=back
	air.animtype=back
	fall.animtype=diagup
	air.type=low
	ground.type=low
	getpower=100,50
	;;-;; givepower=200,100
	guardflag=-1
	hitsound=3,3
	guardsound=41,0
	pausetime=32,32
	;ad; sparkno=3+(random%4)*10
	;ad; guard.sparkno =41
	sparkxy=-10,-75
	ground.slidetime=18
	ground.hittime=20
	air.hittime=20
	ground.velocity=-6,-8
	air.velocity=   -6,-8
	yaccel=0.45
	fall=1
	air.fall=1
	fall.recover=0
	;---
	guard.ctrltime=     id +0*(var(31):=3 || var(30):= 510575 )
	fall.envshake.time= id
	fall.envshake.ampl= 0
;---
[state 0]
	type=changestate
;;op;	trigger1=numtarget(1700)
	trigger1=movehit && hitover
	value=ifelse(var(0), 1635, 1620)
;---
[state 0]
	type=changestate
	trigger1=animtime=0
	value=1610

;--------------
[statedef 1610]
type=s
movetype=i
physics=s
anim=1610
velset=0,0
ctrl=0
[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1

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

[state 0]
	type=playsnd
	trigger1=time=1 || (animelem=11,=10)
	value=3,4+(time>1)
	channel=0
; 3,4 ; [[!]
; 3,5 ; []T!]

[state 0]
	type=explod
	trigger1=(animelem=11,=12)
	anim=1640
	sprpriority=7
	postype=p1
	ownpal=1
	removeongethit=1
	pos=floor(20*const(size.xscale)),floor(-57*const(size.yscale))
	scale=const(size.xscale),const(size.yscale)
	removeongethit=1

[state 0]
	type=changestate
	trigger1=animtime=0
	value=0
	ctrl=1

;--------------
[statedef 1635]
type=s
movetype=i
physics=s
anim=195+(random%2)
poweradd=(var(2):=var(2)+300)*0
velset=0,0
ctrl=0
[state 0]
	type=statetypeset
	trigger1=!time && (anim=196)
	statetype=c
	physics=c
[state 0]
	type=playsnd
	trigger1=(animelem=3)
	value=ifelse(statetype=s,5,4), ifelse(statetype=s,1,0)
	channel=0
[state 0]
	type=changestate
	trigger1=animtime=0
	value=ifelse(statetype=s,0,11)
	ctrl=1

;[EOF]
