Table des matières

Language / Langue : FR | EN

Image maps / Point & clic (YAML)

Les image maps transforment une image en zone interactive. L'auteur fournit deux fichiers :

La fonctionnalité est interactive sur web, desktop et export HTML5 standalone. Sur Discord et terminal, l'image reste affichée comme média lisible, sans interaction point & clic.

Insérer une image map

Dans un texte de salle ou dans un encadré HUD :

texte: "[[#map:scene:https://cyril-fiesta.fr/jdr-bot/scenarios/images/showcase/taverne.png|https://cyril-fiesta.fr/jdr-bot/scenarios/images/showcase/taverne-masque.png]]"

Format général :

[[#map:id:image.png|masque.png]]

Déclarer les zones

Les zones se déclarent dans la salle avec la clé zones: puis l'id de la map.

zones:
  scene:
    couleurs:
      - couleur: "#FF0000"
        clic: parler_barman
        highlight: true

      - couleur: "#0000FF"
        clic: examiner_salle
        survol-tooltip: "Regardez attentivement la salle..."
        highlight: true

      - couleur: "#00FF00"
        survol-tooltip: "Une sortie vers la rue."
        survol-event: observer_sortie

Chaque entrée de couleurs: associe une couleur du masque à une interaction.

Options de zone

Événements associés

Les ids référencés par clic: ou survol-event: doivent correspondre à des événements de la salle.

evenements:
  - id: parler_barman
    texte: |
      Le barman grommelle :+n+
      **« On commande ou on dégage. »**
    faire: "parle_barman.=.1"

  - id: examiner_salle
    texte: "La salle est basse de plafond et sent la bière éventée."

  - id: observer_sortie
    once: true
    texte: "L'air frais de la rue passe sous la porte."

Les événements associés gardent leurs champs habituels : si:, faire:, vers:, texte:, texte-ko: et once:. Les clés visible-si: et grise-si: s'appliquent à la map entière. Pour conditionner une zone précise, utilisez etat: et ses couches si:.

État d'une zone

L'état est vérifié à l'affichage et au moment du clic.

Valeur Effet
visible État par défaut. Le clic, le survol et le tooltip fonctionnent.
desactive Le clic et la surbrillance de survol sont coupés. Le tooltip reste disponible. Si couleur-affichage: est définie, la zone reste peinte.
invisible Le clic, le survol et le tooltip sont coupés.

Une zone peut porter plusieurs couches si:. Elles sont évaluées dans l'ordre et ne remplacent que les clés qu'elles déclarent.

zones:
  scene:
    couleurs:
      - couleur: "#F21010"
        clic: trouver_cle
        highlight: true
        si:
          - si: "v_cletrouvee_v.=.1"
            etat: desactive
            couleur-affichage: "#777777"
            mode-affichage: plein

Une zone décorative peut utiliser etat: et couleur-affichage: sans avoir de clic:. Une zone desactive ou invisible ne peut pas être déclenchée par un clic forcé envoyé au serveur.

once: zone / once: zone-salle

Quand une même couleur du masque contient plusieurs zones séparées, chaque composante peut être déclenchée individuellement :

evenements:
  - id: toucher_bouteille
    once: zone-salle
    texte: "Vous inspectez une bouteille vide."
    faire: "bouteilles.+.1"

once: couleur / once: couleur-salle

Ces deux valeurs regroupent toutes les taches qui utilisent la même couleur du masque :

evenements:
  - id: toucher_bouteilles
    once: couleur
    texte: "Toutes les bouteilles portent le même symbole."

Utilisez once: zone pour traiter séparément plusieurs objets d'une même couleur. Utilisez once: couleur quand un seul clic doit les désactiver ensemble.

apres-clic: - marquer les zones consommées

Sur une zone dont l'événement de clic utilise l'un des modes zone ou couleur, la clé apres-clic: choisit le rendu une fois l'interaction consommée :

Valeur Effet
masquer Plus de highlight au survol, zone inerte.
fixe Highlight affiché en permanence (déjà cliqué).
“#RRGGBB” Highlight permanent de cette couleur.

La clé optionnelle apres-mode: (plein ou contour) change le type de highlight de la marque - par exemple contour au survol, mais remplissage plein une fois l'élément trouvé. Idéal pour un cherche-et-trouve :

zones:
  scene:
    couleurs:
      - couleur: "#00FFF3"
        clic: toucher_bouteille
        highlight: true
        contour-seul: true
        apres-clic: "#000000"
        apres-mode: plein

Avec les variantes zone et couleur, les marques persistent au retour dans la salle. Les variantes zone-salle et couleur-salle se réarment à chaque visite.

Dans un HUD

Une image map peut rester affichée en permanence dans un encadré :

encadre:
  - position: haut
    hauteur: 42
    texte: "[[#map:scene:/scenarios/images/taverne.png|/scenarios/images/taverne-masque.png]]"

Les textes d'événements apparaissent alors dans le flux principal pendant que la scène reste cliquable.

Conseils

Voir aussi : Tooltips interactifs, Éléments cliquables, HUD.