← Retour au portfolio

SAE 2.01 : Pokemon TCG

Projet scolaire · Développement JavaFX

Contexte

Développement d'un jeu de plateau Pokémon Trading Card Game (TCG) en Java avec JavaFX. Travail en équipe de 2 pour approfondir la Programmation Orientée Objet et les principes SOLID.

Le Pokémon TCG est un jeu de cartes stratégique où deux joueurs s'affrontent en utilisant des decks de cartes Pokémon. Chaque carte représente un Pokémon avec ses attaques, points de vie et capacités spéciales. Les joueurs doivent mettre K.O. les Pokémon adverses pour remporter la partie.

Nous avons implémenté les mécaniques officielles du TCG : pose de cartes Énergie, évolution des Pokémon, attaques avec coûts en énergie, effets de statut, et gestion des points de prix.

Objectifs

  • Mécaniques du TCG : pose de Pokémon, évolution (Base → Niveau 1 → Niveau 2), attaques avec coûts en Énergie
  • Système de combat : calcul des dégâts, types (Feu, Eau, Plante...), faiblesses et résistances
  • Interface JavaFX : plateau de jeu, main de cartes, decks, défausse, zone active
  • Architecture POO : classes pour Carte, Pokémon, Énergie, Attaque, Joueur, Partie
  • Stockage de données : gestion en mémoire via classes Java (pas de base de données)

Technologies

Architecture & Réalisations Techniques

  • Hiérarchie de classes :
    • Carte (abstraite) → CartePokemon, CarteEnergie, CarteDresseur
    • Pokemon avec gestion des évolutions (référence à l'évolution suivante)
    • Attaque avec coûts en Énergie et effets
    • Joueur : deck, main, zone active, banc, défausse
  • Design Patterns : Observer (changements d'état), Factory (création de cartes), State (phases de tour)
  • Stockage : toutes les données en mémoire (structures Java : ArrayList, HashMap)
  • Interface JavaFX : drag & drop pour jouer les cartes, animations de combat

Galerie & Rendu

Capture d'écran de l'application en cours d'ajout