Javadoc de fichiers dans game

This commit is contained in:
2024-12-09 20:48:13 +01:00
parent 79857ac00c
commit 7ccac48290
5 changed files with 61 additions and 3 deletions

View File

@@ -20,7 +20,13 @@ import java.awt.*;
/** /**
* Représente le plateau de jeu. * Représente le plateau de jeu.
* Représente le plateau de jeu, gérant les tuiles, les positions disponibles,
* le zoom, les déplacements, et l'interaction avec l'utilisateur.
*
* @version 1.0
* @author Moncef STITI, Lenny FOULOU, Khalid CHENOUNA
*/ */
public class Board extends JPanel{ public class Board extends JPanel{
private List<Tile> tiles; private List<Tile> tiles;
private List<Point> availablePositions; private List<Point> availablePositions;

View File

@@ -6,6 +6,8 @@ import javax.swing.*;
/** /**
* Représente une cellule de base sur le plateau de jeu. * Représente une cellule de base sur le plateau de jeu.
* C'est la classe parente pour la classe Tile. * C'est la classe parente pour la classe Tile.
* @version 1.0
* @author Lenny FOULOU, Khalid CHENOUNA
*/ */
public class Cell extends JComponent { public class Cell extends JComponent {
private Board board; // Le plateau de jeu auquel cette cellule appartient private Board board; // Le plateau de jeu auquel cette cellule appartient

View File

@@ -6,13 +6,15 @@ import java.awt.event.KeyEvent;
/** /**
* Classe CustomKeyAdapter, un écouteur personnalisé pour gérer les entrées clavier sur le plateau de jeu. * Classe CustomKeyAdapter, un écouteur personnalisé pour gérer les entrées clavier sur le plateau de jeu.
* Permet de réagir aux touches pressées pour effectuer des actions spécifiques dans le jeu. * Permet de réagir aux touches pressées pour effectuer des actions spécifiques dans le jeu.
* @version 1.0
* @author Khalid CHENOUNA
*/ */
public class CustomKeyAdapter extends KeyAdapter { public class CustomKeyAdapter extends KeyAdapter {
private Board board; private Board board;
/** /**
* Constructeur de CustomKeyAdapter. * Constructeur de CustomKeyAdapter.
* *
* @param board le plateau de jeu associé à cet écouteur @param board le plateau de jeu associé à cet écouteur
*/ */
public CustomKeyAdapter(Board board) { public CustomKeyAdapter(Board board) {
this.board = board; this.board = board;

View File

@@ -5,6 +5,8 @@ import java.awt.event.MouseEvent;
/** /**
* Classe CustomMouseMotionAdapter, un écouteur personnalisé pour gérer les mouvements de souris * Classe CustomMouseMotionAdapter, un écouteur personnalisé pour gérer les mouvements de souris
* sur le plateau de jeu. Permet de transmettre les événements de mouvement de la souris au plateau. * sur le plateau de jeu. Permet de transmettre les événements de mouvement de la souris au plateau.
* @version 1.0
* @author Lenny FOULOU, Khalid CHENOUNA
*/ */
public class CustomMouseMotionAdapter extends MouseMotionAdapter { public class CustomMouseMotionAdapter extends MouseMotionAdapter {
private Board board; private Board board;

View File

@@ -6,12 +6,27 @@ import javax.swing.*;
import java.awt.*; import java.awt.*;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
/**
* Classe représentant le menu d'échappement (pause) dans le jeu.
* Fournit une interface utilisateur permettant de reprendre le jeu, accéder aux paramètres ou quitter vers le menu principal.
*
* @version 1.0
* @author Khalid CHENOUNA
*/
public class EscapeMenu extends JFrame { public class EscapeMenu extends JFrame {
private JButton resumeButton; private JButton resumeButton;
private JButton mainMenuButton; private JButton mainMenuButton;
private JButton settingsButton; private JButton settingsButton;
/**
* Constructeur de la fenêtre du menu d'échappement.
*
* @param gameFrame La fenêtre principale du jeu (parent).
* @param game L'instance du jeu en cours.
*/
public EscapeMenu(JFrame gameFrame, Game game) { public EscapeMenu(JFrame gameFrame, Game game) {
// Paramétrer la fenêtre de la pause // Paramétrer la fenêtre de la pause
setTitle("Menu de Pause"); setTitle("Menu de Pause");
@@ -57,6 +72,13 @@ public class EscapeMenu extends JFrame {
setVisible(true); // Afficher la fenêtre setVisible(true); // Afficher la fenêtre
} }
/**
* Méthode utilitaire pour créer un bouton stylisé.
*
* @param text Le texte à afficher sur le bouton.
* @return Un bouton configuré.
*/
private JButton createButton(String text) { private JButton createButton(String text) {
JButton button = new JButton(text); JButton button = new JButton(text);
button.setFont(new Font("Tahoma", Font.PLAIN, 18)); button.setFont(new Font("Tahoma", Font.PLAIN, 18));
@@ -68,18 +90,42 @@ public class EscapeMenu extends JFrame {
return button; return button;
} }
/**
* Définit un écouteur d'événement pour le bouton "Reprendre".
*
* @param listener L'écouteur d'événement à associer.
*/
public void setResumeButtonListener(ActionListener listener) { public void setResumeButtonListener(ActionListener listener) {
resumeButton.addActionListener(listener); resumeButton.addActionListener(listener);
} }
/**
* Définit un écouteur d'événement pour le bouton "Quitter".
*
* @param listener L'écouteur d'événement à associer.
*/
public void setQuitButtonListener(ActionListener listener) { public void setQuitButtonListener(ActionListener listener) {
mainMenuButton.addActionListener(listener); mainMenuButton.addActionListener(listener);
} }
/**
* Définit un écouteur d'événement pour le bouton "Paramètres".
*
* @param listener L'écouteur d'événement à associer.
*/
public void setSettingsButtonListener(ActionListener listener) { public void setSettingsButtonListener(ActionListener listener) {
settingsButton.addActionListener(listener); settingsButton.addActionListener(listener);
} }
/**
* Modifie la visibilité du menu d'échappement.
*
* @param visible {@code true} pour afficher le menu, {@code false} pour le masquer.
*/
public void setMenuVisible(boolean visible) { public void setMenuVisible(boolean visible) {
setVisible(visible); setVisible(visible);
} }