Forum MUGENATION: Special in aria - Forum MUGENATION

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

Special in aria xk poi il char non scende?

#1 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 30 December 2007 - 19:03

Salve ragazzi!
Ho un problema da risolvere nella programmazione, credo semplice per chi ci sa, ma a cui io non trovo soluzione.Menjoso mi ha indicato un topic col mio stesso problema, ma la soluzione non mi ha risolto il problema.
Ho programmato una special di tipo proiettile semplicissima da fare in aria, e succede che dopo aver sparato il proiettile, il char rimane sospeso in aria, nel punto in cui ha sparato il proiettile, e fa tutto come se fosse sul suolo, cammina, corre fa tutte le mosse, e l’unico modo per farlo tornare a terra è farlo saltare. come faccio a farlo tornare sul pavimento vero dopo che ha sparato il proiettile? Metto qui di seguito la programmazione, che non è altro che un proiettile qualsiasi, e infatti è ovvio che resti lassù, perché nn c’è nessun comando che gli dica di tornare sul pavimento. Ma credevo che tornasse giù in “automatico” come dopo un salto… Provai con Gravity e Velset, ma non mi funzionano, magari programmai male. Mi sapete aiutare? Ho messo type=A e physics=A, xk il gioco sappia che si tratta di una mossa aerea, però poi rimane là dove ha sparato il colpo.

[Statedef 1111]
type = A
movetype = A
physics = A
juggle = 4
poweradd = 90
ctrl = 0
velset = 0,0
anim = 1111

[State 1111, 1]
type = Projectile
trigger1 = AnimElem = 1
projanim = 1005
projhitanim = 1114
projhits = 1
velocity = 4.5, 3
attr = S, SP
animtype = M
offset = 0,0
damage = 50
guardflag = MA
pausetime = 0, 17
sparkxy = 0, -20
guard.sparkno = 352
guardsound = S10, 0
ground.type = Low
ground.slidetime = 20
ground.hittime = 21
ground.velocity = -4.7, 0
air.velocity = -3,-3
air.type = Low
air.hittime = 12

[State 1111, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
0

#2 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 30 December 2007 - 19:35

Ecco, a quanto pare lo statedef sembra come descritto nell'altro topic. L'unica cosa che ti posso suggerire è di provare a modificare physics con altre lettere. Ma ne abbiamo gia parlato e in questo caso non ti so dire. Attendiamo i Mod..
0

#3 L   Nobun 

  • Horse Rider Skull Phantom. Rarely Here.
  • Gruppo: SuperModeratore
  • Messaggi: 4898
  • Iscritto: 11-July 04

Inviato 01 January 2008 - 11:19

L'errore è questo

[State 1111, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1


Questa istruzione va cancellata o sostituita in maniera diversa. Qui abbiamo infatti un errore di concetto. Quando infatti il personaggio torna allo state 0 (standing animation) si trova ad essere su una posa di tipo stand. In quel momento quindi considera la sua attuale posizione come linea di suolo (anche perché la standing animation fa stare "fermo" il personaggio, bloccandolo quindi sulla posizione attuale).

Quello che ti suggerisco è una cosa di questo genere. Dato che, se ho capito bene, dopo l'esecuzione di questo proiettile in aria, vuoi che il personaggio atterri io ti consiglio di fare uno state di atterraggio aggiuntivo che potrai usare per tutte le mosse come questa che, dopo essere state eseguite in aria, richiedono atterraggio

[Statedef 605]
type = A
movetype = I
physics = A
ctrl = 0
anim = 605
sprpriority = 1

[State 605, 1]
type = Null
trigger1 = time = 0


Come vedi non c'è alcun codice (però è necessario mettere almeno una istruzione in uno statedef e quindi si mette Null perché non abbiamo bisogno di codice). Perché gestirà tutto da solo.

---

Vai sul file Air e crea la tua animazione 605 prendendo gli ultimi frame del salto (quelli che vede il char nella discesa). Se è un solo frame metti quello.

---

fatto questo puoi sostituire il tuo changestate errato con questo

[State 1111, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 605
ctrl = 0

0

#4 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 01 January 2008 - 17:13

ah ecco! mi pare di aver capito, grazie!!!
In effeti a intuito mi sembava che non ci fosse nella programmazione un "qualcosa" che dicesse al char di atterrare sul pavimento vero e proprio, ma non ci saltavo fuori eheh.
appena ho tempo provo a sostituire il changestate come mi hai detto!
e ti so dire!
grazie, buone feste!
0

#5 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 01 January 2008 - 20:39

Nuuu, non ci avevo fatto caso! In pratica quello dice al char che finita l'animazione il char torna in posizione di volo/atterraggio, mentre con lo 0 avevamo indicato lo standing. Ho capito :azz:
0

#6 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 01 January 2008 - 21:59

non avevo dubbi che funzionasse e infatti... il char torna sul pavimento!
grazie nobun!
hai capito che storia menjoso?
dai, ormai ci sai abbastanza per programmare qualche mossa pure tu eh!
0

#7 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 01 January 2008 - 22:11

Ma si, ieri sera ho cominciato a programmare un char, fin ora niente problemi. Se mi serve vengo da te :P
0

#8 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 02 January 2008 - 22:54

sè sè, allora vai lontano... :zzz:

però che bravo, vedi che non ci vuol niente? volere, è potere!!!!!! :ehhh: :ehhh: :ehhh: :ehhh:
0

#9 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 05 January 2008 - 06:11

Mah, una volta la vedevo piu difficile. Però ci sono moltissime cose da sapere..

Ora ho avuto un problemino simile, vediamo se se ne viene a capo :D

Questo è lo state del mio pugno aereo semplice:

[Statedef 315];Air punch
Type = A
Movetype = A
Physics = A
Ctrl = 0
Anim = 315
Velset = 0,0
Poweradd = 10

[State 315, 1]
Trigger1 = Time = 0
Type = PlaySnd
Value = 400,1

[State 315, hit]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
hitflag = MAF
guardflag = MA
animtype = Light
air.animtype = Light
priority = 3,Hit
damage = 20
pausetime = 8,8
sparkno = 0
sparkxy = 0,-86
hitsound = S400,2
guardsound = S3,0
ground.type = High
air.type = High
ground.slidetime = 10
guard.slidetime = 10
ground.hittime = 10
guard.hittime = 10
air.hittime = 10
ground.velocity = -4,0
air.velocity = -4,-2

[State 315, 2]
type = ChangeState
trigger1 = Animtime = 0
value = 42
ctrl = 1


A regola il codice dovrebbe essere esatto ma c'è un problemino. Quando uso sto pugno in aria mi fa il loop, ovvero mi ripete il pugno fino a quando scendo a terra.. Io ho usato il Value 42 (salto avanti) per far si che tornasse in quella posizione, però ho capito che non dipende da questo. Infatti il pugno me lo ripete lo stesso.. C'è un modo per evitare sto loop?

Posto anche la parte del Cmd che secondo me è questa che va modificata:

;Air Punch
[State -1, Air Punch]
type = ChangeState
value = 315
triggerall = command = "a"
triggerall = command != "holddown"
trigger1 = statetype = A
trigger1 = ctrl


PS: Ho guardato in kfm e ho notato un po di differenza, ma forse voi me lo potete spiegare menjo :)
0

#10 L   Nobun 

  • Horse Rider Skull Phantom. Rarely Here.
  • Gruppo: SuperModeratore
  • Messaggi: 4898
  • Iscritto: 11-July 04

Inviato 05 January 2008 - 10:14

Tenete conto che, tendenzialmente, le mosse aeree non devono avere un changestate finale, mentre l'animazione deve tendenzialmente essere di tempo infinito (ovvero con tempo uguale a -1). Dove proprio è indispensabile (come nel caso della special in aria di cui al primo messaggio) allora è meglio creare uno state apposito per la discesa così come avevo mostrato sopra.

Poi, menjo, consiglio se possibile di utilizzare la numerazione consigliata dal Mugen (vedi tutorial air.txt). Quindi per gli attacchi di base

200-399 Attacchi Normali tipo stand
400-599 Attacchi Normali tipo crouch (da abbassati)
600-799 Attacchi Normali tipo air
800-999 Prese + varie ed eventuali

E poi

1000-2999 Mosse Speciali
3000-4999 Mosse Hyper

(dal 6000 in poi è libero ma io le uso generalmente per gli effetti particolari)
0

#11 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 05 January 2008 - 10:26

Ah, quindi togliendo il changestate dovrebbe sistemarsi tutto (?). In caso se non funge creo lo state per l'ascesa del char. Vabè, poi ti dico. In tanto grazie :)

Per le numerazioni piu o meno ho seguito quello schema.. I pugni (crouch, stand, in aria) li sto mettendo tutti tra il 200 e il 350. Poi ho messo uno state per caricare aura con il numero 705.. Insomma, siamo lì.
0

#12 L   Nobun 

  • Horse Rider Skull Phantom. Rarely Here.
  • Gruppo: SuperModeratore
  • Messaggi: 4898
  • Iscritto: 11-July 04

Inviato 05 January 2008 - 10:57

Sono un pignolo rompiballe quindi ti faccio notare che te l'ho detto perché nel tuo codice ho notato questo :P

Quote

[Statedef 315];Air punch


PS ricordati che l'animazione deve essere infinita e quindi devi cambiare il tempo dell'ultimo frame a -1 e devi rimuovere i trigger animelem sostituendoli con altro trigger (es. trigger time)
0

#13 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 05 January 2008 - 13:07

Ok, mi sta bene la pignoleria, su queste cose mi sta bene :P

Comunque ora sto facendo un po "al volo" il char.. Ha moltissimi bug, uno di questi era appunto il calcio che si ripete. Poi finita la base cerco di correggere il tutto, e sottolineo cerco. Se non riesco apro un topic per i miei problemi sul Cns, sperando che un buon Nobun passi di lì 0:)

PS: Che bello, mi sto divertendo non poco :rotfl: :rotfl:
0

#14 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 05 January 2008 - 19:27

eh sì, poi ci si diverte di + quando un nobun ti risolve la situazione :rolleyes:
sei riuscito menjo a risolvere il problema del pungo in aria?
0

#15 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 05 January 2008 - 19:32

Non ci ho ancora provato.. Oggi mi sono fermato un po, magari piu tardi provo.
0

#16 L   Xebalon 

  • Chan
  • Punto
  • Gruppo: Membro
  • Messaggi: 87
  • Iscritto: 11-December 07

Inviato 06 January 2008 - 15:32

eh, quanto capisco queste pause :azz:
0

Condividi questa discussione:


Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi