feat(playfield): refactor a Playfield amb animació de creació durant l'INIT_HUD

This commit is contained in:
2026-05-21 20:44:17 +02:00
parent dc389037f8
commit 07985228b2
9 changed files with 197 additions and 102 deletions
-15
View File
@@ -1,15 +0,0 @@
// grid.hpp - Configuració de la grilla de fons del playfield
// © 2026 JailDesigner
#pragma once
namespace Defaults::Grid {
constexpr int COLUMNS = 16; // cel·les omplen tota la PLAYAREA: cell_w = w/16
constexpr int ROWS = 8; // cel·les omplen tota la PLAYAREA: cell_h = h/8 (≈2% més altes que amples)
constexpr float BRIGHTNESS = 0.15F; // intensitat respecte al color global (border = 1.0)
constexpr int SUBDIVISIONS = 5; // cada cel·la principal es divideix en N subcel·les
constexpr float SUBGRID_BRIGHTNESS = 0.05F; // intensitat de la sub-graella
} // namespace Defaults::Grid
+24
View File
@@ -0,0 +1,24 @@
// playfield.hpp - Configuració del fons del playfield (graella, sub-graella, animació)
// © 2026 JailDesigner
#pragma once
namespace Defaults::Playfield {
// Estructura de la graella (cel·les omplen tota la PLAYAREA)
constexpr int COLUMNS = 16; // cell_w = PLAYAREA.w / 16
constexpr int ROWS = 8; // cell_h = PLAYAREA.h / 8
constexpr int SUBDIVISIONS = 5; // cada cel·la principal es divideix en N subcel·les
// Brillo respecte al color global (border = 1.0)
constexpr float GRID_BRIGHTNESS = 0.15F;
constexpr float SUBGRID_BRIGHTNESS = 0.05F;
// Animació de creació amb timer intern del Playfield.
// L'animació total cobreix tot l'INIT_HUD (3 s). Cada línia es pinta en
// LINE_GROWTH_DURATION_S; l'spawn de les línies es distribueix perquè
// l'última acabe just al final de TOTAL_ANIMATION_DURATION_S.
constexpr float LINE_GROWTH_DURATION_S = 0.4F;
constexpr float TOTAL_ANIMATION_DURATION_S = 3.0F; // = Defaults::Game::INIT_HUD_DURATION
} // namespace Defaults::Playfield