| █▄▀ Téléportation de room |
| Téléportation de room ? Ce terme vient tout simplement d'une instructions dans RPG maker qui permet au personnage de se téléporter dans une autre pièce. Dans ce tutorial, nous allons créer un système permettant au personnage de changer de picèces |
| o room : index de la salle en cours o room_goto(nsalle) : aller en salle nsalle o room_width : largeur en pixels de la salle o room_height : hauteur en pixel de la salle |
| ▫ 1- Sortie par collision avec la limite de la pièce |
| Lorsque le personnage touche le bord de la pièce, il entrera dans la pièce limitrophe. |
![]() |
| Le script se trouvera dans l'event outside room. (c'est logique !) |
![]() |
| Les variables définissant les positions d'un objet dans une room. |
| Faisons une liste des cas possibles, si le personnage touche : - le bord haut, la composante y est inférieur à 0. - le bord bas, la composante y est supérieur à la hauteur de la pièce. - le bord gauche, la composante x est inférieur 0. - le bord droit, la composante est égale à la supérieur de la pièce. Voilà, on a les conditions pour savoir quel bord le personnage a touché mais maintenant il nous faut savoir quelles sont les pièces qui se trouvent en haut, en bas, à gauche, à droite. Pour cela nous allons définir ces variables dans un script unique spécifique à chaque room. |
![]() |
| // script à mettre dans le script creation_code de la room nomdelaroom.room_right = nomdelaroom.room_up = nomdelaroom.room_left = nomdelaroom.room_down = |
| Exemple |
![]() |
| // script creation_code de C room_right = D; room_up = A; room_left = B; room_down = G; // script creation_code de G room_up = C; room_left = F etc. |
"THE script"" |
| // script à mettre dans l'event outside_room du personnage // bord haut touché if (y <= 0) { // la variable room est précédé de l'id de la pièce courante room_goto(room.room_up); // Lorsque l'on change de pièce en touchant le bord haut on se retrouve // dans un nouvelle pièce mais du côté du bord bas, c'est logique ! y = room_height; } if (y >= room_height) { room_goto(room.room_down); y = 0; } if (x < 0) { room_goto(room.room_left); x = room_height; } if (x >= room_width) { room_goto(room.room_right); x = 0; } |
| ▫ 2- Téléportation ponctuelle |
| Comment faire lorsque le joueur entre par une porte dans un maison ? Tout d'abord créer des objets "téléportations" Comme je tape depuis deux heures, je vais donner des trucs. Alors il faut d'abord définir une variable previous_room qui retient le nom de la pièce avant la téléportation. Puis on se téléporte dans la nouvelle pièce. La position dans la nouvelle pièce dépend de la pièce précédente, donc dans le creation_code de la room, on met la variable previous_room en condition. Méditez sur ces images, en attendant la suite ... |
![]() |
![]() |
| Créer des sprites explicites et assignez les à vos objets. |





