diff --git a/includes/Safari/PlateauSafari.hpp b/includes/Safari/PlateauSafari.hpp index ab64878..c3daa77 100644 --- a/includes/Safari/PlateauSafari.hpp +++ b/includes/Safari/PlateauSafari.hpp @@ -26,9 +26,6 @@ struct PlateauSafari : public Plateau { // Place la barrière, renvoie si on a réussi bool placementBarriere(const int x, const int y); - // Renvoie le nombre d'animaux jouable par le joueur courant - int zoneDeplacementOk() const; - private: // Barrières std::vector barrieres; diff --git a/includes/Safari/Safari.hpp b/includes/Safari/Safari.hpp index 17f5f64..81817c8 100644 --- a/includes/Safari/Safari.hpp +++ b/includes/Safari/Safari.hpp @@ -59,6 +59,9 @@ class Safari : private Jeu { // Auxilliaire pour le choix des pièces par le joueur void choixJoueur(const Etape prochaineEtape); + // Renvoie le nombre d'animaux jouable par le joueur courant + int zoneDeplacementOk() const; + public: Safari(Joueur &joueur1, Joueur &joueur2, Joueur *joueur3 = nullptr); // constructor diff --git a/src/Safari/PlateauSafari.cpp b/src/Safari/PlateauSafari.cpp index 88988e7..df4f6f6 100644 --- a/src/Safari/PlateauSafari.cpp +++ b/src/Safari/PlateauSafari.cpp @@ -221,12 +221,3 @@ bool PlateauSafari::placementBarriere(const int x, const int y) { return true; } - -// TODO -int PlateauSafari::zoneDeplacementOk() const { - // Compte le nombre de joueurs qui ont encore des - // zones valides - // Zone valide = animal possède une zone de déplacement de mini 8 cases - - return false; -} diff --git a/src/Safari/Safari.cpp b/src/Safari/Safari.cpp index 9b1d923..5c63cc0 100644 --- a/src/Safari/Safari.cpp +++ b/src/Safari/Safari.cpp @@ -229,7 +229,7 @@ void Safari::event(const int x, const int y) { // Vérifie si le joueur pourra encore jouer // Càd au moins 1 animal possède une zone de déplacement d'au moins 8 cases - if (plateau.zoneDeplacementOk() == 0) { + if (zoneDeplacementOk() == 0) { --joueursEnVie; } @@ -280,3 +280,17 @@ void Safari::changerJoueurCourant() { joueurCourant = &joueur1; } } + +// TODO +int Safari::zoneDeplacementOk() const { + // Compte le nombre d'animaux qui ont encore des zones valides + // Zone valide = animal possède une zone de déplacement de mini 8 cases + + int nbAnimaux = 0; + + for (Piece *animal : joueurCourant->getPieces()) { + // TODO + } + + return 3 /* nbAnimaux */; +}