Aujourd'hui nous allons apprendre à programmer une projection.
D'abord, dans le CMD
[state -1]
type=changestate
value=800
triggerall=Command="c"
triggerall=command="holdfrwrd"
trigger1=statetype=S
trigger1=ctrl
trigger1=p2statetype=S
trigger1=p2bodydist x <=5
là, on dit à Mugen: "Quand le joueur appuie en même temps sur avant et sur C, ET que la distance entre lui et son adversaire est inférieure à 5, ET que lui et son adversaire son debout, ET SEULEMENT SI c'est conditions sont réunies, Alors, on passe au state 800....compliqué n'est ce pas ?
Quand plusieurs triggers portent le même numéro, c'est que tous ne font qu'un.
Passons maintenant aux CNS.
Dans un CNS, une projection se programme en trois étape:
1: la tentative de projection
2: l'animation de la projection
3: L'animation du projeté...
La tentative de projctionRien de bien complexe: Elle se programme comme un coup nomal: Vous mettez une boîte de collision rouge sur l'anim de la tentative de projection et vous programmez un hitdef. sauf que à la fin du hitdef, vous mettez
p1statno=801
p2stateno=802
(les nombres ne sont que des exemples. vous êtes libre de numéroter les states à votre guise)
la projectionensuite, vous programmez le state de la projection proprement dite:
[statedef 801]
statetype=S
movetype=H
physics=S
anim=801
ctrl=0
[state 801, end]
type=changestate
trigger1=animtime=0
value=0
ctrl=1
Jusque là, rien de bien méchant.
/!\ ATTENTION! tentative de projection et projection sont deux anims distinctes! Maintenant on programme le projeté
-LE PROJETE ?!?
-Ben oui, le projeté. Ca vous paraît infaisable n'est ce pas...Eh ben si! c'est possibe.
[statedef 802]
statetype=S
movetype=H
physics=S
anim=802
-Anim=802 ?!? Mais on met quoi dedans?
-les sprites des groupes 5000, jusqu'à 5072.
Pas TOUS les sprites, seulement ceux dont vous aurez besoin. Par exemple, pour un jeté par dessus l'épaule, vous mettez trois sprites: un quand il se fait choper, un quand il passe par dessus l'épaule et un quand il tombe au sol....
ensuite, dans le state 802, on doit programmer un state controller appelé Changeanim2 pour forcer l'adversaire a passer à l'anim 802 que nous avons entée dans NOTRE AIR. A ce moment là, 'adversaire n'affichera pas vos sprites mais les siens. En clair, c'est NOTRE air qui dira à l'adversaire "Tu affiches le sprite 5000,0 puis le sprite 5020,0 etc....
[state 802, changeanim]
type=changeanim2
trigger1=time=0
value=802
enfin, on programme un selfstate pour renvoyer l'adversaire dans sonCNS
[state 802, selfstate]
type=selfstate
trigger1=animtime=0
value=5100 (le state ou il retombe au sol)
Voilàà. Si vous désirer déplacer le projeté autour du perso, programmez un posadd dans le state 802