Class Echiquier

java.lang.Object
  |
  +--Echiquier

public class Echiquier
extends Object

Définition de la modélisation de l'échiquier.


Field Summary
static int taillePlateau
          La taille du plateau est une constante commune à tous les échiquiers.
 
Constructor Summary
Echiquier()
          Le constructeur par défaut.
 
Method Summary
 boolean cheminLibre(Position depart, Position arrivee)
          Indique si le chemin associé à un coup donné est libre.
 boolean coupValide(Position depart, Position arrivee)
          Indique si un coup donné est valide.
 boolean essayeCoup(Position depart, Position arrivee)
          Joue un coup, s'il est valide.
 Piece piece(Position position)
          Donne la pièce située à une position donnée.
 void positionsDeDepart()
          Place les pièces dans leur position de départ.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

taillePlateau

public static final int taillePlateau
La taille du plateau est une constante commune à tous les échiquiers.
Constructor Detail

Echiquier

public Echiquier()
Le constructeur par défaut.
See Also:
positionsDeDepart()
Method Detail

positionsDeDepart

public void positionsDeDepart()
Place les pièces dans leur position de départ.

piece

public Piece piece(Position position)
Donne la pièce située à une position donnée.
Parameters:
position - la position où se situe la pièce.
Returns:
la pièce située sur la case désignée par la position donnée, ou null si la case est vide.

cheminLibre

public boolean cheminLibre(Position depart,
                           Position arrivee)
Indique si le chemin associé à un coup donné est libre.

Le chemin est libre s'il ne correspond pas à une direction simple (diagonale, horizontale ou verticale) - cas des cavaliers - ou s'il n'y a pas de pièce sur les cases séparant celles de départ et d'arrivée.

Parameters:
depart - la position de départ,
arrivee - la position d'arrivée.
Returns:
true s'il n'y a aucune pièce entre les deux positions, false sinon.

coupValide

public boolean coupValide(Position depart,
                          Position arrivee)
Indique si un coup donné est valide.
Parameters:
depart - la position de départ,
arrivee - la position d'arrivée.
Returns:
false si la pièce située sur la position de départ ne peut pas effectuer ce coup (mouvement ne correspondant pas à la pièce, ou chemin associé non libre), true sinon.
See Also:
cheminLibre(Position, Position), Piece.deplacementValide(Echiquier, Position, Position)

essayeCoup

public boolean essayeCoup(Position depart,
                          Position arrivee)
Joue un coup, s'il est valide.
Parameters:
depart - la position de départ,
arrivee - la position d'arrivée.
Returns:
true si le coup est valide et a été joué, false sinon.
See Also:
coupValide(Position, Position)