Files
SAE31_2024/src/fr/monkhanny/dorfromantik/Options.java

123 lines
2.8 KiB
Java
Raw Normal View History

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
*/
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
}