j'avais oublié de faire la javadoc
This commit is contained in:
@@ -10,6 +10,8 @@ import java.util.EnumMap;
|
|||||||
/**
|
/**
|
||||||
* Classe pour jouer une partie entre deux bots sans interface graphique.
|
* Classe pour jouer une partie entre deux bots sans interface graphique.
|
||||||
* Utilisée dans le mode Arène.
|
* Utilisée dans le mode Arène.
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
*/
|
*/
|
||||||
public class ArenaGame extends AbstractGame {
|
public class ArenaGame extends AbstractGame {
|
||||||
|
|
||||||
@@ -26,6 +28,10 @@ public class ArenaGame extends AbstractGame {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Crée la map des joueurs pour AbstractGame.
|
* Crée la map des joueurs pour AbstractGame.
|
||||||
|
*
|
||||||
|
* @param bot1 bot pour PLAYER1
|
||||||
|
* @param bot2 bot pour PLAYER2
|
||||||
|
* @return une EnumMap associant chaque Player à son bot
|
||||||
*/
|
*/
|
||||||
private static EnumMap<Player, AbstractGamePlayer> createPlayerMap(
|
private static EnumMap<Player, AbstractGamePlayer> createPlayerMap(
|
||||||
AbstractGamePlayer bot1, AbstractGamePlayer bot2) {
|
AbstractGamePlayer bot1, AbstractGamePlayer bot2) {
|
||||||
|
|||||||
@@ -15,11 +15,18 @@ import java.util.List;
|
|||||||
/**
|
/**
|
||||||
* Fenêtre pour le mode Arène.
|
* Fenêtre pour le mode Arène.
|
||||||
* Permet de sélectionner deux bots, le nombre de parties, et affiche les résultats.
|
* Permet de sélectionner deux bots, le nombre de parties, et affiche les résultats.
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
*/
|
*/
|
||||||
public class ArenaWindow extends JFrame {
|
public class ArenaWindow extends JFrame {
|
||||||
|
|
||||||
|
/** Tableau affichant les résultats des parties. */
|
||||||
private JTable resultsTable;
|
private JTable resultsTable;
|
||||||
|
|
||||||
|
/** Modèle de données pour le tableau des résultats. */
|
||||||
private DefaultTableModel tableModel;
|
private DefaultTableModel tableModel;
|
||||||
|
|
||||||
|
/** Liste des résultats des parties (non utilisée actuellement). */
|
||||||
private List<String> results;
|
private List<String> results;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -64,6 +71,8 @@ public class ArenaWindow extends JFrame {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Crée le panneau de configuration (pour l'instant vide, sera rempli par le dialogue).
|
* Crée le panneau de configuration (pour l'instant vide, sera rempli par le dialogue).
|
||||||
|
*
|
||||||
|
* @return un JPanel contenant les informations de configuration
|
||||||
*/
|
*/
|
||||||
private JPanel createConfigPanel() {
|
private JPanel createConfigPanel() {
|
||||||
JPanel panel = new JPanel();
|
JPanel panel = new JPanel();
|
||||||
@@ -73,7 +82,7 @@ public class ArenaWindow extends JFrame {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Crée le tableau des résultats.
|
* Crée le tableau des résultats avec les colonnes : Partie, Bot 1, Bot 2, Gagnant.
|
||||||
*/
|
*/
|
||||||
private void createResultsTable() {
|
private void createResultsTable() {
|
||||||
String[] columnNames = {"Partie", "Bot 1", "Bot 2", "Gagnant"};
|
String[] columnNames = {"Partie", "Bot 1", "Bot 2", "Gagnant"};
|
||||||
@@ -166,6 +175,11 @@ public class ArenaWindow extends JFrame {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Lance les parties entre les deux bots.
|
* Lance les parties entre les deux bots.
|
||||||
|
*
|
||||||
|
* @param bot1Type type du bot 1 (Joueur 1)
|
||||||
|
* @param bot2Type type du bot 2 (Joueur 2)
|
||||||
|
* @param depth profondeur de recherche pour les bots Alpha-Beta/Divin
|
||||||
|
* @param nbParties nombre de parties à jouer
|
||||||
*/
|
*/
|
||||||
private void runArena(String bot1Type, String bot2Type, int depth, int nbParties) {
|
private void runArena(String bot1Type, String bot2Type, int depth, int nbParties) {
|
||||||
// Créer les bots
|
// Créer les bots
|
||||||
@@ -221,6 +235,11 @@ public class ArenaWindow extends JFrame {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Crée un bot selon son type.
|
* Crée un bot selon son type.
|
||||||
|
*
|
||||||
|
* @param botType type de bot ("Bot Idiot", "Bot Alpha-Beta", "Bot Divin")
|
||||||
|
* @param player joueur contrôlé par ce bot (PLAYER1 ou PLAYER2)
|
||||||
|
* @param depth profondeur de recherche pour Alpha-Beta/Divin
|
||||||
|
* @return une instance de AbstractGamePlayer correspondant au type, ou null si le type est invalide
|
||||||
*/
|
*/
|
||||||
private AbstractGamePlayer createBot(String botType, Player player, int depth) {
|
private AbstractGamePlayer createBot(String botType, Player player, int depth) {
|
||||||
if (botType.equals("Bot Idiot")) {
|
if (botType.equals("Bot Idiot")) {
|
||||||
@@ -242,6 +261,11 @@ public class ArenaWindow extends JFrame {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Détermine le nom du gagnant selon le résultat.
|
* Détermine le nom du gagnant selon le résultat.
|
||||||
|
*
|
||||||
|
* @param result résultat de la partie (WIN, LOSS, ou DRAW du point de vue de PLAYER1)
|
||||||
|
* @param bot1Type nom du bot 1
|
||||||
|
* @param bot2Type nom du bot 2
|
||||||
|
* @return une chaîne indiquant le gagnant ou "Match nul"
|
||||||
*/
|
*/
|
||||||
private String getWinnerName(Result result, String bot1Type, String bot2Type) {
|
private String getWinnerName(Result result, String bot1Type, String bot2Type) {
|
||||||
if (result == Result.WIN) {
|
if (result == Result.WIN) {
|
||||||
|
|||||||
Reference in New Issue
Block a user