añadidos fade-ins a las secciones

This commit is contained in:
2024-07-09 10:05:09 +02:00
parent 5511160836
commit 2177ad9870
6 changed files with 73 additions and 21 deletions

View File

@@ -13,10 +13,11 @@ Instructions::Instructions(SDL_Renderer *renderer, Screen *screen, Asset *asset,
this->param = param;
this->section = section;
// Creao objetos
// Crea objetos
eventHandler = new SDL_Event();
text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer);
tiledbg = new Tiledbg(renderer, screen, asset, {0, 0, param->gameWidth, param->gameHeight}, TILED_MODE_STATIC);
fade = new Fade(renderer, param);
// Crea un backbuffer para el renderizador
backbuffer = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, param->gameWidth, param->gameHeight);
@@ -35,6 +36,13 @@ Instructions::Instructions(SDL_Renderer *renderer, Screen *screen, Asset *asset,
view = {0, 0, param->gameWidth, param->gameHeight};
spritePos = {0, 0};
// Inicializa objetos
fade->setColor(fadeColor.r, fadeColor.g, fadeColor.b);
fade->setType(FADE_FULLSCREEN);
fade->setPost(param->fadePostDuration);
fade->setMode(FADE_IN);
fade->activate();
// Rellena la textura de texto
fillTexture();
@@ -61,6 +69,7 @@ Instructions::~Instructions()
delete eventHandler;
delete text;
delete tiledbg;
delete fade;
SDL_DestroyTexture(backbuffer);
SDL_DestroyTexture(texture);
@@ -233,6 +242,8 @@ void Instructions::update()
// Actualiza el mosaico de fondo
tiledbg->update();
fade->update();
if (counter == counterEnd)
{
section->name = SECTION_PROG_TITLE;
@@ -262,6 +273,8 @@ void Instructions::render()
// Copia la textura y el backbuffer al renderizador
SDL_RenderCopy(renderer, backbuffer, nullptr, &view);
fade->render();
// Vuelca el contenido del renderizador en pantalla
screen->blit();
}