Partagez
Aller en bas
avatar
Lunri
Membre

Nombre de messages : 673
Age : 28
Distinction : aucune
Date d'inscription : 31/07/2011

RPG Maker VX Ace Utilisation avancée de variables

le Lun 21 Mai 2012 - 13:28
Bonjour.

Il me semble ne pas avoir vu de tuto sur l’utilisation de variables contenant la position du héros. Alors je vous propose le mien. (Soyez pas trop méchant c’est le 1er :p Je suis ouvert à toute aide/critiques ^^). Je fais ce tuto pour ACE mais il devait être applicable par tous les RM. Je n’ai pas forcément la même traduction que vous mais vous devriez vous en sortir ^^. Avertissement tout de même c’est un tuto assez avancé sur les variables donc si vous débutez ne commencez pas par celui-ci pour le bien de vos neurones.


Quelques explications sur les cordonnées :

Les cordonnées X sont les cordonnées horizontales
Les cordonnées Y sont les cordonnées Verticales.

Sur RM ca donne ca :

Spoiler:


Vous pouvez les connaitre facilement grâce à l'indicateur en bas :
Spoiler:



Comment enregistrer la position du Héros dans une variable ?

Tout d’abord on modifie la variable N°001 qu’on appellera « Position X »

Spoiler:






On fait la même chose pour la variable N°002 qu’on appellera « Position Y » sauf que cette fois on enregistre la cordonnée Y du héros.

Spoiler:


Et voilà c’est tout ce n’était pas très compliqué x).



Oué c’est bien mais à quoi ca sert ? Cette fonction est très utile pour programmer pas mal de mini-systèmes je vous propose quelques exemples plus ou moins complexe.


1) Faire des bruits de pas


Pour cela vous aurez simplement besoin que d’un événement commun en processus parallèles:

On enregistre la position X et Y du Héros puis dans un 2eme temps on enregistre la position X et Y du Héros en décaler. Si elles sont différentes alors le héros à bouger on peut jouer un bruit de pas.

Spoiler:

Vous pouvez aussi jouer avec les ID terrains pour modifier le son de bruit de pas.


2) Economiser des évents de téléportations.



A partir d’un certain nombre d’évents par map RM à tendance à lag. Alors une map comme cela n’est pas forcement idéale :

Spoiler:

En plus c’est super long à faire et barbant… Je vous propose donc une autre solution.


Lorsque le Héros se trouve sur le bord gauche de la map sa position X =0. Si à ce moment là il regarde vers la gauche il ne reste plus qu’à le téléporter sur la map suivante.

Note : S’il se trouve sur le bord haut de l’écran c’est sa position Y=0
          S’il se trouve sur le bord droit ou sur le bord du bas  la Position x dépendra de la taille de votre map je vous renvoie donc au début du Tuto.

Ce que donne l’évent en image :

Spoiler:

Un évent sans apparence en processus parallèle sous le héros pour pas le gêner.
On attend 2 frames (pour éviter le lag) puis on enregistre la position X et Y du héros. (On peut faire cette étape dans un évent commun)
Donc si Position X=0 et que le héros regarde à gauche il est prêt à être téléporter. Suffit de régler quelques paramètres suivant où l’on souhaite arriver.
On stock L’ID de la Carte dans une variable et on modifie la variable X2, à savoir par la cordonnée X la plus à droite de la Map sur laquelle vous souhaitez être téléporté.
Et on fait de même pour toutes les directions. Il ne vous reste plus qu’à copier coller cet évent sur toutes vos map en modifiant les variables suivant la taille de vos map et l’ID carte correspondant.
Une fois comprit la technique ça va vite. Et on perd plus 3 heures à copier coller 50 évents de téléportations et à les modifier.



3) Tirer des boules d’énergies (ou ce que vous voulez :p)


Pour cela il vous faudra 2 évents sur chaque map ou vous voulez rendre cela possible.

Le premier est le projectile la 1ere page reste vide tant qu’on ne tire pas on ne le voit pas.

Spoiler:

Dans la deuxième page quand on tire il apparait et se déplace suivant la direction dans laquelle regarde le héros. On place donc l’évent en processus parallèle pour qu’il se déplace indéfiniment. Avec pour condition de déclanchement l’interrupteur « Tir ON » activé.
Mettez-le en vitesse rapide

Spoiler:

Maintenant il faut donc régler l’apparition et la disparition de la boule d’énergie. On utilise donc un 2eme évent en processus parallèle sur la map.

J’ai décidé que si le joueur appuyait sur la touche D il pourrait tirer donc quand la touche Z est pressée on place l’évent là où se trouve le Héros (rappeler vous Position X et Position Y). On mémorise dans quelle direction le héros est tourner puis on active l’interrupteur pour faire apparaitre le projectile.

Spoiler:

Note : si vous n’utilisez que ce tuto pensez à faire un autre évent pour enregistrer la position du héros dans les variables 001 Position X et 002 Position Y.

C’est bien beau mais si on reste là le projectile va finir bloquer par un bord de map ou un obstacle.

Donc dans l’évent « Réglage tire » on crée une nouvelle page en processus parallèle avec pour condition de déclanchement si l’interrupteur « Tir On » est activé.
Dans cet évent on vérifie si le projectile est toujours en train de se déplacer. Donc dans un 1er temps on égalise les variables de position puis 5 frames plus tard on verifie si elles sont toujours identique. cela qui signifierait que le projectile ne se déplace plus. On désactive ensuite l’interrupteur « Tir On » pour faire disparaitre le projectile.

Spoiler:



Voila c’est fini. Il y a beaucoup d'autre applications à vous de vous servir de ce tuto pour imaginer de nouveaux systèmes  Very Happy

Si vous avez des questions n’hésiter pas.

+5 points de participation
avatar
Shadow-clad
Membre

Nombre de messages : 510
Age : 28
Localisation : A durbuy normal j'en suis le maire ! ^^
Distinction : Survivant ultime de Koh Lanta : Erem Vehyx 2010
[Denis Coco' Smile]
Date d'inscription : 18/06/2010
http://redmoonlight.forumgratuit.org/forum.htm

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 16:47
tuto vraiment complet de plus il est possible d'adapter ces methodes pour pas mal de choses merci a toi !
avatar
Elisa'
Staffeux retraité

Nombre de messages : 2924
Age : 20
Localisation : Par là-bas !
Distinction : Mon héritière que je chéris
[Coco' Smile]
Plus que 2 ans avant d'épouser Coco' ! Compte à rebours lancé !
[Auto-distinction]

Adepte du "Je le savais" alors qu'elle le savait pas.
Date d'inscription : 30/05/2009

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 17:40
Merci pour le tuto, +5 pts de participation Smile

_________________


Cliquez ici pour voter pour la commu'
avatar
LightNox
Membre

Nombre de messages : 1758
Age : 28
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 19:02
Merci a toi pour ses quelques précision sur les variables certain en auront vraiment besoin Wink

merci du partage Smile
avatar
crackerwood
Membre

Nombre de messages : 343
Age : 33
Localisation : Derrière son pc y parait
Distinction : aucune
Date d'inscription : 03/08/2008

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 19:27
Bien joué. Très bon tuto aussi bien pour les débutants que les un peu plus confirmés. J'aurais précisé que pour les téléportation où tu mets la condition [y=0], j'aurais précisé qu'on peut le faire avec X et Y. Mais très bon tuto quand même pas d'inquiètude Smile.
avatar
Lunri
Membre

Nombre de messages : 673
Age : 28
Distinction : aucune
Date d'inscription : 31/07/2011

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 21:49
J'aurais précisé que pour les téléportation où tu mets la condition [y=0], j'aurais précisé qu'on peut le faire avec X et Y.

Je suis pas sur d'avoir bien compris ta remarque. Mais la condition avec Y seras utiliser quand le joueur tout en haut ou tout en bas de la map sera téléporté.
Et X quand le joueur sera tout à gauche ou tout à droite :/
avatar
crackerwood
Membre

Nombre de messages : 343
Age : 33
Localisation : Derrière son pc y parait
Distinction : aucune
Date d'inscription : 03/08/2008

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 21 Mai 2012 - 21:53
Oui je comprends mais faut se dire que les débutants ne le devinerons sans doute pas. Même si en parlant de "Y" on pense à "X" dans la logique.
avatar
Gummy
Staffeux retraité

Nombre de messages : 2666
Age : 27
Localisation : Belgique
Distinction : Modérateur imprévisible

Papy Lolo' [Nabots Nimousse]


Date d'inscription : 27/01/2008

RPG Maker VX Ace Re: Utilisation avancée de variables

le Mar 22 Mai 2012 - 12:08
Merci, super utile!
avatar
carbonexx
Membre

Nombre de messages : 8
Distinction : aucune
Date d'inscription : 27/05/2012

RPG Maker VX Ace Re: Utilisation avancée de variables

le Lun 28 Mai 2012 - 11:27
merci c'est plus qu'il m'en fallais et ça me donne des idées ^^
Contenu sponsorisé

RPG Maker VX Ace Re: Utilisation avancée de variables

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum