diff --git a/source/director.cpp b/source/director.cpp index 79f7560..a4a282c 100644 --- a/source/director.cpp +++ b/source/director.cpp @@ -44,7 +44,7 @@ Director::Director(int argc, std::span argv) { Section::name = Section::Name::GAME; Section::options = Section::Options::GAME_PLAY_1P; #elif _DEBUG - Section::name = Section::Name::GAME; + Section::name = Section::Name::HI_SCORE_TABLE; Section::options = Section::Options::GAME_PLAY_1P; #else // NORMAL GAME Section::name = Section::Name::LOGO; diff --git a/source/fade.cpp b/source/fade.cpp index 0b6bdf3..be44975 100644 --- a/source/fade.cpp +++ b/source/fade.cpp @@ -439,10 +439,23 @@ void Fade::activate() { // Preparación inicial de cada tipo switch (type_) { - case Type::FULLSCREEN: + /*case Type::FULLSCREEN: cleanBackbuffer(r_, g_, b_, (mode_ == Mode::OUT) ? 0 : 255); SDL_SetTextureAlphaMod(backbuffer_, (mode_ == Mode::OUT) ? 255 : 0); + break;*/ + + case Type::FULLSCREEN: { + // La textura en sí siempre debe ser de un color sólido y opaco. + // La transparencia se gestionará con la modulación de alfa. + cleanBackbuffer(r_, g_, b_, 255); + + // Ahora, inicializamos la modulación de alfa correctamente: + // - IN: Empieza opaco (255) y se desvanece a transparente. + // - OUT: Empieza transparente (0) y se desvanece a opaco. + const Uint8 initial_alpha = (mode_ == Mode::IN) ? 255 : 0; + SDL_SetTextureAlphaMod(backbuffer_, initial_alpha); break; + } case Type::CENTER: rect1_ = {.x = 0, .y = 0, .w = param.game.width, .h = 0};