Ylies Chementel
Yalta - Jeu d'Échecs à 3 Joueurs

Technologies utilisées
Détails du projet
Yalta est une variante innovante du jeu d'échecs conçue pour trois joueurs, implémentée en C++ avec SFML. Le jeu se déroule sur un plateau hexagonal de 96 cases, où chaque joueur dispose de 16 pièces (8 pions, 2 tours, 2 fous, 2 cavaliers, 1 roi et 1 reine).
Le projet intègre toutes les règles classiques des échecs, y compris les mouvements spéciaux comme le roque (permettant de déplacer simultanément le roi et la tour) et la prise en passant pour les pions, adaptés pour un jeu à trois joueurs avec une géométrie de plateau unique. L'interface graphique permet une interaction fluide avec le jeu, affichant clairement les mouvements possibles et les situations d'échec.
Technologies et Architecture
Le projet a été développé en C++ avec la bibliothèque SFML pour l'interface graphique et les effets sonores. L'architecture suit strictement le pattern MVC (Modèle-Vue-Contrôleur) :
- Modèle : Gère la logique du jeu avec des classes comme Plateau, Joueur, et les différentes pièces (Roi, Reine, Tour, etc.) qui héritent d'une classe Piece abstraite.
- Vue : S'occupe du rendu graphique du plateau hexagonal et des pièces, avec un système de losanges pour représenter les cases.
- Contrôleur : Gère les interactions utilisateur, le drag and drop des pièces, et coordonne les actions entre la vue et le modèle.
Les algorithmes de validation des mouvements et de détection d'échec ont été implémentés en utilisant des structures de données optimisées. Le système inclut également la gestion de la promotion des pions, la détection d'échec et mat, ainsi que des effets sonores pour les déplacements et les captures.