31 lines
892 B
C++
31 lines
892 B
C++
#include "game/scenes/palette_fade.hpp"
|
|
|
|
namespace Scenes {
|
|
|
|
void PaletteFade::startFadeOut() {
|
|
Jd8::fadeStartOut();
|
|
active_ = true;
|
|
}
|
|
|
|
void PaletteFade::startFadeTo(const Color* target) {
|
|
Jd8::fadeStartToPal(target);
|
|
active_ = true;
|
|
}
|
|
|
|
void PaletteFade::tick(int /*delta_ms*/) {
|
|
if (!active_) {
|
|
return;
|
|
}
|
|
// El fade té 32 passos interns. Amb un tick per frame (~16ms)
|
|
// dura ~512ms — el mateix temps que la versió bloquejant original.
|
|
// Si en el futur volem fer-lo genuinament time-based (p.ex. "fade
|
|
// de 500ms exactes independent del framerate") podem convertir la
|
|
// màquina d'estats de jdraw8 a time-based ací sense tocar cap altre
|
|
// call site.
|
|
if (Jd8::fadeTickStep()) {
|
|
active_ = false;
|
|
}
|
|
}
|
|
|
|
} // namespace Scenes
|