**Language / Langue :** **FR** | [[en:yaml:variables|EN]] ====== Variables (YAML) ====== ===== Déclaration des variables ===== Les variables numériques se déclarent dans le bloc ''vars:'' de l'en-tête : vars: # Forme courte (valeur seule) score: 0 # Forme longue (avec description) pv: valeur: 10 description: "Points de vie" La description est affichée si le joueur examine la variable (''j!examiner score'') ou si elle est liée à une option permanente (''v_score_v§⭐''). ===== Variables textuelles ===== Déclarées dans ''vars_texte:'' : vars_texte: nomjoueur: valeur: "Aventurier" description: "Nom du joueur" Référencées dans les textes avec ''t_nom_t''. Le joueur peut modifier la valeur avec ''j!repondre'' si la variable est déclarée dans la salle en cours. ===== Variables online ===== Persistées entre toutes les parties, sur tous les serveurs. Déclarées dans ''vars_online:'' : vars_online: recordscore_o: valeur: 0 description: "Meilleur score jamais atteint" Le nom **doit finir par ''_o''**. Utilisation identique aux variables normales : ''v_recordscore_o_v''. La variable ''nb_parties_o'' existe automatiquement — incrémentée à chaque lancement. ===== Variables dans init: (par salle) ===== Le bloc ''init:'' d'une salle est exécuté à chaque entrée : init: # Variable numérique - var: desresultat valeur: "%=1:6" description: "Résultat du lancer de dé" # Variable textuelle - var_texte: etat valeur: "repos" description: "État du joueur" ===== Modificateurs de valeur ===== ^ Syntaxe ^ Effet ^ | ''0'' (nombre fixe) | Fixe la valeur à 0 | | ''"+1"'' | Ajoute 1 à la valeur actuelle | | ''"-3"'' | Soustrait 3 | | ''"%=1:6"'' | Aléatoire entre 1 et 6 | | ''"%+1:3"'' | Ajoute un aléatoire entre 1 et 3 | | ''"%=v_force_v:v_pvmax_v"'' | Aléatoire avec variables comme bornes | ===== Variables dans les textes ===== * ''v_nom_v'' → valeur d'une variable numérique * ''t_nom_t'' → valeur d'une variable textuelle ===== Variables système ===== ^ Variable ^ Valeur ^ | ''v_resultat_v'' | Résultat du dernier aléatoire ''%=X:Y'' | | ''v_valeur_v'' | Dernier code saisi dans ''j!avancer salle code'' | | ''v_reponse_v'' | Valeur saisie avec ''j!repondre'' | | ''v_nom_timer_v'' | Secondes restantes du timer ''nom'' | ===== Formatage de l'affichage ===== On peut formater l'affichage d'une variable numérique avec ''|padN'' : texte: "Tour : v_tour_v|pad2" # affiche "Tour : 07" si tour = 7 ===== Piège classique : variables online ===== ⚠ Le texte d'un événement est évalué **avant** l'action du même événement. Pour afficher la **nouvelle** valeur d'un record, affichez la variable source, pas la destination : evenements: - si: "v_score_v > v_record_o_v" faire: "record_o.=.v_score_v" # Affiche v_score_v (la source), pas v_record_o_v (pas encore mise à jour) texte: "Nouveau record : v_score_v (ancien : v_record_o_v)" **Retrouvez nous sur le [[https://discord.gg/Z63DtVV|discord Make&Play]]**