The Mugen Fighters Guild

Help => M.U.G.E.N Development Help => Tips, Tricks, Tutorials => Topic started by: 2OS on June 18, 2010, 12:01:44 am

Title: Super Armor V2 [ HitStun Added ]
Post by: 2OS on June 18, 2010, 12:01:44 am
Helper Style Super Armor, traditionally Statedef 9000 is used for armor so I'm using that

The optional hitstun doesn't work all too well [ imo ], but it's decent enough based on the tests I ran


[Statedef 9000]


[State 2OS]
type=statetypeset
trigger1=time=0
movetype=i
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Invisibility]
type=assertspecial
trigger1=1
flag=invisible
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Glue To Root]
type=bindtoroot
trigger1=1
pos=0,0
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Use Root Animation]
type=changeanim
trigger1=1
value=root,anim
elem=root,animelemno(0)
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Over Ride To Hitstun]
type=hitoverride
trigger1=1
attr=sca,na,sa,ha,np,sp,hp,nt,st,ht,aa,ap,at
slot=1
stateno=9002
time=-1
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Hit Delay Time Conditions ( Optional )]
type=nothitby
triggerall=(root,life>0)||(root,stateno!=[130,170])||(root,stateno!=[900,990])||(root,stateno!=[1100,1101])||(root,stateno!=[1110,1111])||(root,stateno!=[1120,1121])
trigger1=time=0
value=sca,na,sa,ha,np,sp,hp,nt,st,ht,aa,ap,at
time=7
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  More Hit Delay Time Conditions ( Optional )]
type=nothitby
triggerall=(root,life>0)||(root,stateno!=[2020,2030])||(root,stateno!=[2600,2610])||(root,stateno!=[2700,2710])||(root,stateno!=260000)||(root,stateno!=[3631,3641])||(root,stateno!=[4520,4530])||(root,stateno!=[4950,4960])
trigger1=time=0
value=sca,na,sa,ha,np,sp,hp,nt,st,ht,aa,ap,at
time=7
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Immune Conditions ( Optional )]
type=nothitby
trigger1=(root,life<=0)||(root,stateno=[130,170])||(root,stateno=[900,990])||(root,stateno=[1100,1101])||(root,stateno=[1110,1111])||(root,stateno=[1120,1121])||(roundstate!=2)
value=sca
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  More Immune Conditions ( Optional )]
type=nothitby
trigger1=(root,life<=0)||(root,stateno=[2020,2030])||(root,stateno=[2600,2610])||(root,stateno=[2700,2710])||(root,stateno=260000)||(root,stateno=[3631,3641])||(root,stateno=[4520,4530])||(root,stateno=[4950,4960])
value=sca
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Face Root]
type=turn
trigger1=facing!=root,facing
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[Statedef 9002]


[State 2OS]
type=statetypeset
trigger1=time=0
movetype=i
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Invisibility]
type=assertspecial
trigger1=1
flag=invisible
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Glue To Root]
type=bindtoroot
trigger1=1
pos=0,0
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Use Root Animation]
type=changeanim
trigger1=1
value=root,anim
elem=root,animelemno(0)
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Immune ( Is Stunned )]
type=nothitby
trigger1=1
value=sca
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Face Root]
type=turn
trigger1=facing!=root,facing
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Hit Stun Time]
type=changestate
trigger1=
value=9000
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[Statedef -2]


[State 2OS,  Armor Itself]
type=helper
triggerall=numhelper(9000)=0
trigger1=roundstate=2
id=9000
name="Armor"
pos=0,0
postype=p1
stateno=9000
helpertype=normal
keyctrl=0
ownpal=1
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Stun ( Anim )]
type=changeanim
trigger1=helper(9000),stateno=9002
value=anim
elem=animelemno(0)
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Stun ( Position )]
type=posfreeze
trigger1=helper(9000),stateno=9002
value=1
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Damage]
type=lifeadd
trigger1=helper(9000),stateno=9002&&!time
value=-
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Hit Flash ( Optional )]
type=palfx
trigger1=helper(9000),stateno=9002
time=2
add=0,150,200
mul=0,256,256
sinadd=0,0,0,10
invertall=0
color=256
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999


[State 2OS,  Hit Sound ( Optional )]
type=playsnd
trigger1=helper(9000),stateno=9002&&!time
value=
ignorehitpause=1
persistent=1
pausemovetime=9999999
supermovetime=9999999



Flaws :

— Incredibly rare glitch during pauses that causes sustained lifeloss until the pause expires