Académiques · 2023
Sokoban
Un jeu de réflexion en terminal écrit en C avec déplacement de caisses, niveaux dans des fichiers et interface ncurses.
Problème
Implémenter les règles de Sokoban et une interface interactive en terminal avec le langage C.
Réalisation
- Affichage de la carte, des menus et des objets colorés avec ncurses.
- Déplacement du joueur, collisions avec les murs et poussée des caisses.
- Chargement des niveaux depuis des fichiers texte et vérification des caisses placées sur les cibles.
- Séparation de la carte, des objets du jeu, du contrôleur et de l’affichage.
- Compilation avec Makefile et génération de la documentation Doxygen.
Décision
Les cartes textuelles séparent les niveaux de la logique du jeu, tandis que ncurses gère l’affichage et les entrées directement dans le terminal.
Gérer les collisions et la poussée des caisses, actualiser correctement les cibles et libérer la mémoire à la fin du niveau.
Résultat
Un projet pédagogique en équipe avec code source, niveaux, règles et commandes de compilation.