This commit is contained in:
Mylloon 2024-01-08 00:22:20 +01:00
parent 965e22a7b6
commit e1cd39438f
Signed by: Anri
GPG key ID: A82D63DFF8D1317F

View file

@ -285,18 +285,20 @@ 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
// Nombre d'animaux dans une zone libre valide
int nbAnimaux = 0;
for (Piece *animal : joueurCourant->getPieces()) {
for (const Piece *animal : joueurCourant->getPieces()) {
Position position = animal->getPos();
// Nombre de cases sur lesquels l'animal peut se rendre
int casesDisponibles = 0;
bool skip = false;
bool cherchesCasesDispo = true;
const int taille = plateau.getTaille();
for (int i = 0; i < taille && !skip; ++i) {
for (int j = 0; j < taille && !skip; ++j) {
// Déplacement sur les pièces vide uniquement
for (int i = 0; i < taille && cherchesCasesDispo; ++i) {
for (int j = 0; j < taille && cherchesCasesDispo; ++j) {
// Regarde les cases vide uniquement
if (plateau.getPiece(i, j) != nullptr) {
continue;
}
@ -307,10 +309,10 @@ int Safari::zoneDeplacementOk() const {
++casesDisponibles;
}
// Si 8 cases sont dispo on peut arrêter la recherche
// Si 8 cases sont dispo on peut arrêter la recherche pour cette animal
if (casesDisponibles >= 8) {
++nbAnimaux;
skip = true;
cherchesCasesDispo = false;
}
}
}