A fond dans le moteur !
Les amateurs de mécanique automobile, reconnaîtront avec ce gif animé en illustration, le moteur Wankel que l'on désigne abusivement comme moteur rotatif. C'est un moteur très intéressant sur le papier mais dont la mise au point a été une véritable plaie et bien des constructeurs s'y sont cassés les dents (Coucou Citroën !!). Mais trêve de métaphore mécanique, cela fait 8 jours depuis mon dernier billet qui ne disait en plus pas grand chose sur mon avancement !
J'ai décidé de simplifier mon moteur en fixant quelques limites raisonnables. En effet, j'avais au départ réfléchi à un format de fichier pour décrire mes dialogues avec des choix avec une zone texte en mode 2 en bas de l'écran. A présent, nous sommes en mode 0, et même si la librairie de RetroPoke me permet d'afficher 37 caractères sur une ligne, la place reste un peu plus limitée. J'avais donc à l'époque considéré que sur une seule ligne de mon fichier, je pouvais indiquer plusieurs identifiants me permettant d'enchaîner plusieurs chaînes de 255 caractères et ensuite enchainer sur la place restante à l'écran les options possibles. Cela impliquait une gestion très fine de l'espace d'affichage et donc une complexité accrue du moteur. J'ai donc fait des choix pour simplifier ça. Une ligne de type T ne permettra d'afficher qu'une seule chaîne de 255 caractères, ce qui représente quand même 7 lignes sur 8 dans ma zone texte. Ensuite les options seront affichées sur la même zone après avoir effacé le texte et les options seront limitées à 8 au maximum, ce qui sera largement suffisant pour faire un scénario très complexe !
Par contre, on garde le fait que chaque option pourra apparaître ou non suivant les conditions rencontrées. Une ligne de type texte à afficher, peut ensuite enchainer vers une autre ligne de type texte à afficher ou sinon vers un ensemble d'options. Il faudra juste que je fasse attention quand j'écrirais le scénario détaillé qu'il n'y ait pas plus de 8 options à afficher en même temps.
Toutes ces simplifications nécessitent d'écrire à nouveau certaines parties du moteur, qui deviennent obsolètes du fait que les spécifications ont changé. J'en profite pour mieux documenter et améliorer le code afin qu'il soit plus simple à maintenir.
Il me reste donc encore du pain sur la planche, mais j'en vois le bout, j'espère que j'aurai enfin mon moteur à la fin du mois. Croisons les doigts !
Commentaires
Enregistrer un commentaire