diff --git a/fr/iut_fbleau/Avalam/ArenaWindow.java b/fr/iut_fbleau/Avalam/ArenaWindow.java
index b33fb76..2a604ad 100644
--- a/fr/iut_fbleau/Avalam/ArenaWindow.java
+++ b/fr/iut_fbleau/Avalam/ArenaWindow.java
@@ -14,11 +14,14 @@ import java.util.ArrayList;
import java.util.List;
/**
- * Fenêtre pour le mode Arène.
- * Permet de sélectionner trois bots (Idiot, Alpha-Beta, Divin), de configurer la profondeur
- * de recherche pour les bots intelligents, de choisir le nombre de parties, et d'afficher les résultats.
- *
- * @version 1.0
+ * Fenêtre pour le mode Arène (bots vs bots).
+ *
+ * Elle permet :
+ * - de sélectionner deux bots parmi Idiot, Alpha-Beta et Divin ;
+ * - de configurer la profondeur de recherche pour les bots intelligents ;
+ * - de choisir le nombre de parties à jouer ;
+ * - d’afficher, dans un tableau, le résultat de chaque partie (gagnant ou erreur) ;
+ * - de revenir au menu principal ou de quitter entièrement le jeu.
*/
public class ArenaWindow extends JFrame {
diff --git a/fr/iut_fbleau/Avalam/AvalamWindow.java b/fr/iut_fbleau/Avalam/AvalamWindow.java
index fa8a6a1..5594021 100644
--- a/fr/iut_fbleau/Avalam/AvalamWindow.java
+++ b/fr/iut_fbleau/Avalam/AvalamWindow.java
@@ -1,7 +1,6 @@
package fr.iut_fbleau.Avalam;
import fr.iut_fbleau.Bot.AlphaBetaBot;
-// A FAIRE PLUS TARD (PVGOD)
import fr.iut_fbleau.Bot.DivineBot;
import fr.iut_fbleau.Bot.IdiotBot;
import fr.iut_fbleau.GameAPI.AbstractPly;
@@ -14,22 +13,25 @@ import java.awt.*;
/**
* La classe AvalamWindow
*
- * Fenêtre principale (interface graphique) du jeu Avalam.
- * Elle contient :
- * - le plateau (BoardView)
- * - l’affichage du score (ScoreView)
- * - l’affichage du joueur courant (TurnView)
- *
- * Elle pilote un objet AvalamBoard (moteur du jeu).
- * Elle peut fonctionner en mode :
- * - joueur vs joueur
- * - joueur vs bot idiot (aléatoire)
- * - joueur vs bot alpha (cut-off)
+ * Fenêtre principale (interface graphique) du jeu Avalam pour tous les modes
+ * hors Arène :
+ * - joueur vs joueur (PVP)
+ * - joueur vs bot idiot (PVBOT)
+ * - joueur vs bot alpha (PVALPHA)
* - joueur vs bot divin (PVGOD)
*
- * @version 1.0
- * Date :
- * Licence :
+ * Elle contient :
+ * - le plateau (BoardView)
+ * - l’affichage du score (ScoreView)
+ * - l’affichage du joueur courant (TurnView)
+ *
+ * Elle pilote un objet AvalamBoard (moteur du jeu) et,
+ * en fonction du {@link GameMode}, instancie le bot approprié
+ * (idiot, alpha-bêta ou divin).
+ *
+ * En fin de partie, elle ouvre une fenêtre de fin (EndGameDialog)
+ * affichant le gagnant, les scores et proposant les actions :
+ * « Rejouer », « Menu principal » ou « Quitter le jeu ».
*/
public class AvalamWindow extends JFrame {
@@ -62,18 +64,9 @@ public class AvalamWindow extends JFrame {
/** Bot Alpha-Beta (utilisé si mode PVALPHA). */
private final AlphaBetaBot alphaBot;
+ /** Bot Divin (utilisé si mode PVGOD). */
private final DivineBot divineBot;
- // A FAIRE PLUS TARD (PVGOD)
- // /** Bot Divin (utilisé si mode PVGOD). */
- // private final DivineBot divineBot;
-
- /**
- * A FAIRE PLUS TARD (PVGOD)
- * On garde l'attribut à null pour ne pas casser la compilation,
- * mais toute la logique PVGOD est désactivée/commentée.
- */
-
/** Indique si une animation de tour de bot est en cours. */
private boolean botAnimating = false;
@@ -90,7 +83,7 @@ public class AvalamWindow extends JFrame {
* Construit la fenêtre en fonction du mode choisi.
* Pour PVALPHA/PVGOD, la profondeur par défaut est 4.
*
- * @param mode mode de jeu
+ * @param mode mode de jeu (PVP, PVBOT, PVALPHA ou PVGOD)
*/
public AvalamWindow(GameMode mode) {
this(mode, 4);
@@ -98,9 +91,10 @@ public class AvalamWindow extends JFrame {
/**
* Construit la fenêtre en fonction du mode choisi.
- * Si le mode est PVALPHA ou PVGOD, la profondeur est utilisée comme cut-off.
+ * Si le mode est PVALPHA ou PVGOD, la profondeur est utilisée comme cut-off
+ * pour les bots Alpha-Beta et Divin.
*
- * @param mode mode de jeu
+ * @param mode mode de jeu
* @param alphaDepth profondeur de recherche pour Alpha-Beta / Bot Divin
*/
public AvalamWindow(GameMode mode, int alphaDepth) {
@@ -114,7 +108,6 @@ public class AvalamWindow extends JFrame {
int depth = this.searchDepth;
this.alphaBot = (mode == GameMode.PVALPHA) ? new AlphaBetaBot(botPlayer, depth) : null;
- // A FAIRE PLUS TARD (PVGOD)
this.divineBot = (mode == GameMode.PVGOD) ? new DivineBot(botPlayer, depth) : null;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
@@ -226,12 +219,8 @@ public class AvalamWindow extends JFrame {
if (mode == GameMode.PVBOT && idiotBot == null) return;
if (mode == GameMode.PVALPHA && alphaBot == null) return;
- // A FAIRE PLUS TARD (PVGOD)
if (mode == GameMode.PVGOD && divineBot == null) return;
- // A FAIRE PLUS TARD (PVGOD)
- // Pour l'instant, si PVGOD est sélectionné, on ne joue pas de coup bot.
-
botAnimating = true;
// Désactiver les interactions du joueur pendant le tour du bot.
diff --git a/fr/iut_fbleau/Avalam/EndGameDialog.java b/fr/iut_fbleau/Avalam/EndGameDialog.java
index 55cbd87..dcbf32a 100644
--- a/fr/iut_fbleau/Avalam/EndGameDialog.java
+++ b/fr/iut_fbleau/Avalam/EndGameDialog.java
@@ -7,25 +7,32 @@ import java.awt.*;
/**
* Fenêtre de fin de partie.
- * Affiche le gagnant, le score et propose plusieurs actions :
- * - Rejouer la même configuration
- * - Retour au menu principal
- * - Quitter le jeu
+ *
+ * Elle est ouverte par {@link AvalamWindow} lorsque le moteur signale
+ * que la partie est terminée. Elle affiche :
+ * - le résultat (gagnant ou égalité) à partir du {@link Result} ;
+ * - le score détaillé (tours contrôlées par Jaune et Rouge) ;
+ * - le mode de jeu courant (PVP, PVBOT, PVALPHA, PVGOD, avec profondeur pour les bots intelligents).
+ *
+ * Elle propose également trois actions sous forme de boutons :
+ * - « Rejouer » : relancer une partie avec la même configuration ;
+ * - « Menu principal » : retourner au menu de sélection de mode ;
+ * - « Quitter » : fermer complètement l’application.
*/
public class EndGameDialog extends JDialog {
/**
* Construit la fenêtre de fin de partie.
*
- * @param parent fenêtre principale (AvalamWindow)
- * @param result résultat de la partie (WIN / LOSS / DRAW du point de vue de PLAYER1 / Jaune)
- * @param scoreJaune score du joueur jaune
- * @param scoreRouge score du joueur rouge
- * @param mode mode de jeu courant (pour l'information / le rejouer)
- * @param depth profondeur utilisée (pour les modes avec bot intelligent)
- * @param onReplay action à exécuter pour rejouer
- * @param onMenu action à exécuter pour revenir au menu
- * @param onQuit action à exécuter pour quitter l'application
+ * @param parent fenêtre principale (généralement une {@link AvalamWindow})
+ * @param result résultat de la partie (WIN / LOSS / DRAW du point de vue de PLAYER1 / Jaune)
+ * @param scoreJaune score du joueur jaune (nombre de tours contrôlées)
+ * @param scoreRouge score du joueur rouge (nombre de tours contrôlées)
+ * @param mode mode de jeu courant (pour l’information et le « Rejouer »)
+ * @param depth profondeur utilisée (pour les modes avec bot intelligent)
+ * @param onReplay action à exécuter lorsque l’utilisateur clique sur « Rejouer »
+ * @param onMenu action à exécuter lorsque l’utilisateur clique sur « Menu principal »
+ * @param onQuit action à exécuter lorsque l’utilisateur clique sur « Quitter »
*/
public EndGameDialog(
JFrame parent,
diff --git a/fr/iut_fbleau/Avalam/Main.java b/fr/iut_fbleau/Avalam/Main.java
index 598e445..74457d6 100644
--- a/fr/iut_fbleau/Avalam/Main.java
+++ b/fr/iut_fbleau/Avalam/Main.java
@@ -22,7 +22,7 @@ public class Main {
"joueur vs joueur",
"joueur vs botidiot",
"joueur vs bot alpha",
- "joueur vs bot divin (NON IMPLEMENTE)",
+ "joueur vs bot divin",
"Arène"
};