Je fais un jeu d'aventure pointer-cliquer, et j'essaie actuellement de trouver la meilleure façon de mettre en œuvre un système de commande.
Supposons une interface de style Monkey Island ou Maniac Mansion, avec une palette de verbes et d'objets dans la scène et dans l'inventaire. En cliquant dessus, vous créez une phrase à exécuter.
par exemple, vous pouvez cliquer sur look at
puis sur un arbre pour obtenir "regarder l'arbre" ou sur une pomme, give
puis sur une fille pour obtenir "donner une pomme à une fille".
Il existe trois formes possibles de phrase:
verb
, par exemple "enregistrer"verb noun
, par exemple "ramasser la pomme", "regarder la pieuvre"verb noun noun
, par exemple "donner des cornichons à un chien enragé", "utiliser un pied de biche avec un bocal à cornichons"
Dans différentes situations, je souhaite que l'action à exécuter soit définie par différents objets.
Par exemple, pour le give
verbe, il pourrait y avoir une action par défaut définie qui fait dire au personnage quelque chose comme "Je préférerais m'y accrocher", ou le chien enragé peut définir une action où il mange tout ce que vous essayez de lui donner. .
Si l'interface doit fonctionner comme Maniac Mansion, vous créez la phrase, puis lui dites de s'exécuter (dans Maniac Mansion, soit en cliquant sur la phrase, soit en cliquant à nouveau sur la dernière chose sur laquelle vous avez cliqué).
Si cela doit fonctionner comme Monkey Island, la phrase s'exécute dès qu'elle est terminée, ce qui pose un problème pour les verbes comme ceux use
qui peuvent parfois prendre un nom, et d'autres fois deux.
Alors, comment mettriez-vous en œuvre un système qui gère cela?
look
comme un verbe à nom unique, etc.