sto programmando una special (in pratica una variante del dragon punch) in cui mr.karate ripete x 2 volte i primi 2 colpi e poi fiisce l'attacco con dragon punch il problema è ke nella versione originale svc colpisce le prime 2 volte mettendo a segno 4 colpi invece a me colpisce solo 2 volte...
posto il codice
[StateDef 13000]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1130
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem= 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem= 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 34,35
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13001
[State 12395, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
-----------------------------------------------------------------
[StateDef 13001]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1130
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem= 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem= 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 34,35
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
sparkno = S8210+(random%8)
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13002
[State 12396, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
------------------------------------------------------------------------
[StateDef 13002]
type = S
movetype= A
physics = S
juggle = 1
ctrl = 0
anim = 1130
poweradd = 20
sprpriority = 2
[State 0, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = 8.5
y = -6.5
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 7
value = 851,0
volume = 90
channel = -1
[State 52, Effect]
type = PlaySnd
trigger1 = AnimElem = 7
value = 40, 0
channel = 20
[State 0, VelMul]
type = VelMul
trigger1 = animelem = 10
x = -1
y = -1.5
[State 1000, Spark]
type = Explod
trigger1 = AnimElem = 7
Anim = 2015
pos = -15,-1
postype = p1
ownpal = 1
bindtime = -1
pausemovetime = -1
supermove = 1
ignorehitpause = 1
sprpriority = 3
persistent = 0
[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = A, HA
animtype = Heavy
air.animtype = back
damage=50
priority = 7, Hit
hitflag = MAF
guardflag = MA
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -78
hitsound = S6,1
guardsound = S1,0
ground.type = Low
ground.slidetime = 0
ground.hittime = 20
guard.ctrltime = 20
ground.velocity = -2.5,-11
guard.velocity = -8
air.velocity = -2.5,-11
airguard.velocity = -6.67,-1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = -11.2
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 3
fall = 1
fall.recover = 0
air.fall = 1
air.recover = 0
yaccel = .5
persistent = 0
getpower = ifelse(var(17),70,143)*(1000+var(24))/1000*ifelse((var(15)||var(16)),0,1),35*(1000+var(24))/1000*ifelse((var(15)||var(16)),
0,1)
givepower = 35, 35
palfx.time = 12*var(41)
palfx.add = 255,255,255
palfx.mul = 128,128,128
forcestand = 1
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
[State 1120, HitDef]
type = HitDef
trigger1 = AnimElemTime(7) = 0 || AnimElemTime(7) = 2 || AnimElemTime(7) = 4 || AnimElemTime(7) = 6 || AnimElemTime(7) = 8 || AnimElemTime(7) = 9 || AnimElemTime(7) = 10
attr = A, SA
animtype = hard
air.animtype = back
damage = 50
priority = 5,Hit
getpower = 40,40
givepower = 0,0
hitflag = MAF
guardflag = M
pausetime = 0,0
guard.pausetime = 9,9
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
guardsound = S1,0
ground.type = high
ground.slidetime = 13
ground.hittime = 10
guard.hittime = 15
guard.slidetime = 13
guard.ctrltime = 15
ground.velocity = -5, -11
guard.velocity = -5.0
air.type = low
air.velocity = -3.0,-11.0
fall = 1
fall.recover = 0
fall.envshake.time = 12
fall.envshake.freq = 80
fall.envshake.ampl = 6
down.bounce = 1
air.fall = 1
air.recover = 0
yaccel = .60
envshake.time = 5
envshake.freq = 60
envshake.ampl = 2
;envshake.phase =
P2facing = 1
;palfx.color = 0
;palfx.mul = 0,0,0
palfx.add = 150,50,150
palfx.sinadd = -150,-50,-150,50
palfx.time = var(22)*50
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
[State 12397, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 1105
ctrl = 1
ho già provato ad ggiungere nell'hitdef il trigger2 con il frame del secondo colpo(ke ha il clsn rosso) oppure scrivndo il trigger1 in questa forma trigger1 = AnimElem = 3,= 5 o ancora semplicemente aggiungendo un altro hitdef negli statedef 13000 e 13001 ma colpisce sempre 2 volte
Pagina 1 di 1
Problema hitdef
#2
Inviato 07 January 2009 - 20:07
demongorne, su Jan 7 2009, 17:29, detto:
ho già provato ad ggiungere nell'hitdef il trigger2 con il frame del secondo colpo(ke ha il clsn rosso) oppure scrivndo il trigger1 in questa forma trigger1 = AnimElem = 3,= 5
Prima di tutto questa forma non esiste (tra l'altro AnimElem NON SUPPORTA le espressioni). quindi, per ottenere il risultato desiderato avresti dovuto scrivere
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
----
in ogni caso il "doppio colpo" su singolo Hitdef, nel tuo codice, non può funzionare, per il semplice fatto che ogni state preso in considerazione ha sempre un comando
[State x, y]
type = ChangeState
value = ...
trigger1 = MoveHit
questo fa sì che, una volta colpito si passi al trigger successivo, quindi "il secondo colpo" che dovrebbe fare l'HitDef non può essere eseguito perché è già stato cambiato lo state in questione.
ecco cosa suggerisco (presumendo che gli hitdef debbano essere eseguiti al frame 3 e 5 dell'animazione
1) Modificare i trigger di Hitdef in questo modo
trigger1 = animelem = 3
trigger2 = animelem = 5
2) supponendo che si debba cambiare state se si è andati a segno e aspettando il secondo colpo modificherei i changestate che si avvalgono di MoveHit in questo modo
[State x, y]
type = ChangeState
value = ....
ctrl = 0
triggerall = MoveHit != 0
trigger1 = animelem = 5
trigger2 = animelem = 6
Lo state sarebbe programmato ancora meglio se si utilizzasse il trigger time
[State x, y]
type = ChangeState
value = ....
ctrl = 0
triggerall = MoveHit != 0
trigger1 = time > ...
per calcolare il valore di time basta sommare il tempo di durata di tutti i frame precedenti rispetto all'ultimo frame "di attacco" (nel senso... l'ultimo frame che ha un clsn2).
#3
Inviato 07 January 2009 - 22:05
Funziona! Grazie Snsei :birra:
ho aggiunto il trigger1 = time>11(la sommatoria dei gametick precedenti al colpo)
ho aggiunto il trigger1 = time>11(la sommatoria dei gametick precedenti al colpo)
#4
Inviato 11 January 2009 - 20:44
sto programmando una special in cui mr.karate esegue una combo con il dragon punch il problema è ke quando il p2 si trova nell'angolo dello skermo e viene colpito dalla combo il p1 si muove come spinto all'indietro perdendo allungando la distanza e alcuni colpi vanno a vuoto.Come posso fare x bloccare il p1 in modo ke quando esegue la combo mantenga la sua posizione?
[StateDef 13000]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = Animelem = 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13001
ctrl = 0
trigger1 = time > 11
[State 13000, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
-----------------------------------------------------------------
[StateDef 13001]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13002
trigger1 = time > 11
[State 13001, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
------------------------------------------------------------------------
[StateDef 13002]
type = S
movetype= A
physics = S
juggle = 1
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 0, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = 8.5
y = -6.5
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 7
value = 851,0
volume = 90
channel = -1
[State 1100, Velocity]
type = VelSet
trigger1 = AnimElem = 7
x = 0
y = -8
[State 1100, Velocity]
type = VelMul
trigger1 = AnimElem = 11
x = -1
y = -1
[State 12397, 1]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = A, NA
animtype = Heavy
air.animtype = back
damage=50
priority = 7, Hit
hitflag = MAF
guardflag = MA
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -78
hitsound = S6,1
guardsound = S1,0
ground.type = Low
ground.slidetime = 0
ground.hittime = 20
guard.ctrltime = 20
ground.velocity = -2.5,-11
guard.velocity = -8
air.velocity = -2.5,-11
airguard.velocity = -6.67,-1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = -11.2
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 3
fall = 1
fall.recover = 0
air.fall = 1
air.recover = 0
yaccel = .5
persistent = 0
getpower = ifelse(var(17),70,143)*(1000+var(24))/1000*ifelse((var(15)||var(16)),0,1),35*(1000+var(24))/1000*ifelse((var(15)||var(16)), 0,1)
givepower = 35, 35
palfx.time = 12*var(41)
palfx.add = 255,255,255
palfx.mul = 128,128,128
forcestand = 1
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = A, SA
animtype = hard
air.animtype = back
damage = 50
priority = 5,Hit
getpower = 40,40
givepower = 0,0
hitflag = MAF
guardflag = M
pausetime = 24,25
guard.pausetime = 9,9
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
guardsound = S1,0
ground.type = high
ground.slidetime = 13
ground.hittime = 10
guard.hittime = 15
guard.slidetime = 13
guard.ctrltime = 15
ground.velocity = -5, -11
guard.velocity = -5.0
air.type = low
air.velocity = -3.0,-11.0
fall = 1
fall.recover = 0
fall.envshake.time = 12
fall.envshake.freq = 80
fall.envshake.ampl = 6
down.bounce = 1
air.fall = 1
air.recover = 0
yaccel = .60
envshake.time = 5
envshake.freq = 60
envshake.ampl = 2
;envshake.phase =
P2facing = 1
;palfx.color = 0
;palfx.mul = 0,0,0
palfx.add = 150,50,150
palfx.sinadd = -150,-50,-150,50
palfx.time = var(22)*50
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
[State 12397, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 1105
ctrl = 1
[StateDef 13000]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = Animelem = 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13001
ctrl = 0
trigger1 = time > 11
[State 13000, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
-----------------------------------------------------------------
[StateDef 13001]
type = S
movetype= A
physics = S
juggle = 1
velset = 0,0
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 3
value = 851,0
volume = 90
channel = -1
[State 12395, 1]
type = HitDef
trigger1 = AnimElem = 3
trigger2 = AnimElem = 5
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1200, 4]
type = ChangeState
trigger1 = MoveHit
value = 13002
trigger1 = time > 11
[State 13001, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
------------------------------------------------------------------------
[StateDef 13002]
type = S
movetype= A
physics = S
juggle = 1
ctrl = 0
anim = 1100
poweradd = 20
sprpriority = 2
[State 0, VelSet]
type = VelSet
trigger1 = AnimElem = 7
x = 8.5
y = -6.5
[State 1100, Voice]
type = PlaySnd
trigger1 = AnimElem = 7
value = 851,0
volume = 90
channel = -1
[State 1100, Velocity]
type = VelSet
trigger1 = AnimElem = 7
x = 0
y = -8
[State 1100, Velocity]
type = VelMul
trigger1 = AnimElem = 11
x = -1
y = -1
[State 12397, 1]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
damage = 50
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 0
ground.hittime = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12
[State 1100, HitDef]
type = HitDef
trigger1 = AnimElem = 5
attr = A, NA
animtype = Heavy
air.animtype = back
damage=50
priority = 7, Hit
hitflag = MAF
guardflag = MA
pausetime = 24,25
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -78
hitsound = S6,1
guardsound = S1,0
ground.type = Low
ground.slidetime = 0
ground.hittime = 20
guard.ctrltime = 20
ground.velocity = -2.5,-11
guard.velocity = -8
air.velocity = -2.5,-11
airguard.velocity = -6.67,-1
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = -11.2
air.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0
envshake.time = 10
envshake.ampl = 3
fall = 1
fall.recover = 0
air.fall = 1
air.recover = 0
yaccel = .5
persistent = 0
getpower = ifelse(var(17),70,143)*(1000+var(24))/1000*ifelse((var(15)||var(16)),0,1),35*(1000+var(24))/1000*ifelse((var(15)||var(16)), 0,1)
givepower = 35, 35
palfx.time = 12*var(41)
palfx.add = 255,255,255
palfx.mul = 128,128,128
forcestand = 1
ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
[State 1120, HitDef]
type = HitDef
trigger1 = AnimElem = 7
attr = A, SA
animtype = hard
air.animtype = back
damage = 50
priority = 5,Hit
getpower = 40,40
givepower = 0,0
hitflag = MAF
guardflag = M
pausetime = 24,25
guard.pausetime = 9,9
sparkno = S8210+(random%8)
guard.sparkno = S8105
sparkxy = -10, -57
hitsound = S6,1
guardsound = S1,0
ground.type = high
ground.slidetime = 13
ground.hittime = 10
guard.hittime = 15
guard.slidetime = 13
guard.ctrltime = 15
ground.velocity = -5, -11
guard.velocity = -5.0
air.type = low
air.velocity = -3.0,-11.0
fall = 1
fall.recover = 0
fall.envshake.time = 12
fall.envshake.freq = 80
fall.envshake.ampl = 6
down.bounce = 1
air.fall = 1
air.recover = 0
yaccel = .60
envshake.time = 5
envshake.freq = 60
envshake.ampl = 2
;envshake.phase =
P2facing = 1
;palfx.color = 0
;palfx.mul = 0,0,0
palfx.add = 150,50,150
palfx.sinadd = -150,-50,-150,50
palfx.time = var(22)*50
ground.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
[State 12397, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 1105
ctrl = 1
Condividi questa discussione:
Pagina 1 di 1

Aiuto










