#include "../../includes/Safari/PieceSafari.hpp" PieceSafari::PieceSafari(const enum Categorie cat, const int posX, const int posY, const int pos2X, const int pos2Y) : Piece(to_string(cat), posX, posY), _category(cat), pos2({pos2X, pos2Y}) {} PieceSafari::~PieceSafari() {} const std::string PieceSafari::to_string(const enum Categorie cat) const { switch (cat) { case Barriere: return "Barrière"; case Elephant: return "Éléphant"; case Rhinoceros: return "Rhinocéros"; case Lion: return "Lion"; default: throw std::logic_error("Catégorie inconnue (PieceSafari)."); } } const sf::Color PieceSafari::getScreenColor() const { // Pas utilisé dans le Safari car les pièces sont différentes par leur formes // et leur couleur est donc fixe et défini également dans l'affichage return sf::Color::White; } enum PieceSafari::Categorie PieceSafari::getCategory() const { return _category; } std::string PieceSafari::getName() const { return categorie; } Position PieceSafari::getPos2() const { if (_category != Barriere) { throw std::logic_error("Cette pièce n'a pas de seconde position."); } return pos2; }