Inform 7 : Cacher/révéler des trucs et des machins

Bonjour,

La pérennité de Quest ne me paraissant plus du tout assurée, je suis en train de migrer vers Inform 7 ; d’où mon exploration systématique de celui-ci.

Pour cacher/révéler des trucs et des machins, l’extension « Hidden Items » de Krister Fundin paraît idéale ; malheureusement elle ne semble pas fonctionner avec la 6L38. Alors ?
Bon, pour les objets proprement dits, pas de problèmes. Pour les portes, pas de gros problèmes non plus : si je suis prêt à accepter quelques petites restrictions, et j’y suis prêt, je peux les simuler avec des objets.

Mais pour les exits ou issues ? Par exemple, il y a une issue vers le bas qui va du salon à la cave, mais je ne veux pas qu’elle soit visible tant que la trappe n’est pas ouverte.
Et là je suis sec.

Merci d’avance,
Thierry

P.S : Comment faire pour afficher la liste des objets présents dans une pièce ?

Pour l’extension qui ne fonctionne pas, c’est très simple. Il faut changer ça

change the original location of T to the holder of T; en

now the original location of T is the holder of T;

La syntaxe « change … to » est une ancienne syntaxe, qui doit maintenant être remplacée par « now … is ». Mais sinon tu peux juste le faire sans l’extension en créant l’objet hors du jeu et en le mettant en jeu au bon moment.

Pour les portes, je pense que le mieux est d’utiliser cette extension. Masquer des portes en pensant à tous les cas possibles est compliqué à cause de la façon dont elles sont implantées dans la bibliothèque d’Inform, mais cette extension gère tout comme il faut.

Enfin, qu’entends-tu par une issue « visible » ? Surtout qu’il n’y a pas besoin de rendre une issue invisible si la trappe est fermée : comme elle est fermée, le joueur ne pourra pas aller en bas. De toute façon, avec l’extension mentionnée plus haut, masquer une porte (la trappe, donc) empêche le joueur d’aller dans la direction où elle était auparavant.

Pour afficher la liste des objets dans une pièce :

say "[list of things in le salon]."; [on peut ajouter plus de précisions, par exemple si on ne veut pas les scenery.] say "[list of not scenery things in le salon].";

(Pour la pérennité de Quest, je ne sais pas. C’est toujours un système utilisé je pense. C’est surtout le manque de portabilité qui me gêne.)

Encore merci. Mais je devrais pouvoir t’ennuyer moins souvent : en fouinant sur Internet je viens de tomber sur « I7Handbook 8x11 », qui me paraît très intéressant.

Thierry :slight_smile:

P.S : Quest est un excellent produit que j’aime beaucoup et que j’ai utilisé pendant plus d’un an. Moi aussi j’étais gêné par le manque de portabilité, mais comme Alex son créateur annonçait régulièrement dans le forum qu’il allait rémédier à ça… Mais différents indices me font penser qu’il est en train de se lasser ( quarante ans d’expérience, que veux-tu ), ce que je comprends parfaitement ; et comme il est seul… Il a énormément travaillé sur Quest pendant des années et il a peut-être envie de faire autre chose.

Oui, le livre de Jim Aikin est très apprécié. J’avais commencé à le lire parce que ça m’intéresse de voir différentes façons d’aborder Inform, mais je n’avais pas aimé parce que ça se perdait au début dans des trucs compliqués de débuggage avec des inclusions I6 (ce qui est vraiment inutile pour un débutant) et autres plutôt que d’aller directement à la création de la FI. Ça reste quand même un bon ouvrage, même si je préfère la doc officielle (j’ai une certaine et étrange passion pour les manuels et autres modes d’emploi :laughing:).

Mais ne t’inquiète pas, tu ne m’ennuie pas.

Ah d’ailleurs, un truc important pour les extensions : il faut éviter d’aller sur le site d’Inform, où les extensions ne sont pas toujours à jour, et préférer la public library intégrée à Inform (onglet « Extensions » puis Public Library en haut à droite) ou le dépôt GitHub. En général, ce qui est sur GitHub est plus à jour, et on trouve des choses qui ne sont pas ailleurs.