#pragma once #include #include struct Plateau; class Piece { friend std::ostream &operator<<(std::ostream &, const Piece &); friend Plateau; bool selected; // Change l'état de la sélection void changeSelection(); 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 ?) // ---> Je crois que vu qu'on a un plateau qui est une liste 2D on en a pas // besoin int x; int y; public: Piece(const std::string categorie); // constructor virtual ~Piece(); // destructor // Renvoie la couleur de la pièce pour l'affichage virtual sf::Color getScreenColor() const = 0; // Renvoie si la pièce est selectionnée bool isSelectionnee() const; };