2024-12-02 20:51:28 +01:00
|
|
|
package fr.monkhanny.dorfromantik;
|
|
|
|
|
|
|
|
import java.awt.Color;
|
|
|
|
import java.awt.Dimension;
|
2024-12-03 10:14:33 +01:00
|
|
|
import javax.swing.JFrame;
|
2024-12-02 20:51:28 +01:00
|
|
|
import fr.monkhanny.dorfromantik.gui.MainMenu;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Classe contenant les constantes et les variables globales pour configurer les différentes options du jeu.
|
|
|
|
* Elle est utilisée pour gérer les paramètres d'affichage, les animations, les paramètres audio,
|
|
|
|
* ainsi que l'état général de la fenêtre et du jeu.
|
|
|
|
* @version 1.0
|
|
|
|
* @author Moncef STITI, Lenny FOULOU
|
|
|
|
*
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public class Options {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Taille de police de base pour les titres du menu principal
|
|
|
|
*/
|
|
|
|
public static final float BASE_TITLE_FONT_SIZE = 80f;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Taille de police de base pour les boutons du menu principal
|
|
|
|
*/
|
|
|
|
public static final float BASE_BUTTON_FONT_SIZE = 45f;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Niveau de volume par défaut
|
|
|
|
*/
|
|
|
|
public static final int DEFAULT_VOLUME = 60;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Musique en sourdine ou non
|
|
|
|
*/
|
|
|
|
public static boolean MUSIC_MUTED = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Sons en sourdine ou non
|
|
|
|
*/
|
|
|
|
public static boolean SOUNDS_MUTED = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Couleur de subrillance des boutons
|
|
|
|
*/
|
|
|
|
public static final Color BUTTON_HOVER_COLOR = new Color(0, 130, 180);
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Taille de police pour les boutons du menu principal (quand survolés)
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static final float HOVER_FONT_SCALE = 1.1f;
|
2024-12-06 22:45:18 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Nombre d'étapes pour l'animation
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static final int ANIMATION_STEPS = 10;
|
2024-12-06 22:45:18 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Délai entre chaque étape de l'animation
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static final int ANIMATION_DELAY = 15;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
2024-12-02 20:51:28 +01:00
|
|
|
* Volume de la musique
|
|
|
|
*/
|
2024-12-06 22:45:18 +01:00
|
|
|
public static int MUSIC_VOLUME = 50;
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Référence à la fenêtre des paramètres
|
|
|
|
*/
|
2024-12-03 10:14:33 +01:00
|
|
|
public static JFrame settingsFrame;
|
|
|
|
|
2024-12-02 20:51:28 +01:00
|
|
|
/**
|
|
|
|
* Volume des bruitages
|
|
|
|
*/
|
2024-12-06 22:45:18 +01:00
|
|
|
public static int SOUNDS_VOLUME = 50;
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Taille minimum de la fenêtre du jeu
|
|
|
|
*/
|
2024-12-06 21:25:41 +01:00
|
|
|
public static final Dimension MINIMUM_FRAME_SIZE = new Dimension(1200, 800);
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Indique si le mode auto focus est activé
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static boolean AUTO_FOCUS = false;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Nombre maximum de tuiles dans le jeu
|
|
|
|
*/
|
2024-12-04 14:48:07 +01:00
|
|
|
public static final int MAX_TILE_NUMBER = 50;
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Indique si le jeu est en plein écran
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static boolean FULL_SCREEN = false;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Taille de police pour les scores
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static final float SCORE_SIZE = 30f;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Graine pour la génération aléatoire
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static long SEED = 0;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Référence au menu principal
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static MainMenu mainMenu;
|
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Indique si le jeu est en cours
|
|
|
|
*/
|
2024-12-02 20:51:28 +01:00
|
|
|
public static boolean isPlaying = false;
|
2024-12-02 21:59:13 +01:00
|
|
|
|
2024-12-06 22:45:18 +01:00
|
|
|
/**
|
|
|
|
* Indique si le jeu est en pause
|
|
|
|
*/
|
2024-12-02 21:59:13 +01:00
|
|
|
public static boolean isPaused = false;
|
2024-12-02 20:51:28 +01:00
|
|
|
}
|