Añadido efecto de flash a la clase Screen
This commit is contained in:
@@ -32,10 +32,17 @@ private:
|
||||
SDL_Rect dest; // Coordenadas donde se va a dibujar la textura del juego sobre la pantalla o ventana
|
||||
color_t borderColor; // Color del borde añadido a la textura de juego para rellenar la pantalla
|
||||
|
||||
struct effect_t
|
||||
{
|
||||
bool enabled; // Indica si el efecto está activo
|
||||
int counter; // Contador para el efecto
|
||||
int lenght; // Duración del efecto
|
||||
color_t color; // Color del efecto
|
||||
};
|
||||
|
||||
// Variables - Efectos
|
||||
bool fade; // Indica si esta activo el efecto de fade
|
||||
int fadeCounter; // Temporizador para el efecto de fade
|
||||
int fadeLenght; // Duración del fade
|
||||
effect_t fade; // Variable para gestionar el efecto de fade
|
||||
effect_t flash; // Variable para gestionar el efecto de flash
|
||||
|
||||
struct shake_t
|
||||
{
|
||||
@@ -65,6 +72,9 @@ private:
|
||||
// Actualiza la logica para agitar la pantalla
|
||||
void updateShake();
|
||||
|
||||
// Actualiza y dibuja el efecto de flash en la pantalla
|
||||
void doFlash();
|
||||
|
||||
public:
|
||||
// Constructor
|
||||
Screen(SDL_Window *window, SDL_Renderer *renderer, Asset *asset, options_t *options);
|
||||
@@ -122,7 +132,10 @@ public:
|
||||
bool fadeEnded();
|
||||
|
||||
// Agita la pantalla
|
||||
void startShake();
|
||||
void setShake();
|
||||
|
||||
// Pone la pantalla de color
|
||||
void setFlash(color_t color, int lenght);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user