prisePossible encore, réfléxion en commentaires

This commit is contained in:
Emma 2023-12-26 18:40:27 +01:00
parent a168976c7c
commit cbebb6719c
3 changed files with 13 additions and 2 deletions

View file

@ -12,7 +12,7 @@ struct PieceDames : public Piece {
virtual ~PieceDames();
// Getter pour la piece (dame ou non)
bool getDame() const;
bool getDame() const override;
// Setter pour la piece (dame ou non)
void setDame(const bool d);

View file

@ -9,6 +9,10 @@ protected:
// Couleur de la pièce ou type d'animal pour Safari par ex
std::string categorie;
// Indices où sont placés les pièces sur le plateau (quand elles le sont) (est-ce que c'est redondant ?)
int x;
int y;
public:
Piece(const std::string categorie); // constructor
virtual ~Piece(); // destructor
@ -16,6 +20,9 @@ public:
Piece(const Piece &); // copy constructor
const Piece &operator=(const Piece &); // copy assignement
// Pour Dames : Fonction virtuelle pour vérifier si une pièce est une dame ou non
virtual bool getDame() const;
// Fonction de déplacement
bool moveTo(const int destX, const int destY);

View file

@ -44,10 +44,14 @@ void Dames::init() {
}
// TODO: A continuer
// Pas très sûre de comment procéder pour cette fonction : il faudrait vérifier les cases en diagnonale des pièces observées mais est-ce qu'il y a besoin que les pièces aient des attributs pour leur position (comme proposé dans Piece) ?
bool Dames::prisePossible(Joueur &joueur) const {
const std::vector<Piece *> &pieces = joueur.getPieces();
int x = 1; int y = 1;
for (int i = 0; i < pieces.size(); i++) {
// if (!pieces[i]->getDame())
if (!pieces[i]->getDame()){
//if(plateau[x][y] == nullptr)
}
}
return false;
}