Table des matières

Language / Langue : FR | EN

Timers (YAML)

JDR-Bot offre quatre types de mécaniques temporelles.

1. Pause visuelle {{timer:N}}

Bloque le jeu N secondes avec un compte à rebours visible, puis affiche les choix :

texte: |
  Le mécanisme s'enclenche...
  {{timer:3}}
  La porte s'ouvre !

2. Timer local (lié à une salle)

Déclaré dans un événement, se lance à l'entrée de la salle. S'annule si le joueur quitte la salle.

evenements:
  - si: ~
    timer: sablier
    duree: "30"
    vers: salle_expiration
    texte: "⏱️ Timer lancé — v_sablier_v secondes restantes."

3. Timer global (survit aux changements de salle)

Déclaré dans timers_globaux: et activé via timer_global:id:ON :

# En-tête du scénario
timers_globaux:
  - id: comptebombe
    duree: 60
    etat: OFF    # OFF par défaut
 
# Dans un événement ou choix :
faire: "timer_global:comptebombe:ON"

À expiration, déclenche les événements globaux liés (si: “v_comptebombe_v = 0”).

Timers globaux autonomes (v4.9) — à l'expiration, exécute directement ses propres actions sans passer par un événement global :

timers_globaux:
  - id: compte_rebours_fatal
    duree: 60
    etat: OFF
    texte: "⏰ Temps écoulé ! La porte se referme..."
    faire:
      - "score.-.20"
    vers: fin_defaite

4. Tick : action chaque seconde

tick: exécute une liste de blocs à chaque seconde du timer (local ou global) :

evenements:
  - si: ~
    timer: tick_demo
    duree: "180"
    vers: salle_expiration
    tick:
      - si: ~                        # toujours exécuté
        faire: "ticks_ecoules.+.1"
      - si: "v_ticks_ecoules_v > 5"  # conditionnel
        faire: "autre_var.+.1"

Sur un timer global :

timers_globaux:
  - id: poison_tick
    duree: 30
    etat: OFF
    tick:
      - si: "v_pv_v > 0"
        faire: "pv.-.1"
        texte: "☠️ Le poison agit... (PV : v_pv_v)"

Notes :

Annuler des timers

faire: "annuler_timer:nom"       # annule un timer spécifique
faire: "annuler_tous_timers:"    # annule tous les timers actifs

Retrouvez nous sur le discord Make&Play