Salut,
Je suis en train de lire un livre sur Inform6 (celui avec Guillaume Tell), et parallèlement, voici pèle-mèle ce que j’ai envie d’essayer d’implémenter en ce moment :
un sujet est une liste d'aspects instanciés
un aspect est un type de variable associé à des phrases de manipulation
# Le sujet "animal" (masculin)
Par nature :
- Il a un certain âge.
- Il a un état de santé.
# Le sujet "humain" (masculin)
C'est :
- un animal
Par nature :
- Il porte un nom.
# Le sujet "Batman" (nom propre, masculin)
C'est :
- un humain
Par nature :
- Le nom de Batman est Bruce.
# Le nombre "âge"
Pour le définir :
- SUJET1 a maintenant <N> an[s].
Pour le déclarer :
- SUJET1 a un certain âge.
Pour l'évoquer :
- l'âge de SUJET1
# Le texte "nom"
Pour le définir :
- SUJET1 s'appelle maintenant <T>.
Pour le déclarer :
- SUJET1 porte un nom.
Pour l'évoquer :
- le nom de SUJET1
# L'état "santé"
Pour le déclarer :
- SUJET1 est vivant.
Pour le définir :
- SUJET1 est maintenant <E>.
Il peut être :
- en bonne santé
- malade
- blessé[e]
- mort[e]
Pour l'évoquer :
- l'état de santé de SUJET1
# Le lien "appartenance"
Pour le définir :
- SUJET2 appartient maintenant à SUJET1.
- SUJET1 possède maintenant SUJET2.
Pour le déclarer :
- SUJET2 appartient à quelqu'un.
- SUJET1 peut posséder des choses.
Pour l'évoquer :
- le[s] propriétaire[s] de SUJET2
- ce que possède SUJET1
# L'état indépendant "météo" [féminin]
Il peut être :
- ensoleillé
- nuageux
- orageux
- il pleut
Pour l'évoquer :
- le temps
Pour évoquer "il pleut" :
- il pleut
# Le texte indépendant "élément de la liste des courses"
Pour en définir un :
- Il faut acheter <T>.
Pour en supprimer un :
- Plus besoin d'acheter <T>.
Pour l'évoquer
- l[a|es] chose[s] à acheter
# L'action "mettre SUJET2 en état d'arrestation"
Si SUJET1 n'est pas un humain, ou si SUJET2 n'est pas un humain :
cette action est terminée ;
c'est tout.
Si SUJET2 possède une arme :
SUJET1 doit désarmer SUJET2 ;
c'est tout.
SUJET1 doit passer les menottes à SUJET2.
SUJET1 doit lire ses droits à SUJET2.
SUJET2 est maintenant en état d'arrestation.
# L'action "faire les courses"
SUJET1 doit aller au supermarché.
Le nombre local "la facture" est maintenant 0.
Pour chaque élément de la liste des courses :
SUJET1 doit prendre la chose à acheter ;
La facture est maintenant ((la facture) + (le prix de la chose à acheter)).
C'est tout.
SUJET1 doit passer à la caisse.
Le porte-monnaie de SUJET1 est maintenant ((le porte-monnaie de SUJET1) - (la facture)).
SUJET doit rentrer à la maison.
# Le lien "parent-enfant"
Pour en définir un :
- SUJET1 est maintenant le père de SUJET2.
- SUJET1 est maintenant la mère de SUJET2.
- SUJET2 est maintenant le fils de SUJET1.
- SUJET2 est maintenant la fille de SUJET1.
Pour l'évoquer :
- l['|es ]enfant[s] de SUJET1
- le[s] parent[s] de SUJET2
# L'action "offrir un cadeau de noël aux enfants de SUJET2"
Pour tous les enfants de SUJET2 :
SUJET1 doit offrir un cadeau à l'enfant ;
c'est tout.
Ca reste pour l’instant un modèle d’exécution très basique, impératif, avec des objets (les « sujets ») qui ne sont finalement que des structures de variables. Je bidouille, je cogite… Si cela vous inspire des commentaires…