Représente l'échiquier du jeu d'échec. More...
#include <echiquier.hpp>
Public Member Functions | |
Echiquier () | |
~Echiquier () | |
void | set_pos (Piece *piece, Square pos) |
Place une pièce à un endroit sur le plateau. | |
std::string | canonical_position () const |
Retourne la position canonique de l'échiquier. | |
void | print_board () const |
Affiche l'échiquier. | |
bool | move (Square from, Square to, Color player) |
Permet d'effectuer un mouvement de pièce. | |
void | setup () |
Place les pions et pièces à leur emplacement de départ. | |
const std::list< Move > & | get_moves () const |
Récupère la liste des coups effectués lors de la partie. | |
Piece * | get_piece (Square pos) const |
Récupère une pièce se trouvant à la position donnée. | |
Piece * | get_piece_from_id (int id, Color player) const |
Récupère une pièce d'un joueur à partir de son id. | |
bool | check_check (Color player, Square pos, Piece *exclude=nullptr) const |
Vérifie si une case est menacée par un joueur. | |
void | set_is_check (bool is_check) |
Définit s'il y a un échec ou non. | |
bool | get_is_check () const |
Vérifie s'il y a un échec. | |
bool | check_move (Square from, Square to, Color player) |
Vérifie si le coup entre from et to est légal pour le joueur player. | |
bool | check_check_mate (Color player) |
Vérifie si le joueur est en situation d'échec et mat. | |
bool | check_stalemate (Color player) |
Vérifie si le joueur est en situation de pat. | |
bool | check_castling (Color player, bool big) const |
Vérifie si un joueur peut roquer ou non. | |
bool | castling (Color player, bool big) |
Effectue le roque d'un joueur. | |
bool | promote (Pion *pion, const std::string &type) |
Permet de promouvoir un pion en une autre pièce. | |
Représente l'échiquier du jeu d'échec.
Definition at line 14 of file echiquier.hpp.
Echiquier::Echiquier | ( | ) |
Definition at line 13 of file echiquier.cpp.
Echiquier::~Echiquier | ( | ) |
Definition at line 269 of file echiquier.cpp.
std::string Echiquier::canonical_position | ( | ) | const |
Retourne la position canonique de l'échiquier.
Definition at line 121 of file echiquier.cpp.
bool Echiquier::castling | ( | Color | player, |
bool | big ) |
Effectue le roque d'un joueur.
player | Joueur voulant roquer |
big | true si c'est un grand roque, false sinon |
Definition at line 52 of file echiquier.cpp.
bool Echiquier::check_castling | ( | Color | player, |
bool | big ) const |
Vérifie si un joueur peut roquer ou non.
player | Joueur voulant roquer |
big | true si c'est un grand roque, false sinon |
Definition at line 72 of file echiquier.cpp.
Vérifie si une case est menacée par un joueur.
player | Joueur pour qui la case peut être une menace |
pos | Position de la case |
exclude | Pièce à exclure dans la détection de la menace |
Definition at line 106 of file echiquier.cpp.
bool Echiquier::check_check_mate | ( | Color | player | ) |
Vérifie si le joueur est en situation d'échec et mat.
player | Joueur |
Definition at line 192 of file echiquier.cpp.
Vérifie si le coup entre from et to est légal pour le joueur player.
from | Case d'origine |
to | Case de destination |
player | Joueur à l'origine du coup |
Definition at line 155 of file echiquier.cpp.
bool Echiquier::check_stalemate | ( | Color | player | ) |
Vérifie si le joueur est en situation de pat.
player | Joueur |
Definition at line 196 of file echiquier.cpp.
|
inline |
Vérifie s'il y a un échec.
Definition at line 79 of file echiquier.hpp.
const std::list< Move > & Echiquier::get_moves | ( | ) | const |
Récupère la liste des coups effectués lors de la partie.
Definition at line 336 of file echiquier.cpp.
Récupère une pièce se trouvant à la position donnée.
pos | Position de la pièce |
Definition at line 253 of file echiquier.cpp.
Récupère une pièce d'un joueur à partir de son id.
id | id de la pièce |
player | Joueur a qui appartient la pièce |
Definition at line 97 of file echiquier.cpp.
Permet d'effectuer un mouvement de pièce.
from | Pièce à déplacer |
to | Destination |
Definition at line 213 of file echiquier.cpp.
void Echiquier::print_board | ( | ) | const |
Affiche l'échiquier.
Definition at line 135 of file echiquier.cpp.
bool Echiquier::promote | ( | Pion * | pion, |
const std::string & | type ) |
Permet de promouvoir un pion en une autre pièce.
pion | Pion à promouvoir |
type | Type de la pièce dont le pion sera promu. ("Q" pour une reine, "R" pour une tour, "B" pour un fou, "K" pour un cavalier) |
Definition at line 275 of file echiquier.cpp.
|
inline |
Définit s'il y a un échec ou non.
is_check | true s'il y a un échec, false sinon |
Definition at line 75 of file echiquier.hpp.
Place une pièce à un endroit sur le plateau.
piece |
Definition at line 260 of file echiquier.cpp.
void Echiquier::setup | ( | ) |
Place les pions et pièces à leur emplacement de départ.
Definition at line 247 of file echiquier.cpp.