Reestructurant la classe Options

This commit is contained in:
2025-02-23 18:12:02 +01:00
parent 3ba4293e8a
commit 2ee0c70319
48 changed files with 898 additions and 984 deletions

View File

@@ -10,8 +10,12 @@
class Asset;
class Notifier;
constexpr int FILTER_NEAREST = 0;
constexpr int FILTER_LINEAR = 1;
// Tipos de filtro
enum class ScreenFilter : Uint32
{
NEAREST = 0,
LINEAR = 1,
};
class Screen
{
@@ -31,18 +35,18 @@ private:
int game_canvas_width_; // Resolución interna del juego. Es el ancho de la textura donde se dibuja el juego
int game_canvas_height_; // Resolución interna del juego. Es el alto de la textura donde se dibuja el juego
SDL_Rect dest_; // Coordenadas donde se va a dibujar la textura del juego sobre la pantalla o ventana
color_t border_color_; // Color del borde añadido a la textura de juego para rellenar la pantalla
Color border_color_; // Color del borde añadido a la textura de juego para rellenar la pantalla
int notification_logical_width_; // Ancho lógico de las notificaciones en relación al tamaño de pantalla
int notification_logical_height_; // Alto lógico de las notificaciones en relación al tamaño de pantalla
// Variables - Efectos
bool fade_; // Indica si esta activo el efecto de fade
int fade_counter_; // Temporizador para el efecto de fade
int fade_lenght_; // Duración del fade
bool spectrum_fade_; // Indica si esta activo el efecto de fade spectrum
int spectrum_fade_counter_; // Temporizador para el efecto de fade spectrum
int spectrum_fade_lenght_; // Duración del fade spectrum
std::vector<color_t> spectrum_color_; // Colores para el fade spectrum
bool fade_; // Indica si esta activo el efecto de fade
int fade_counter_; // Temporizador para el efecto de fade
int fade_lenght_; // Duración del fade
bool spectrum_fade_; // Indica si esta activo el efecto de fade spectrum
int spectrum_fade_counter_; // Temporizador para el efecto de fade spectrum
int spectrum_fade_lenght_; // Duración del fade spectrum
std::vector<Color> spectrum_color_; // Colores para el fade spectrum
// Inicializa las variables para el fade
void iniFade();
@@ -88,7 +92,7 @@ public:
static Screen *get();
// Limpia la pantalla
void clean(color_t color = {0x00, 0x00, 0x00});
void clean(Color color = {0x00, 0x00, 0x00});
// Prepara para empezar a dibujar en la textura de juego
void start();
@@ -109,16 +113,16 @@ public:
void toggleVideoMode();
// Cambia el tamaño de la ventana
void setWindowSize(int size);
void setWindowZoom(int size);
// Reduce el tamaño de la ventana
void decWindowSize();
void decWindowZoom();
// Aumenta el tamaño de la ventana
void incWindowSize();
void incWindowZoom();
// Cambia el color del borde
void setBorderColor(color_t color);
void setBorderColor(Color color);
// Cambia el tipo de mezcla
void setBlendMode(SDL_BlendMode blendMode);