**Language / Langue :** **FR** | [[en:yaml:actions|EN]]
====== Actions personnalisées (YAML) ======
Les actions personnalisées ajoutent des commandes au nom libre. Le joueur utilise ''j!nomaction cible'' (Discord) ou tape le verbe directement (web/desktop).
===== Déclaration =====
Actions **locales** : dans le bloc ''actions:'' d'une salle, disponibles uniquement dans cette salle.
Actions **globales** : dans le bloc ''actions_globales:'' au niveau racine, disponibles partout.
actions:
- verbe: examiner
cible: coffre
si: ~
texte_ok: "Un vieux coffre en bois. Il semble verrouillé."
texte_ko: "Il n'y a rien d'intéressant ici."
- verbe: ouvrir
cible: coffre
si: "cle"
faire:
- "or.+.50"
- "cle&&inventaire&&null" # retire la clé
texte_ok: "Vous ouvrez le coffre ! +50 pièces d'or."
texte_ko: "Le coffre est verrouillé. Il vous faut une clé."
===== Cible all =====
Avec ''cible: all'', n'importe quelle saisie est acceptée :
actions_globales:
- verbe: aller
cible: all
si: ~
faire: "t_action_cible_ok_t" # redirige vers la salle tapée
texte_ko: "Destination «t_action_cible_t» inconnue."
^ Variable ^ Valeur ^
| ''t_action_cible_t'' | Ce que le joueur a tapé (valide ou non) |
| ''t_action_cible_ok_t'' | Dernière cible valide tapée |
===== Conditions multiples sur la même cible =====
Plusieurs lignes avec le même ''verbe+cible'' sont testées dans l'ordre :
actions:
- verbe: combiner
cible: herbe
si: "herbe t_combinaison_t.=.rien"
faire:
- "-herbe&&inventaire&&null"
- var_texte: combinaison
valeur: "herbe"
texte_ok: "🌿 L'herbe entre dans l'alambic."
texte_ko: "Vous n'avez pas d'herbe."
- verbe: combiner
cible: all
si: ~
texte_ok: "«t_action_cible_t» n'est pas un ingrédient connu."
Les actions locales sont testées avant les globales. La première condition vraie gagne.
===== Alias d'action =====
''alias:'' crée un raccourci : le joueur peut taper le mot seul sans le verbe :
actions:
- verbe: inspecter
cible: alambic
alias: alambic # taper "alambic" = "inspecter alambic"
si: ~
texte_ok: "L'alambic central. Utilisez 'combiner [ingrédient]'."
===== Bouton sur une action =====
''bouton:'' affiche une réaction Discord cliquable pour cette action :
actions:
- verbe: utiliser
cible: potion
bouton: "💚 Utiliser la potion"
visible-si: "potion" # masqué si l'inventaire n'a pas de potion
grise-si: "v_pv_v >= v_pvmax_v" # grisé si PV déjà au max
si: "potion"
faire:
- "-potion&&inventaire&&null"
- "pv.+.5"
texte_ok: "Vous buvez la potion. +5 PV !"
texte_ko: "Vous n'avez pas de potion."
**Retrouvez nous sur le [[https://discord.gg/Z63DtVV|discord Make&Play]]**