diff --git a/includes/Butin/Butin.hpp b/includes/Butin/Butin.hpp index 749a832..067e980 100644 --- a/includes/Butin/Butin.hpp +++ b/includes/Butin/Butin.hpp @@ -1,5 +1,6 @@ #pragma once +#include "../Joueur.hpp" #include "PlateauButin.hpp" class Butin { diff --git a/includes/Butin/PlateauButin.hpp b/includes/Butin/PlateauButin.hpp index d4419eb..e9d1ac4 100644 --- a/includes/Butin/PlateauButin.hpp +++ b/includes/Butin/PlateauButin.hpp @@ -8,5 +8,5 @@ public: virtual ~PlateauButin(); // Initialise le plateau du Butin - void initialiserPlateau(Joueur &j1, Joueur &j2) override; + void initialiserPlateau() override; }; diff --git a/includes/Dames/PlateauDames.hpp b/includes/Dames/PlateauDames.hpp index a0195ed..35a889e 100644 --- a/includes/Dames/PlateauDames.hpp +++ b/includes/Dames/PlateauDames.hpp @@ -1,12 +1,15 @@ #pragma once +#include "../Joueur.hpp" #include "../Plateau.hpp" class PlateauDames : public Plateau { + Joueur *j1, *j2; + public: - PlateauDames(); + PlateauDames(Joueur &joueur1, Joueur &joueur2); virtual ~PlateauDames(); // Initialise le plateau de Dames - void initialiserPlateau(Joueur &j1, Joueur &j2) override; + void initialiserPlateau() override; }; diff --git a/includes/Plateau.hpp b/includes/Plateau.hpp index 9c1d735..afa142f 100644 --- a/includes/Plateau.hpp +++ b/includes/Plateau.hpp @@ -1,6 +1,6 @@ #pragma once -#include "../includes/Joueur.hpp" +#include "../includes/Piece.hpp" class Plateau { friend std::ostream &operator<<(std::ostream &, const Plateau &); @@ -19,7 +19,7 @@ public: // Fonction pour initialiser le plateau (selon le jeu) // Seulement deux joueurs pour le jeu de dame uniquement, je suis pas sûre de // comment initialiser la fonction autrement - virtual void initialiserPlateau(Joueur &j1, Joueur &j2) = 0; + virtual void initialiserPlateau() = 0; // Fonction pour afficher le plateau (selon le jeu) void afficherPlateau(const bool debug = false) const; diff --git a/includes/Safari/PlateauSafari.hpp b/includes/Safari/PlateauSafari.hpp index 44ca372..767defe 100644 --- a/includes/Safari/PlateauSafari.hpp +++ b/includes/Safari/PlateauSafari.hpp @@ -8,5 +8,5 @@ public: virtual ~PlateauSafari(); // Initialise le plateau du Safari - void initialiserPlateau(Joueur &j1, Joueur &j2) override; + void initialiserPlateau() override; }; diff --git a/includes/utils.hpp b/includes/utils.hpp deleted file mode 100644 index 39b42f0..0000000 --- a/includes/utils.hpp +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -template -void ignore(T &&) {} diff --git a/src/Butin/Butin.cpp b/src/Butin/Butin.cpp index 13ce5a3..d1752c7 100644 --- a/src/Butin/Butin.cpp +++ b/src/Butin/Butin.cpp @@ -21,4 +21,4 @@ const Butin &Butin::operator=(const Butin &src) { return *this; } -void Butin::init() { plateau.initialiserPlateau(joueur1, joueur2); } +void Butin::init() { plateau.initialiserPlateau(); } diff --git a/src/Butin/PlateauButin.cpp b/src/Butin/PlateauButin.cpp index 4cac33f..4b6e9af 100644 --- a/src/Butin/PlateauButin.cpp +++ b/src/Butin/PlateauButin.cpp @@ -1,6 +1,5 @@ #include "../../includes/Butin/PlateauButin.hpp" #include "../../includes/Butin/PieceButin.hpp" -#include "../../includes/utils.hpp" #include #include @@ -9,9 +8,7 @@ PlateauButin::PlateauButin() : Plateau(8) {} PlateauButin::~PlateauButin() {} -void PlateauButin::initialiserPlateau(Joueur &j1, Joueur &j2) { - ignore(j1); - ignore(j2); +void PlateauButin::initialiserPlateau() { // Vecteur de toutes les pièeces du jeu std::vector pieces; diff --git a/src/Dames/Dames.cpp b/src/Dames/Dames.cpp index 4fdd6df..ca2de26 100644 --- a/src/Dames/Dames.cpp +++ b/src/Dames/Dames.cpp @@ -1,7 +1,8 @@ #include "../../includes/Dames/Dames.hpp" Dames::Dames(Joueur &j1, Joueur &j2) - : plateau(PlateauDames()), joueur1(j1), joueur2(j2), joueurCourant(j1) { + : plateau(PlateauDames(j1, j2)), joueur1(j1), joueur2(j2), + joueurCourant(j1) { std::srand(static_cast(time(0))); int r = std::rand() % 2; if (r == 0) { @@ -19,8 +20,8 @@ Dames::Dames(Joueur &j1, Joueur &j2) Dames::~Dames() {} Dames::Dames(const Dames &src) - : plateau(PlateauDames()), joueur1{src.joueur1}, joueur2{src.joueur2}, - joueurCourant{src.joueurCourant} { + : plateau(PlateauDames(src.joueur1, src.joueur2)), joueur1{src.joueur1}, + joueur2{src.joueur2}, joueurCourant{src.joueurCourant} { init(); } @@ -32,7 +33,7 @@ const Dames &Dames::operator=(const Dames &src) { return *this; } -void Dames::init() { plateau.initialiserPlateau(joueur1, joueur2); } +void Dames::init() { plateau.initialiserPlateau(); } // TODO: A continuer bool Dames::prisePossible(const Piece *piece) const { diff --git a/src/Dames/PlateauDames.cpp b/src/Dames/PlateauDames.cpp index 78d10cd..1f7f0df 100644 --- a/src/Dames/PlateauDames.cpp +++ b/src/Dames/PlateauDames.cpp @@ -1,16 +1,17 @@ #include "../../includes/Dames/PlateauDames.hpp" #include "../../includes/Dames/PieceDames.hpp" -PlateauDames::PlateauDames() : Plateau(10) {} +PlateauDames::PlateauDames(Joueur &joueur1, Joueur &joueur2) + : Plateau(10), j1(&joueur1), j2(&joueur2) {} PlateauDames::~PlateauDames() {} -void PlateauDames::initialiserPlateau(Joueur &j1, Joueur &j2) { +void PlateauDames::initialiserPlateau() { for (int i = 0; i < 4; i++) { for (int j = 0; j < 10; j++) { if ((i % 2 == 0 && j % 2 == 1) || (i % 2 == 1 && j % 2 == 0)) { plateau[i][j] = new PieceDames(PieceDames::Noire); - j1.ajoutPiece(plateau[i][j]); + j1->ajoutPiece(plateau[i][j]); } } } @@ -19,7 +20,7 @@ void PlateauDames::initialiserPlateau(Joueur &j1, Joueur &j2) { for (int j = 0; j < 10; j++) { if ((i % 2 == 0 && j % 2 == 1) || (i % 2 == 1 && j % 2 == 0)) { plateau[i][j] = new PieceDames(PieceDames::Blanche); - j2.ajoutPiece(plateau[i][j]); + j2->ajoutPiece(plateau[i][j]); } } } diff --git a/src/Safari/PlateauSafari.cpp b/src/Safari/PlateauSafari.cpp index ef69e29..9285d20 100644 --- a/src/Safari/PlateauSafari.cpp +++ b/src/Safari/PlateauSafari.cpp @@ -1,12 +1,9 @@ #include "../../includes/Safari/PlateauSafari.hpp" -#include "../../includes/utils.hpp" PlateauSafari::PlateauSafari() : Plateau(8) {} PlateauSafari::~PlateauSafari() {} -void PlateauSafari::initialiserPlateau(Joueur &j1, Joueur &j2) { - ignore(j1); - ignore(j2); +void PlateauSafari::initialiserPlateau() { // TODO } diff --git a/src/Safari/Safari.cpp b/src/Safari/Safari.cpp index fe9f6c8..533fac6 100644 --- a/src/Safari/Safari.cpp +++ b/src/Safari/Safari.cpp @@ -28,7 +28,7 @@ const Safari &Safari::operator=(const Safari &src) { void Safari::init() { // On peut donner que 2 joueurs ? - plateau.initialiserPlateau(joueur1, joueur2); + plateau.initialiserPlateau(); } void Safari::choixAnimal(const PieceSafari::Categorie animal) const { diff --git a/src/main.cpp b/src/main.cpp index 50d8f8e..cd506d6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,8 +1,11 @@ #include "../includes/Dames/PlateauDames.hpp" #include "../includes/Ecran.hpp" +#include "../includes/Joueur.hpp" int main() { - PlateauDames p; + Joueur j1; + Joueur j2; + PlateauDames p(j1, j2); Ecran e; // e.afficher(std::bind(&Plateau::afficherPlateau, &p, true));