#pragma once #include "core/jail/jdraw8.hpp" namespace scenes { // Embolcall fi damunt de la màquina d'estats de fade de jdraw8 // (`JD8_FadeStart*` / `JD8_FadeTickStep`). Exposa una API time-based // però internament avança un pas del fade per cada crida a `tick()`. // La raó de tindre-ho com a classe a banda: que una escena no puga // cridar accidentalment a `JD8_FadeOut`/`JD8_FadeToPal` (els shims // bloquejants vells) i que el `done()` siga consultable com la resta // dels helpers. class PaletteFade { public: PaletteFade() = default; void startFadeOut(); void startFadeTo(JD8_Palette target); void tick(int delta_ms); bool active() const { return active_; } bool done() const { return !active_; } private: bool active_{false}; }; } // namespace scenes