Skip to content

Latest commit

 

History

61 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pokémon C++ Project

Présentation

Ce projet est un jeu Pokémon en C++ en mode console, inspiré des jeux classiques. Il permet de :

  • Créer et charger des profils de joueurs
  • Gérer une équipe de Pokémon
  • Affronter des champions d’arène, le Conseil 4 et le Maître Pokémon
  • Gérer les badges, les victoires/défaites et l’évolution de l’équipe

Fonctionnalités principales

  • Gestion de profils : création, chargement, sauvegarde
  • Combats : système de combat tour par tour avec choix d’attaque ou de fuite, gestion des PV, types et dégâts
  • Affichage : menus interactifs, barres de vie, couleurs pour les types, etc.
  • Données persistantes : profils, Pokémon, champions et maîtres stockés dans des fichiers CSV
  • Gestion d’équipe : réorganisation, soins, changement de Pokémon
  • Progression : badges, statistiques de victoire/défaite, liste des entraîneurs vaincus

Structure du projet

project_chang_cazac/
│
├── data/                   # Données CSV (Pokémon, joueurs, leaders, maîtres)
│   ├── pokemon.csv
│   ├── joueur.csv
│   ├── leaders.csv
│   └── maitres.csv
│
├── include/                # Fichiers d’en-tête (.h)
│   ├── pokemon.h
│   ├── player.h
│   ├── trainer.h
│   ├── gym_leader.h
│   ├── pokemon_master.h
│   ├── npc.h
│   ├── fight.h
│   ├── display.h
│   └── data_management.h
│
├── src/                    # Fichiers source (.cpp)
│   ├── main.cpp
│   ├── pokemon.cpp
│   ├── player.cpp
│   ├── trainer.cpp
│   ├── gym_leader.cpp
│   ├── pokemon_master.cpp
│   ├── npc.cpp
│   ├── fight.cpp
│   ├── display.cpp
│   └── data_management.cpp
│
├── document/               # Documentation (diagrammes, etc.)
│   └── pokemon_project_class_diagram.puml
│
└── README.md               # Ce fichier

Prérequis

  • C++17 ou supérieur (utilisation de std::filesystem, unique_ptr, etc.)
  • Un compilateur compatible (g++, clang++, MSVC…)
  • Un terminal compatible ANSI pour l’affichage des couleurs (Windows 10+, Linux, Mac)

Compilation

Sous Windows (avec g++ MinGW) :

g++ -std=c++17 -Iinclude src/*.cpp -o main.exe

Sous Linux/Mac :

g++ -std=c++17 -Iinclude src/*.cpp -o main

Lancement

Placez-vous dans le dossier du projet puis lancez :

./main.exe   # Windows
./main       # Linux/Mac

Utilisation

  • Menu principal : créer ou charger un profil, recharger les données, quitter
  • Menu de jeu : combattre, gérer l’équipe, voir les stats, etc.
  • Combat : choisissez d’attaquer ou de fuir, suivez les messages et barres de vie
  • Gestion d’équipe : réorganisez, soignez ou changez vos Pokémon

Fichiers de données

Les fichiers CSV dans data contiennent :

  • pokemon.csv : liste des Pokémon disponibles
  • joueur.csv : profils des joueurs
  • leaders.csv : champions d’arène
  • maitres.csv : membres du Conseil 4 et Maître Pokémon

⚠️ Ne modifiez pas ces fichiers manuellement sans précaution.

Diagramme de classes

Un diagramme PlantUML est disponible dans pokemon_project_class_diagram.puml.

Auteurs

  • Chang & Cazac

Remarques

  • Le projet est conçu pour être portable : les chemins vers les fichiers de données sont générés dynamiquement à partir du dossier courant.
  • Pour toute question ou bug, ouvrez une issue ou contactez les auteurs.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages