afegit so al LOGO
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
#include <cfloat>
|
||||
#include <iostream>
|
||||
|
||||
#include "../../core/audio/audio.hpp"
|
||||
#include "../../core/graphics/shape_loader.hpp"
|
||||
#include "../../core/rendering/shape_renderer.hpp"
|
||||
#include "../../core/system/gestor_escenes.hpp"
|
||||
@@ -42,6 +43,7 @@ EscenaLogo::EscenaLogo(SDLManager& sdl)
|
||||
lletra_explosio_index_(0),
|
||||
temps_des_ultima_explosio_(0.0f) {
|
||||
std::cout << "Escena Logo: Inicialitzant...\n";
|
||||
so_reproduit_.fill(false); // Inicialitzar seguiment de sons
|
||||
inicialitzar_lletres();
|
||||
}
|
||||
|
||||
@@ -229,11 +231,31 @@ void EscenaLogo::actualitzar(float delta_time) {
|
||||
}
|
||||
break;
|
||||
|
||||
case EstatAnimacio::ANIMATION:
|
||||
case EstatAnimacio::ANIMATION: {
|
||||
// Reproduir so per cada lletra quan comença a aparèixer
|
||||
float global_progress = std::min(temps_estat_actual_ / DURACIO_ZOOM, 1.0f);
|
||||
|
||||
for (size_t i = 0; i < lletres_.size() && i < so_reproduit_.size(); i++) {
|
||||
if (!so_reproduit_[i]) {
|
||||
float letra_progress = calcular_progress_letra(
|
||||
i,
|
||||
lletres_.size(),
|
||||
global_progress,
|
||||
THRESHOLD_LETRA);
|
||||
|
||||
// Reproduir so quan la lletra comença a aparèixer (progress > 0)
|
||||
if (letra_progress > 0.0f) {
|
||||
Audio::get()->playSound("logo.wav", Audio::Group::INTERFACE);
|
||||
so_reproduit_[i] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (totes_lletres_completes()) {
|
||||
canviar_estat(EstatAnimacio::POST_ANIMATION);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case EstatAnimacio::POST_ANIMATION:
|
||||
if (temps_estat_actual_ >= DURACIO_POST_ANIMATION) {
|
||||
|
||||
Reference in New Issue
Block a user