fix: tidy scenes (slides/secreta enums UPPER_CASE) i mapa membres _
This commit is contained in:
1 parent
bbcc10da81
commit
4cac807ce2
6 files changed
+165
-165
No files matched your search
@@ -54,7 +54,7 @@ namespace scenes {
|
||||
pal_active_ = new Color[256];
|
||||
std::memcpy(pal_active_, pal_aux_, 768);
|
||||
|
||||
phase_ = Phase::InitialFadeOut;
|
||||
phase_ = Phase::INITIAL_FADE_OUT;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
|
||||
@@ -78,20 +78,20 @@ namespace scenes {
|
||||
void SecretaScene::beginFinalFade() {
|
||||
Audio::get()->fadeOutMusic(250);
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FinalFadeOut;
|
||||
phase_ = Phase::FINAL_FADE_OUT;
|
||||
}
|
||||
|
||||
void SecretaScene::tick(int delta_ms) {
|
||||
// Skip per tecla (després del fade inicial, no mentre). Salta
|
||||
// directament al FinalFadeOut. Mateix patró que el vell, on
|
||||
// directament al FINAL_FADE_OUT. Mateix patró que el vell, on
|
||||
// qualsevol tecla sortia del loop.
|
||||
if (!skip_triggered_ && phase_ != Phase::InitialFadeOut && Ji::anyKey()) {
|
||||
if (!skip_triggered_ && phase_ != Phase::INITIAL_FADE_OUT && Ji::anyKey()) {
|
||||
skip_triggered_ = true;
|
||||
beginFinalFade();
|
||||
}
|
||||
|
||||
switch (phase_) {
|
||||
case Phase::InitialFadeOut:
|
||||
case Phase::INITIAL_FADE_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
// Ara main_palette (la vella) té tots els canals a 0.
|
||||
@@ -100,12 +100,12 @@ namespace scenes {
|
||||
// futures escriptures a pal_active_ afecten la pantalla.
|
||||
Jd8::setScreenPalette(pal_active_);
|
||||
Jd8::clearScreen(255);
|
||||
phase_ = Phase::Tomba1ScrollIn;
|
||||
phase_ = Phase::TOMBA1_SCROLL_IN;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Tomba1ScrollIn: {
|
||||
case Phase::TOMBA1_SCROLL_IN: {
|
||||
phase_acc_ms_ += delta_ms;
|
||||
const int contador = std::min(128, (phase_acc_ms_ / TICK_MS) + 1);
|
||||
// Dos blits solapats: el primer avança a velocitat completa,
|
||||
@@ -113,63 +113,63 @@ namespace scenes {
|
||||
Jd8::blit(70, 60, gfx_, 0, contador, 178, 70);
|
||||
Jd8::blitCK(70, 60, gfx_, 178, contador >> 1, 142, 70, 255);
|
||||
if (phase_acc_ms_ >= TOMBA1_SCROLL_MS) {
|
||||
phase_ = Phase::Tomba1Hold;
|
||||
phase_ = Phase::TOMBA1_HOLD;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::Tomba1Hold:
|
||||
case Phase::TOMBA1_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= TOMBA1_HOLD_MS) {
|
||||
swapToTomba2();
|
||||
phase_ = Phase::Tomba2ScrollIn;
|
||||
phase_ = Phase::TOMBA2_SCROLL_IN;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Tomba2ScrollIn: {
|
||||
case Phase::TOMBA2_SCROLL_IN: {
|
||||
phase_acc_ms_ += delta_ms;
|
||||
const int contador = std::min(94, (phase_acc_ms_ / TICK_MS) + 1);
|
||||
Jd8::blit(55, 53, gfx_, 0, 158 - contador, 211, contador);
|
||||
if (phase_acc_ms_ >= TOMBA2_SCROLL_MS) {
|
||||
phase_ = Phase::Tomba2Hold;
|
||||
phase_ = Phase::TOMBA2_HOLD;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::Tomba2Hold:
|
||||
case Phase::TOMBA2_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= TOMBA2_HOLD_MS) {
|
||||
beginRedPulseSetup();
|
||||
phase_ = Phase::Tomba2Reveal;
|
||||
phase_ = Phase::TOMBA2_REVEAL;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Tomba2Reveal: {
|
||||
case Phase::TOMBA2_REVEAL: {
|
||||
phase_acc_ms_ += delta_ms;
|
||||
const int contador = std::min(80, (phase_acc_ms_ / TICK_MS) + 1);
|
||||
// Revelat horitzontal simètric: l'amplada creix 2px per tick
|
||||
// i el src_x es desplaça a l'esquerra el mateix.
|
||||
Jd8::blit(80, 68, gfx_, 160 - (contador * 2), 0, contador * 2, 64);
|
||||
if (phase_acc_ms_ >= TOMBA2_REVEAL_MS) {
|
||||
phase_ = Phase::Tomba2RevealHold;
|
||||
phase_ = Phase::TOMBA2_REVEAL_HOLD;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::Tomba2RevealHold:
|
||||
case Phase::TOMBA2_REVEAL_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= TOMBA2_REVEAL_HOLD_MS) {
|
||||
phase_ = Phase::RedPulse;
|
||||
phase_ = Phase::RED_PULSE;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::RedPulse: {
|
||||
case Phase::RED_PULSE: {
|
||||
phase_acc_ms_ += delta_ms;
|
||||
const int contador = std::min(51, phase_acc_ms_ / TICK_MS);
|
||||
// Anima el canal R dels índexs 254 i 253 (aquest a la meitat
|
||||
@@ -177,27 +177,27 @@ namespace scenes {
|
||||
Jd8::setPaletteColor(254, contador + 12, 11, 11);
|
||||
Jd8::setPaletteColor(253, (contador + 12) >> 1, 11, 11);
|
||||
if (phase_acc_ms_ >= RED_PULSE_MS) {
|
||||
phase_ = Phase::RedPulseHold;
|
||||
phase_ = Phase::RED_PULSE_HOLD;
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::RedPulseHold:
|
||||
case Phase::RED_PULSE_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= RED_PULSE_HOLD_MS) {
|
||||
beginFinalFade();
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FinalFadeOut:
|
||||
case Phase::FINAL_FADE_OUT:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,22 +33,22 @@ 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; }
|
||||
[[nodiscard]] auto nextState() const -> int override { return 0; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t {
|
||||
InitialFadeOut,
|
||||
Tomba1ScrollIn,
|
||||
Tomba1Hold,
|
||||
Tomba2ScrollIn,
|
||||
Tomba2Hold,
|
||||
Tomba2Reveal,
|
||||
Tomba2RevealHold,
|
||||
RedPulse,
|
||||
RedPulseHold,
|
||||
FinalFadeOut,
|
||||
Done,
|
||||
INITIAL_FADE_OUT,
|
||||
TOMBA1_SCROLL_IN,
|
||||
TOMBA1_HOLD,
|
||||
TOMBA2_SCROLL_IN,
|
||||
TOMBA2_HOLD,
|
||||
TOMBA2_REVEAL,
|
||||
TOMBA2_REVEAL_HOLD,
|
||||
RED_PULSE,
|
||||
RED_PULSE_HOLD,
|
||||
FINAL_FADE_OUT,
|
||||
DONE,
|
||||
};
|
||||
|
||||
void swapToTomba2();
|
||||
@@ -60,7 +60,7 @@ namespace scenes {
|
||||
Jd8::Palette pal_active_{nullptr}; // propietat transferida a main_palette
|
||||
PaletteFade fade_;
|
||||
|
||||
Phase phase_{Phase::InitialFadeOut};
|
||||
Phase phase_{Phase::INITIAL_FADE_OUT};
|
||||
int phase_acc_ms_{0};
|
||||
bool skip_triggered_{false};
|
||||
};
|
||||
|
||||
@@ -60,7 +60,7 @@ namespace scenes {
|
||||
|
||||
Jd8::clearScreen(BG_COLOR_INDEX);
|
||||
|
||||
phase_ = Phase::Slide1Enter;
|
||||
phase_ = Phase::SLIDE1_ENTER;
|
||||
phase_acc_ms_ = 0;
|
||||
next_state_ = 0;
|
||||
}
|
||||
@@ -96,7 +96,7 @@ namespace scenes {
|
||||
Audio::get()->fadeOutMusic(250);
|
||||
}
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadeFinal;
|
||||
phase_ = Phase::FADE_FINAL;
|
||||
}
|
||||
|
||||
void SlidesScene::tick(int delta_ms) {
|
||||
@@ -109,18 +109,18 @@ namespace scenes {
|
||||
Audio::get()->fadeOutMusic(250);
|
||||
}
|
||||
fade_.startFadeOut();
|
||||
phase_ = Phase::FadeFinal;
|
||||
phase_ = Phase::FADE_FINAL;
|
||||
}
|
||||
|
||||
switch (phase_) {
|
||||
case Phase::Slide1Enter:
|
||||
case Phase::Slide2Enter:
|
||||
case Phase::Slide3Enter: {
|
||||
case Phase::SLIDE1_ENTER:
|
||||
case Phase::SLIDE2_ENTER:
|
||||
case Phase::SLIDE3_ENTER: {
|
||||
phase_acc_ms_ += delta_ms;
|
||||
int slide_idx = 2;
|
||||
if (phase_ == Phase::Slide1Enter) {
|
||||
if (phase_ == Phase::SLIDE1_ENTER) {
|
||||
slide_idx = 0;
|
||||
} else if (phase_ == Phase::Slide2Enter) {
|
||||
} else if (phase_ == Phase::SLIDE2_ENTER) {
|
||||
slide_idx = 1;
|
||||
}
|
||||
const float t = std::min(1.0F, static_cast<float>(phase_acc_ms_) / static_cast<float>(SCROLL_MS));
|
||||
@@ -131,55 +131,55 @@ namespace scenes {
|
||||
if (phase_acc_ms_ >= SCROLL_MS) {
|
||||
// Garanteix posició final exacta (pos_x=0).
|
||||
drawSlide(slide_idx, 0);
|
||||
if (phase_ == Phase::Slide1Enter) {
|
||||
phase_ = Phase::Slide1Hold;
|
||||
} else if (phase_ == Phase::Slide2Enter) {
|
||||
phase_ = Phase::Slide2Hold;
|
||||
if (phase_ == Phase::SLIDE1_ENTER) {
|
||||
phase_ = Phase::SLIDE1_HOLD;
|
||||
} else if (phase_ == Phase::SLIDE2_ENTER) {
|
||||
phase_ = Phase::SLIDE2_HOLD;
|
||||
} else {
|
||||
phase_ = Phase::Slide3Hold;
|
||||
phase_ = Phase::SLIDE3_HOLD;
|
||||
}
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case Phase::Slide1Hold:
|
||||
case Phase::Slide2Hold:
|
||||
case Phase::SLIDE1_HOLD:
|
||||
case Phase::SLIDE2_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= HOLD_MS) {
|
||||
fade_.startFadeOut();
|
||||
if (phase_ == Phase::Slide1Hold) {
|
||||
phase_ = Phase::FadeOut1;
|
||||
if (phase_ == Phase::SLIDE1_HOLD) {
|
||||
phase_ = Phase::FADE_OUT1;
|
||||
} else {
|
||||
phase_ = Phase::FadeOut2;
|
||||
phase_ = Phase::FADE_OUT2;
|
||||
}
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Slide3Hold:
|
||||
case Phase::SLIDE3_HOLD:
|
||||
phase_acc_ms_ += delta_ms;
|
||||
if (phase_acc_ms_ >= HOLD_MS) {
|
||||
beginFinalFade();
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FadeOut1:
|
||||
case Phase::FadeOut2:
|
||||
case Phase::FADE_OUT1:
|
||||
case Phase::FADE_OUT2:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
restorePalette();
|
||||
Jd8::clearScreen(BG_COLOR_INDEX);
|
||||
if (phase_ == Phase::FadeOut1) {
|
||||
phase_ = Phase::Slide2Enter;
|
||||
if (phase_ == Phase::FADE_OUT1) {
|
||||
phase_ = Phase::SLIDE2_ENTER;
|
||||
} else {
|
||||
phase_ = Phase::Slide3Enter;
|
||||
phase_ = Phase::SLIDE3_ENTER;
|
||||
}
|
||||
phase_acc_ms_ = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::FadeFinal:
|
||||
case Phase::FADE_FINAL:
|
||||
fade_.tick(delta_ms);
|
||||
if (fade_.done()) {
|
||||
if (num_piramide_at_start_ == 7) {
|
||||
@@ -188,11 +188,11 @@ namespace scenes {
|
||||
} else {
|
||||
next_state_ = 0;
|
||||
}
|
||||
phase_ = Phase::Done;
|
||||
phase_ = Phase::DONE;
|
||||
}
|
||||
break;
|
||||
|
||||
case Phase::Done:
|
||||
case Phase::DONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,18 +18,18 @@ namespace scenes {
|
||||
// - altre cas (num_piramide == 1): gfx/intro.gif, sense música nova
|
||||
//
|
||||
// Flux:
|
||||
// Slide1Enter (1600 ms scroll dreta→centre, easing outCubic)
|
||||
// → Slide1Hold (4600 ms)
|
||||
// → FadeOut1 + clear + reset paleta
|
||||
// → Slide2Enter (1600 ms scroll esquerra→centre)
|
||||
// → Slide2Hold (4600 ms)
|
||||
// → FadeOut2 + clear + reset paleta
|
||||
// → Slide3Enter (1600 ms scroll dreta→centre)
|
||||
// → Slide3Hold (4600 ms)
|
||||
// → FadeFinal (Ja::fadeOutMusic si num_piramide != 7 + fade paleta)
|
||||
// SLIDE1_ENTER (1600 ms scroll dreta→centre, easing outCubic)
|
||||
// → SLIDE1_HOLD (4600 ms)
|
||||
// → FADE_OUT1 + clear + reset paleta
|
||||
// → SLIDE2_ENTER (1600 ms scroll esquerra→centre)
|
||||
// → SLIDE2_HOLD (4600 ms)
|
||||
// → FADE_OUT2 + clear + reset paleta
|
||||
// → SLIDE3_ENTER (1600 ms scroll dreta→centre)
|
||||
// → SLIDE3_HOLD (4600 ms)
|
||||
// → FADE_FINAL (Ja::fadeOutMusic si num_piramide != 7 + fade paleta)
|
||||
// → Done
|
||||
//
|
||||
// Qualsevol tecla salta directament a FadeFinal (sense cortar la música
|
||||
// Qualsevol tecla salta directament a FADE_FINAL (sense cortar la música
|
||||
// si hem entrat per num_piramide==7, per fidelitat al vell).
|
||||
//
|
||||
// NextState:
|
||||
@@ -42,21 +42,21 @@ 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; }
|
||||
[[nodiscard]] auto nextState() const -> int override { return next_state_; }
|
||||
|
||||
private:
|
||||
enum class Phase : std::uint8_t {
|
||||
Slide1Enter,
|
||||
Slide1Hold,
|
||||
FadeOut1,
|
||||
Slide2Enter,
|
||||
Slide2Hold,
|
||||
FadeOut2,
|
||||
Slide3Enter,
|
||||
Slide3Hold,
|
||||
FadeFinal,
|
||||
Done,
|
||||
SLIDE1_ENTER,
|
||||
SLIDE1_HOLD,
|
||||
FADE_OUT1,
|
||||
SLIDE2_ENTER,
|
||||
SLIDE2_HOLD,
|
||||
FADE_OUT2,
|
||||
SLIDE3_ENTER,
|
||||
SLIDE3_HOLD,
|
||||
FADE_FINAL,
|
||||
DONE,
|
||||
};
|
||||
|
||||
// Pinta un slide amb desplaçament horitzontal. `slide_idx` = 0..2
|
||||
@@ -71,7 +71,7 @@ namespace scenes {
|
||||
Jd8::Palette pal_active_{nullptr}; // propietat transferida a main_palette
|
||||
PaletteFade fade_;
|
||||
|
||||
Phase phase_{Phase::Slide1Enter};
|
||||
Phase phase_{Phase::SLIDE1_ENTER};
|
||||
int phase_acc_ms_{0};
|
||||
int num_piramide_at_start_{1};
|
||||
int next_state_{0};
|
||||
|
||||
Reference in new issue
Block a user