This is the current code in its entirety.
Spoiler, click to toggle visibilty
[code][Statedef 1200]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(32) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
name = "Blast Effect"
ID = 1206
stateno = 1206
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1201]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(33) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
name = "Blast Effect"
ID = 1207
stateno = 1207
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1202]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(34) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = AnimElem = 5
helpertype = normal
name = "Blast Effect"
ID = 1208
stateno = 1208
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1206]
type = A
movetype = A
physics = N
anim = 4018
velset = 0,0
sprpriority = 99
[State 1201, DestroySelf]
type = DestroySelf
trigger1 = time > 500
trigger2 = NumHelper > 3
[Statedef 1207]
type = A
movetype = A
physics = N
anim = 4019
velset = 0,0
sprpriority = 99
[State 1201, DestroySelf]
type = DestroySelf
trigger1 = time > 500
trigger2 = NumHelper > 3
Spoiler, click to toggle visibilty
[Statedef 1208]
type = A
movetype = A
physics = N
anim = 1301
[State 0]
type = VarSet
triggerall = numhelper (1206)
trigger1 = time = 0
v = 32
value = pos x - helper(1206), pos x
[State 0]
type = VarSet
triggerall = numhelper (1207)
trigger1 = time = 0
v = 33
value = pos x - helper(1207), pos x
[State 0]
type = VelSet
triggerall = numhelper (1206)
triggerall = numhelper (1207)
trigger1 = time = 0
x = ifelse (var(32) > var(33), var(32), var(33))
y = 0
ignorehitpause = 1
[State 0]
type = VelSet
triggerall = numhelper (1206)
triggerall = !numhelper (1207)
trigger1 = time = 0
x = var(32)
y = 0
[State 0]
type = VelSet
triggerall = !numhelper (1206)
triggerall = numhelper (1207)
trigger1 = time = 0
x = var(33)
y = 0
[State 1300, 2]
type = HitDef
trigger1 = time = 0
attr = S,SP
hitflag = MAF
guardflag = MA
animtype = low
priority = 4,Hit
damage = 65,10
pausetime = 18,8
sparkno = -1
guard.sparkno = -1
hitsound = S15,7
guardsound = S15,7
ground.type = Low
ground.slidetime = 18
ground.hittime = 8
ground.velocity = -18,7
air.velocity = -8,4
[State 0]
type = DestroySelf
trigger1 = movecontact
trigger1 = time > 200
[/code]
Helper 1208 will not spawn with those VelSets if 1206 or 1207 are onscreen. If they aren't on screen, 1208 will appear but not move obviously.
I also have the code attempting to make a master helper that could call the other three helpers depending on command:
Spoiler, click to toggle visibilty
[code][Statedef 1200]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(32) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
name = "Blast Effect"
ID = 1205
stateno = 1205
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1201]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(33) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
name = "Blast Effect"
ID = 1205
stateno = 1205
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1202]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 50
ctrl = 0
velset = 0,0
anim = 1200
sprpriority = 0
[State 0]
type = VarSet
trigger1 = time = 0
var(34) = 1
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 2
value = 1000,6
[State 1200, PlaySnd]
type = PlaySnd
trigger1 = animelem = 1
value = S1200,0
volume = 255
channel = 5
[State 1200, Helper]
type = Helper
trigger1 = time = 0
helpertype = normal
name = "Blast Effect"
ID = 1205
stateno = 1205
pos = 40,-50
size.xscale = 0.8
size.yscale = 0.8
postype = p1
bindtime = -1
[State 1200, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1205]
type = S
movetype= H
physics = S
[State 1200, Helper]
type = Helper
trigger1 = root, var(32) = 1
helpertype = normal
name = "Blast Effect"
ID = 1206
stateno = 1206
pos = 0,0
size.xscale = 0.3
size.yscale = 0.3
postype = p1
bindtime = -1
[State 1200, Helper]
type = Helper
trigger1 = root, var(33) = 1
helpertype = normal
name = "Blast Effect"
ID = 1207
stateno = 1207
pos = 0,0
size.xscale = 0.3
size.yscale = 0.3
postype = p1
bindtime = -1
[State 1200, Helper]
type = Helper
trigger1 = root, var(34) = 1
helpertype = normal
name = "Blast Effect"
ID = 1208
stateno = 1208
pos = 0,0
size.xscale = 0.3
size.yscale = 0.3
postype = p1
bindtime = -1
[State 1200, 5]
type = DestroySelf
trigger1 = stateno != 1206 || stateno != 1207 || stateno != 1208
value = 0
ctrl = 1
Spoiler, click to toggle visibilty
[Statedef 1206]
type = A
movetype = A
physics = N
anim = 4018
velset = 0,0
sprpriority = 99
[State 1201, DestroySelf]
type = DestroySelf
trigger1 = time > 500
trigger2 = NumHelper > 3
Spoiler, click to toggle visibilty
[Statedef 1207]
type = A
movetype = A
physics = N
anim = 4019
velset = 0,0
sprpriority = 99
[State 1201, DestroySelf]
type = DestroySelf
trigger1 = time > 500
trigger2 = NumHelper > 3
Spoiler, click to toggle visibilty
[Statedef 1208]
type = A
movetype = A
physics = N
anim = 1301
[State 0]
type = Null
triggerall = parent, fvar(23) = 0
trigger1 = time = 1
fv = 23
value = pos x
[State 0]
type = Null
trigger1 = parent, fvar(23) !=0
trigger1 = pos x != parent, fvar(23)
trigger1 = time%3 = 0
x = floor ((parent, fvar(23)-pos x)/10)
y = 0
ignorehitpause =1
[State 0]
type = VelSet
trigger1 = time = 0
x = 2
y = 0
[State 1300, 2]
type = HitDef
trigger1 = time = 0
attr = S,SP
hitflag = MAF
guardflag = MA
animtype = low
priority = 4,Hit
damage = 65,10
pausetime = 18,8
sparkno = -1
guard.sparkno = -1
hitsound = S15,7
guardsound = S15,7
ground.type = Low
ground.slidetime = 18
ground.hittime = 8
ground.velocity = -18,7
air.velocity = -8,4
[State 0]
type = DestroySelf
trigger1 = movecontact
trigger1 = time > 200
[/code]
Bear in mind I'll also need to have 1208 move on Y as well as X, but I'm sure once I can get it moving in the first place Y won't be a big issue. I know for a fact I'm doing something wrong, just need help sorting it out.