This commit is contained in:
2025-11-03 09:52:54 +01:00
parent 1409ab5bff
commit 3f1c737247
32 changed files with 254 additions and 243 deletions

View File

@@ -56,7 +56,7 @@ void GameOver::update() {
player_sprite_->update(DELTA_TIME); // Actualiza el sprite
tv_sprite_->update(DELTA_TIME); // Actualiza el sprite
Audio::get()->update(); // Actualiza el objeto Audio
Audio::update(); // Actualiza el objeto Audio
Screen::get()->update(DELTA_TIME); // Actualiza el objeto Screen
}
@@ -123,9 +123,9 @@ void GameOver::updateColor() {
case State::FADE_IN: {
// Fade in: de black (último color) a white (primer color)
// Progreso: 0.0 (black) -> 1.0 (white)
const float progress = std::min(elapsed_time_ / FADE_IN_DURATION, 1.0f);
const int index = (colors_.size() - 1) - static_cast<int>((colors_.size() - 1) * progress);
color_ = colors_[std::clamp(index, 0, static_cast<int>(colors_.size() - 1))];
const float PROGRESS = std::min(elapsed_time_ / FADE_IN_DURATION, 1.0F);
const int INDEX = (colors_.size() - 1) - static_cast<int>((colors_.size() - 1) * PROGRESS);
color_ = colors_[std::clamp(INDEX, 0, static_cast<int>(colors_.size() - 1))];
break;
}
@@ -137,9 +137,9 @@ void GameOver::updateColor() {
case State::FADE_OUT: {
// Fade out: de white (primer color) a black (último color)
// Progreso: 0.0 (white) -> 1.0 (black)
const float progress = std::min(elapsed_time_ / FADE_OUT_DURATION, 1.0f);
const int index = static_cast<int>((colors_.size() - 1) * progress);
color_ = colors_[std::clamp(index, 0, static_cast<int>(colors_.size() - 1))];
const float PROGRESS = std::min(elapsed_time_ / FADE_OUT_DURATION, 1.0F);
const int INDEX = static_cast<int>((colors_.size() - 1) * PROGRESS);
color_ = colors_[std::clamp(INDEX, 0, static_cast<int>(colors_.size() - 1))];
break;
}
@@ -165,7 +165,7 @@ void GameOver::updateState() {
// Espera inicial antes de empezar
if (elapsed_time_ >= WAITING_DURATION) {
state_ = State::FADE_IN;
elapsed_time_ = 0.0f;
elapsed_time_ = 0.0F;
// Hace sonar la música cuando termina la espera
Audio::get()->playMusic("game_over.ogg", 0);
}
@@ -175,7 +175,7 @@ void GameOver::updateState() {
// Fade in de colores desde black
if (elapsed_time_ >= FADE_IN_DURATION) {
state_ = State::DISPLAY;
elapsed_time_ = 0.0f;
elapsed_time_ = 0.0F;
}
break;
@@ -183,7 +183,7 @@ void GameOver::updateState() {
// Mostrando contenido con color brillante
if (elapsed_time_ >= DISPLAY_DURATION) {
state_ = State::FADE_OUT;
elapsed_time_ = 0.0f;
elapsed_time_ = 0.0F;
}
break;
@@ -191,7 +191,7 @@ void GameOver::updateState() {
// Fade out hacia black
if (elapsed_time_ >= FADE_OUT_DURATION) {
state_ = State::ENDING;
elapsed_time_ = 0.0f;
elapsed_time_ = 0.0F;
}
break;
@@ -199,7 +199,7 @@ void GameOver::updateState() {
// Pantalla en negro antes de salir
if (elapsed_time_ >= ENDING_DURATION) {
state_ = State::TRANSITION;
elapsed_time_ = 0.0f;
elapsed_time_ = 0.0F;
}
break;