delay en naus en titol

This commit is contained in:
2025-12-17 18:55:41 +01:00
parent 3d5277a395
commit 8b9d26a02c
4 changed files with 47 additions and 6 deletions

View File

@@ -362,15 +362,21 @@ void EscenaTitol::actualitzar(float delta_time) {
animacio_activa_ = false; // Comença estàtic
factor_lerp_ = 0.0f; // Sense animació encara
// Iniciar animació d'entrada de naus
ship_animator_->set_visible(true);
ship_animator_->start_entry_animation();
// Naus esperaran ENTRANCE_DELAY abans d'entrar (no iniciar aquí)
}
break;
case EstatTitol::MAIN: {
temps_estat_main_ += delta_time;
// Iniciar animació d'entrada de naus després del delay
if (temps_estat_main_ >= Defaults::Title::Ships::ENTRANCE_DELAY) {
if (ship_animator_ && !ship_animator_->is_visible()) {
ship_animator_->set_visible(true);
ship_animator_->start_entry_animation();
}
}
// Fase 1: Estàtic (0-10s)
if (temps_estat_main_ < DELAY_INICI_ANIMACIO) {
factor_lerp_ = 0.0f;
@@ -458,9 +464,7 @@ void EscenaTitol::actualitzar(float delta_time) {
starfield_->set_brightness(BRIGHTNESS_STARFIELD);
temps_estat_main_ = 0.0f;
// Iniciar animació d'entrada de naus
ship_animator_->set_visible(true);
ship_animator_->start_entry_animation();
// Naus esperaran ENTRANCE_DELAY abans d'entrar (no iniciar aquí)
}
}
@@ -471,6 +475,12 @@ void EscenaTitol::actualitzar(float delta_time) {
bool p2_actiu_abans = config_partida_.jugador2_actiu;
if (checkStartGameButtonPressed()) {
// Si START es prem durant el delay (naus encara invisibles), saltar-les a FLOATING
if (ship_animator_ && !ship_animator_->is_visible()) {
ship_animator_->set_visible(true);
ship_animator_->skip_to_floating_state();
}
// Configurar partida abans de canviar d'escena
context_.set_config_partida(config_partida_);
std::cout << "[EscenaTitol] Configuració de partida - P1: "