I'm starting to get back into MUGEN development and one of the things I'm doing is fixing up problems I have encountered with other characters.
The subject of this topic is Clowna by MrPr1993. Occasionally, whenever she attacks with a specific move and actually defeats someone with it, she just floats up and disappear, something that is not supposed to happen.
Here is a clip from a failed survival run recording showcasing the error happening:
https://streamable.com/ed0fk6
I can confirm this happening at least twice in the past and with her facing Kung Fu Man. And with her using that move of similar moves.
Here is the coding of the move in question:
;---------------------------------------------------------------------------
; Bouncy Clown
;Source: Splode's Rikuo
[Statedef 1000]
type = C
physics = S
ctrl = 0
anim = 40
velset = 0,0
[State 1000, Set]
type = PosSet
trigger1 = time = 0
y = 0
[State 1000, 1]
type = ChangeState
trigger1 = time = 7
value = 1005
;---------------------------------------------------------------------------
; Actual Hop Back
[Statedef 1005]
type = A
physics = A
ctrl = 0
anim = 105
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 2
value = S0,2
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 2
value = S200,1
[State 1005, 1]
type = VelSet
trigger1 = Time = 0
x = const(velocity.run.back.x)
y = const(velocity.run.back.y)
[State 1005, 2]
type = ChangeState
triggerall = time > 2
trigger1 = Pos Y >= -4
value = 1006
;---------------------------------------------------------------------------
; Bouncy Clown - Light
; Performed from the hopback jumping state
[Statedef 1006]
type = A
movetype = A
physics = A
anim = 1000
velset = 0,0
ctrl = 0
poweradd = 60
[State 0, ChangeAnim]
type = ChangeAnim
trigger1 = Time=0
trigger1 = prevstateno = 1030
value = 1000
elem = 2
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 1
value = S0,3
[State 0, PlaySnd]
type = PlaySnd
trigger1 = Time = 1
value = S200,4
[State 830, 3]
type = VelSet
triggerall = time < 4
trigger1 = AnimElem = 2
x = 8.5
y = -5.5
[State 830, 4]
type = PlaySnd
triggerall = time < 4
trigger1 = AnimElem = 2
value = 4, 3
[State 830, 5]
type = hitdef
trigger1 = time = 3
attr = A, SA
hitflag = MAF
guardflag = MA
animtype = back
priority = 5
damage = 90, 3
pausetime = 2, 9
sparkno = 2
sparkxy = 10, -20
hitsound = S2,2
guardsound = S2, 6
ground.type = high
fall = 1
air.fall = 1
guard.slidetime = 10
ground.velocity = -6, -4
air.velocity = -8, -3
[State 830, 6]
type = Velset
triggerall = var(1) = 0
trigger1 = movecontact
x = -4
y = -3
[State 830, 7]
type = ChangeAnim
trigger1 = movecontact
trigger1 = anim != 1002
value = 1002
[State 0, ChangeState]
type = ChangeState
trigger1 = anim = 1002
trigger1 = animtime = 0
value = 5040
ctrl = 0
[State 830, 8]
type = VarSet
trigger1 = movecontact
v = 1
value = 1
It seems okay and I can't figure out what is the problem, or how to fix it without breaking the move. Can you help me out by figuring out what is wrong and how to fix it?