continua la marea di cose che non riesco a capire..
il problema e che a un'animazione ho inserito un explod che non compare mentre l'animazione si vede.
non so seriguarda anche il file cmd ma non credo xchè il comando c'è e mugen non mi da nessun errore
info:
-sprite: 2 frame del gruppo 1100 (1100,0 - 1100,1)
-explod: 4 frame del gruppo 6600
[statedef 1100]
type = S
movetype = I
physics = S
ctrl = 0
anim = 1100
velset = 0,0
sprpriority = 0
[State 1100,ex ]
type = Explod
trigger1 = numexplod(8) = 1
anim = 6600
ID = 8
postype = p1
sprpriority = 1
[State 1100, 1]
type = ChangeState
trigger1 = animtime = 0
value = 0
ctrl = 1
---
[State -2,ex ]
type = RemoveExplod
trigger1 = stateno != 1100
ID = 8
Pagina 1 di 1
problema 2 nel cns l'explod invisibile!
#2
Inviato 18 November 2007 - 15:11
[State 1100,ex ]
type = Explod
trigger1 = numexplod(8) = 0
anim = 6600
ID = 8
postype = p1
sprpriority = 1
persistent = 0
E' sbagliato di sicuro il trigger. Perché l'Explod deve apparire quando non vi sono explod dello stesso tipo (ecco il sensi di trigger1 = numexplod(8) = 0 ; controlla che non sia già presente l'explod).
Se invece metti trigger1 = numexplod(8) = 1
è logico non te lo mostri. Proprio perché quando lo devi non esiste nessun Explod 8 non si verificherà mai la condizione richiesta (ovvero che ci sia già un explod dello stesso tipo).
Io poi aggiungerei pure un
persistent = 0
che impedisce una seconda attivazione dell'Explod nel caso in cui l'animazione dell'Explod sia più corta dell'animazione a cui si riferisce.
Il resto dovrebbe essere giusto (ovviamente dò per scontato che l'animazione 6600 tu l'abbia già definita nel file .AIR)
type = Explod
trigger1 = numexplod(8) = 0
anim = 6600
ID = 8
postype = p1
sprpriority = 1
persistent = 0
E' sbagliato di sicuro il trigger. Perché l'Explod deve apparire quando non vi sono explod dello stesso tipo (ecco il sensi di trigger1 = numexplod(8) = 0 ; controlla che non sia già presente l'explod).
Se invece metti trigger1 = numexplod(8) = 1
è logico non te lo mostri. Proprio perché quando lo devi non esiste nessun Explod 8 non si verificherà mai la condizione richiesta (ovvero che ci sia già un explod dello stesso tipo).
Io poi aggiungerei pure un
persistent = 0
che impedisce una seconda attivazione dell'Explod nel caso in cui l'animazione dell'Explod sia più corta dell'animazione a cui si riferisce.
Il resto dovrebbe essere giusto (ovviamente dò per scontato che l'animazione 6600 tu l'abbia già definita nel file .AIR)
#3
Inviato 18 November 2007 - 22:33
problema risolto.. solitamente dando un'occhiata ad altri cns c'è sempre
trigger1 = numexplod(8) < 1
e io con = ho incasinato tutto, grazie della spiegazione :D
spiegami meglio il "persistent"
io ho qualche attacco che me lo ripete + volte.. tipo il calcio in aria, prima che tocchi terra me lo esegue 2 volte.. potrei rettificare il valore totale dei tick dell'animazione x non avere questo tipo di bug ma sarebbe una carognata che prima o poi mi rispunta.. se non ho capito male aggiungendo persistent = 0 all'hitdef (non explod questa volta) dovrebbe evitare di far ripetere l'animazione...
trigger1 = numexplod(8) < 1
e io con = ho incasinato tutto, grazie della spiegazione :D
spiegami meglio il "persistent"
io ho qualche attacco che me lo ripete + volte.. tipo il calcio in aria, prima che tocchi terra me lo esegue 2 volte.. potrei rettificare il valore totale dei tick dell'animazione x non avere questo tipo di bug ma sarebbe una carognata che prima o poi mi rispunta.. se non ho capito male aggiungendo persistent = 0 all'hitdef (non explod questa volta) dovrebbe evitare di far ripetere l'animazione...
#4
Inviato 19 November 2007 - 21:19
Il parametro persistent serve per regolare ulteriormente le condizioni di realizzazione di un comando, facendo in modo che, a date condizioni, pur essendo veri tutti i trigger, possa non realizzarsi sempre la condizione.
Per una migliore spiegazione del parametro persistent devi guardarti il tutorial "cns" nella cartella "docs" del Mugen.
Il tuo problema, però, probabilmente non dipende dal codice CNS ma da una animazione errata nel file AIR. Le mosse aeree, infatti, a differenza delle altre mosse devono essere infinite
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
600,4, 0,0, -1
Quel -1 finale fa sì che l'animazione si "blocchi" sull'ultimo frame e non ricominci daccapo.
In alternativa può anche andar bene una cosa del genere (dipende dalle immagini)
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
loopstart
600,4, 0,0, 3
600,5, 0,0, 3
Quindi si ripetono gli ultimi frame (come ad es. nel calcio forte di Ranmaru dove i capelli continuano a muoversi). Questa, tecnicamente, non è una animazione infinita ma comunque è una animazione corretta per un file AIR
NON va invece bene una animazione FINITA
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
600,4, 0,0, 3
come vedi, a differenza della prima non termina con un -1 che indica tempo infinito sull'ultimo frame né contiene un loopstart che definisce un loop nelle ultime immagini della animazione. Quindi non va bene e produce il problema che tu lamenti.
Per una migliore spiegazione del parametro persistent devi guardarti il tutorial "cns" nella cartella "docs" del Mugen.
Il tuo problema, però, probabilmente non dipende dal codice CNS ma da una animazione errata nel file AIR. Le mosse aeree, infatti, a differenza delle altre mosse devono essere infinite
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
600,4, 0,0, -1
Quel -1 finale fa sì che l'animazione si "blocchi" sull'ultimo frame e non ricominci daccapo.
In alternativa può anche andar bene una cosa del genere (dipende dalle immagini)
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
loopstart
600,4, 0,0, 3
600,5, 0,0, 3
Quindi si ripetono gli ultimi frame (come ad es. nel calcio forte di Ranmaru dove i capelli continuano a muoversi). Questa, tecnicamente, non è una animazione infinita ma comunque è una animazione corretta per un file AIR
NON va invece bene una animazione FINITA
[Begin Action 600]
600,1, 0,0, 3
600,2, 0,0, 3
600,3, 0,0, 3
600,4, 0,0, 3
come vedi, a differenza della prima non termina con un -1 che indica tempo infinito sull'ultimo frame né contiene un loopstart che definisce un loop nelle ultime immagini della animazione. Quindi non va bene e produce il problema che tu lamenti.
#5
Inviato 19 November 2007 - 23:27
ti ringrazio ancora e spero non esser troppo fastidioso..
Capisco la situazione dell'air dove l'ultima immagine deve essere infinita ma pensavo ci fosse un codice apposito e nel dubbio ho chiesto.. grazie
Capisco la situazione dell'air dove l'ultima immagine deve essere infinita ma pensavo ci fosse un codice apposito e nel dubbio ho chiesto.. grazie
#6
Inviato 20 November 2007 - 20:13
Figurati sono qui apposta per chiarire i dubbi. Quindi fai benissimo a chiedere. ^_^
Condividi questa discussione:
Pagina 1 di 1

Aiuto










