L'objectif est de créer un petit jeu 2D où le joueur doit collecter tous les objets présents sur la carte avant de s'échapper par une sortie
Objectifs principaux :
- Apprendre les bases de la programmation graphique avec MiniLibX & Gestion des événements
- Implémenter un parsing
- Comprendre la gestion de sprites et textures
git clone https://github.com/mello-sdn/So_long.git
cd so_longmake# Avec une carte par défaut
./so_long maps/map.ber
- W ou ↑ : Déplacer vers le haut
- A ou ← : Déplacer vers la gauche
- S ou ↓ : Déplacer vers le bas
- D ou → : Déplacer vers la droite
- ESC : Quitter le jeu
- Collecter tous les collectibles (Doigt de Sukuna) présents sur la carte
- Atteindre la sortie (E) pour terminer le niveau
1 = Mur
0 = Espace vide
C = Collectible
E = Sortie
P = Position de départ du joueur
- La carte doit être rectangulaire
- La carte doit être entourée de murs (1)
- La carte doit contenir 1 sortie (E), au moins 1 collectible (C) et 1 position de départ (P)
- Il doit exister un chemin valide vers tous les collectibles et la sortie
- Extension du fichier :
.ber
- MiniLibX Documentation
- So_long Tester
- Sprite Resources ou s'aider de l'ia pour créer des assets personnalisés
- Bien faire attention si un collectible n'est pas accessible après le passage de Floodfill retourner une erreur
- Utilisez valgrind pour détecter les leaks :
valgrind --leak-check=full ./so_long maps/map.ber - Faire attention à la fermeture des FD :
valgrind --track-fds=yes./so_long maps/map.ber - Testez avec des cartes invalides pour vérifier vos erreurs


