Grabar partida para cambiar la clase fade de textura a surface

This commit is contained in:
2024-07-08 14:06:41 +02:00
parent d07fa46cb7
commit 69ad8fbfff
2 changed files with 8 additions and 1 deletions

View File

@@ -28,6 +28,7 @@ Fade::~Fade()
void Fade::init() void Fade::init()
{ {
type = FADE_CENTER; type = FADE_CENTER;
mode = FADE_OUT;
enabled = false; enabled = false;
finished = false; finished = false;
counter = 0; counter = 0;
@@ -268,7 +269,8 @@ void Fade::activate()
// Limpia la textura // Limpia la textura
SDL_Texture *temp = SDL_GetRenderTarget(renderer); SDL_Texture *temp = SDL_GetRenderTarget(renderer);
SDL_SetRenderTarget(renderer, backbuffer); SDL_SetRenderTarget(renderer, backbuffer);
SDL_SetRenderDrawColor(renderer, 0, 0, 0, 0); const int alpha = mode == FADE_OUT ? 0 : 255;
SDL_SetRenderDrawColor(renderer, 0, 0, 0, alpha);
SDL_RenderClear(renderer); SDL_RenderClear(renderer);
SDL_SetRenderTarget(renderer, temp); SDL_SetRenderTarget(renderer, temp);

View File

@@ -13,6 +13,10 @@
#define FADE_RANDOM_SQUARE 2 #define FADE_RANDOM_SQUARE 2
#define FADE_VENETIAN 3 #define FADE_VENETIAN 3
// Modos de fundido
#define FADE_IN 0
#define FADE_OUT 1
// Clase Fade // Clase Fade
class Fade class Fade
{ {
@@ -23,6 +27,7 @@ private:
// Variables // Variables
Uint8 type; // Tipo de fade a realizar Uint8 type; // Tipo de fade a realizar
Uint8 mode; // Modo de fade a realizar
Uint16 counter; // Contador interno Uint16 counter; // Contador interno
bool enabled; // Indica si el fade está activo bool enabled; // Indica si el fade está activo
bool finished; // Indica si ha terminado la transición bool finished; // Indica si ha terminado la transición