Package reversi

Class ReversiPlateau

java.lang.Object
reversi.ReversiPlateau

public class ReversiPlateau extends Object
Classe représentant le plateau de jeu Reversi (Othello). Gère l'état du jeu, la logique des coups, les règles et les vérifications.
  • Field Details

    • taille

      public static final int taille
      Taille du plateau (8x8 pour le Reversi standard).
      See Also:
  • Constructor Details

    • ReversiPlateau

      public ReversiPlateau()
      Constructeur du plateau. Crée un plateau 8x8 vide.
  • Method Details

    • initialisation

      public void initialisation()
      Initialise le plateau avec la configuration de départ du Reversi. 4 pions au centre dans la configuration croisée standard.
    • getEtat

      public Couleurcase getEtat(int x, int y)
      Retourne l'état d'une case spécifique du plateau.
      Parameters:
      x - Coordonnée x (ligne) de la case.
      y - Coordonnée y (colonne) de la case.
      Returns:
      La couleur de la case (VIDE, BLANC, ou NOIR).
    • isMoveValid

      public boolean isMoveValid(Move move, Couleurcase couleurcase)
      Vérifie si un coup est valide pour un joueur donné. Un coup est valide s'il respecte les règles du Reversi : 1. La case doit être vide 2. Doit "encadrer" au moins une ligne de pions adverses entre deux pions du joueur
      Parameters:
      move - Le coup à vérifier.
      couleurcase - La couleur du joueur qui veut jouer.
      Returns:
      true si le coup est valide, false sinon.
    • placePion

      public void placePion(Move move, Couleurcase couleurcase)
      Place un pion sur le plateau et retourne tous les pions adverses capturés. Applique les règles du Reversi pour retourner les pions.
      Parameters:
      move - Le coup à jouer.
      couleurcase - La couleur du joueur qui joue.
    • getValidMoves

      public List<Move> getValidMoves(Couleurcase couleurcase)
      Retourne la liste de tous les coups valides pour un joueur donné.
      Parameters:
      couleurcase - La couleur du joueur.
      Returns:
      Une liste de Move représentant tous les coups valides.
    • getScore

      public int getScore(Couleurcase couleurcase)
      Calcule le score (nombre de pions) pour un joueur donné.
      Parameters:
      couleurcase - La couleur du joueur.
      Returns:
      Le nombre de pions de cette couleur sur le plateau.
    • GameOver

      public boolean GameOver()
      Vérifie si la partie est terminée. La partie est terminée quand aucun joueur ne peut jouer de coup valide.
      Returns:
      true si la partie est terminée, false sinon.
    • copy

      public ReversiPlateau copy()
      Crée une copie profonde de ce plateau. Utile pour les simulations et les algorithmes qui explorent des états futurs.
      Returns:
      Une nouvelle instance de ReversiPlateau avec le même état.