Recherche
 
Fermer
TRANSLATE
Documentation - Trucs et Astuces

Trucs et Astuces

Seta name et boucles VSTR  -  par FSMOD

SETA NAME ET BOUCLES VSTR

Lorsque vous définissez votre pseudo dans votre fichier de configuration vous avez certainement écrit  ce genre de texte:

seta name "Mon Pseudo Il Est Bo"

Je n'ai mis aucune couleur de manière à être plus lisible. Vous remarquerez les intervalles entre chaque mot du pseudo. Ce type de libellé restitue parfaitement le texte, espaces inclus, tout au long du jeu et ne crée aucun bug.

Maintenant on admet que vous désirez changer de pseudo durant la partie. J'ai évoqué la méthode dans ma doc qui consiste a utiliser une boucle VSTR mais j'ai toutefois omis de préciser un point important.

Considérons la boucle suivante
Comme précisé plus haut, je n'ai pas mis de caractères de couleur pour une meilleure lisibilité.


 
       bind n "vstr nom00"

     seta nom00 "seta name Amigo ; bind n vstr nom01"
     seta nom01 "seta name Bandit  Manchot ; bind n vstr nom02"
     seta nom02 "seta name BloodyMary ; bind n vstr nom03"
     seta nom03 "seta name Aristocrate ; bind n vstr nom00"

Chaque pression sur la touche n doit normalement appeler le pseudo suivant. Pour la première action le pseudo Amigo se substituera a votre pseudo initial
Par contre l'action suivante n'affichera pas Bandit Manchot mais enverra en haut de votre écran le message suivant :
 
shot0170.jpg

Pourquoi?
 

Très simple. La commande SETA ne doit pas être incluse dans une boucle VSTR.

Remède:

Encore plus simple, il suffit de remplacer SETA par SET. Ainsi la nouvelle boucle VSTR pourra s'écrire ainsi: (voir documentation ICI)

     bind n "vstr nom00"

     set nom00 "set name Amigo ; bind n vstr nom01"
     set nom01 "set name Bandit Manchot ; bind n vstr nom02"
     set nom02 "set name BloodyMary ; bind n vstr nom03"
     set nom03 "set name Aristocrate ; bind n vstr nom00"



Par ailleurs le délai de 10s que j'ai fixé n'invalide pas l'incrémentation de la boucle.
Ce qui veut dire que pendant les 10s d'attente, chaque fois que la touche n sera pressée, la boucle avancera d'un cran. Au résultat, à l'issue des 10s lorsque le programme valide le changement, l'action sur n générera le pseudo présent et non celui que l'on s'attendait à voir normalement dans la suite logique de la boucle.
 
N'en soyez donc pas surpris.

-=smile=-
Publié le 05/02/2019 18:03   Haut
Rubriques

Vous êtes ici :   Accueil » Documentation » Trucs et Astuces