Avant de me lancer sur les niveaux du jeu, je me suis dit que j’allais commencer à faire le menu principal. Je me suis rendu compte que c’était loin d’être simple, et me suis donc contenté dans un premier temps de faire une version minimaliste.
Pour comprendre comment faire un menu un peu complexe avec plusieurs écrans, j’ai cherché un tutorial qui ce concentre sur la logique et pas uniquement sur l’aspect visuel / mise en page. J’ai fini par trouver cette playlist. J’ai fait quelque chose de beaucoup plus simple, mais ça reste une ressource pour ce que je pourrais encore faire par la suite.
Localisation
Je voulais pouvoir ajouter la possibilité de traduire le jeu pour pouvoir éventuellement le diffuser. J’ai vu en faisant quelques recherches que Godot inclut in système de localisation et d’internationalisation qui permet de faire ça de manière assez simple avec des fichiers csv, c’est donc ce que j’ai mis en place pour le menu.
Pour les dialogues dans le jeu, j’avais déjà prévu au moment de créer le système de dialogue un autre système avec un fichier json par langue. C’est moins pratique au moment de faire la traduction, mais vu la manière dont les dialogues sont structurés, je vais laisser les deux systèmes coexister pour le moment.
Il est donc possible de changer la langue (fr ou en) avec le menu « Options », mais pour le moment ça ne change que la langue du menu, pas encore celle des dialogues.
Image d’arrière-plan
Pour l’arrière-plan du menu, j’ai eu l’idée de faire une image « fixe mais en mouvement ». J’ai donc dessiné, à la main et au feutre sur du papier, trois fois l’image de l’écran titre, puis je les ai scannées pour faire une petite boucle d’animation.
Pour intégrer l’animation dans Godot, j’ai utilisé le node existant « Animated Texture ». Par la suite j’ai également créé d’autres animations en trois images pour la séquence d’introduction du jeu (et j’en ferai sans doute d’autres pour des séquences de transition).
Pour le moment, je ne me suis pas encore penché sur les questions de sauvegarde et de chargement de partie, ce sera pour plus tard, je préfère à présent utiliser le temps à ma disposition pour me concentrer sur le jeu proprement dit.