Effet de transition à la Zelda, tutoriel pour utilisateur un minimum expérimentés.
Vous connaissez Zelda quand même ? Bon, dans tout les bons Zelda 2D, on a un joli effet de transition quand vous vous téléportez entre deux maps. Si vous voyez pas, en gros, lorsque Link atteint le bout de la map, l'écran se déplace vers la map qui vient juste aprés en faisant un sorte de travelling (droite->gauche, haut->bas, etc.) On passe donc rapidement et efficacement d'une map à l'autre.
Comment faire la même chose sur RM ? Je m'étais inspiré il y a longtemps du créateur de feu Zelda : Gate of Shadows. Bon, sachez déja que cette technique se fait uniquement sur RM2K ou RM2K3, RMXP, y'en a qu'ont essayé, ils ont eut des problèmes. Cela dit, c'est vous qui voyez.
Bon mais bon sang Z-Master mais dit nous tout comment on fait une chose pareille ?Ahah, du calme les enfants. On y arrive.
Prenons une jolie map (avec du Mac&Blue) avec un gentil héros.
Fort bien. Notre amis le héros a grimpé une échelle et désire maintenant passer à la map en haut. Rien de plus simple dites vous ? Encore faut-il un évènement de téléportation !
On va lui bricoler ça.
Revoici notre map dans notre éditeur. Notez bien le petit évènement dans le coin haut-droit. Il s'agit de lui qui va téléporter notre héros !
Comment ? Un évènement de téléportation n'est pas sur le bout du chemin , reglé en "Au contact du héros" ?
Et non jeune scarabée. C'est bien de faire ça, mais si tu as une map qui fait toute une plaine, tu ne vas t'amuser à faire 56 évènements. Ici, un seul évènement suffit, et il permet d'avoir une transition sur tout le côté de la map, sans fioriture ! C'est-y pas merveilleux ?
Je me sens comme un vendeur de lessive miracle. Bon, notre petit carré, il fait quoi exactement ? Voyons-le de plus prés...
Mais c'est qu'il a pas grand chose en plus ! Oui, en plus de tout faire, il est compact.
Bon je sens les noobs venir, je copie tout vite fait et hop voilà le travail. Sauf que non, c'est pas aussi simple.
Décrivons pas à pas.
Tout d'abord, il vous faut 3 variables. Ces variables correspondront à 3 caractéristiques de notre héros : sa
coordonnée X, sa
coordonnée Y et son
ID. Ce qui correspond dans l'ordre à dans
quelle colonne il sera, dans
quelle ligne il sera, et dans quel
map il sera. Nous les appellerons ici X héros, Y héros et ID héros.
Si par hasard vous avez déja ce genre de variables, vous pouvez les ré-utiliser.
Il nous faut donc remplir ces variables des valeurs correspondantes.
En l'occurrence, s'agissant d'une téléportation de haut de map à bas de map, la coordonnée Y suffit. (Pour les téléportations gauche->droite ou droite->gauche il faut la coordonnée X) Mais vous pouvez prendre les autre valeurs au début de l'évènement, ça ne change rien.
Nous avons donc un évènement en
processus parallèle, pour insérer la valeur, créer un nouvel évènement dans la liste alors blanche. Et choisissez "Modifier variable"
Voila. Là pour entrer la valeur Y héros, séléctionner la variable, rendre égal, et surtout les deux options entourés. Choisissez la coordonnée Y (ou une autre coordonnée, n'importe) et choisissez "Du héros".
La variable a désormais la valeur Y du héros. Vous pouvez faire la même chose pour X et pour l'ID.
Maintenant, insérons une petite condition... Donc une nouvelle ligne, page 3 : "Conditions"
Encore une fois, la téléportation ici se fait en haut de la map. Si dans votre cas c'est sur le bord gauche, alors votre héros doit être dirigé vers la gauche, si c'est le bord bas, alors vers le bas, etc.
L'option entourée en rouge doit être décochée.
Pour que la téléportation se déclenche, il faut donc que la coordonnée X ou Y corresponde au bout de la map. Faites cela en faisant une autre condition. Comment savoir quel coordonnée correspond à un bout de map ?
Si le bord concerné est en haut ou en bas, la coordonnée concernée est Y.
Si le bord concerné est à gauche ou à droite, la coordonnée concernée est X.
Pour savoir quel est la valeur en bout de map, soit déduisez en de la taille de votre map, sinon, utiliser le petit indicateur dans l'éditeur de map. Entourée dans l'image ci dessus.
Sélectionner la case en mode "Edition d'événement" et les coordonnées apparaitront ! (De la manière courante (X ; Y) )
Il peut généralement s'agir d'un zéro, comme ici présent.
Ensuite, qu'avons nous à faire ? Pour téléporter notre héros, nous allons utiliser la fonction "Retour à la position mémorisée" qui permet de faire une téléportation selon certaines valeurs de variables. Mais avant, il faut définir ses valeurs.
Dans une téléportation haut/bas ou bas/haut :La valeur X ne doit surtout pas changer et doit donc avoir la valeur actuelle du héros. Définissez là dans X héros comme vu plus haut.
La valeur Y doit prendre la valeur du bord de l'autre map où vous allez téléporter votre héros. Définissez là dans Y héros comme vu plus haut.
L'ID du héros doit prendre la valeur de la map où vous allez téléporter votre héros. Pour connaitre l'ID d'une map, faites un clic droit sur nom dans l'éditeur de map (à gauche) et sélectionnez "Propriétés de la carte"
L'ID se trouve là où c'est entourée. Faites donc dela avec la map où vous désirez téléporter votre héros et entrer cette valeur dans la variable ID héros.
Dans une téléportation gauche/droite ou droite/gauche :La valeur Y ne doit surtout pas changer et doit donc avoir la valeur actuelle du héros. Définissez là dans Y héros comme vu plus haut.
La valeur X doit prendre la valeur du bord de l'autre map où vous allez téléporter votre héros. Définissez là dans X héros comme vu plus haut.
La valeur ID doit prendre la valeur de l'ID de la map où vous souhaitez téléporter le héros. Définissez là dans ID héros comme vu plus haut.
Définissons maintenant les effets de transition ! C'est essentiel, sans ça, adieu le joli effet.
Rajouter une ligne dans la programmation avec l'option "Définir les transitions" (Page 1)
Définissez d'abord l'effacement, sélectionnez : "Aucune"
Ensuite, définissez l'apparition ! Si vous téléportez depuis le bord haut de la map, séléctionnez "Ecran vers bas", si c'est depuis le bord bas : "Ecran vers haut", si c'est à droite : "Ecran vers gauche", si c'est à gauche "Ecran vers droite".
Voilà ! Votre effet de transition est fait !
Maintenant, voici une
option facultative. Quand vous ferez votre téléportation, pendant la transition, vous vous apercevrez qu'on voit le héros dédoublé. Je ne connais pas la solution miracle, mais si vous voulez ôter ce dédoublement, je peux vous dire comment faire. En revanche, vous verrez juste un décalage un peu soudain du héros. A vous de voir.
Pour ce faire, rajouter une ligne avec l'option "Modifier la transparence du héros" (Page 2), et choisissez "Activée".
Rajoutez ensuite une ligne avec l'option "Attendre" (Page2), entrez juste "0"
C'est tout pour l'option facultative. Il nous faut maintenant faire la téléportation !
Rajouter une ligne avec l'option "Retour à la position mémorisée" (Page 2)
Sélectionnez les 3 variables que vous avez prises depuis le début (X héros, Y héros et ID héros)
Pour ceux qui ont pris l'option facultative, rajouter juste une ligne pour désactiver la transparence du héros, comme vu ci-dessus.
Votre évènement est terminé !On va tester ça, mais avant, vérifiez bien que vos deux maps
coïncident parfaitement, il faut que l'un soit la suite parfaite de l'autre, sinon ça se verra lors de la transition ! Donc vérifiez bien cela.
Allez, on teste.... Notre héros doit s'impatienter...
Notre héros va maintenant procéder à la téléportation... (Roulement de tambour)
Ca transitionne ! (Bonjour le français) On ne le voit pas, c'est pas animé, mais ça fait un travelling !
NOTRE HEROS S'EST PARFAITEMENT RETROUVE SUR L'AUTRE MAP ! C'EST UNE REUSSITE TOTALE ! Ah que d'émotions que d'émotions... Je me sens comme un présentateur TF1.
Bon, conclusion des courses ? Finis les téléportations qui se font uniquement sur le bout du chemin et pas autre part, mais en plus vous avez un effet de travelling mirifique. De quoi étonnez vos amis ! (Tu parles.)
Bon, merci de votre attention, si jamais vous avez un problème ou quoi que ce soit, n'hésitez pas à en parler !
Par Z-Master