New RPG Maker
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Forum traitant du logiciel RPG Maker tout en français ! Entraide, tutos, scripts, ressources, hébergement de vos projets RPG Maker 2000, 2003, XP et VX. Venez les présenter !
 
AccueilDernières imagesRechercherS'enregistrerConnexion
Le Deal du moment : -28%
Précommande : Smartphone Google Pixel 8a 5G ...
Voir le deal
389 €

 

 Vérifier des variables avec un interrupteur

Aller en bas 
3 participants
AuteurMessage
Hellper
Membre actif
Membre actif
Hellper


Masculin Nombre de messages : 227
Age : 31
Localisation : Poitiers
Date d'inscription : 12/12/2010

Vérifier des variables avec un interrupteur Empty
MessageSujet: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur EmptySam 1 Jan - 14:33

Note : Ce tutoriel fonctionne à la fois avec 2k, 2K3, XP et VX. Mais il vous sera surement plus utile avec 2K et 2k3 qui utilisent plus de programmation évènementielle.
Notebis : Ce tutoriel nécessite un minimum de connaissance en programmation évènementielle ou vous risquez de ne pas le comprendre.

Imaginons que vous fassiez un rpg pouvant accepter jusqu'à six héros dans l'équipe. Pour cela, vous êtes obligé de passer outre le système d'équipe de base puisque limité à 4 héros. Vous décidez alors d'utiliser un système de variable utilisant l'identifiant du héros de cette manière :

Code:
Vhéros1 = Idhéros
Vhéros2 = Idhéros
Vhéros3 = Idhéros
Vhéros4 = Idhéros
Vhéros5 = Idhéros
Vhéros6 = Idhéros
Note : Idhéros correspond à chaque fois à l'identifiant d'un héros différent.Maintenant, si vous voulez vérifier la présence d'un héros, vous devrez faire un code ressemblant à peu près à ceci :

Code:
Si Vhéros1 = IdX (pour un Id donné)
  Faire action1 (ce que vous faîtes s'il est là)
Sinon
  Si Vhéros2 = IdX
    Faire action1
  Sinon
    Si Vhéros3 = IdX
      Faire action1
    Sinon
      Si Vhéros4 = IdX
        Faire action1
      Sinon
          Si Vhéros5 = IdX
        Faire action1
        Sinon
            Si Vhéros6 = IdX
          Faire action1
          Sinon
            Faire action2 (ce que vous faîtes s'il n'est pas là)

Vous avez là un code de 19 lignes. Si vous le faîtes pour 3 héros et en admettant que le code Faire action1 et faire action2 prenne 5 ligne, ce qui est peu, ce la vous fait donc un total de 153 lignes. Et si dans Faire action1, vous vérifiez la présence d'un autre héros, c'est de l'ordre de900 à 1000 lignes, voire plus.

Le problème de ce code de vérification est qu'il n'est pas universel et doit être géré au cas par cas. Maintenant, je vais vous montrer comment simplifier efficacement ce code en utilisant le vérification par interrupteur. Je m'explique. Dans ce cas là, nous devons vérifier si un héros est dans une situation parmi les deux possible, c'est-à-dire :
- Soit il est présent.
- Soit il est absent.
Il est donc intéressant d'utiliser un interrupteur en faisant l'association désactivé/absent et activé/présent.

Maintenant, passons au code :
Tout d'abord, "créez" une variable, un interrupteur et un event commun activé par appel que vous nommez comme vous voulez. Ici, je les nommerai Vid, Intverif et Eventcom. L'event commun contiendra la partie principale du code. Mais avant, voici le code à placer pour vérifier :

Code:
Vid =IdX (toujours pour un Id donné.)
Appeller un event commun : Eventcom
Si Intverif est activé
  Faire action1
Sinon
  Faire action2
Vous noterez que l'utilisation de la variable pour l'Id sert à la fois à garder la donnée pour Eventcom mais aussi à le rendre plus souple.

Voici ensuite le code à mettre dans Eventcom :

Code:
Désactiver Intverif
Si Vhéros1 = Vid
Activer Intverif
Si Vhéros2 = Vid
Activer Intverif
Si Vhéros3 = Vid
Activer Intverif
Si Vhéros4 = Vid
Activer Intverif
Si Vhéros5 = Vid
Activer Intverif
Si Vhéros6 = Vid
Activer Intverif
Vous noterez que l'interrupteur doit être désactivé pour mettre le cas absent par défaut, c'est-à-dire qu'il est absent si aucune des condition qui suit ne marche c'est-à-dire s'il n'est pas présent.
Ce qui nous fait donc un total de 6 lignes de base, soit en reprenant les 3 vérifications et les 5 lignes pour Faire action1 et Faire action2 un total de 42 lignes, soit un 111 lignes économisées.

Et vous pouvez enregistrer le position du héros dans un variable Vplace en rajoutant 6 lignes de code pour obtenir :
Code:
Désactiver Intverif
Si Vhéros1 = Vid
Activer Intverif
Vplace=1
Si Vhéros2 = Vid
Activer Intverif
Vplace=2
Si Vhéros3 = Vid
Activer Intverif
Vplace=3
Si Vhéros4 = Vid
Activer Intverif
Vplace=4
Si Vhéros5 = Vid
Activer Intverif
Vplace=5
Si Vhéros6 = Vid
Activer Intverif
Vplace=6

Et voilà, c'est fini. N'hésitez pas à poser des question.


Dernière édition par Hellper le Sam 1 Jan - 21:06, édité 1 fois
Revenir en haut Aller en bas
rayon-gama
Modérateur
Modérateur
rayon-gama


Masculin Nombre de messages : 352
Age : 44
Localisation : &é"'(-è_çà)=#{[|\^@]} (Rege
Date d'inscription : 03/04/2010

Vérifier des variables avec un interrupteur Empty
MessageSujet: Re: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur EmptySam 1 Jan - 15:30

Très bon tutorial bien expliquer. ;)
Revenir en haut Aller en bas
k.limero
Membre actif
Membre actif
k.limero


Masculin Nombre de messages : 206
Age : 112
Localisation : Rennes, et aussi DTC
Date d'inscription : 14/12/2010

Vérifier des variables avec un interrupteur Empty
MessageSujet: Re: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur EmptySam 1 Jan - 15:35

Très bien, utile partout, c'est une simplification vraiment utile, merci.
Revenir en haut Aller en bas
Hellper
Membre actif
Membre actif
Hellper


Masculin Nombre de messages : 227
Age : 31
Localisation : Poitiers
Date d'inscription : 12/12/2010

Vérifier des variables avec un interrupteur Empty
MessageSujet: Re: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur EmptySam 1 Jan - 15:43

Merci pour vous commentaires. ;)
Revenir en haut Aller en bas
rayon-gama
Modérateur
Modérateur
rayon-gama


Masculin Nombre de messages : 352
Age : 44
Localisation : &é"'(-è_çà)=#{[|\^@]} (Rege
Date d'inscription : 03/04/2010

Vérifier des variables avec un interrupteur Empty
MessageSujet: Re: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur EmptySam 1 Jan - 15:44

Bah de rien les commentaires sont fait pour faire évoluer les gens ;)
Revenir en haut Aller en bas
Contenu sponsorisé





Vérifier des variables avec un interrupteur Empty
MessageSujet: Re: Vérifier des variables avec un interrupteur   Vérifier des variables avec un interrupteur Empty

Revenir en haut Aller en bas
 
Vérifier des variables avec un interrupteur
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Tutorial --> Les variables et les conditions
» Assemblage de "Chara" avec "THE GIMP"
» Plus de réalisme avec XP
» Comment coloriser avec photoshop ( montage )
» Modifier ses tilesets avec PhotoFiltre Studio

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
New RPG Maker :: Making :: Tutoriaux :: Autre tuto...-
Sauter vers: