Les scènes permettent de découper le temps en plusieurs séquences (qui peuvent ou non se dérouler en même temps). Mais la chose importante, c’est qu’elles commencent et se terminent automatiquement selon les conditions données. (Ces conditions peuvent être n’importe quoi, comme un personnage qui est dans un endroit, un objet qui est sur un support, ou des choses bien plus compliquées). Mais tu ne peux pas ordonner à une scène de commencer ou de se terminer (dans le genre « maintenant Milieu commence » dans une règle : c’est impossible).
Et tout ça est indépendant des endroits, ce sont deux concepts totalement différents. Et il se peut tout à fait que les scènes ne conviennent pas à ton jeu, et que tu préfères gérer le temps qui passe avec une simple variable que tu incrémentes quand tu en as besoin, par exemple.
Dans ton exemple, tu as bien créé des scènes, mais tu n’as pas dit sous quelles conditions elles commençaient ou se terminaient, donc elle ne font rien pour le moment.
La question que tu dois te poser, c’est comment est-ce que tu veux « donner l’illusion que la voiture avance » ? Quelle est le rôle de cette section du jeu, qu’est-ce que le joueur va faire, comment le temps va se dérouler, etc. Est-ce qu’il y a un autre passager et le joueur peut simplement regarder et discuter, ou bien est-ce qu’il peut contrôler la Jeep en donnant des directions ?
Disons que c’est c’est un genre de cinématique où le jouer ne peut que regarder et discuter, et qu’on ne verra pas la Jeep dans le reste du jeu. Dans ce cas, tu peux modéliser la Jeep comme un endroit directement, et simplement faire varier sa description et ajouter des messages à chaque tour pour donner le temps qui passe. (Un véhicule, c’est plutôt pour un contenant dans lequel le joueur peut entrer et qu’il peut contrôler quand il est dedans.)
[code]La Jeep is a room. « [one of]Le paysage est comme d’habitude[or]Vous voyer une antilope traverser la route plus loin[or]Un nuage masque le soleil un instant[at random]. ».
[On fait varier la description, mais ce n’est pas forcément une bonne idée : le joueur ne va vraisemblablement la lire qu’une seule fois, quand il vient d’arriver dans la Jeep. Et ça peu être confus parce qu’un même endroit aura toujours une description différente. Tu pourrais mettre une description générique, et te contenter des messages aléatoires plus bas.]
[On va utiliser une variable, mais on pourrait aussi utiliser une scène qui se termine dans 3 tours si on veut, et un dire avec un « [one of] ».]
Progression-voyage is initially 0.
[On simule la progression, et on montre quelques messages pour faire semblant qu’on avance.]
Every turn when la location is la Jeep:
if progression-voyage is 0:
dire « Votre voyage commence. »;
else if progression-voyage is 1:
dire « Une secouse se fait sentir. »;
else if progression-voyage is 2:
dire « Vous arrivez à destination[_]: la villa de votre oncle. »;
now le player is in la villa;
increment progression-voyage;
La villa est un endroit.
[Et il resterait à implanter l’autre passager, d’éventuels objets dans la Jeep, le décor, et aussi donner un message particulier si le joueur essaie de sortir, etc.][/code]
Ce n’est qu’un exemple : tout dépend de ce que tu souhaites faire exactement, et de tes préférences en matière de structure et de code. Le plus important, c’est que le joueur ait la sensation qu’il avance ; il n’est pas au courant de la façon dont ton jeu est codé, si tu utilises des scènes ou pas, et ainsi de suite. Si ça t’arrange, tu peux effectivement faire plusieurs endroits plutôt qu’utiliser la variable « progression-voyage » :
Every turn when la location is not la villa:
if la location is la route1:
dire "Votre voyage commence.";
now la location is la route2;
else if la location is la route2:
dire "Une secouse se fait sentir.";
now la location is la route3;
else if la location is la route3:
dire "Vous arrivez à destination: la villa de votre oncle.";
now the player is in la villa;
(Mais ça devient un peu lourd à écrire s’il y a beaucoup d’étapes.)
Les scènes, c’est plutôt utile quand il y a plusieurs choses complexes qui arrivent dans ton jeu, mais que tu veux que quelque chose se passe obligatoirement dès que certaines conditions sont réunies.
Enfin, une petite remarque qui n’a rien à voir avec la question : quand tu crées des objets, il faut mettre le déterminant : ça permet à Inform de comprendre qu’il ne s’agit pas d’un nom propre, et d’assigner le bon genre grammatical. Il faut donc écrire « La Jeep is a vehicle in route ». Sinon ça affichera des choses comme « Vous pouvez voir Jeep ici » (sans le déterminant).
Aussi, il faut dire « in route » et pas « on route », parce que « route » est un endroit/room, et qu’on est dans un endroit. (Ça a plus de sens en français d’être sur une route, mais Inform ne comprend pas le français ; pour lui, la route est un endroit comme un autre.)