As a reminder.
"I'm coding one more move from Kotaro.
Her special jump move (some kind of air roll jump. SFA Guy type, or Cammy's Holligan combination)
This move have an afterimage.
I'm still using existing characters as a reference to get how it's coded."
Now, concentrate on the follow ups.
These are the rules I will use. (pretty similar to the source character.)
I call the move "ROLL JUMP"
-The move is possible from ground and from mid air. (it uses the same states)
-the states are start, the jump(itself), landing.
-you can usually cancel this jump into any jump attack and 2 air special moves
-you can cancel jump attacks into this move
-you cannot cancel air special moves into this move
-you cannot use more than 1 jump attack once you started this move. (I would like some help with that)
So, I would like that to be possible.
Jump, jump attack, ROLL JUMP, air special move.
or
ROLL JUMP, jump attack, ROLL JUMP, air special move.
But this should not be possible
Jump, jump attack, ROLL JUMP, jump attack.
or
ROLL JUMP, jump attack, ROLL JUMP, jump attack.
Thanks for any help
This is the states code for the moment.
;========================<ROLL JUMP START (stand)>=============================
[StateDef 1400]
type = U; unchanged
physics = N
moveType = A
anim = 1400
ctrl = 0
velSet = 0,0
sprPriority = 1
powerAdd = 72 * !var(20)
;faceP2 = 1
[State 1400, Button Detect]
type = VarSet
trigger1 = !Time && !AILevel
;ifElse((command = "c" || command = "rlsc"), 2, ifElse((command = "b" || command = "rlsb"), 1, 0))
var(10) = ifElse((NumExplod(90000250) || NumExplod(90000255)), 2, ifElse((NumExplod(90000240) || NumExplod(90000245)), 1, 0))
[State 1400, Button Detect (AI)]
type = VarSet
trigger1 = !Time && AILevel
var(10) = ifElse((P2MoveType = H || Random < 333), 2, ifElse(Random < 500, 1, 0))
[State 50, ]
type = attackdist
trigger1 = 1
value = 0
[State 5120, “Š‚°–³“G]
type = NotHitBy
trigger1 = 1
value = , NT,ST,HT
time = 1
[State 40, ˆÚ“®];special version (STAND)
type = velset
trigger1 = time=0
trigger1 = Statetype != A
y = -9.02
;light 0.5(au début)
;strong 3.3(au début)
x = ifElse(var(10) = 2, 4.2, ifElse(var(10) = 1, 2.55, 0.9));;;;;explic : 2 = strong, 1 = medium, rien = light
[State 40, ˆÚ“®E‹ó’†];special version (AIR) = saute moins haut
type = VelSet
trigger1 = Time=0
trigger1 = Statetype = A
y = -6.5;-9.02
;light 0.5(au début)
;strong 3.3(au début)
x = ifElse(var(10) = 2, 4.2, ifElse(var(10) = 1, 2.55, 0.9));;;;;explic : 2 = strong, 1 = medium, rien = light
[State 5100, 8]
type = posfreeze
trigger1 = 1
[State 1002, Jumping Sound]
type = PlaySnd
trigger1 = animtime=0||statetype=A
value = 41,0;;;52,0
[State 40, 6]
type = ChangeState
trigger1 = animtime=0||statetype=A
value = 1405
;========================<ROLL JUMP - THE MOVE>=============================
;LE ROLL JUMP EN LUI MEME (L M H EX) (mais pas le air cancel, sauf the air cancel ex)
[Statedef 1405]
type = A
physics = A
moveType = A
;anim = 1405
ctrl = 0
;velSet = 0,0
;sprPriority = 1
;powerAdd = -500
;faceP2 = 1
;ajout - désactiver le player push
[State 181, player push]
Type = PlayerPush
trigger1 = 1
Value = 0
[State 50, Žc‘œ]
type = attackdist
trigger1 = 1
value = 0
[State -2, Žc‘œ]
type = AfterImage
;Trigger1 = var(31) = 1 ;“V‘ä•‘ƒtƒ‰ƒO
trigger1 = time = 0
palBright = 0, 0, 0
palContrast = 128, 128, 128
paladd = 0,0,0
palmul = 1,1,1
trans = add1 ;none
TimeGap = 1 ; Žc‘œ‰æ‘œ‚Ì•Û‘¶ŠÔŠu
FrameGap = 4 ;Žc‘œ‚Ì•\Ž¦ŠÔŠu
length = 13 ; Žc‘œ—pî•ñ‚Ì•Û‘¶–‡”
time = 30;20;2
[State 50, 2]
type = ChangeAnim
trigger1 = Time = 0
value = 42
;;;;;;NEW
[State 1000, 3]
type = ChangeState
trigger1 = pos y > -vel y
value = 1406
;---------------------------------------------------------------------------
;ROLL JUMP LAND (tous)
[StateDef 1406]
type = S
physics = N;S
moveType = I
anim = 47
ctrl = 0
velSet = 0,0
poweradd= 0
sprPriority = 1
;ajout - réactiver le player push
[State 181, player push]
Type = PlayerPush
trigger1 = 1
Value = 1
[State 1406, PosSet]
type = PosSet
trigger1 = 1
y = 0
[State 1406, CtrlSet]
type = CtrlSet
trigger1 = Time = 1
value = 1
[State 1406, Landing Sound]
type = PlaySnd
trigger1 = !Time
value = 52,0
[State 1406, Landing Dust Explod]
type = Explod
trigger1 = !Time
anim = 8102
sprPriority = -3
posType = P1
scale = 0.5,0.5
pauseMoveTime = -1
superMoveTime = -1
ownPal = 1
[State 1406, ChangeAnim to Turning]
type = ChangeAnim
trigger1 = ctrl && P2Dist x < 0
trigger1 = Anim != 5
value = 5
[State 1406, Turn]
type = Turn
trigger1 = Anim = 5 && AnimElem = 1
[State 1406, End]
type = ChangeState
trigger1 = !AnimTime
value = 0
ctrl = 1
After that, I will have to code the EX version.
It will be easier, because the EX version "conditions" will allow any cancel at any moment.