From e2e41cf435ba704dc4d4da674ff4ab0e1e3aabde Mon Sep 17 00:00:00 2001 From: Sergio Valor Martinez Date: Wed, 7 Feb 2024 17:22:22 +0100 Subject: [PATCH] =?UTF-8?q?Arreglada=20la=20separaci=C3=B3n=20entre=20el?= =?UTF-8?q?=20titulo=20y=20el=20fade?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/director.cpp | 1 + source/gamestate_title.cpp | 39 ++++++++++---------------------------- 2 files changed, 11 insertions(+), 29 deletions(-) diff --git a/source/director.cpp b/source/director.cpp index 076196f..8ca8c9d 100644 --- a/source/director.cpp +++ b/source/director.cpp @@ -505,6 +505,7 @@ void Director::loadResources(section_t *section) textureList.push_back("smb2.png"); textureList.push_back("subatomic.png"); textureList.push_back("notify.png"); + textureList.push_back("title_logo.png"); resource->loadTextures(textureList); diff --git a/source/gamestate_title.cpp b/source/gamestate_title.cpp index 445fd8b..ab52647 100644 --- a/source/gamestate_title.cpp +++ b/source/gamestate_title.cpp @@ -18,11 +18,11 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset * cheevos = new Cheevos(screen, options, asset->get("cheevos.bin"), online); if (options->palette == p_zxspectrum) { - texture = resource->getTexture("loading_screen_color.png"); + texture = resource->getTexture("title_logo.png"); } else if (options->palette == p_zxarne) { - texture = resource->getTexture("loading_screen_color_zxarne.png"); + texture = resource->getTexture("title_logo.png"); } sprite = new Sprite(0, 0, texture->getWidth(), texture->getHeight(), texture, renderer); text = new Text(resource->getOffset("smb2.txt"), resource->getTexture("smb2.png"), renderer); @@ -323,6 +323,7 @@ void Title::render() { // Prepara para empezar a dibujar en la textura de juego screen->start(); + screen->clean(stringToColor(options->palette, "black")); if (state == show_menu) { @@ -346,8 +347,7 @@ void Title::render() pFlip(renderer); // Dibuja el logo del título - SDL_Rect dstRect = {0, 0, 256, 80}; - SDL_RenderCopy(renderer, titleLogo, nullptr, &dstRect); + sprite->render(); } // Vuelca el contenido del renderizador en pantalla @@ -435,33 +435,14 @@ void Title::fillTexture() SDL_SetRenderDrawColor(renderer, c.r, c.g, c.b, 0xFF); SDL_RenderClear(renderer); - // Pinta el grafico del titulo a partir del sprite - sprite->setPosX(0); - sprite->setPosY(0); - sprite->setSpriteClip(0, 0, sprite->getWidth(), 64); - sprite->render(); // Titulo grande - - sprite->setPosY(64); - sprite->setSpriteClip(0, 64, 5, 16); - sprite->render(); // Palito de la izquierda - - sprite->setPosX(251); - sprite->setSpriteClip(251, 64, 5, 16); - sprite->render(); // Palito de la derecha - - sprite->setPosX(20); - sprite->setSpriteClip(20, 64, 33, 8); - sprite->render(); // Palito bajo titulo izquierda - - sprite->setPosX(203); - SDL_Rect rect = sprite->getSpriteClip(); - sprite->getTexture()->render(renderer, 203, 64, &rect, 1.0F, 1.0F, 0.0, nullptr, SDL_FLIP_HORIZONTAL); // Palito bajo titulo derecha + // Pinta el gráfico del titulo a partir del sprite + sprite->render(); // Borra la firma - const color_t coverColor = stringToColor(options->palette, "black"); - SDL_SetRenderDrawColor(renderer, coverColor.r, coverColor.g, coverColor.b, 0xFF); - SDL_Rect coverRect = {28, 11, 21, 5}; - SDL_RenderFillRect(renderer, &coverRect); + //const color_t coverColor = stringToColor(options->palette, "black"); + //SDL_SetRenderDrawColor(renderer, coverColor.r, coverColor.g, coverColor.b, 0xFF); + //SDL_Rect coverRect = {28, 11, 21, 5}; + //SDL_RenderFillRect(renderer, &coverRect); // Escribe el texto en la textura const color_t textColor = stringToColor(options->palette, "green");