Skip to content
Snippets Groups Projects
FERGUI SAMY's avatar
FERGUI SAMY authored
f40f5154

Jeu du snake :

Le but derrière ce projet est d’implémenter un petit jeu bien connu : le snake Le principe de ce jeu repose sur le contrôle d’une ligne semblable à un serpent en définissant un système de scoring : la taille de serpent grandit à chaque fois qu’on mange une pastille de nourriture, on reste en vie tant qu’on brise pas les lois de jeu ( ne pas heurter d’obstacles par exemple).

Conception :

Compréhension et analyse du code qu’on devait compléter. Structuration des idées. Distribution des tâches et collaboration (Mise à jour de la direction, Mise à jour des structures des données, détection des conditions de fin de jeu..) On précise que quasiment toutes les tâches ont été faites en binôme.

Implementation : Tâches :
Mise à jour de la direction. Mise à jour des structures des données. Ajout d’un obstacle au tableau statique des obstacles à chaque incrémentation du score (obstaclePosX, obstaclePosY). Ajout d’une partie de corps dans le tableau des coordonnées X et Y avec respect des décalages effectués dû au mouvement du serpent Ajout des conditions de fin de jeu (à voir dans le cahier de charge). Implémentation de fonctionnalités supplémentaires (Rainbow Snake, affichage graphique, système de niveau prédéfinies). Collaboration : On juge que c’était la partie primordiale du projet, ça nous a facilité la tâche et pour rendre la collaboration plus facile et efficace, on a fait recours au git pour la gestion de versionnement et gitlab pour le partage de code.

Fonctionnalité ajoutés :

Afficher le score graphiquement sur l’écran de jeu en fin de partie. Rainbow Snake : chaque partie du serpent possède une couleur différente. Affichage d’une fenêtre pop up à la fin de jeu pour afficher un message au joueur selon le score obtenu. Système de niveau prédéfini selon le score obtenu. Ajout d’un obstacle à chaque fois que le serpent mange une pastille de nourriture. La vitesse du serpent augmente au fur et à mesure que le score obtenu augmente

Difficultés rencontrées :

Faire bouger le corps du serpent. Gestion d’adresse tableau et registres sur MIPS ( Retrouver un bug peut prendre parfois une éternité ! ).

PS : On n’a pas trop galéré pour terminer le Snake, donc on a rapidement surmonté les problèmes auxquels on a été confronté.