fix: tidy scenes enums Phase UPPER_CASE (intro/banner/mort/menu/credits)
This commit is contained in:
@@ -34,20 +34,20 @@ namespace scenes {
|
||||
fade_.startFadeTo(pal);
|
||||
delete[] pal;
|
||||
|
||||
phase_ = Phase::FadingIn;
|
||||
phase_ = Phase::FADING_IN;
|
||||
remaining_ms_ = 5000;
|
||||
}
|
||||
|
||||
void BannerScene::tick(int delta_ms) {
|
||||
switch (phase_) {
|
||||
case Phase::FadingIn:
|
||||
case Phase::FADING_IN:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Showing;
|
||||
phase_ = Phase::SHOWING;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Showing:
|
||||
case Phase::SHOWING:
|
||||
if (Ji::anyKey()) {
|
||||
remaining_ms_ = 0;
|
||||
} else {
|
||||
@@ -56,18 +56,18 @@ namespace scenes {
|
||||
if (remaining_ms_ <= 0) {
|
||||
Audio::get()->fadeOutMusic(250);
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadingOut;
|
||||
phase_ = Phase::FADING_OUT;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FadingOut:
|
||||
case Phase::FADING_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,18 +24,18 @@ namespace scenes {
|
||||
public:
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
[[nodiscard]] auto nextState() const -> int override { return 0; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t { FadingIn,
|
||||
Showing,
|
||||
FadingOut,
|
||||
Done };
|
||||
enum class Phase : std::uint8_t { FADING_IN,
|
||||
SHOWING,
|
||||
FADING_OUT,
|
||||
DONE };
|
||||
|
||||
SurfaceHandle gfx_;
|
||||
PaletteFade fade_;
|
||||
Phase phase_{Phase::FadingIn};
|
||||
Phase phase_{Phase::FADING_IN};
|
||||
int remaining_ms_{5000};
|
||||
};
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ namespace scenes {
|
||||
Jd8::setScreenPalette(pal);
|
||||
// `pal` passa a ser propietat de main_palette — no l'alliberem.
|
||||
|
||||
phase_ = Phase::Rolling;
|
||||
phase_ = Phase::ROLLING;
|
||||
contador_ = 1;
|
||||
contador_acc_ms_ = 0;
|
||||
}
|
||||
@@ -109,7 +109,7 @@ namespace scenes {
|
||||
|
||||
void CreditsScene::tick(int delta_ms) {
|
||||
switch (phase_) {
|
||||
case Phase::Rolling: {
|
||||
case Phase::ROLLING: {
|
||||
// Avancem el contador en passos discrets de 20 ms, igual
|
||||
// que feia Jg::shouldUpdate(20) al vell doCredits.
|
||||
contador_acc_ms_ += delta_ms;
|
||||
@@ -124,20 +124,20 @@ namespace scenes {
|
||||
if (Ji::anyKey() || contador_ >= CONTADOR_MAX) {
|
||||
writeTrickIni();
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadingOut;
|
||||
phase_ = Phase::FADING_OUT;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::FadingOut:
|
||||
case Phase::FADING_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
info::ctx.num_piramide = 255;
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,12 +30,12 @@ namespace scenes {
|
||||
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t { Rolling,
|
||||
FadingOut,
|
||||
Done };
|
||||
enum class Phase : std::uint8_t { ROLLING,
|
||||
FADING_OUT,
|
||||
DONE };
|
||||
|
||||
void render();
|
||||
static void writeTrickIni();
|
||||
@@ -45,7 +45,7 @@ namespace scenes {
|
||||
PaletteFade fade_;
|
||||
FrameAnimator coche_{8, 60, true}; // 8 frames × 60 ms (~3 × 20 ms tick vell)
|
||||
|
||||
Phase phase_{Phase::Rolling};
|
||||
Phase phase_{Phase::ROLLING};
|
||||
int contador_{1};
|
||||
int contador_acc_ms_{0};
|
||||
};
|
||||
|
||||
@@ -60,7 +60,7 @@ namespace scenes {
|
||||
|
||||
Jd8::clearScreen(0);
|
||||
|
||||
phase_ = Phase::Initial;
|
||||
phase_ = Phase::INITIAL;
|
||||
phase_acc_ms_ = 0;
|
||||
reveal_letter_ = 0;
|
||||
reveal_cursor_visible_ = true;
|
||||
@@ -69,11 +69,11 @@ namespace scenes {
|
||||
|
||||
void IntroNewLogoScene::render() {
|
||||
switch (phase_) {
|
||||
case Phase::Initial:
|
||||
case Phase::INITIAL:
|
||||
Jd8::clearScreen(0);
|
||||
break;
|
||||
|
||||
case Phase::Revealing: {
|
||||
case Phase::REVEALING: {
|
||||
Jd8::clearScreen(0);
|
||||
Jd8::blit(LOGO_DST_X, LOGO_DST_Y, gfx_, LOGO_SRC_X, LOGO_SRC_Y, LETTER_WIDTHS[reveal_letter_], LOGO_HEIGHT);
|
||||
if (reveal_cursor_visible_) {
|
||||
@@ -82,22 +82,22 @@ namespace scenes {
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::FullLogoFlash:
|
||||
case Phase::FULL_LOGO_FLASH:
|
||||
Jd8::clearScreen(0);
|
||||
Jd8::blit(LOGO_DST_X, LOGO_DST_Y, gfx_, LOGO_SRC_X, LOGO_SRC_Y, LETTER_WIDTHS[8], LOGO_HEIGHT);
|
||||
Jd8::blit(CURSOR_X[8], CURSOR_Y, cursor_surf_, 0, 0, CURSOR_W, CURSOR_H);
|
||||
break;
|
||||
|
||||
case Phase::PaletteCycle:
|
||||
case Phase::FinalWait:
|
||||
case Phase::PALETTE_CYCLE:
|
||||
case Phase::FINAL_WAIT:
|
||||
// Logo complet sense cursor — els pixels del cursor
|
||||
// ciclarien de color durant el cicle de paleta.
|
||||
Jd8::clearScreen(0);
|
||||
Jd8::blit(LOGO_DST_X, LOGO_DST_Y, gfx_, LOGO_SRC_X, LOGO_SRC_Y, LETTER_WIDTHS[8], LOGO_HEIGHT);
|
||||
break;
|
||||
|
||||
case Phase::Sprites:
|
||||
case Phase::Done:
|
||||
case Phase::SPRITES:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -134,26 +134,26 @@ namespace scenes {
|
||||
|
||||
void IntroNewLogoScene::tick(int delta_ms) {
|
||||
// Qualsevol tecla durant el revelat o el ciclo de paleta salta
|
||||
// TOTA la intro (inclou saltar la fase de sprites). Durant Sprites
|
||||
// TOTA la intro (inclou saltar la fase de sprites). Durant SPRITES
|
||||
// deixem que la sub-escena gestione el seu propi skip (que a més
|
||||
// respecta la fase "final" no skippable de la variant 0).
|
||||
if (phase_ != Phase::Sprites && phase_ != Phase::Done && Ji::anyKey()) {
|
||||
if (phase_ != Phase::SPRITES && phase_ != Phase::DONE && Ji::anyKey()) {
|
||||
info::ctx.num_piramide = 0;
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
return;
|
||||
}
|
||||
|
||||
switch (phase_) {
|
||||
case Phase::Initial:
|
||||
case Phase::INITIAL:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= INITIAL_MS) {
|
||||
phase_ = Phase::Revealing;
|
||||
phase_ = Phase::REVEALING;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Revealing:
|
||||
case Phase::REVEALING:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= REVEAL_FRAME_MS) {
|
||||
@@ -164,23 +164,23 @@ namespace scenes {
|
||||
if (reveal_cursor_visible_) {
|
||||
++reveal_letter_;
|
||||
if (reveal_letter_ >= 9) {
|
||||
phase_ = Phase::FullLogoFlash;
|
||||
phase_ = Phase::FULL_LOGO_FLASH;
|
||||
reveal_letter_ = 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FullLogoFlash:
|
||||
case Phase::FULL_LOGO_FLASH:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= FULL_LOGO_MS) {
|
||||
phase_ = Phase::PaletteCycle;
|
||||
phase_ = Phase::PALETTE_CYCLE;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::PaletteCycle:
|
||||
case Phase::PALETTE_CYCLE:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
// Avancem passos de paleta cada 20 ms. Si el delta és gran,
|
||||
// consumim múltiples passos en la mateixa crida.
|
||||
@@ -192,20 +192,20 @@ namespace scenes {
|
||||
}
|
||||
render();
|
||||
if (palette_step_ >= PALETTE_CYCLE_STEPS) {
|
||||
phase_ = Phase::FinalWait;
|
||||
phase_ = Phase::FINAL_WAIT;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FinalWait:
|
||||
case Phase::FINAL_WAIT:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= FINAL_WAIT_MS) {
|
||||
phase_ = Phase::Sprites;
|
||||
phase_ = Phase::SPRITES;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Sprites:
|
||||
case Phase::SPRITES:
|
||||
// Sub-escena construïda al primer tick. Transferim el gfx_
|
||||
// per move — la sub-escena se n'ocupa fins que es destruix.
|
||||
// Cada tick successiu delega l'animació dels sprites.
|
||||
@@ -219,11 +219,11 @@ namespace scenes {
|
||||
// per passar al menú. Sense açò el while del fiber
|
||||
// tornaria a crear IntroNewLogoScene infinitament.
|
||||
info::ctx.num_piramide = 0;
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,17 +37,17 @@ namespace scenes {
|
||||
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t {
|
||||
Initial, // pantalla negra 1000 ms
|
||||
Revealing, // 9 × 2 frames × 150 ms cada un
|
||||
FullLogoFlash, // logo complet + cursor, 200 ms
|
||||
PaletteCycle, // 256 passos × 20 ms modificant paleta
|
||||
FinalWait, // 20 ms final
|
||||
Sprites, // tick delegat a IntroSpritesScene fins que acaba
|
||||
Done,
|
||||
INITIAL, // pantalla negra 1000 ms
|
||||
REVEALING, // 9 × 2 frames × 150 ms cada un
|
||||
FULL_LOGO_FLASH, // logo complet + cursor, 200 ms
|
||||
PALETTE_CYCLE, // 256 passos × 20 ms modificant paleta
|
||||
FINAL_WAIT, // 20 ms final
|
||||
SPRITES, // tick delegat a IntroSpritesScene fins que acaba
|
||||
DONE,
|
||||
};
|
||||
|
||||
void render();
|
||||
@@ -58,7 +58,7 @@ namespace scenes {
|
||||
Jd8::Palette pal_{nullptr}; // propietat transferida a main_palette via SetScreenPalette
|
||||
std::unique_ptr<IntroSpritesScene> sprites_scene_;
|
||||
|
||||
Phase phase_{Phase::Initial};
|
||||
Phase phase_{Phase::INITIAL};
|
||||
int phase_acc_ms_{0};
|
||||
int reveal_letter_{0};
|
||||
bool reveal_cursor_visible_{true};
|
||||
|
||||
@@ -73,7 +73,7 @@ namespace scenes {
|
||||
|
||||
Jd8::clearScreen(0);
|
||||
|
||||
phase_ = Phase::InitialWait;
|
||||
phase_ = Phase::INITIAL_WAIT;
|
||||
phase_acc_ms_ = 0;
|
||||
reveal_index_ = 0;
|
||||
palette_step_ = 0;
|
||||
@@ -81,11 +81,11 @@ namespace scenes {
|
||||
|
||||
void IntroScene::render() {
|
||||
switch (phase_) {
|
||||
case Phase::InitialWait:
|
||||
case Phase::INITIAL_WAIT:
|
||||
Jd8::clearScreen(0);
|
||||
break;
|
||||
|
||||
case Phase::Reveal: {
|
||||
case Phase::REVEAL: {
|
||||
const RevealStep& s = REVEAL_STEPS[reveal_index_];
|
||||
if (s.clear) {
|
||||
Jd8::clearScreen(0);
|
||||
@@ -101,8 +101,8 @@ namespace scenes {
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::PaletteCycle:
|
||||
case Phase::FinalWait:
|
||||
case Phase::PALETTE_CYCLE:
|
||||
case Phase::FINAL_WAIT:
|
||||
// Wordmark complet fix mentre cicla la paleta — l'últim
|
||||
// pas del revelat (PAS 15) deixa la pantalla en aquest mateix
|
||||
// estat, i el vell doIntro no redibuixava durant el cicle.
|
||||
@@ -110,8 +110,8 @@ namespace scenes {
|
||||
drawWordmark(gfx_);
|
||||
break;
|
||||
|
||||
case Phase::Sprites:
|
||||
case Phase::Done:
|
||||
case Phase::SPRITES:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -149,39 +149,39 @@ namespace scenes {
|
||||
|
||||
void IntroScene::tick(int delta_ms) {
|
||||
// Qualsevol tecla durant revelat/paleta salta TOTA la intro
|
||||
// (inclou saltar la fase de sprites). Durant Sprites deixem que
|
||||
// (inclou saltar la fase de sprites). Durant SPRITES deixem que
|
||||
// la sub-escena gestione el seu propi skip internament, que a més
|
||||
// respecta la fase "final" no skippable de la variant 0.
|
||||
if (phase_ != Phase::Sprites && phase_ != Phase::Done && Ji::anyKey()) {
|
||||
if (phase_ != Phase::SPRITES && phase_ != Phase::DONE && Ji::anyKey()) {
|
||||
info::ctx.num_piramide = 0;
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
return;
|
||||
}
|
||||
|
||||
switch (phase_) {
|
||||
case Phase::InitialWait:
|
||||
case Phase::INITIAL_WAIT:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= INITIAL_MS) {
|
||||
phase_ = Phase::Reveal;
|
||||
phase_ = Phase::REVEAL;
|
||||
phase_acc_ms_ = 0;
|
||||
reveal_index_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Reveal:
|
||||
case Phase::REVEAL:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= REVEAL_STEPS[reveal_index_].duration_ms) {
|
||||
phase_acc_ms_ = 0;
|
||||
++reveal_index_;
|
||||
if (reveal_index_ >= REVEAL_COUNT) {
|
||||
phase_ = Phase::PaletteCycle;
|
||||
phase_ = Phase::PALETTE_CYCLE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::PaletteCycle:
|
||||
case Phase::PALETTE_CYCLE:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
// Avancem tants passos com permet el delta, per evitar
|
||||
// saltar-ne si el frame ha vingut lent.
|
||||
@@ -193,20 +193,20 @@ namespace scenes {
|
||||
}
|
||||
render();
|
||||
if (palette_step_ >= PALETTE_CYCLE_STEPS) {
|
||||
phase_ = Phase::FinalWait;
|
||||
phase_ = Phase::FINAL_WAIT;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FinalWait:
|
||||
case Phase::FINAL_WAIT:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
render();
|
||||
if (phase_acc_ms_ >= FINAL_WAIT_MS) {
|
||||
phase_ = Phase::Sprites;
|
||||
phase_ = Phase::SPRITES;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Sprites:
|
||||
case Phase::SPRITES:
|
||||
// Sub-escena construïda al vol al primer tick d'aquesta fase.
|
||||
// Transferim el gfx_ per move — la sub-escena se n'ocupa
|
||||
// fins que es destruix. Una vegada feta, els ticks delegats
|
||||
@@ -221,11 +221,11 @@ namespace scenes {
|
||||
// Sense açò el while del fiber tornaria a crear IntroScene
|
||||
// infinitament amb num_piramide encara a 255.
|
||||
info::ctx.num_piramide = 0;
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,16 +38,16 @@ namespace scenes {
|
||||
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t {
|
||||
InitialWait, // 1000 ms pantalla negra
|
||||
Reveal, // 15 passos del wordmark
|
||||
PaletteCycle, // 256 × 20 ms mutant pal[16..31]
|
||||
FinalWait, // 200 ms abans de la sub-escena de sprites
|
||||
Sprites, // tick delegat a IntroSpritesScene fins que acaba
|
||||
Done,
|
||||
INITIAL_WAIT, // 1000 ms pantalla negra
|
||||
REVEAL, // 15 passos del wordmark
|
||||
PALETTE_CYCLE, // 256 × 20 ms mutant pal[16..31]
|
||||
FINAL_WAIT, // 200 ms abans de la sub-escena de sprites
|
||||
SPRITES, // tick delegat a IntroSpritesScene fins que acaba
|
||||
DONE,
|
||||
};
|
||||
|
||||
void render();
|
||||
@@ -57,7 +57,7 @@ namespace scenes {
|
||||
Jd8::Palette pal_{nullptr}; // propietat transferida a main_palette via SetScreenPalette
|
||||
std::unique_ptr<IntroSpritesScene> sprites_scene_;
|
||||
|
||||
Phase phase_{Phase::InitialWait};
|
||||
Phase phase_{Phase::INITIAL_WAIT};
|
||||
int phase_acc_ms_{0};
|
||||
int reveal_index_{0};
|
||||
int palette_step_{0};
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace scenes {
|
||||
gfx_ = SurfaceHandle("gfx/menu2.gif");
|
||||
|
||||
// Pintat inicial (congelat durant el fade-in de paleta). El loop
|
||||
// d'animació repintarà tot des de zero en el primer tick de Showing.
|
||||
// d'animació repintarà tot des de zero en el primer tick de SHOWING.
|
||||
Jd8::blit(fondo_);
|
||||
Jd8::blitCK(100, 25, gfx_, 0, 74, 124, 68, 255); // logo
|
||||
Jd8::blitCK(130, 100, gfx_, 0, 0, 80, 74, 255); // camell (frame 0)
|
||||
@@ -23,7 +23,7 @@ namespace scenes {
|
||||
fade_.startFadeTo(pal);
|
||||
delete[] pal;
|
||||
|
||||
phase_ = Phase::FadingIn;
|
||||
phase_ = Phase::FADING_IN;
|
||||
}
|
||||
|
||||
void MenuScene::render() {
|
||||
@@ -60,14 +60,14 @@ namespace scenes {
|
||||
|
||||
void MenuScene::tick(int delta_ms) {
|
||||
switch (phase_) {
|
||||
case Phase::FadingIn:
|
||||
case Phase::FADING_IN:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Showing;
|
||||
phase_ = Phase::SHOWING;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Showing: {
|
||||
case Phase::SHOWING: {
|
||||
// Palmeres: 1 pixel cada 80 ms (= cada 4 ticks × 20 ms originals)
|
||||
palmeres_acc_ms_ += delta_ms;
|
||||
while (palmeres_acc_ms_ >= 80) {
|
||||
@@ -103,19 +103,19 @@ namespace scenes {
|
||||
Ji::disableKeyboard(60);
|
||||
info::ctx.num_piramide = 1;
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadingOut;
|
||||
phase_ = Phase::FADING_OUT;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::FadingOut:
|
||||
case Phase::FADING_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,13 +28,13 @@ namespace scenes {
|
||||
public:
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t { FadingIn,
|
||||
Showing,
|
||||
FadingOut,
|
||||
Done };
|
||||
enum class Phase : std::uint8_t { FADING_IN,
|
||||
SHOWING,
|
||||
FADING_OUT,
|
||||
DONE };
|
||||
|
||||
void render();
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace scenes {
|
||||
PaletteFade fade_;
|
||||
FrameAnimator camello_{4, 160, true};
|
||||
|
||||
Phase phase_{Phase::FadingIn};
|
||||
Phase phase_{Phase::FADING_IN};
|
||||
|
||||
// Scrollers horizontals. Mouen 1 pixel per pas.
|
||||
int palmeres_{0};
|
||||
|
||||
@@ -24,20 +24,20 @@ namespace scenes {
|
||||
fade_.startFadeTo(pal);
|
||||
delete[] pal;
|
||||
|
||||
phase_ = Phase::FadingIn;
|
||||
phase_ = Phase::FADING_IN;
|
||||
remaining_ms_ = 10000;
|
||||
}
|
||||
|
||||
void MortScene::tick(int delta_ms) {
|
||||
switch (phase_) {
|
||||
case Phase::FadingIn:
|
||||
case Phase::FADING_IN:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Showing;
|
||||
phase_ = Phase::SHOWING;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Showing:
|
||||
case Phase::SHOWING:
|
||||
if (Ji::anyKey()) {
|
||||
remaining_ms_ = 0;
|
||||
} else {
|
||||
@@ -49,18 +49,18 @@ namespace scenes {
|
||||
playMusic("music/menu.ogg");
|
||||
info::ctx.num_piramide = 0;
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadingOut;
|
||||
phase_ = Phase::FADING_OUT;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FadingOut:
|
||||
case Phase::FADING_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,17 +20,17 @@ namespace scenes {
|
||||
public:
|
||||
void onEnter() override;
|
||||
void tick(int delta_ms) override;
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::Done; }
|
||||
[[nodiscard]] auto done() const -> bool override { return phase_ == Phase::DONE; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t { FadingIn,
|
||||
Showing,
|
||||
FadingOut,
|
||||
Done };
|
||||
enum class Phase : std::uint8_t { FADING_IN,
|
||||
SHOWING,
|
||||
FADING_OUT,
|
||||
DONE };
|
||||
|
||||
SurfaceHandle gfx_;
|
||||
PaletteFade fade_;
|
||||
Phase phase_{Phase::FadingIn};
|
||||
Phase phase_{Phase::FADING_IN};
|
||||
int remaining_ms_{10000}; // 1000 ticks × 10 ms/tick del doMort original
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user