Un souci de codage : j’ai une fenêtre à gauche, une fenêtre à droite. Je veux que quand on tape « fenêtre gauche » ça renvoie à la fenêtre de gauche, quand on tape « fenêtre droite » ça renvoie à la fenêtre de droire, et quand on tape « fenêtre » on aie « pouvez-vous préciser ? »
Plus précisément, je ne sais pas quels noms donner à mes deux objets « fenêtre », quels attributs « name » et tout ça…
Une idée ?
Salut,
J’ai revu Mulholland Drive ce soir. Je me souvenais pas qu’il était aussi flippant. Vers quelle théorie penches tu pour expliquer le film ?
Sinon pour répondre à ta question, il faut utiliser parse_name
Je te renvoie au code source d’Ekphrasis sur la page sur mon site, cherche « face sud ouest » : il y a 8 faces sur un piedestal que j’ai du disambiguiter…
JB
Merci pour cette prompte réponse, JB !
Cependant, comment dire… Je n’y arrive pas !
Dans Ekphrasis, parse_name est utilisé pour disambiguiter trois mots, ainsi que dans le manuel Inform ; autant là j’ai compris la mécanique, autant pour deux mots (« fenêtre » et « gauche »), je ne sais pas… Je m’embrouille aussi dans les « return » et ses valeurs…
Bref, j’ai fait plusieurs essais, par exemple celui-ci, qui m’a semblé le plus logique, mais qui ne marche pas quand même… :
Object leftfen "fenêtre gauche" piece
with parse_name [;
if (NextWord() ~= 'gauche') return 0;
return 3;
],
has scenery;
Où est le bug ?
(concernant Mulholland Drive, je t’envoie un MP ! )
je crois qu’il y a plus simple :
[code]Object fenetre1 « fenêtre gauche »
with
description « blabalbla. »,
name ‹ fenêtre › ‹ gauche ›,
has female;
Object fenetre2 « fenêtre droite »
with
description « blabalbla. »,
name ‹ fenêtre › ‹ droite ›,
has female;
[/code]
et cela devrait tout simplement fonctionner comme tu as demandé non ?
(cf. par exemple la partie avec les tuiles ici :
anamnese.online.fr/site2/index.php?page=iftemple )
…
Pff… Ridicule…
Bien sûr, ça marche…
Puis c’est logique : avec deux objets « fenêtre », le programme ne sait pas de laquelle on parle si on met juste fenêtre, et demande de préciser…
Pff… Je dois être fatigué… En fait j’avais codé une fenêtre, mais j’ai voulu régler ces histoires de nom avant de passer à autre chose, et puis… Ah, j’ai honte !
Merci de m’avoir aidé à résoudre ce non-problème !
bah, de rien, on se fait tous avoir avec de petites choses comme cela