-
Notifications
You must be signed in to change notification settings - Fork 10
Interrupteurs locaux et variables locales
Les interrupteurs locaux ne sont pas une extension de RME, cependant, comme pour les variables et les interrupteurs, ces derniers bénéficient d'une syntaxe allégée. Comme pour l'EventExender, RME est doté de variables locales.
Pour certains, cette partie peut paraître plus abstraite, cependant, je vous assure que les variables locales permettent beaucoup de flexibilité dans la construction de systèmes avec les évènements.
Une variable locale est presque identique à une variable globale (les variables normales de RPGMaker, accessibles via V[ID]
), si ce n'est qu'elles sont référencées par 3 ID's et non un seul.
- L'ID de la map
- L'ID de l'évènement
- L'ID de la variable
L'avantage est qu'il est possible de créer une variable en ne spécifiant que son ID à elle, et le script automatisera l'attribution des deux autres ID.
Quel est l'avantage ? Cela évite la création de variables globales pour des utilisations uniquement au sein d'un évènement, ça permet de copier/coller ses évènements (qui utilisent des variables locales) sans devoir modifier les variables qu'ils utilisent et ça augmente aussi considérablement le nombre de variables disponibles.
Personnellement, je m'en sers souvent pour stocker des résultats dont je n'ai besoin QUE dans un évènement ou qui sont propres à cet évènement. De plus il est possible d’accéder aux variables d'un autre évènement et même d'une autre map car ces adresses sont purement virtuelles, donc il est possible d'associer des variables à des évènements qui n'existent pas.
A la différence des variables globales, on utilise cette fois SV[id_de_la_map, id_de_levenement, id]
. SV
pour self variables
.
Comme il a été dit dans le paragraphe précédent, on peut ne spécifier que l'ID d'une variable locale et RME inférera l'ID de l'évènement qui l'appelle et l'ID de la carte où se trouve l'évènement.
Imaginons une carte (numéro 23) sur laquelle on peut trouver plusieurs évènements dont l'évènement 4 qui appellera ces différentes variables locales :
-
SV[5]
, comme c'est l'évènement 4 de la carte 23 qui appelle cette variable locale, la variable sera donc la variableSV[23, 4, 5]
. -
SV[2, 8]
, cette fois on appelle en fait la variableSV[23, 2, 8]
-
SV[12, 3, 1]
, ici toutes les informations sont données, on appelle donc la variable n°1 de l'évènement 3, se trouvant sur la carte numéro 12
Tous les opérateurs présentés dans la section sur les variables sont compatibles avec les variables locales. Par exemple :
-
SV[5] += V[6]
: Ajoute à la variable locale 5 (située dans un évènement quelconque) la valeur de la variable 6 -
SV[1,2,3], V[2] = V[2], SV[1,2,3]
: intervertit les valeurs de la locale 3 située dans l'évènement 2 de la carte n°1 avec la valeur de la variable 2.
Attention!, l'utilisation des intervalles (
V[1...10]
, par exemple)ne fonctionnent pas pour les variables locales.
A priori, les variables locales peuvent faire tout ce que permettent de faire les variables normales. Cependant, je conseille de ne s'en servir que pour des variables propres à un seul évènement. Par exemple, les points de vie des ennemis dans un ARPG, ou encore pour les points de réputation pour les rendre propres à chaque évènement.
Cette fois ci, il ne s'agit pas d'un ajout, mais comme pour les variables et les interrupteurs, il s'agit d'un simple raccourci syntaxique.
Les interrupteurs locaux fonctionnent comme les interrupteurs normaux avec le même système d'adressage que les variables locales. La seule différence est qu'ils sont limités à 4. Et on y accède via une lettre (A
, B
, C
ou D
) ou via un entier, 1
, 2
, 3
ou 4
(1 = A
, 2 = B
etc.) et qu'on utilise la primitive SS
(pour self switches) pour y accéder par exemple : SS["A"]
(le A
doit bien être entre guillemet) ou alors SS[1]
. Son système d'adressage fonctionne exactement de la même manière que les variables locales donc il est possible d'accéder aux interrupteurs locaux d'autres évènements.
Comme pour les variables locales, les opérateurs logiques et la négation sont compatibles avec les interrupteurs locaux.
Qu'il s'agisse des variables locales ou des interrupteurs locaux, ils sont très pratiques parce qu'ils permettent de créer des évènements génériques et copiables/collables sans détruire tout la logique d'un système.
Introduction
Syntaxe revisitée
- Variables et interrupteurs
- Interrupteurs locaux et variables locales
- Labels et labels locaux
- Affichage dans les messages
Commandes
Valeurs constantes
Evènements enrichis
- Evènements relatifs aux cartes
- Déclencheurs personnalisés
- Déclencheurs en combat
- Sélecteurs
- Boucles évènementielles
- Micro Evènements
Outillage avancé
- Bases de données extensibles
- Définitions de profils et couleurs pour l'afficheur de textes à l'écran
Tutoriels
- Créer des jauges simples
- Créer un QuickTime Event facilement
- Un système d'infiltration
- Un mini système multi-agent
- Un système de saisie de nom custom
- Le passeur d'écran titre
- Créer des jauges en combat
Pour les scripteurs