fix: corregida la animació de Logo

This commit is contained in:
2025-11-07 08:53:15 +01:00
parent da159f1409
commit 85844645ac

View File

@@ -52,7 +52,7 @@ void Logo::handleInput() {
GlobalInputs::handle(); GlobalInputs::handle();
} }
// Gestiona el logo de JAILGAME (time-based) // Gestiona el logo de JAILGAME
void Logo::updateJAILGAMES(float delta_time) { void Logo::updateJAILGAMES(float delta_time) {
// Solo actualizar durante el estado JAILGAMES_SLIDE_IN // Solo actualizar durante el estado JAILGAMES_SLIDE_IN
if (state_ != State::JAILGAMES_SLIDE_IN) { if (state_ != State::JAILGAMES_SLIDE_IN) {
@@ -63,20 +63,20 @@ void Logo::updateJAILGAMES(float delta_time) {
const float DISPLACEMENT = JAILGAMES_SLIDE_SPEED * delta_time; const float DISPLACEMENT = JAILGAMES_SLIDE_SPEED * delta_time;
// Actualizar cada línea del sprite JAILGAMES // Actualizar cada línea del sprite JAILGAMES
for (size_t i = 1; i < jailgames_sprite_.size(); ++i) { for (size_t i = 0; i < jailgames_sprite_.size(); ++i) {
const int CURRENT_X = jailgames_sprite_[i]->getX(); const float CURRENT_X = jailgames_sprite_[i]->getX();
// Las líneas pares se mueven desde la derecha, las impares desde la izquierda // Las líneas pares se mueven desde la derecha, las impares desde la izquierda
if (i % 2 == 0) { if (i % 2 == 0) {
// Mover hacia la izquierda // Mover hacia la izquierda
if (CURRENT_X > JAILGAMES_DEST_X) { if (CURRENT_X > JAILGAMES_DEST_X) {
const int NEW_X = static_cast<int>(CURRENT_X - DISPLACEMENT); const float NEW_X = CURRENT_X - DISPLACEMENT;
jailgames_sprite_[i]->setX(NEW_X < JAILGAMES_DEST_X ? JAILGAMES_DEST_X : NEW_X); jailgames_sprite_[i]->setX(NEW_X < JAILGAMES_DEST_X ? JAILGAMES_DEST_X : NEW_X);
} }
} else { } else {
// Mover hacia la derecha // Mover hacia la derecha
if (CURRENT_X < JAILGAMES_DEST_X) { if (CURRENT_X < JAILGAMES_DEST_X) {
const int NEW_X = static_cast<int>(CURRENT_X + DISPLACEMENT); const float NEW_X = CURRENT_X + DISPLACEMENT;
jailgames_sprite_[i]->setX(NEW_X > JAILGAMES_DEST_X ? JAILGAMES_DEST_X : NEW_X); jailgames_sprite_[i]->setX(NEW_X > JAILGAMES_DEST_X ? JAILGAMES_DEST_X : NEW_X);
} }
} }
@@ -86,7 +86,7 @@ void Logo::updateJAILGAMES(float delta_time) {
// Verifica si todas las líneas están en su posición destino // Verifica si todas las líneas están en su posición destino
auto Logo::allJailgamesLinesInPosition() const -> bool { auto Logo::allJailgamesLinesInPosition() const -> bool {
// Iterar por todas las líneas (empezando desde 1, como en updateJAILGAMES) // Iterar por todas las líneas (empezando desde 1, como en updateJAILGAMES)
for (size_t i = 1; i < jailgames_sprite_.size(); ++i) { for (size_t i = 0; i < jailgames_sprite_.size(); ++i) {
if (jailgames_sprite_[i]->getX() != JAILGAMES_DEST_X) { if (jailgames_sprite_[i]->getX() != JAILGAMES_DEST_X) {
return false; // Al menos una línea no ha llegado return false; // Al menos una línea no ha llegado
} }