@odb718
P2 is the one being accelerated off screen and decelerated to come back on screen so they can land right in front of P1, giving the illusion that P2 was sent flying and chased after by P1. P1 is always at the center of the screen throughout the entire cinematic. I essentially want a consistent distance regardless of resolution, but I don't have much experience with the gamewidth trigger to really know what to do for with it for velsets and possets.
I'll just post the code regardless.
P1's part of the cinematic.
Spoiler, click to toggle visibilty
; Affettuoso (start)
[statedef 3400]
type = s
physics = s
anim = 3400
velset = 0,0
ctrl = 0
poweradd = -3000
sprpriority = 2
facep2 = 1
[State 3400, NotHitBy]
type = NotHitBy
trigger1 = 1
value = sca
[state 3400, playsnd]
type = playsnd
trigger1 = time = 1
value = 9,311
channel = 0
[State 3400, Super Pause]
type = SuperPause
trigger1 = Time = 0
time = 64
movetime = 64
unhittable = 1
anim = s32500
pos = 20,-25
sound = s2,101
darken = 1
p2defmul = 1+(fvar(6)/35)
[state 3400, Super Portrait]
type = explod
trigger1 = animelemtime(2) = 0
id = 30500
postype = left
anim = 30500
sprpriority = 5
supermovetime = 60
removetime = 60
bindtime = 1
removeongethit = 1
scale = 0.4,0.4
pos = 160,90
[State 3400, Assert]
type = AssertSpecial
trigger1 = Time < 64
flag = nofg
flag2 = timerfreeze
ignorehitpause = 1
[state 3400, changestate]
type = changestate
trigger1 = Time = 64
value = 3410
ctrl = 0
;-------------------------------------------------------------------------------
; Affettuoso Pt2
[Statedef 3410]
type = S
movetype= A
physics = N
velset = 0,0
ctrl = 0
anim = 3410
poweradd = 0
[State 3410, FX]
type = Explod
trigger1 = AnimElem = 1
anim = 26000
id = 26000
pos = 0,0
postype = p1
bindtime = 1
scale = 1*const(size.xScale),1*const(size.yScale)
sprpriority = 5
ownpal = 1
removetime = 12
removeongethit = 1
ignorehitpause = 0
[state 3410, targetfacing]
type = targetfacing
trigger1 = time = 0
value = -1
[State 3410, Invuln]
type = NotHitBy
trigger1 = 1
value = sca
[State 3410, VelSet]
type = VelSet
trigger1 = Time = 0
x = 30
[State 3410, VelMul]
type = VelMul
trigger1 = Time = 1
x = 3
ignorehitpause = 1
[State 3410, VelSet]
type = VelSet
trigger1 = moveguarded
x = 0
[State 3410, No Juggle Check]
type = AssertSpecial
trigger1 = 1
flag = nojugglecheck
ignorehitpause = 1
[State 3410, HitDef]
type = HitDef
trigger1 = time = 1
trigger1 = !winKO
attr = S,HA
damage = ceil(60),60
priority = 7,hit
animtype = Hard
getpower = 0,0
givepower = 80,80
kill = 0
guard.kill = 0
guardflag = MA
hitflag = MAF
hitsound = S1,9
guardsound = s2,1
pausetime = 9,11
guard.pausetime = 9,9
sparkno = S20003
guard.sparkno = S25010
sparkxy = 0,-50
ground.type = High
ground.slidetime = 12
ground.hittime = 32
guard.hittime = 12
ground.velocity = 0
air.velocity = 0,-2
guard.velocity= -3
airguard.velocity = -2, -2
yaccel= 0.5
air.fall = 1
fall.recover = 0
forcestand = 1
p2facing = 1
p1facing = 1
ID = 3410
[state 3410, Hit]
type = ChangeState
trigger1 = movehit
value = 3420
ignorehitpause = 1
[State 3410, Blocked]
type = ChangeState
trigger1 = moveguarded
value = 1012
[State 3410, Miss]
type = ChangeState
trigger1 = !AnimTime
value = 0
ctrl = 1
;-------------------------------------------------------------------------------
; Affettuoso Pt3
[statedef 3420]
type = S
movetype = A
physics = S
anim = 3420
ctrl = 0
[state 3420, Hit]
type = targetstate
trigger1 = movehit
ID = 3410
value = 3490
ignorehitpause = 1
[state 3420, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3420, VelSet]
type = VelSet
trigger1 = time = 0
x = 0
y = 0
[state 3420, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3420, width]
type = width
trigger1 = 1
player = floor(const(size.xscale)*60),0
edge = floor(const(size.xscale)*160),0
[state 3420, envshake]
type = envshake
trigger1 = time = 70
time = 200
freq = 60
ampl = -4
phase = 4
[state 3420, helper]
type = helper
trigger1 = time = 55
helpertype = normal
name = "magic circle"
stateno = 21500
id = 21500
pos = -floor(const(size.xscale)*20),-floor(const(size.yscale)*40)
postype = p1
facing = facing
ownpal = 1
supermovetime = 999
pausemovetime = 999
size.xscale = 0.18*const(size.xscale)
size.yscale = 0.18*const(size.yscale)
[state 3420, helper]
type = helper
trigger1 = time = 60
helpertype = normal
name = "magic circle"
stateno = 21500
id = 21500
pos = floor(const(size.xscale)*70),-floor(const(size.yscale)*60)
postype = p1
facing = facing
ownpal = 1
supermovetime = 999
pausemovetime = 999
size.xscale = 0.23*const(size.xscale)
size.yscale = 0.23*const(size.yscale)
[state 3420, helper]
type = helper
trigger1 = time = 75
helpertype = normal
name = "magic circle"
stateno = 21500
id = 21500
pos = floor(const(size.xscale)*10),-floor(const(size.yscale)*85)
postype = p1
facing = facing
ownpal = 1
supermovetime = 999
pausemovetime = 999
size.xscale = 0.3*const(size.xscale)
size.yscale = 0.3*const(size.yscale)
[state 3420, explod]
type = explod
trigger1 = time = 120
anim = 23400
id = 23400
pos = ceil(p2dist x)/2,0
postype = p1
facing = 1
bindtime = 1
removetime = -2
scale = const(size.xscale),const(size.yscale)
sprpriority = 3
ownpal = 1
[state 3420, playsnd]
type = playsnd
trigger1 = anim = 3420
trigger1 = animelemtime(4) = 0
value = 6,0
[state 3420, playsnd]
type = playsnd
trigger1 = time = 40
value = 3,4
[state 3420, playsnd]
type = playsnd
trigger1 = time = 80
value = 6,1
[state 3420, playsnd]
type = playsnd
trigger1 = time = 170
value = 9,400
channel = 0
[state 3420, changestate]
type = changestate
trigger1 = time = 240
trigger1 = p2stateno = 3490
value = 3421
[state 3420, failsafe]
type = changestate
trigger1 = time >= 1
trigger1 = p2stateno != 3490
value = 3480
[State 3420, PosSet]
type = posset
trigger1 = 1
x = 0
[State 3420, TargetBind]
type = TargetBind
trigger1 = 1
pos = 75
;-------------------------------------------------------------------------------
; Affettuoso Pt4
[statedef 3421]
type = S
movetype = A
physics = S
anim = 3421
ctrl = 0
[state 3421, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3421, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3421, playsnd]
type = playsnd
trigger1 = animelemtime(2) = 0
value = 0,5
[state 3421, playsnd]
type = playsnd
trigger1 = animelemtime(3) = 0
value = 1,10
[state 3421, damage]
type = targetlifeadd
trigger1 = animelemtime(3) = 0
value = ceil(-60)
kill = 0
absolute = 1
ignorehitpause = 1
[state 3421, explod]
type = explod
trigger1 = animelemtime(3) = 0
anim = 25002
id = 25002
pos = floor(const(size.xscale)*65),-floor(const(size.yscale)*70)
postype = p1
random = 10, 10
facing = 1
bindtime = 1
removetime = -2
scale = const(size.xscale),const(size.yscale)
sprpriority = 5
supermovetime = 999
pausemovetime = 999
ownpal = 1
[state 3421, hit]
type = hitadd
trigger1 = animelem = 3
value = 1
[state 3421, width]
type = width
trigger1 = 1
player = floor(const(size.xscale)*30),0
[state 3421, posadd]
type = posadd
trigger1 = animelemtime(2) = 0
x = floor(const(size.xscale)*35)
[state 3421, posadd]
type = posadd
trigger1 = animelemtime(3) = 0
x = floor(const(size.xscale)*25)
[state 3421, posadd]
type = posadd
trigger1 = animelemtime(7) = 0
x = -floor(const(size.xscale)*20)
[state 3421, posadd]
type = posadd
trigger1 = animelemtime(8) = 0
x = -floor(const(size.xscale)*20)
[state 3421, posadd]
type = posadd
trigger1 = animtime = 0
x = -floor(const(size.xscale)*20)
[state 3421, changestate]
type = changestate
trigger1 = numtarget(3400) = 0
trigger1 = time > 360
value = 0
ctrl = 1
[state 3421, changestate]
type = changestate
trigger1 = animtime = 0
value = 3430
;-------------------------------------------------------------------------------
; Affettuoso Pt5
[statedef 3430]
type = S
movetype = I
physics = S
anim = 3430
ctrl = 0
[state 3430, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3430, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3430, posset]
type = posset
trigger1 = 1
x = 0
[state 3430, changestate]
type = changestate
trigger1 = animtime = 0
value = 3440
;-------------------------------------------------------------------------------
; Affettuoso Pt6
[statedef 3440]
type = S
movetype = I
physics = S
anim = 3440
ctrl = 0
[state 3440, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3440, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3440, VelSet]
type = velset
trigger1 = 1
x = const(velocity.run.fwd.x)*2
[state 3495, posset]
type = posset
trigger1 = 1
x = 0
[State 3495, FX]
type = Explod
trigger1 = Time = 1
anim = 26000
id = 26000
pos = 0,0
postype = p1
bindtime = 3
scale = 1*const(size.xScale),1*const(size.yScale)
sprpriority = 5
ownpal = 1
removetime = 12
removeongethit = 1
ignorehitpause = 0
[state 3440, changestate]
type = changestate
trigger1 = time > 80
value = 3450
;-------------------------------------------------------------------------------
; Affettuoso Pt7
[statedef 3450]
type = S
movetype = I
physics = S
anim = 3450
ctrl = 0
[state 3450, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3450, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3450, posset]
type = posset
trigger1 = 1
x = 0
[state 3450, changestate]
type = changestate
trigger1 = animtime = 0
value = 3451
;-------------------------------------------------------------------------------
; Affettuoso Pt8
[statedef 3451]
type = A
movetype = I
physics = N
anim = 3451
ctrl = 0
[state 3451, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3451, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3451, velset]
type = velset
trigger1 = time = 0
x = 4
y = -7
[state 3451, veladd]
type = veladd
trigger1 = time > 10
y = const(movement.yaccel)
[state 3451, posset]
type = posset
trigger1 = 1
x = 0
[state 3451, changestate]
type = changestate
trigger1 = time = 40
value = 3455
;-------------------------------------------------------------------------------
; Affettuoso Pt9
[statedef 3455]
type = A
movetype = A
physics = N
anim = 3455
ctrl = 0
[state 3455, hit]
type = hitadd
trigger1 = animelem = 1
value = 1
[state 3455, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3455, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3455, veladd]
type = veladd
trigger1 = 1
x = 1
[state 3455, veladd]
type = veladd
trigger1 = 1
y = const(movement.yaccel)*2
[state 3455, playsnd]
type = playsnd
trigger1 = time = 0
value = 0,5
[state 3455, playsnd]
type = playsnd
trigger1 = time = 1
value = 1,10
[state 3455, damage]
type = targetlifeadd
trigger1 = animelemtime(1) = 0
value = ceil(-80)
kill = 0
absolute = 0
[state 3455, envshake]
type = envshake
trigger1 = time = 1
time = 40
freq = 60
ampl = -4
phase = 4
[state 3455, explod]
type = explod
trigger1 = time = 0
anim = 25000
id = 25000
pos = floor(const(size.xscale)*70),-floor(const(size.yscale)*-50)
postype = p1
random = 10, 10
facing = 1
bindtime = 1
removetime = -2
scale = const(size.xscale),const(size.yscale)
sprpriority = 5
supermovetime = 999
pausemovetime = 999
ownpal = 1
[state 3455, posset]
type = posset
trigger1 = 1
x = 0
[state 3455, changestate]
type = changestate
trigger1 = vel y > 0
trigger1 = pos y >= 0
value = 3459
;-------------------------------------------------------------------------------
; Affettuoso Pt10
[statedef 3459]
type = S
movetype = I
physics = S
anim = 3459
velset = 0,0
ctrl = 0
[state 3459, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3459, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3459, posset]
type = posset
trigger1 = pos y != 0
x = 0
y = 0
[state 3459, changestate]
type = changestate
trigger1 = animtime = 0
value = 3460
;-------------------------------------------------------------------------------
; Affettuoso Pt11
[statedef 3460]
type = S
movetype = A
physics = S
anim = 3460
ctrl = 0
[state 3460, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nobg
flag3 = nofg
[state 3460, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3460, playsnd]
type = playsnd
trigger1 = animelemtime(3) = 0
trigger2 = animelemtime(9) = 0
value = 0,5
[state 3460, playsnd]
type = playsnd
trigger1 = animelemtime(4) = 0
trigger2 = animelemtime(10) = 0
value = 1,8
[state 3460, playsnd]
type = playsnd
trigger1 = animelemtime(4) = 0
trigger2 = animelemtime(10) = 0
value = 9,401
channel = 0
lowpriority = 1
[state 3460, explod]
type = explod
trigger1 = animelemtime(4) = 0
trigger2 = animelemtime(10) = 0
anim = 24000
id = 24000
pos = ifelse(frontedgedist<50,-floor(const(size.xscale)*50),0),0
postype = p2
random = 30,0
facing = 1
bindtime = -1
removetime = -2
scale = const(size.xscale),const(size.yscale)
sprpriority = -1
ownpal = 0
[state 3460, damage]
type = targetlifeadd
trigger1 = animelemtime(4) = 0
trigger2 = animelemtime(10) = 0
value = ceil(-50)
kill = 0
absolute = 0
[state 3460, hit]
type = hitadd
trigger1 = animelem = 4
trigger2 = animelem = 10
value = 1
[state 3460, posset]
type = posset
trigger1 = 1
x = 0
[state 3460, changestate]
type = changestate
trigger1 = animtime = 0
value = 3470
;-------------------------------------------------------------------------------
; Affettuoso Pt12
[statedef 3470]
type = S
movetype = A
physics = S
anim = 3470
ctrl = 0
[State 3470, Super Finish Sound]
type = playsnd
trigger1 = WinKO
value = 2,107
channel = 1
persistent = 0
[state 3470, assertspecial]
type = assertspecial
trigger1 = 1
flag = timerfreeze
flag2 = nofg
[state 3470, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3470, bgpalfx]
type = bgpalfx
triggerall = var(3) = 0
trigger1 = time = 0
time = 130
add = 250,-250,-250
[state 3470, bgpalfx]
type = bgpalfx
triggerall = var(3) = 1
trigger1 = time = 0
time = -1
add = 250,-250,-250
[state 3470, palfx]
type = palfx
trigger1 = time = 0
time = 130
add = -250,-250,-250
ignorehitpause = 1
[state 3470, playsnd]
type = playsnd
trigger1 = time = 0
value = 9,410
channel = 0
[state 3470, playsnd]
type = playsnd
trigger1 = animelemtime(5) = 30
value = 0,6
[state 3470, playsnd]
type = playsnd
trigger1 = animelemtime(6) = 0
value = 1,10
[state 3470, envshake]
type = envshake
trigger1 = animelemtime(6) = 0
time = 60
freq = 70
ampl = -4
phase = 4
[state 3470, damage]
type = targetlifeadd
trigger1 = animelemtime(6) = 0
value = ceil(-100)
kill = 1
absolute = 0
[state 3470, hit]
type = hitadd
trigger1 = animelem = 6
value = 1
[State 3470, Super Finish Flash]
type = BGPalFX
trigger1 = (Time < 12)
trigger1 = WinKO
time = 16
color = 256
add = 256,256,256
mul = 256,256,256
sinadd = -256,-256,-256,100
ignorehitpause = 1
persistent = 0
[state 3470, explod]
type = explod
trigger1 = animelemtime(6) = 0
anim = 24000
id = 24000
pos = ifelse(frontedgedist<50,-floor(const(size.xscale)*50),0),0
random = 30,0
postype = p2
facing = 1
bindtime = -1
removetime = -2
scale = const(size.xscale),const(size.yscale)
sprpriority = -1
ownpal = 0
[State 3470, p2state]
type = targetstate
trigger1 = movehit && numtarget(3410)
trigger1 = WinKO
value = 3498
ignorehitpause = 0
[state 3470, varset]
type = varset
triggerall = numtarget(3410) > 0
trigger1 = target(3410),alive = 0
var(3) = 1
[state 3470, changestate]
type = changestate
trigger1 = animtime = 0
value = 0
ctrl = 1
;-------------------------------------------------------------------------------
; Affettuoso Failsafe
[Statedef 3480]
type = S
movetype = A
physics = S
anim = 2010
ctrl = 0
[State 3290, Super Finish Sound]
type = playsnd
trigger1 = WinKO
value = 2,107
channel = 1
persistent = 0
[State 3410, HitDef]
type = HitDef
trigger1 = animelem = 4
attr = S,HA
damage = 350
priority = 7,hit
animtype = Hard
getpower = 0,0
givepower = 0,0
hitflag = MAF
hitsound = S1,9
guardsound = s2,1
pausetime = 9,11
sparkno = S20003
sparkxy = 0,-50
ground.type = High
ground.slidetime = 1
ground.hittime = 32
guard.hittime = 12
ground.velocity = -50,-12
air.velocity = -50,-12
fall = 1
fall.recover = 0
p2facing = 1
p1facing = 1
[state 3480, changestate]
type = changestate
trigger1 = animtime = 0
value = 105
ignorehitpause = 0
P2's part of the cinematic when in custom state.
Spoiler, click to toggle visibilty
; Target Bound to Aff
[statedef 3490]
type = S
movetype = H
physics = N
anim = 5000
ctrl = 0
[state 3290, VelSet]
type = VelSet
trigger1 = time = 0
x = 0
y = 0
[state 3490, Screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
[state 3490, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3490, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3490, width]
type = width
trigger1 = 1
player = 75,0
edge = 0,floor(const(size.xscale)*100)
[state 3490, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3490, velset]
type = velset
trigger1 = 1
x = 30
y = 0
[state 3490, changeanim]
type = changeanim
trigger1 = 1
elem = animelemno(0)
value = anim
ignorehitpause = 1
[state 3490, changestate]
type = changestate
trigger1 = time > 250
value = 3491
ctrl = 0
[state 3490, posfreeze]
type = posfreeze
trigger1 = 1
[state 3490, selfstate]
type = selfstate
trigger1 = time > 360
trigger1 = !gethitvar(isbound)
value = 5120
;-------------------------------------------------------------------------------
; Target Bound to Aff 2
[statedef 3491]
type = A
movetype = H
physics = N
ctrl = 0
facep2 = 1
[state 3491, Screenbound]
type = screenbound
trigger1 = 1
value = 0
movecamera = 1,0
[state 3491, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3491, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3491, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3491, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3491, changeanim]
type = changeanim
trigger1 = time = 0
value = 5030
ignorehitpause = 1
[state 3491, changeanim]
type = changeanim
trigger1 = anim = 5030
trigger1 = animtime = 0
trigger1 = selfanimexist(5035) = 1
value = 5035
ignorehitpause = 1
[state 3491, changeanim]
type = changeanim
trigger1 = anim = 5035
trigger1 = animtime = 0
trigger2 = anim = 5030
trigger2 = animtime = 0
trigger2 = selfanimexist(5035) != 1
value = 5050
ignorehitpause = 1
[state 3491, velset]
type = velset
trigger1 = time = 0
x = -14
y = -10
[state 3491, veladd]
type = velset
trigger1 = time > 11
y = 0.48
[state 3491, change]
type = changestate
trigger1 = time = 206
value = 3492
;-------------------------------------------------------------------------------
; Target Bound to Aff 3
[statedef 3492]
type = A
movetype = H
physics = N
ctrl = 0
anim = 5030
facep2 = 1
[state 3492, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3492, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3492, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3492, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3492, velset]
type = velset
trigger1 = time = 0
x = 70
y = 16
[state 3492, changestate]
type = changestate
trigger1 = vel y > 0
trigger1 = pos y >= -10
value = 3493
;-------------------------------------------------------------------------------
; Target Bound to Aff Pt4
[statedef 3493]
type = L
movetype= H
physics = N
anim = 5100
facep2 = 1
[state 3493, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3493, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3493, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3493, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3493, velset]
type = velset
trigger1 = time = 0
y = 0
[state 3493, velmul]
type = velmul
trigger1 = time = 0
x = 0.75
[state 3493, playsnd]
type = playsnd
trigger1 = time = 1
value = f7,2
[state 3493, posfreeze]
type = posfreeze
trigger1 = 1
[state 3493, changestate]
type = changestate
trigger1 = animtime = 0
value = 3494
;-------------------------------------------------------------------------------
; Target Bound to Aff Pt5
[statedef 3494]
type = L
movetype = H
physics = N
anim = 5160
facep2 = 1
[state 3494, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3494, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3494, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3494, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3494, veladd]
type = veladd
trigger1 = time = 0
y = -4
[state 3494, veladd]
type = veladd
trigger1 = 1
y = 0.45
[state 3494, posfreeze]
type = posfreeze
trigger1 = 1
[state 3494, changestate]
type = changestate
trigger1 = vel y > 0
trigger1 = pos y >= 0
value = 3495
;-------------------------------------------------------------------------------
; Target Bound to Aff Pt6
[statedef 3495]
type = L
movetype = H
physics = N
anim = 5110
velset = 0,0
facep2 = 1
[state 3495, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3495, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3495, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3495, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3495, posfreeze]
type = posfreeze
trigger1 = 1
[state 3495, changestate]
type = changestate
trigger1 = time = 19
value = 3496
;-------------------------------------------------------------------------------
; Target Bound to Aff Pt7
[statedef 3496]
type = L
movetype = H
physics = N
anim = 5080
facep2 = 1
[state 3496, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3496, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3496, nothitby]
type = nothitby
trigger1 = 1
value = sca,aa
ignorehitpause = 1
[state 3496, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3496, changestate]
type = changestate
trigger1 = animtime = 0
trigger2 = time >= 12
value = 3497
;-------------------------------------------------------------------------------
; Target Bound to Aff Pt8
[statedef 3497]
type = L
movetype= H
physics = N
anim = 5080
velset = 0,0
facep2 = 1
[state 3497, destroyself]
type = destroyself
trigger1 = ishelper
ignorehitpause = 1
[state 3497, palfx]
type = palfx
trigger1 = p2stateno = 3470
time = 60
add = -255,-255,-255
ignorehitpause = 1
[state 3497, palfx]
type = palfx
trigger1 = numenemy
trigger1 = enemy,winKO
time = 180
add = -255,-255,-255
ignorehitpause = 1
[state 3497, screenbound]
type = screenbound
trigger1 = 1
value = 1
movecamera = 0,0
ignorehitpause = 1
[state 3497, playerpush]
type = playerpush
trigger1 = 1
value = 0
ignorehitpause = 1
[state 3497, changeanim]
type = changeanim
trigger1 = anim = 5080
trigger1 = animtime = 0
trigger2 = time >= 24
value = 5110
ignorehitpause = 1
[state 3497, statechange]
type = selfstate
triggerall = roundstate = 3
trigger1 = alive = 0
value = 5150
[state 3497, selfstate]
type = selfstate
triggerall = time = 270
trigger1 = alive = 1
trigger2 = roundstate = 2
trigger2 = numpartner
trigger2 = partner,alive
value = 5110
[state 3497, changestate]
type = selfstate
trigger1 = time = 270
trigger1 = alive = 1
value = 5110
Also, I tested it on characters with different resolutions and even the ones with the same res seem to do it.