01 // LE PROJET EN BREF
MY DEFENDER
CUn tower defense complet : placer des tours, gérer son or, survivre aux vagues.
Un genre de jeu bien plus riche qu'il n'y paraît : des ennemis suivent un chemin, le joueur construit des tours pour les arrêter, chaque tour coûte de l'or, et les vagues se durcissent. Il faut donc gérer simultanément beaucoup d'objets qui bougent, se ciblent et disparaissent — un vrai exercice d'architecture, pas seulement d'affichage.
Tower defense CSFML : cinq types de constructions (hôtel de ville, mur, canon, bombe, trampoline) posées à la souris dans une zone isométrique, ennemis en ligne droite vers l'hôtel de ville avec sprite orienté sur huit directions, ciblage par distance euclidienne et cadence, économie d'or, réparation payante, vagues, menus et scoreboard.
03 // APPORTS CLÉS
- Le joueur pose lui-même son hôtel de ville, qui devient le point de convergence de toutes les trajectoires ennemies
- Sprites d'ennemis orientés sur huit directions à partir de l'angle atan2 vers la cible
- Graine aléatoire tirée de l'horloge CSFML, time() étant interdit par le sujet
- Mode --hitbox pour visualiser les zones de collision pendant le développement
- Premier projet où l'architecture pèse plus que l'algorithmique, et où l'absence d'objets en C motive concrètement le passage à la POO
AU-DELÀ DU SUJET
- Pièges posables en plus des tours (management_trap.c) et bombes à zone d'effet (management_bombe.c)
- Meilleurs scores écrits sur disque (write_file.c, is_highscore.c) et écran de classement
- Écran « comment jouer » intégré (management_how_to_play.c)
- Affichage de la portée d'une tour avant placement
04 // ARBORESCENCE DU CODE
LECTURE DES SOURCES…