Correction de la JAVADOC
This commit is contained in:
@@ -49,6 +49,13 @@ public class Main {
|
|||||||
*/
|
*/
|
||||||
private static boolean isMusicPlayed = false;
|
private static boolean isMusicPlayed = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe Main.
|
||||||
|
*/
|
||||||
|
public Main() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Réinitialiser le jeu
|
* Réinitialiser le jeu
|
||||||
*/
|
*/
|
||||||
@@ -80,19 +87,13 @@ public class Main {
|
|||||||
|
|
||||||
|
|
||||||
// 4. Créer les fenêtres à nouveau comme au début
|
// 4. Créer les fenêtres à nouveau comme au début
|
||||||
ImageIcon icon = new ImageIcon("./ressources/images/Application/Application_Icon.jpg");
|
|
||||||
|
|
||||||
gameModeFrame = new JFrame("Choix des séries - Dorfromantik");
|
gameModeFrame = new JFrame("Choix des séries - Dorfromantik");
|
||||||
gameModeFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
gameModeFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
||||||
gameModeFrame.setIconImage(icon.getImage());
|
|
||||||
gameFrame = new JFrame("Jeu - Dorfromantik");
|
gameFrame = new JFrame("Jeu - Dorfromantik");
|
||||||
gameFrame.setIconImage(icon.getImage());
|
|
||||||
gameFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
gameFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
||||||
settingsFrame = new JFrame("Paramètres - Dorfromantik");
|
settingsFrame = new JFrame("Paramètres - Dorfromantik");
|
||||||
settingsFrame.setIconImage(icon.getImage());
|
|
||||||
settingsFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
settingsFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
||||||
howToPlayFrame = new JFrame("Comment jouer ? - Dorfromantik");
|
howToPlayFrame = new JFrame("Comment jouer ? - Dorfromantik");
|
||||||
howToPlayFrame.setIconImage(icon.getImage());
|
|
||||||
howToPlayFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
howToPlayFrame.setMinimumSize(Options.MINIMUM_FRAME_SIZE);
|
||||||
|
|
||||||
// Re-créer et réinitialiser les panels et les contrôleurs
|
// Re-créer et réinitialiser les panels et les contrôleurs
|
||||||
|
@@ -15,6 +15,13 @@ import fr.monkhanny.dorfromantik.gui.MainMenu;
|
|||||||
*/
|
*/
|
||||||
public class Options {
|
public class Options {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe Options.
|
||||||
|
*/
|
||||||
|
public Options() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Taille de police de base pour les titres du menu principal
|
* Taille de police de base pour les titres du menu principal
|
||||||
*/
|
*/
|
||||||
|
@@ -12,9 +12,14 @@ import java.awt.*;
|
|||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Khalid CHENOUNA
|
* @author Khalid CHENOUNA
|
||||||
**/
|
**/
|
||||||
|
|
||||||
public class Button {
|
public class Button {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour initialiser la classe utilitaire.
|
||||||
|
*/
|
||||||
|
public Button() {
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Crée un bouton personnalisé avec un texte, une taille de police spécifique et un style prédéfini.
|
* Crée un bouton personnalisé avec un texte, une taille de police spécifique et un style prédéfini.
|
||||||
*
|
*
|
||||||
|
@@ -16,17 +16,13 @@ import java.util.*;
|
|||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.*;
|
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,
|
* Gère les tuiles, les positions disponibles, le zoom, les déplacements, et l'interaction avec l'utilisateur.
|
||||||
* le zoom, les déplacements, et l'interaction avec l'utilisateur.
|
|
||||||
*
|
*
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Moncef STITI, Lenny FOULOU, Khalid CHENOUNA
|
* @author Moncef STITI, Lenny FOULOU, Khalid CHENOUNA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class Board extends JPanel{
|
public class Board extends JPanel{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -115,7 +111,12 @@ public class Board extends JPanel{
|
|||||||
private ScoreDisplay scoreDisplay;
|
private ScoreDisplay scoreDisplay;
|
||||||
|
|
||||||
|
|
||||||
// Constructeur avec seed
|
/**
|
||||||
|
* Constructeur pour initialiser le plateau de jeu avec la fenêtre principale et la graine aléatoire.
|
||||||
|
*
|
||||||
|
* @param gameFrame la fenêtre du jeu
|
||||||
|
* @param seed la graine aléatoire pour initialiser le générateur de nombres aléatoires
|
||||||
|
*/
|
||||||
public Board(JFrame gameFrame, long seed) {
|
public Board(JFrame gameFrame, long seed) {
|
||||||
this.gameFrame = gameFrame;
|
this.gameFrame = gameFrame;
|
||||||
this.tiles = new ArrayList<>();
|
this.tiles = new ArrayList<>();
|
||||||
@@ -161,10 +162,19 @@ public class Board extends JPanel{
|
|||||||
gameFrame.addKeyListener(new CustomKeyAdapter(this));
|
gameFrame.addKeyListener(new CustomKeyAdapter(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère le menu des contrôles du jeu.
|
||||||
|
* @return le menu des contrôles du jeu
|
||||||
|
*/
|
||||||
public GameControlsMenu getControlsMenu() {
|
public GameControlsMenu getControlsMenu() {
|
||||||
return controlsMenu;
|
return controlsMenu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gère les événements de déplacement de la souris.
|
||||||
|
* @param e l'événement MouseEvent déclenché par le déplacement de la souris
|
||||||
|
*/
|
||||||
public void handleMouseMove(java.awt.event.MouseEvent e) {
|
public void handleMouseMove(java.awt.event.MouseEvent e) {
|
||||||
if (Options.isPaused) {
|
if (Options.isPaused) {
|
||||||
return;
|
return;
|
||||||
@@ -193,6 +203,9 @@ public class Board extends JPanel{
|
|||||||
repaint(); // Redessiner sans la tuile transparente
|
repaint(); // Redessiner sans la tuile transparente
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialise la prochaine tuile à placer sur le plateau.
|
||||||
|
*/
|
||||||
private void initializeNextTile() {
|
private void initializeNextTile() {
|
||||||
int offsetX = 50; // Décalage pour la position en haut à gauche
|
int offsetX = 50; // Décalage pour la position en haut à gauche
|
||||||
int offsetY = 50; // Décalage pour la position en haut à gauche
|
int offsetY = 50; // Décalage pour la position en haut à gauche
|
||||||
@@ -200,8 +213,15 @@ public class Board extends JPanel{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère la prochaine tuile à placer sur le plateau.
|
||||||
|
* @return la prochaine tuile à placer
|
||||||
|
*/
|
||||||
public Tile getNextTile() { return nextTile; }
|
public Tile getNextTile() { return nextTile; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gère les événements de touche de clavier
|
||||||
|
*/
|
||||||
public void handleSpaceKeyPress() {
|
public void handleSpaceKeyPress() {
|
||||||
if (Options.isPaused) {
|
if (Options.isPaused) {
|
||||||
return;
|
return;
|
||||||
@@ -313,7 +333,7 @@ public class Board extends JPanel{
|
|||||||
scoreDisplay.setScore(currentScore);
|
scoreDisplay.setScore(currentScore);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Récupère la tuile située aux coordonnées spécifiées, si elle existe.
|
* Récupère la tuile située aux coordonnées spécifiées, si elle existe.
|
||||||
*
|
*
|
||||||
* @param x la coordonnée x à vérifier
|
* @param x la coordonnée x à vérifier
|
||||||
@@ -329,8 +349,16 @@ public class Board extends JPanel{
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère le random
|
||||||
|
* @return random
|
||||||
|
*/
|
||||||
public Random getRandom() { return random; }
|
public Random getRandom() { return random; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère la game
|
||||||
|
* @return game
|
||||||
|
*/
|
||||||
public Game getGame() { return game; }
|
public Game getGame() { return game; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -361,7 +389,7 @@ public class Board extends JPanel{
|
|||||||
availablePositions.add(newPoint); // Ajouter la position si une tuile n'est pas déjà là
|
availablePositions.add(newPoint); // Ajouter la position si une tuile n'est pas déjà là
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -429,7 +457,7 @@ public class Board extends JPanel{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Recentre automatiquement la vue sur une tuile nouvellement placée si l'option
|
* Recentre automatiquement la vue sur une tuile nouvellement placée si l'option
|
||||||
* de mise au point automatique (AUTO_FOCUS) est activée.
|
* de mise au point automatique (AUTO_FOCUS) est activée.
|
||||||
*
|
*
|
||||||
@@ -453,28 +481,63 @@ public class Board extends JPanel{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère le facteur de zoom actuel.
|
||||||
|
* @return facteur de zoom actuel.
|
||||||
|
*/
|
||||||
public double getZoomFactor() { return zoomFactor;}
|
public double getZoomFactor() { return zoomFactor;}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Définit le facteur de zoom actuel.
|
||||||
|
* @param zoomFactor facteur de zoom actuel.
|
||||||
|
*/
|
||||||
public void setZoomFactor(double zoomFactor) { this.zoomFactor = zoomFactor; }
|
public void setZoomFactor(double zoomFactor) { this.zoomFactor = zoomFactor; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère l'offset horizontal actuel.
|
||||||
|
* @return offsetX
|
||||||
|
*/
|
||||||
public int getOffsetX() { return offsetX; }
|
public int getOffsetX() { return offsetX; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Définit l'offset horizontal actuel.
|
||||||
|
* @param offsetX La valeur de l'offset horizontal à définir.
|
||||||
|
*/
|
||||||
public void setOffsetX(int offsetX) { this.offsetX = offsetX; }
|
public void setOffsetX(int offsetX) { this.offsetX = offsetX; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère l'offset vertical actuel.
|
||||||
|
* @return offsetY
|
||||||
|
*/
|
||||||
public int getOffsetY() { return offsetY; }
|
public int getOffsetY() { return offsetY; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Définit l'offset vertical actuel.
|
||||||
|
* @param offsetY La valeur de l'offset vertical à définir.
|
||||||
|
*/
|
||||||
public void setOffsetY(int offsetY) { this.offsetY = offsetY; }
|
public void setOffsetY(int offsetY) { this.offsetY = offsetY; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Permet de zoomer sur le plateau de jeu.
|
||||||
|
*/
|
||||||
public void zoomIn() {
|
public void zoomIn() {
|
||||||
zoomFactor *= 1.1; // Augmenter le facteur de zoom
|
zoomFactor *= 1.1; // Augmenter le facteur de zoom
|
||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Permet de dézoomer sur le plateau de jeu.
|
||||||
|
*/
|
||||||
public void zoomOut() {
|
public void zoomOut() {
|
||||||
zoomFactor /= 1.1; // Diminuer le facteur de zoom
|
zoomFactor /= 1.1; // Diminuer le facteur de zoom
|
||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Permet de déplacer le plateau de jeu.
|
||||||
|
* @param dx Position x
|
||||||
|
* @param dy Position y
|
||||||
|
*/
|
||||||
public void moveBoard(int dx, int dy) {
|
public void moveBoard(int dx, int dy) {
|
||||||
offsetX += dx;
|
offsetX += dx;
|
||||||
offsetY += dy;
|
offsetY += dy;
|
||||||
|
@@ -9,9 +9,8 @@ import javax.swing.*;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Listener pour gérer la fermeture d'une fenêtre secondaire et réafficher le menu principal.
|
* Listener pour gérer la fermeture d'une fenêtre secondaire et réafficher le menu principal.
|
||||||
* Lorsque la fenêtre surveillée est fermée, ce listener rend visible le menu principal
|
* Lorsque la fenêtre surveillée est fermée, ce listener rend visible le menu principal et cache la fenêtre en cours.
|
||||||
*
|
*
|
||||||
* et cache la fenêtre en cours.
|
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Khalid CHENOUNA
|
* @author Khalid CHENOUNA
|
||||||
*/
|
*/
|
||||||
|
@@ -16,6 +16,13 @@ import fr.monkhanny.dorfromantik.Options;
|
|||||||
*/
|
*/
|
||||||
public class EscapeMenuCloseListener extends WindowAdapter {
|
public class EscapeMenuCloseListener extends WindowAdapter {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour initialiser le listener.
|
||||||
|
*/
|
||||||
|
public EscapeMenuCloseListener() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre du menu d'échappement est en cours de fermeture.
|
* Méthode appelée lorsque la fenêtre du menu d'échappement est en cours de fermeture.
|
||||||
* Met à jour l'état d'**Options.isPaused** pour indiquer que le jeu n'est plus en pause.
|
* Met à jour l'état d'**Options.isPaused** pour indiquer que le jeu n'est plus en pause.
|
||||||
|
@@ -4,6 +4,7 @@ import java.awt.event.ActionEvent;
|
|||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
import fr.monkhanny.dorfromantik.gui.GameModeSelectionPanel;
|
import fr.monkhanny.dorfromantik.gui.GameModeSelectionPanel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Listener pour gérer les clics sur le bouton "Suivant" dans le panneau de sélection du mode de jeu.
|
* Listener pour gérer les clics sur le bouton "Suivant" dans le panneau de sélection du mode de jeu.
|
||||||
* Cette classe permet de naviguer vers la page suivante des séries disponibles dans le panneau.
|
* Cette classe permet de naviguer vers la page suivante des séries disponibles dans le panneau.
|
||||||
|
@@ -3,19 +3,23 @@ package fr.monkhanny.dorfromantik.listeners;
|
|||||||
|
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version 1.0
|
|
||||||
* @author Khalid CHENOUNA
|
|
||||||
* Listener pour gérer la fermeture du jeu lorsque le bouton "Quitter" est cliqué.
|
* Listener pour gérer la fermeture du jeu lorsque le bouton "Quitter" est cliqué.
|
||||||
* Cette classe termine l'exécution de l'application.
|
* Cette classe termine l'exécution de l'application.
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
|
* @author Khalid CHENOUNA
|
||||||
*/
|
*/
|
||||||
public class GameQuitButtonListener implements ActionListener {
|
public class GameQuitButtonListener implements ActionListener {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur par défaut pour initialiser le listener.
|
* Constructeur par défaut pour initialiser le listener.
|
||||||
*/
|
*/
|
||||||
public GameQuitButtonListener() {
|
public GameQuitButtonListener() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur le bouton "Quitter".
|
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur le bouton "Quitter".
|
||||||
* Cette implémentation termine immédiatement l'exécution de l'application.
|
* Cette implémentation termine immédiatement l'exécution de l'application.
|
||||||
|
@@ -5,17 +5,20 @@ import java.awt.event.ActionListener;
|
|||||||
|
|
||||||
import fr.monkhanny.dorfromantik.Options;
|
import fr.monkhanny.dorfromantik.Options;
|
||||||
import fr.monkhanny.dorfromantik.game.EscapeMenu;
|
import fr.monkhanny.dorfromantik.game.EscapeMenu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version 1.0
|
|
||||||
* @author Khalid CHENOUNA
|
|
||||||
* Listener pour gérer la reprise du jeu lorsque le bouton "Reprendre" est cliqué dans le menu d'échappement.
|
* Listener pour gérer la reprise du jeu lorsque le bouton "Reprendre" est cliqué dans le menu d'échappement.
|
||||||
* Cette classe permet de masquer le menu de pause et de remettre le jeu dans un état actif.
|
* Cette classe permet de masquer le menu de pause et de remettre le jeu dans un état actif.
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
|
* @author Khalid CHENOUNA
|
||||||
*/
|
*/
|
||||||
public class GameResumeButtonListener implements ActionListener {
|
public class GameResumeButtonListener implements ActionListener {
|
||||||
/**
|
/**
|
||||||
* Le menu d'échappement (menu pause) qui doit être masqué lorsque le jeu reprend.
|
* Le menu d'échappement (menu pause) qui doit être masqué lorsque le jeu reprend.
|
||||||
*/
|
*/
|
||||||
private EscapeMenu escapeMenu;
|
private EscapeMenu escapeMenu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur pour initialiser le listener avec le menu d'échappement.
|
* Constructeur pour initialiser le listener avec le menu d'échappement.
|
||||||
*
|
*
|
||||||
@@ -24,6 +27,7 @@ public class GameResumeButtonListener implements ActionListener {
|
|||||||
public GameResumeButtonListener(EscapeMenu escapeMenu) {
|
public GameResumeButtonListener(EscapeMenu escapeMenu) {
|
||||||
this.escapeMenu = escapeMenu;
|
this.escapeMenu = escapeMenu;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur le bouton "Reprendre".
|
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur le bouton "Reprendre".
|
||||||
* Elle masque le menu d'échappement et remet le jeu en état actif en désactivant le mode pause.
|
* Elle masque le menu d'échappement et remet le jeu en état actif en désactivant le mode pause.
|
||||||
|
@@ -7,38 +7,41 @@ import fr.monkhanny.dorfromantik.gui.SettingsPanel;
|
|||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
import javax.swing.JFrame;
|
import javax.swing.JFrame;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Listener pour gérer l'ouverture de la fenêtre des paramètres lorsqu'un bouton est cliqué.
|
||||||
|
* Ce listener cache le menu d'échappement (escape menu), affiche une nouvelle fenêtre avec les paramètres, et configure cette fenêtre pour revenir à la fenêtre principale du jeu lorsqu'elle est fermée.
|
||||||
|
*
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Khalid CHENOUNA
|
* @author Khalid CHENOUNA
|
||||||
* Listener pour gérer l'ouverture de la fenêtre des paramètres lorsqu'un bouton est cliqué.
|
|
||||||
* Ce listener cache le menu d'échappement (escape menu), affiche une nouvelle fenêtre avec
|
|
||||||
* les paramètres, et configure cette fenêtre pour revenir à la fenêtre principale du jeu
|
|
||||||
* lorsqu'elle est fermée.
|
|
||||||
*/
|
*/
|
||||||
public class GameSettingsButtonListener implements ActionListener {
|
public class GameSettingsButtonListener implements ActionListener {
|
||||||
/**
|
/**
|
||||||
* La fenêtre principale du jeu.
|
* La fenêtre principale du jeu.
|
||||||
*/
|
*/
|
||||||
private JFrame gameFrame;
|
private JFrame gameFrame;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* La fenêtre dédiée aux paramètres.
|
* La fenêtre dédiée aux paramètres.
|
||||||
*/
|
*/
|
||||||
private JFrame settingsFrame;
|
private JFrame settingsFrame;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Le panneau contenant les options de configuration.
|
* Le panneau contenant les options de configuration.
|
||||||
*/
|
*/
|
||||||
private SettingsPanel settingsPanel;
|
private SettingsPanel settingsPanel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Le menu d'échappement (menu pause) qui doit être caché lorsque les paramètres sont affichés.
|
* Le menu d'échappement (menu pause) qui doit être caché lorsque les paramètres sont affichés.
|
||||||
*/
|
*/
|
||||||
private EscapeMenu escapeMenu;
|
private EscapeMenu escapeMenu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur pour initialiser le listener avec la fenêtre principale et le menu d'échappement.
|
* Constructeur pour initialiser le listener avec la fenêtre principale et le menu d'échappement.
|
||||||
*
|
*
|
||||||
* @param gameFrame la fenêtre principale du jeu.
|
* @param gameFrame la fenêtre principale du jeu.
|
||||||
* @param escapeMenu le menu d'échappement (menu pause) à cacher lorsque la fenêtre des paramètres s'affiche.
|
* @param escapeMenu le menu d'échappement (menu pause) à cacher lorsque la fenêtre des paramètres s'affiche.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public GameSettingsButtonListener(JFrame gameFrame, EscapeMenu escapeMenu) {
|
public GameSettingsButtonListener(JFrame gameFrame, EscapeMenu escapeMenu) {
|
||||||
this.gameFrame = gameFrame;
|
this.gameFrame = gameFrame;
|
||||||
this.escapeMenu = escapeMenu;
|
this.escapeMenu = escapeMenu;
|
||||||
@@ -49,6 +52,7 @@ public class GameSettingsButtonListener implements ActionListener {
|
|||||||
// Ajouter le WindowListener pour réafficher la gameFrame lors de la fermeture de settingsFrame
|
// Ajouter le WindowListener pour réafficher la gameFrame lors de la fermeture de settingsFrame
|
||||||
this.settingsFrame.addWindowListener(new GameSettingsWindowListener(gameFrame));
|
this.settingsFrame.addWindowListener(new GameSettingsWindowListener(gameFrame));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur un bouton.
|
* Méthode appelée lorsqu'une action est déclenchée, comme un clic sur un bouton.
|
||||||
* Elle ouvre la fenêtre des paramètres, cache la fenêtre du jeu et configure
|
* Elle ouvre la fenêtre des paramètres, cache la fenêtre du jeu et configure
|
||||||
|
@@ -4,26 +4,28 @@ import javax.swing.JFrame;
|
|||||||
import java.awt.event.WindowEvent;
|
import java.awt.event.WindowEvent;
|
||||||
import java.awt.event.WindowListener;
|
import java.awt.event.WindowListener;
|
||||||
|
|
||||||
public class GameSettingsWindowListener implements WindowListener {
|
|
||||||
private JFrame gameFrame;
|
|
||||||
/**
|
/**
|
||||||
|
* Listener pour gérer les événements liés à la fenêtre des paramètres du jeu.
|
||||||
|
* Ce listener réaffiche la fenêtre principale du jeu (gameFrame) lorsque la fenêtre des paramètres est en train de se fermer.
|
||||||
|
*
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Khalid CHENOUNA
|
* @author Khalid CHENOUNA
|
||||||
* Listener pour gérer les événements liés à la fenêtre des paramètres du jeu.
|
|
||||||
* Ce listener réaffiche la fenêtre principale du jeu (gameFrame) lorsque la
|
|
||||||
* fenêtre des paramètres est en train de se fermer.
|
|
||||||
*/
|
*/
|
||||||
public GameSettingsWindowListener(JFrame gameFrame) {
|
public class GameSettingsWindowListener implements WindowListener {
|
||||||
/**
|
/**
|
||||||
* La fenêtre principale du jeu à réafficher.
|
* La fenêtre du jeu.
|
||||||
*/
|
*/
|
||||||
this.gameFrame = gameFrame;
|
private JFrame gameFrame;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur pour initialiser le listener avec la fenêtre principale du jeu.
|
* Constructeur pour initialiser le listener avec la fenêtre principale du jeu.
|
||||||
*
|
*
|
||||||
* @param gameFrame la fenêtre principale du jeu.
|
* @param gameFrame la fenêtre principale du jeu.
|
||||||
*/
|
*/
|
||||||
|
public GameSettingsWindowListener(JFrame gameFrame) {
|
||||||
|
this.gameFrame = gameFrame;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre est ouverte.
|
* Méthode appelée lorsque la fenêtre est ouverte.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
@@ -34,6 +36,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
public void windowOpened(WindowEvent e) {
|
public void windowOpened(WindowEvent e) {
|
||||||
// Rien à faire ici
|
// Rien à faire ici
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre est en train de se fermer.
|
* Méthode appelée lorsque la fenêtre est en train de se fermer.
|
||||||
* Cette implémentation réaffiche la fenêtre principale du jeu.
|
* Cette implémentation réaffiche la fenêtre principale du jeu.
|
||||||
@@ -45,6 +48,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
// Réafficher la gameFrame
|
// Réafficher la gameFrame
|
||||||
gameFrame.setVisible(true);
|
gameFrame.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre a été fermée.
|
* Méthode appelée lorsque la fenêtre a été fermée.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
@@ -55,6 +59,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
public void windowClosed(WindowEvent e) {
|
public void windowClosed(WindowEvent e) {
|
||||||
// Rien à faire ici
|
// Rien à faire ici
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre est réduite en icône.
|
* Méthode appelée lorsque la fenêtre est réduite en icône.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
@@ -65,6 +70,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
public void windowIconified(WindowEvent e) {
|
public void windowIconified(WindowEvent e) {
|
||||||
// Rien à faire ici
|
// Rien à faire ici
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre est restaurée après avoir été réduite.
|
* Méthode appelée lorsque la fenêtre est restaurée après avoir été réduite.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
@@ -75,6 +81,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
public void windowDeiconified(WindowEvent e) {
|
public void windowDeiconified(WindowEvent e) {
|
||||||
// Rien à faire ici
|
// Rien à faire ici
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre devient active.
|
* Méthode appelée lorsque la fenêtre devient active.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
@@ -85,6 +92,7 @@ public class GameSettingsWindowListener implements WindowListener {
|
|||||||
public void windowActivated(WindowEvent e) {
|
public void windowActivated(WindowEvent e) {
|
||||||
// Rien à faire ici
|
// Rien à faire ici
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode appelée lorsque la fenêtre devient inactive.
|
* Méthode appelée lorsque la fenêtre devient inactive.
|
||||||
* Aucun comportement n'est implémenté pour cet événement.
|
* Aucun comportement n'est implémenté pour cet événement.
|
||||||
|
@@ -2,11 +2,12 @@ package fr.monkhanny.dorfromantik.listeners;
|
|||||||
|
|
||||||
import fr.monkhanny.dorfromantik.game.Board;
|
import fr.monkhanny.dorfromantik.game.Board;
|
||||||
/**
|
/**
|
||||||
|
* Listener pour gérer l'appui sur la touche Espace dans le jeu.
|
||||||
|
* Lorsqu'un événement d'appui sur la touche Espace est détecté, le plateau de jeu est recentré grâce à une méthode spécifique.
|
||||||
|
*
|
||||||
|
*
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Lenny FOULOU
|
* @author Lenny FOULOU
|
||||||
* Listener pour gérer l'appui sur la touche Espace dans le jeu.
|
|
||||||
* Lorsqu'un événement d'appui sur la touche Espace est détecté,
|
|
||||||
* le plateau de jeu est recentré grâce à une méthode spécifique.
|
|
||||||
*/
|
*/
|
||||||
public class GameSpaceKeyListener extends java.awt.event.KeyAdapter {
|
public class GameSpaceKeyListener extends java.awt.event.KeyAdapter {
|
||||||
/**
|
/**
|
||||||
|
@@ -5,10 +5,11 @@ import fr.monkhanny.dorfromantik.game.Board;
|
|||||||
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseAdapter;
|
||||||
import java.awt.event.MouseWheelEvent;
|
import java.awt.event.MouseWheelEvent;
|
||||||
/**
|
/**
|
||||||
* @version 1.0
|
|
||||||
* @author Lenny FOULOU
|
|
||||||
* Listener pour gérer le zoom dans le jeu à l'aide de la molette de la souris.
|
* Listener pour gérer le zoom dans le jeu à l'aide de la molette de la souris.
|
||||||
* Le zoom s'effectue uniquement lorsque la touche Ctrl est enfoncée.
|
* Le zoom s'effectue uniquement lorsque la touche Ctrl est enfoncée.
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
|
* @author Lenny FOULOU
|
||||||
*/
|
*/
|
||||||
public class GameZoomListener extends MouseAdapter {
|
public class GameZoomListener extends MouseAdapter {
|
||||||
/**
|
/**
|
||||||
|
@@ -7,16 +7,18 @@ import javax.swing.event.ChangeEvent;
|
|||||||
import javax.swing.event.ChangeListener;
|
import javax.swing.event.ChangeListener;
|
||||||
import javax.swing.JSlider;
|
import javax.swing.JSlider;
|
||||||
/**
|
/**
|
||||||
|
* Classe MusicVolumeChangeListener, un écouteur d'événements.
|
||||||
|
* Gère les changements de volume de la musique via un composant JSlider.
|
||||||
|
*
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Moncef STITI
|
* @author Moncef STITI
|
||||||
* Classe MusicVolumeChangeListener, un écouteur d'événements pour gérer les changements
|
|
||||||
* de volume de la musique via un composant JSlider.
|
|
||||||
*/
|
*/
|
||||||
public class MusicVolumeChangeListener implements ChangeListener {
|
public class MusicVolumeChangeListener implements ChangeListener {
|
||||||
/**
|
/**
|
||||||
* Le slider associé permettant de contrôler le volume de la musique.
|
* Le slider associé permettant de contrôler le volume de la musique.
|
||||||
*/
|
*/
|
||||||
private JSlider slider;
|
private JSlider slider;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur de MusicVolumeChangeListener.
|
* Constructeur de MusicVolumeChangeListener.
|
||||||
*
|
*
|
||||||
@@ -25,6 +27,7 @@ public class MusicVolumeChangeListener implements ChangeListener {
|
|||||||
public MusicVolumeChangeListener(JSlider slider) {
|
public MusicVolumeChangeListener(JSlider slider) {
|
||||||
this.slider = slider;
|
this.slider = slider;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gère les changements d'état du slider (JSlider).
|
* Gère les changements d'état du slider (JSlider).
|
||||||
* Met à jour le volume de la musique en fonction de la position actuelle du slider.
|
* Met à jour le volume de la musique en fonction de la position actuelle du slider.
|
||||||
|
@@ -6,11 +6,13 @@ import fr.monkhanny.dorfromantik.utils.MusicPlayer;
|
|||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version 1.0
|
|
||||||
* @author Moncef STITI
|
|
||||||
* Classe MuteCheckBoxListener, un écouteur d'événements pour gérer les cases à cocher
|
* Classe MuteCheckBoxListener, un écouteur d'événements pour gérer les cases à cocher
|
||||||
* permettant d'activer ou de désactiver la musique et les effets sonores (SFX).
|
* permettant d'activer ou de désactiver la musique et les effets sonores (SFX).
|
||||||
|
*
|
||||||
|
* @version 1.0
|
||||||
|
* @author Moncef STITI
|
||||||
*/
|
*/
|
||||||
public class MuteCheckBoxListener implements ActionListener {
|
public class MuteCheckBoxListener implements ActionListener {
|
||||||
/**
|
/**
|
||||||
@@ -18,6 +20,7 @@ public class MuteCheckBoxListener implements ActionListener {
|
|||||||
* Par exemple, "Musique" pour la musique de fond ou "SFX" pour les effets sonores.
|
* Par exemple, "Musique" pour la musique de fond ou "SFX" pour les effets sonores.
|
||||||
*/
|
*/
|
||||||
private String label;
|
private String label;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructeur de MuteCheckBoxListener.
|
* Constructeur de MuteCheckBoxListener.
|
||||||
*
|
*
|
||||||
@@ -26,6 +29,7 @@ public class MuteCheckBoxListener implements ActionListener {
|
|||||||
public MuteCheckBoxListener(String label) {
|
public MuteCheckBoxListener(String label) {
|
||||||
this.label = label;
|
this.label = label;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gère les événements de clic sur une case à cocher.
|
* Gère les événements de clic sur une case à cocher.
|
||||||
* Permet d'activer ou de désactiver la musique ou les effets sonores en fonction
|
* Permet d'activer ou de désactiver la musique ou les effets sonores en fonction
|
||||||
|
@@ -5,9 +5,5 @@
|
|||||||
* @since 1.0
|
* @since 1.0
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author Moncef STITI, Lenny FOULOU, Khalid CHENOUNA
|
* @author Moncef STITI, Lenny FOULOU, Khalid CHENOUNA
|
||||||
* @see fr.monkhanny.dorfromantik.listeners.GameEndListener
|
|
||||||
* @see fr.monkhanny.dorfromantik.listeners.GameZoomListener
|
|
||||||
* @see fr.monkhanny.dorfromantik.listeners.MusicVolumeChangeListener
|
|
||||||
* @see fr.monkhanny.dorfromantik.listeners.TileSelectionListener
|
|
||||||
*/
|
*/
|
||||||
package fr.monkhanny.dorfromantik.listeners;
|
package fr.monkhanny.dorfromantik.listeners;
|
@@ -133,7 +133,6 @@ public class Database {
|
|||||||
/**
|
/**
|
||||||
* Récupère toutes les séries de la base de données
|
* Récupère toutes les séries de la base de données
|
||||||
* @return Les séries stockées dans la base de données
|
* @return Les séries stockées dans la base de données
|
||||||
* @throws SQLException Si une erreur se produit lors de la récupération des séries
|
|
||||||
*/
|
*/
|
||||||
public List<String> getAllSeries() {
|
public List<String> getAllSeries() {
|
||||||
List<String> series = new ArrayList<>();
|
List<String> series = new ArrayList<>();
|
||||||
@@ -153,8 +152,9 @@ public class Database {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Récupère les séries dans une plage de dates
|
* Récupère les séries dans une plage de dates
|
||||||
|
* @param startDate Date de début
|
||||||
|
* @param endDate Date de fin
|
||||||
* @return La liste des séries créées dans la plage de dates spécifiée
|
* @return La liste des séries créées dans la plage de dates spécifiée
|
||||||
* @throws SQLException Si une erreur se produit lors de la récupération des séries
|
|
||||||
*/
|
*/
|
||||||
public List<String> getSeriesByDateRange(Date startDate, Date endDate) {
|
public List<String> getSeriesByDateRange(Date startDate, Date endDate) {
|
||||||
List<String> series = new ArrayList<>();
|
List<String> series = new ArrayList<>();
|
||||||
@@ -180,7 +180,6 @@ public class Database {
|
|||||||
* @param endDate Date de fin
|
* @param endDate Date de fin
|
||||||
* @param onlyDeveloperCreated Indique si seules les séries créées par les développeurs doivent être comptées
|
* @param onlyDeveloperCreated Indique si seules les séries créées par les développeurs doivent être comptées
|
||||||
* @return Le nombre de séries créées dans la plage de dates spécifiée
|
* @return Le nombre de séries créées dans la plage de dates spécifiée
|
||||||
* @throws SQLException Si une erreur se produit lors de la récupération du nombre de séries
|
|
||||||
*/
|
*/
|
||||||
public int countSeriesByDateRange(Date startDate, Date endDate, boolean onlyDeveloperCreated) {
|
public int countSeriesByDateRange(Date startDate, Date endDate, boolean onlyDeveloperCreated) {
|
||||||
int count = 0;
|
int count = 0;
|
||||||
@@ -214,7 +213,6 @@ public class Database {
|
|||||||
* @param itemsPerPage Nombre d'éléments par page
|
* @param itemsPerPage Nombre d'éléments par page
|
||||||
* @param onlyDeveloperCreated Indique si seules les séries créées par les développeurs doivent être récupérées
|
* @param onlyDeveloperCreated Indique si seules les séries créées par les développeurs doivent être récupérées
|
||||||
* @return La liste des séries créées dans la plage de dates spécifiée, paginée
|
* @return La liste des séries créées dans la plage de dates spécifiée, paginée
|
||||||
* @throws SQLException Si une erreur se produit lors de la récupération des séries
|
|
||||||
*/
|
*/
|
||||||
public List<String> getSeriesByDateRangePaginated(Date startDate, Date endDate,
|
public List<String> getSeriesByDateRangePaginated(Date startDate, Date endDate,
|
||||||
int page, int itemsPerPage,
|
int page, int itemsPerPage,
|
||||||
@@ -251,6 +249,7 @@ public class Database {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Récupère la seed correspondant au nom de la série
|
* Récupère la seed correspondant au nom de la série
|
||||||
|
* @param name Le nom de la série
|
||||||
* @return La seed associée au nom de la série
|
* @return La seed associée au nom de la série
|
||||||
* @throws SQLException Si une erreur se produit lors de la récupération de la seed
|
* @throws SQLException Si une erreur se produit lors de la récupération de la seed
|
||||||
*/
|
*/
|
||||||
@@ -269,6 +268,8 @@ public class Database {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Ajoute un score à une série
|
* Ajoute un score à une série
|
||||||
|
* @param seriesId L'ID de la série
|
||||||
|
* @param score Le score à ajouter
|
||||||
* @throws SQLException Si une erreur se produit lors de l'ajout du score
|
* @throws SQLException Si une erreur se produit lors de l'ajout du score
|
||||||
*/
|
*/
|
||||||
public void addScore(long seriesId, int score) throws SQLException {
|
public void addScore(long seriesId, int score) throws SQLException {
|
||||||
@@ -391,6 +392,9 @@ public class Database {
|
|||||||
return scores;
|
return scores;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Ferme la connexion à la base de données
|
||||||
|
*/
|
||||||
public void close() {
|
public void close() {
|
||||||
try {
|
try {
|
||||||
if (this.database != null && !this.database.isClosed()) {
|
if (this.database != null && !this.database.isClosed()) {
|
||||||
|
@@ -17,6 +17,13 @@ import java.io.IOException;
|
|||||||
*/
|
*/
|
||||||
public class FontLoader {
|
public class FontLoader {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe FontLoader.
|
||||||
|
*/
|
||||||
|
public FontLoader() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge une police à partir du fichier spécifié.
|
* Charge une police à partir du fichier spécifié.
|
||||||
* @param fontEnumName Enumération de la police à charger.
|
* @param fontEnumName Enumération de la police à charger.
|
||||||
|
@@ -26,6 +26,14 @@ public class FontManager {
|
|||||||
*/
|
*/
|
||||||
private static Font buttonFont;
|
private static Font buttonFont;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe FontManager.
|
||||||
|
*/
|
||||||
|
public FontManager() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge une police personnalisée à partir du fichier de police spécifié.
|
* Charge une police personnalisée à partir du fichier de police spécifié.
|
||||||
*
|
*
|
||||||
|
@@ -18,6 +18,14 @@ public class ImageLoader {
|
|||||||
*/
|
*/
|
||||||
public static final Image APPLICATION_ICON = ImageLoader.loadImage("./ressources/images/Application/Application_Icon.jpg");
|
public static final Image APPLICATION_ICON = ImageLoader.loadImage("./ressources/images/Application/Application_Icon.jpg");
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe ImageLoader.
|
||||||
|
*/
|
||||||
|
public ImageLoader() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge une image à partir du fichier spécifié.
|
* Charge une image à partir du fichier spécifié.
|
||||||
*
|
*
|
||||||
|
@@ -39,6 +39,13 @@ public class MusicPlayer {
|
|||||||
*/
|
*/
|
||||||
private static boolean isPlayingSound = false;
|
private static boolean isPlayingSound = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe MusicPlayer.
|
||||||
|
*/
|
||||||
|
public MusicPlayer() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge un fichier audio à partir du chemin spécifié.
|
* Charge un fichier audio à partir du chemin spécifié.
|
||||||
* @param music Musique à charger
|
* @param music Musique à charger
|
||||||
@@ -114,6 +121,8 @@ public class MusicPlayer {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Régler le volume du clip audio.
|
* Régler le volume du clip audio.
|
||||||
|
* @param clip Clip audio
|
||||||
|
* @param volume Volume à régler
|
||||||
*/
|
*/
|
||||||
public static void setVolume(Clip clip, int volume) {
|
public static void setVolume(Clip clip, int volume) {
|
||||||
if (clip != null) {
|
if (clip != null) {
|
||||||
|
@@ -15,6 +15,13 @@ import java.io.IOException;
|
|||||||
*/
|
*/
|
||||||
public class SoundLoader {
|
public class SoundLoader {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur par défaut pour la classe SoundLoader.
|
||||||
|
*/
|
||||||
|
public SoundLoader() {
|
||||||
|
// Constructeur par défaut
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge un fichier audio à partir du chemin spécifié.
|
* Charge un fichier audio à partir du chemin spécifié.
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user