Outils pour utilisateurs

Outils du site


fr:yaml:objets

Ceci est une ancienne révision du document !


Objets et inventaire (YAML)

Les objets d?clar?s dans objets: sont ajout?s ? la salle quand le joueur y entre. Ils utilisent les commandes natives du bot : prendre, examiner et jeter.

Important : les objets YAML ne poss?dent pas de champ si: ni visible-si:. Pour rendre un objet conditionnel, utilisez plut?t un ?v?nement, un choix, un tag, une salle diff?rente, ou un objet avec retirer: true.

Exemple complet

- id: bibliotheque
  texte: |
    Une table encombr?e occupe la pi?ce.
    Un vieux coffre repose contre le mur.
  objets:
    - nom: grimoire
      endroit: table
      desc_meuble: "Une vieille table en bois. Un grimoire poussi?reux y est pos?."
      description: "Un vieux grimoire aux pages jaunies."
      msg_ramassage: "Vous prenez le grimoire sur la table."
      reaction_meuble: "?? Examiner la table"
      reaction_prise: "?? Prendre le grimoire"
      reaction_objet: "?? Examiner le grimoire"

    - nom: cle
      endroit: invisible
      description: "Une petite cl? en argent."
      msg_ramassage: "Vous ramassez la cl?."

    - nom: vieillepotion
      retirer: true
      endroit: invisible
      msg_retrait: "La vieille potion dispara?t de votre sac."

Champs disponibles

Champ Effet
nom: Identifiant de l'objet. Obligatoire.
endroit: Meuble ou lieu o? se trouve l'objet. D?faut : invisible.
description: Texte affich? quand le joueur examine l'objet.
desc_meuble: Texte affich? quand le joueur examine le meuble/l'endroit. Si absent, le moteur r?utilise description:.
msg_ramassage: Texte affich? quand l'objet est pris.
retirer: true Retire cet objet ? l'entr?e dans la salle, ?quivalent au pr?fixe -nom de l'ancienne syntaxe.
msg_retrait: Texte utilis? lors du retrait si retirer: true.
reaction_meuble: Bouton affich? pour examiner le meuble.
reaction_prise: Bouton affich? pour prendre l'objet.
reaction_objet: Bouton affich? pour examiner l'objet.

Meuble, objet et inventaire

endroit: d?finit le meuble visible. Exemple : avec endroit: coffre, le joueur peut examiner coffre. desc_meuble: d?crit alors le coffre, tandis que description: d?crit l'objet lui-m?me.

endroit: invisible signifie que l'objet existe dans la salle mais n'est pas list? comme objet visible ? prendre directement. C'est utile pour des ?tats internes ou des objets manipul?s par ?v?nement.

Stock progressif sur un meuble

D?clarer plusieurs fois le m?me nom: au m?me endroit: permet de simuler un stock qui diminue. ? chaque prise, le slot suivant devient actif.

objets:
  - nom: piece
    endroit: coffre
    desc_meuble: "Le coffre contient trois pi?ces."
    description: "Une pi?ce d'or."
    msg_ramassage: "Vous prenez une pi?ce. Il en reste deux."
  - nom: piece
    endroit: coffre
    desc_meuble: "Le coffre contient encore deux pi?ces."
    description: "Une pi?ce d'or."
    msg_ramassage: "Vous prenez une pi?ce. Il en reste une."
  - nom: piece
    endroit: coffre
    desc_meuble: "Le coffre contient une derni?re pi?ce."
    description: "Une pi?ce d'or."
    msg_ramassage: "Vous prenez la derni?re pi?ce."

Tester un objet en condition

Dans les champs si:, un objet se teste avec son nom directement :

si: "cle"      # le joueur poss?de l'objet cle
si: "-cle"     # le joueur ne poss?de pas l'objet cle

Les conditions d'objet utilisent le nom brut, pas o_cle_o.

Ajouter ou retirer un objet via faire:

Forme recommand?e :

evenements:
  - si: ~
    faire:
      - objet: cle_rouillee
        vers: inventaire
        description: "Une vieille cl? rouill?e."
      - objet: fausse_cle
        vers: inventaire
        retirer: true
    texte: "Votre trousseau change."

La forme historique reste accept?e :

faire:
  - "cle_rouillee&&inventaire&&Une vieille cl? rouill?e."
  - "-fausse_cle&&inventaire&&null"

M?dias dans les descriptions

description: et desc_meuble: acceptent les m?mes m?dias que le texte narratif : images [[url]], sons <<url>> et vid?os ((url)).

objets:
  - nom: carte
    endroit: table
    description: "Une carte du royaume.\n[[https://exemple.com/images/carte.png]]"
    msg_ramassage: "Vous prenez la carte."

Cliquer sur un objet dans l'inventaire d?clenche automatiquement examiner <objet>.

Voir aussi

fr/yaml/objets.1777824446.txt.gz · Dernière modification : de cyrilfiesta