Error Detected. Undefined command label: "command".

Started by Ki$@1st456v, October 11, 2020, 06:34:32 PM

Previous topic - Next topic

Ki$@1st456v

Hi, everyone! I am new to mugen and I was using Fighter Factory 3 to copy moves from one character to another. I was watching YouTube videos on this and Ryon has the greatest number of tutorial videos dealing with creating a mugen character. One of the videos was copying moves. What I had gathered from his videos was that it is better to copy states and definitions instead of animations as it would not always look right. The character I am using is REDHOT's MVC2 Storm, and I was trying to give her Loganir Electros' Teslaport move. His original command for the move was ~B, D, DB. I was trying to make it a double quarter-circle back instead, so I had changed it by editing it in the .cmd file for Storm before  I copied the states and definitions section for Storm. However upon trying to play her in mugen, I get this:

Error detected.

Undefined command label: "command".
If not misspelling in CNS, check CMD
Error parsing [State 411400, a]
Error in [Statedef 411400]
Error in CNS/Storm2.cns:11534
Error loading chars/Storm2.def/Storm2.def
Error loading p1

In Storm's states and definitions, I have tried to change some things in hope of correcting this error. I first tried changing the animation states. One of the things that I saw on Ryon's videos is that state definitions should not overlap with each other, and I put 411400 as a different value from all of Storm's other move states, so felt I needed to put it throughout the rest of some parts to make sure they did not coincide with Storm's Lightning Attack which was at Statedef 1400-1402. Here is Storm's Statedef for the Teslaport move that I hoped to differentiate from Loganir's Electro.

Loganir's Electro:

;- TELEPORT VARIATIONS
[Statedef 1400]
type = U
physics = N
movetype = I
velset = 0, 0
ctrl = 0
sprpriority = -1
facep2 = 1
poweradd= 30
anim = ifelse(statetype=A,1402,1400);avoids a weird bug
; stand > air = 1401 var(23)=1
; air > air = 1402 var(23)=2
; air > stand = 1403 var(23)=3
; stand > stand = 1400 var(23)=10


[State 1400, a];
type = changeanim
trigger1 = !AIlevel && !time && statetype=S
value = ifelse((command="dbx")||(command="dby")||(command="dbz"),1401,1400)

[State 1400, b]
type = changeanim
trigger1 =!AIlevel && !time && statetype=A
value = ifelse((command="dba")||(command="dbb")||(command="dbc"),1403,1402)


[State 1400, a];
type = changeanim
trigger1 = AIlevel && !time && statetype=S
trigger1 = var(23)=1 || var(23)=10
value = ifelse(var(23)=1 ,1401,1400)

[State 1400, b]
type = changeanim
trigger1 =AIlevel && !time && statetype=A
trigger1 = var(23)=2 || var(23)=3
value = ifelse(var(23)=3,1403,1402)

[State 1400, 0]
type = nothitby
trigger1 = animelemtime(2)>=0 && animelemtime(7)<0
trigger1 = ((command="holdx")||(command="holdy")||(command="holdz")<2)
trigger2 = animelemtime(7)>=0 && animelemtime(14)<0
value = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
time = 1
ignorehitpause = 1

[State 1400, PlaySnd]
type = PlaySnd
trigger1 = !time && random<800
value = 80,ifelse(random<400,3,4)
channel = 0
[State 1400, PlaySnd]
type = PlaySnd
trigger1 = !time && random>=800
value = 100,6
channel = 0


[State 1400, 0]
type = AfterImage
trigger1 = animelemtime(3)>=0 && animelemtime(13)<0
time = 0
timeGap = 1
frameGap = 1
length = 12
trans =add
ignorehitpause = 1
persistent = 0
palcolor = 256
palinvertall = 0
palbright = 30,30,30
palcontrast = 150,150,150
palpostbright = 0,0,0
paladd = -1,-1,-1
palmul = .77,.77,.77
[State 3200, 0]
type = AfterImageTime
trigger1 = animelemtime(13)<0
ignorehitpause = 1
time = 2

;--------------------------------------------------


[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(3)=0
anim = 1450
id = 1450
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = 2
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0




[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(9)=0
anim = 1451
id = 1451
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = -1
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0
;-----------------------------------------




;-------------------------

[State 1400, 1]
type = varset
trigger1 =!AIlevel && !time
var(11)= ifelse((command="dba")||(command="dbx"),-3,ifelse((command="dbb")||(command="dby"),2,ifelse((command="dbc")||(command="dbz"),3,0)))

[State 1400, 2]
type = varset
trigger1 =!AIlevel && !time
var(12)= ifelse((command="dbx")||(command="dby")||(command="dbz"),7,0)




[State 1400, PlaySnd]
type = PlaySnd
trigger1 =!time
value = 700,27

[State 1400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(1)=0
value = 700,33

[State 1400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(9)=0
value = 700,34


[State 1400, 5]
type=statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=1400)||(anim=1403)
physics = S
statetype = S

[State 1400, 6]
type =  statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=1401)||(anim=1402)
physics = A
statetype =A


[State 1400, 8];hold cancel
type = changeanim
triggerall = !AIlevel
triggerall = animelemtime(6)>=0 && animelemtime(7)<0
trigger1 = ((command="holdy")||(command="holdx")||(command="holdb")||(command="holda")||(command="holdz")||(command="holdc"))
value = ifelse(statetype=S,1400,1402)
elem = 15

[State 1400, 9]
type = AfterImage
trigger1 = animelemtime(13)>=0
time = 1
length = 1
timegap = 1
framegap = 1
trans = add


[State 1400, out ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=1400
trigger2= anim=1401
anim =1111400
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 1400, out air];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=1402
trigger2= anim=1403
anim =1111402
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 1400, in ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=1400
trigger2= anim=1403
facing = 1
anim =1111401
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 1400, in air];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=1401
trigger2= anim=1402
facing = 1
anim =1111403
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

;-------overlays


[State 1400, 10]
type = PosSet
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
x = ifelse(var(11)=3,150,ifelse(var(11)=-3,-150,ifelse(var(11)=2,1,-1)))
y = ifelse(var(12)=7,-160,0)


[State 1400, 11]
type = playerpush
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
value = 0

[State 1400, 12];small movement entering
type = posadd
trigger1 = animelemtime(9)>0
x = -0.9
                 


[State 1400, 13]
type = posset
trigger1 =(anim=1400)||(anim=1403) && animelemtime(9)>=0   
y = 0

[State 1400, 14]
type = turn
trigger1 = animelem = 9 && p2dist x<0



[State 1400, 15]
type = changestate
trigger1 = !animtime
value = ifelse(statetype=S,0,51)
ctrl=1

My Storm:

;- TELEPORT VARIATIONS
[Statedef 411400]
type = U
physics = N
movetype = I
velset = 0, 0
ctrl = 0
sprpriority = -1
facep2 = 1
poweradd= 30
anim = ifelse(statetype=A,411402,411400);avoids a weird bug
; stand > air = 1401 var(23)=1
; air > air = 1402 var(23)=2
; air > stand = 1403 var(23)=3
; stand > stand = 1400 var(23)=10


11531 [State 411400, a];
11532 type = changeanim
11533 trigger1 = !AIlevel && !time && statetype=S
11534 value = ifelse((command="2qcb")||(command="2qcb")||(command="2qcb"),411401,411400)

[State 411400, b]
type = changeanim
trigger1 =!AIlevel && !time && statetype=A
value = ifelse((command="2qcb")||(command="2qcb")||(command="2qcb"),411403,411402)


[State 411400, a];
type = changeanim
trigger1 = AIlevel && !time && statetype=S
trigger1 = var(23)=1 || var(23)=10
value = ifelse(var(23)=1 ,411401,411400)

[State 411400, b]
type = changeanim
trigger1 =AIlevel && !time && statetype=A
trigger1 = var(23)=2 || var(23)=3
value = ifelse(var(23)=3,411403,411402)

[State 411400, 0]
type = nothitby
trigger1 = animelemtime(2)>=0 && animelemtime(7)<0
trigger1 = ((command="holdx")||(command="holdy")||(command="holdz")<2)
trigger2 = animelemtime(7)>=0 && animelemtime(14)<0
value = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
time = 1
ignorehitpause = 1

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = !time && random<800
value = 80,ifelse(random<400,3,4)
channel = 0
[State 411400, PlaySnd]
type = PlaySnd
trigger1 = !time && random>=800
value = 100,6
channel = 0


[State 411400, 0]
type = AfterImage
trigger1 = animelemtime(3)>=0 && animelemtime(13)<0
time = 0
timeGap = 1
frameGap = 1
length = 12
trans =add
ignorehitpause = 1
persistent = 0
palcolor = 256
palinvertall = 0
palbright = 30,30,30
palcontrast = 150,150,150
palpostbright = 0,0,0
paladd = -1,-1,-1
palmul = .77,.77,.77
[State 3200, 0]
type = AfterImageTime
trigger1 = animelemtime(13)<0
ignorehitpause = 1
time = 2

;--------------------------------------------------


[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(3)=0
anim = 411450
id = 411450
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = 2
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0




[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(9)=0
anim = 411451
id = 411451
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = -1
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0
;-----------------------------------------


[State 411400, 1]
type = varset
trigger1 =!AIlevel && !time
var(11)= ifelse((command="2qcb")||(command="2qcb"),-3,ifelse((command="2qcb")||(command="2qcb"),2,ifelse((command="2qcb")||(command="2qcb"),3,0)))

[State 411400, 2]
type = varset
trigger1 =!AIlevel && !time
var(12)= ifelse((command="2qcb")||(command="2qcb")||(command="2qcb"),7,0)




[State 411400, PlaySnd]
type = PlaySnd
trigger1 =!time
value = 700,27

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(1)=0
value = 700,33

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(9)=0
value = 700,34


[State 411400, 5]
type=statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=411400)||(anim=411403)
physics = S
statetype = S

[State 411400, 6]
type = statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=411401)||(anim=411402)
physics = A
statetype =A


[State 411400, 8];hold cancel
type = changeanim
triggerall = !AIlevel
triggerall = animelemtime(6)>=0 && animelemtime(7)<0
trigger1 = ((command="holdy")||(command="holdx")||(command="holdb")||(command="holda")||(command="holdz")||(command="holdc"))
value = ifelse(statetype=S,411400,411402)
elem = 15

[State 411400, 9]
type = AfterImage
trigger1 = animelemtime(13)>=0
time = 1
length = 1
timegap = 1
framegap = 1
trans = add


[State 411400, out ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=411400
trigger2= anim=411401
anim =1111400
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, out air];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=411402
trigger2= anim=411403
anim =1111402
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, in ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=411400
trigger2= anim=411403
facing = 1
anim =1111401
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, in air];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=411401
trigger2= anim=411402
facing = 1
anim =1111403
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

;-------overlays


[State 411400, 10]
type = PosSet
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
x = ifelse(var(11)=3,150,ifelse(var(11)=-3,-150,ifelse(var(11)=2,1,-1)))
y = ifelse(var(12)=7,-160,0)


[State 411400, 11]
type = playerpush
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
value = 0

[State 411400, 12];small movement entering
type = posadd
trigger1 = animelemtime(9)>0
x = -0.9


[State 411400, 13]
type = posset
trigger1 =(anim=411400)||(anim=411403) && animelemtime(9)>=0
y = 0

[State 411400, 14]
type = turn
trigger1 = animelem = 9 && p2dist x<0



[State 411400, 15]
type = changestate
trigger1 = !animtime
value = ifelse(statetype=S,0,51)
ctrl=1


One thing that has me stuck is the  ifelse((command="") section. I have that I want to have a double quarter-circle back motion in the .cmd file, but I was thinking maybe I should put a 2QCB motion in those spots to match the motions I wanted. Yet, I still cannot pinpoint exactly what I need to put and where especially on that line about the ifelse commands (for instance, I do not know how I could put a double-directional motion either, perhaps "DD"?) along with anything else. I will put what I have from the command list as well for this part.

Loganir's Electro:

[Command]
name = "dbx"
command = ~B, D, DB, x
time = 20
[Command]
name = "dbx"
command = ~B, D, DB, ~x
time = 20
[Command]
name = "dby"
command = ~B, D, DB, y
time = 20
[Command]
name = "dby"
command = ~B, D, DB, ~y
time = 20
[Command]
name = "dbz"
command = ~B, D, DB, z
time = 20
[Command]
name = "dbz"
command = ~B, D, DB, ~z
time = 20



[Command]
name = "dba"
command = ~B, D, DB, a
time = 20
[Command]
name = "dba"
command = ~B, D, DB, ~a
time = 20
[Command]
name = "dbb"
command = ~B, D, DB, b
time = 20
[Command]
name = "dbb"
command = ~B, D, DB, ~b
time = 20
[Command]
name = "dbc"
command = ~B, D, DB, c
time = 20
[Command]
name = "dbc"
command = ~B, D, DB, ~c
time = 20

;----------- teslaport
[State -1, dbxyzabc]
type = Changestate
value = 1400
triggerall = !AIlevel &&  stateno != 51
triggerall =  (command="dbx"||command="dby"||command="dbz"||command="dba"||command="dbb"||command="dbc")
trigger1 = ctrl
trigger2 = (stateno = [200,251]) || (stateno = [400,450])
trigger3 = (stateno = [600,650])

My Storm:

[Command]
name = "Teslaport"
command = ~D, B, D, B, x
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~x
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, y
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~y
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, z
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~z
time = 20


[Command]
name = "Teslaport"
command = ~D, B, D, B, a
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~a
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, b
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~b
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, c
time = 20
[Command]
name = "Teslaport"
command = ~D, B, D, B, ~c
time = 20

;----------- teslaport
[State -1, dbxyzabc]
type = Changestate
value = 411400
triggerall = !AIlevel && stateno != 51
triggerall = (command="2QCB_x"||command="2QCB_y"||command="2QCB_z"||command="2QCB_a"||command="2QCB_b"||command="2QCB_c")
trigger1 = ctrl
trigger2 = (stateno = [200,251]) || (stateno = [400,450])
trigger3 = (stateno = [600,650])


I even tried to use the idea to not list every move individually to not break the 128 command limit, but could I get some help please? Any aid would be greatly appreciated for how to correct the error. Also, could I ask back again if I need anymore help? 

PlasmoidThunder

The states you copied reference command names Storm doesn't have.

Quote from: Iced on July 24, 2013, 01:25:14 AM
Oh, I want a diagram. I fucking love diagrams.

Ki$@1st456v

So should I use motions for the name of the commands rather than the move name itself? Also, should I use the same statedef value number as the statedef in Electro's statedef value for the Teslaport move? Can I do that if it is the same statedef value as Storm's Lightning Attack?

NotAGoodName

You can use whatever command names you want.  You can use whatever statedef numbers you want, assuming that they are available.  The changestate for the move needs to reference that command by name, and it needs to changestate to the statedef number that you chose.  That's it.

So here's a really basic example.  A crappy SDM move.

So I'm going to make a command for the move.  All of these have the same name because all of these motions will be valid for the move!

Spoiler (click to show)
[Command]
name = "spinningSDM"
command = ~D,B,D,B,x+z
Time = 50

[Command]
name = "spinningSDM"
command = ~D,B,D,B,y+z
Time = 50

[Command]
name = "spinningSDM"
command = ~D,B,D,B,x+y
Time = 50

Now, we need a state that will changestate to the move.  The move is statedef 3000, so that's what I'll change to.  It only looks for the command name "spinningSDM" because that's all it needs.  If it's only one move with multiple options for being performed, then just use the one name.  Don't use ifelse for commands for no reason.  It's a complete waste.  Even if you want to do some crazy nonsense like Warusaki, don't.  If it's a different move, use different code for that!  Don't try to cram things together for no reason.  It's not a good idea if you just outsmart yourself and mugen generates an error!

Spoiler (click to show)
[State -1]
type = ChangeState
value = 3000
triggerall = command = "spinningSDM"
triggerall = statetype != A
triggerall = RoundState = 2
triggerall = power >= ifelse(var(15) > 0,2000,3000)
trigger1 = (ctrl || stateno = 40 || stateno = [50,51])
trigger2 = StateNo = 230 && Time > 4
trigger3 = StateNo = 240 && Time > 4
trigger4 = StateNo = 270 && Time > 4
trigger5 = (StateNo = 245) && time = [5,10]
trigger6 = (StateNo = 235) && time = [8,14]
trigger7 = (StateNo = 200) && time = [5,10]
trigger8 = (StateNo = 210) && time = [8,14]
trigger9 = var(17) > 0
trigger9 = var(17) < 4

airforce111

i think they pretty much explained it. in Storm2.cns on line 11534, there is a command it is referencing that doesnt exist in cmd, so you make one with that command

PlasmoidThunder

Quote from: Ki&#036;@1st456v on October 11, 2020, 07:49:28 PM
So should I use motions for the name of the commands rather than the move name itself? Also, should I use the same statedef value number as the statedef in Electro's statedef value for the Teslaport move? Can I do that if it is the same statedef value as Storm's Lightning Attack?
From my perspective, no commands exist within Storm's .cmd named "2qcb", "2QCB_x", "2QCB_y", "2QCB_z", "2QCB_a", "2QCB_b", or "2QCB_c". Be aware that the command trigger is looking for a name, not a motion, which in this case would be "Teslaport"; as the code is trying to reference specific versions of a motion, however, having them all be named "Teslaport" means it can't do that, so you should rename them to something like "Teslaport_x", Teslaport_y", etc.

And no, you can't have statedefs share a number. It doesn't matter what number you give it as long as it isn't already in use.

Quote from: Iced on July 24, 2013, 01:25:14 AM
Oh, I want a diagram. I fucking love diagrams.

Ki$@1st456v

Okay, I looked at the example you gave and got rid of the ifelse commands for the move, especially on line 11354 where the error occurred. It looks like this:

My Storm:

;- TELEPORT VARIATIONS
[Statedef 411400]
type = U
physics = N
movetype = I
velset = 0, 0
ctrl = 0
sprpriority = -1
facep2 = 1
poweradd= 30
anim = ifelse(statetype=A,1402,1400);avoids a weird bug
; stand > air = 1401 var(23)=1
; air > air = 1402 var(23)=2
; air > stand = 1403 var(23)=3
; stand > stand = 1400 var(23)=10


[State 411400, a];
type = changeanim
trigger1 = !AIlevel && !time && statetype=S
triggerall = command = "Teslaport"


[State 411400, b]
type = changeanim
trigger1 =!AIlevel && !time && statetype=A
triggerall = command = "Teslaport"


[State 411400, a];
type = changeanim
trigger1 = AIlevel && !time && statetype=S
trigger1 = var(23)=1 || var(23)=10
value = ifelse(var(23)=1 ,1401,1400)

[State 411400, b]
type = changeanim
trigger1 =AIlevel && !time && statetype=A
trigger1 = var(23)=2 || var(23)=3
value = ifelse(var(23)=3,1403,1402)

[State 411400, 0]
type = nothitby
trigger1 = animelemtime(2)>=0 && animelemtime(7)<0
triggerall = command = "Teslaport"
trigger2 = animelemtime(7)>=0 && animelemtime(14)<0
value = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT
time = 1
ignorehitpause = 1

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = !time && random<800
value = 80,ifelse(random<400,3,4)
channel = 0
[State 411400, PlaySnd]
type = PlaySnd
trigger1 = !time && random>=800
value = 100,6
channel = 0


[State 411400, 0]
type = AfterImage
trigger1 = animelemtime(3)>=0 && animelemtime(13)<0
time = 0
timeGap = 1
frameGap = 1
length = 12
trans =add
ignorehitpause = 1
persistent = 0
palcolor = 256
palinvertall = 0
palbright = 30,30,30
palcontrast = 150,150,150
palpostbright = 0,0,0
paladd = -1,-1,-1
palmul = .77,.77,.77
[State 3200, 0]
type = AfterImageTime
trigger1 = animelemtime(13)<0
ignorehitpause = 1
time = 2

;--------------------------------------------------


[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(3)=0
anim = 1450
id = 1450
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = 2
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0




[State 777, Explod] ;fx
type = Explod
trigger1 =animelemtime(9)=0
anim = 1451
id = 1451
pos = ceil((-3)*const(size.xscale)),ceil((15)*const(size.yscale))
postype = p1
bindtime = -1
scale = (.5)*const(size.xscale),(.5)*const(size.yscale)
sprpriority = 5
ownpal = 1
shadow = 0,0,0
;-----------------------------------------


[State 411400, 1]
type = varset
trigger1 =!AIlevel && !time
triggerall = command = "Teslaport"

[State 411400, 2]
type = varset
trigger1 =!AIlevel && !time
triggerall = command = "Teslaport"



[State 411400, PlaySnd]
type = PlaySnd
trigger1 =!time
value = 700,27

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(1)=0
value = 700,33

[State 411400, PlaySnd]
type = PlaySnd
trigger1 = animelemtime(9)=0
value = 700,34

[State 411400, 5]
type=statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=1400)||(anim=1403)
physics = S
statetype = S

[State 411400, 6]
type = statetypeset
triggerall = animelemtime(15)>=0
trigger1 = (anim=1401)||(anim=1402)
physics = A
statetype =A


[State 411400, 8];hold cancel
type = changeanim
triggerall = !AIlevel
triggerall = animelemtime(6)>=0 && animelemtime(7)<0
triggerall = command = "Teslaport"
value = ifelse(statetype=S,1400,1402)
elem = 15

[State 411400, 9]
type = AfterImage
trigger1 = animelemtime(13)>=0
time = 1
length = 1
timegap = 1
framegap = 1
trans = add


[State 411400, out ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=1400
trigger2= anim=1401
anim =1111400
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, out air];ELECTRICAL aura
type = explod
triggerall =animelemtime(1)=0
trigger1= anim=1402
trigger2= anim=1403
anim =1111402
ID = 1111400
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, in ground];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=1400
trigger2= anim=1403
facing = 1
anim =1111401
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

[State 411400, in air];ELECTRICAL aura
type = explod
triggerall =animelemtime(9)=1
trigger1= anim=1401
trigger2= anim=1402
facing = 1
anim =1111403
ID = 1111401
sprpriority = -3
postype = p1
pos = ceil((0)*const(size.xscale)),ceil((0)*const(size.yscale))
ignorehitpause = 1
scale = (.5)*const(size.xscale), (.5)*const(size.yscale)
removeongethit = 1
ownpal = 1
bindtime = -1

;-------overlays


[State 411400, 10]
type = PosSet
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
x = ifelse(var(11)=3,150,ifelse(var(11)=-3,-150,ifelse(var(11)=2,1,-1)))
y = ifelse(var(12)=7,-160,0)


[State 411400, 11]
type = playerpush
trigger1 = animelemtime(8)>=0 && animelemtime(9)<0
value = 0

[State 411400, 12];small movement entering
type = posadd
trigger1 = animelemtime(9)>0
x = -0.9


[State 411400, 13]
type = posset
trigger1 =(anim=1400)||(anim=1403) && animelemtime(9)>=0
y = 0

[State 411400, 14]
type = turn
trigger1 = animelem = 9 && p2dist x<0



[State 411400, 15]
type = changestate
trigger1 = !animtime
value = ifelse(statetype=S,0,51)
ctrl=1


Is this right? I like how you're giving me visual examples too so I can see for myself what you're saying as well.

     Posted: October 12, 2020, 12:49:46 AM
Thank you all, I got past the Teslaport problem, I just needed to separate the moves by name under Teslaport_x, _y, and so on and make sure they matched in the ifelse command line. I have to get her Elemental Rage Super right now. Ugh!

     Posted: October 12, 2020, 05:07:22 AM
I apologize to you all, it looked like there was nothing wrong with what I did with the Teslaport move and it looked as though the error was fixed. Now it is saying it is wrong again even with what I put in. Why is it doing that?