So_long est un projet de l'école 42 visant à développer un petit jeu en 2D utilisant la minilibX. Le but est de naviguer dans un labyrinthe tout en collectant des objets avant d'atteindre la sortie. Ce projet est un exercice d'optimisation, de gestion des entrées utilisateur et de manipulation de textures.
✅ Bibliothèque graphique : minilibX
- L'objectif est de guider le personnage à travers une carte tout en récoltant tous les objets avant d'atteindre la sortie.
- L'utilisateur peut se déplacer dans quatre directions : haut, bas, gauche et droite.
- Un compteur d'affichage indique le nombre de mouvements effectués.
| 🏷️ Touche | 📜 Action |
|---|---|
W / ↑ |
🔼 Déplacer vers le haut |
S / ↓ |
🔽 Déplacer vers le bas |
A / ← |
|
D / → |
|
ESC / q |
❌ Quitter le jeu |
La carte est définie par un fichier .ber, contenant des caractères symbolisant les différents éléments du jeu :
| 🏷️ Caractère | 📜 Signification |
|---|---|
1 |
🧱 Mur |
0 |
🏞️ Espace vide |
P |
🎮 Position initiale du joueur |
C |
💎 Collectible |
E |
🚪 Sortie |
Exemple de carte :
11111
1P0C1
1C0E1
11111
- Un environnement Linux
- La bibliothèque minilibX
make
makeCela génère l'exécutable so_long.
./so_long maps/map.ber📌 Exemple d'exécution :
./so_long maps/level1.berCela charge la carte level1.ber et lance le jeu.
| 📌 Fonctionnalité | ✅ Implémentation |
|---|---|
| Lecture de la carte | 📜 Gestion des fichiers .ber |
| Affichage graphique | 🎨 Utilisation de minilibX |
| Déplacements du joueur | 🏃 Gestion des entrées clavier |
| Compteur de mouvements | 🔢 Affichage des déplacements |
| Gestion des erreurs | |
| Optimisation mémoire | 💾 Gestion propre des allocations |
Projet réalisé dans le cadre de l'école 42 par Achille BOSC.
📢 Cet article a été rédigé par une intelligence artificielle. Le code lui, n'a d'aucune sorte été généré ou modifié par l'IA. 100% du code lié a ce Repertoire GitHub a été fais par les autheurs mentionnés
🔗 ChatGPT