tweak(hud): constants de l'esquema de color per jugador i de les icones de vides
This commit is contained in:
@@ -12,17 +12,46 @@ namespace Defaults::Hud {
|
|||||||
constexpr float SCOREBOARD_TEXT_SCALE = 0.85F;
|
constexpr float SCOREBOARD_TEXT_SCALE = 0.85F;
|
||||||
constexpr float SCOREBOARD_TEXT_SPACING = 0.0F;
|
constexpr float SCOREBOARD_TEXT_SPACING = 0.0F;
|
||||||
|
|
||||||
// Colors per segment del marcador. Jerarquia per funció (score/vides/nivell)
|
// Esquema de color del marcador: "per jugador + sistema". Cada jugador usa
|
||||||
// + diferenciació de jugador (P1 blanc vs P2 rosa) sense xocar amb els
|
// el SEU color (parella brillant/atenuat) en tot el seu bloc (punts + vides);
|
||||||
// colors d'enemics (cyan/roig). Amb alpha=255 el line_renderer usa el color
|
// el nivell central va sempre en verd de sistema. Colors plans i purs: el
|
||||||
// directament sense caure al fallback verd (Rendering::DEFAULT_LINE_COLOR).
|
// glow/bloom el posa el shader de postpro, NO s'horneja al color. Amb
|
||||||
|
// alpha=255 el line_renderer usa el color directament sense caure al fallback
|
||||||
|
// verd (Rendering::DEFAULT_LINE_COLOR).
|
||||||
namespace Colors {
|
namespace Colors {
|
||||||
|
// Jugador 1 → cian.
|
||||||
|
constexpr SDL_Color P1_BRIGHT = {.r = 41, .g = 231, .b = 255, .a = 255}; // #29E7FF
|
||||||
|
constexpr SDL_Color P1_DIM = {.r = 12, .g = 90, .b = 102, .a = 255}; // #0C5A66
|
||||||
|
// Jugador 2 → groc.
|
||||||
|
constexpr SDL_Color P2_BRIGHT = {.r = 255, .g = 226, .b = 58, .a = 255}; // #FFE23A
|
||||||
|
constexpr SDL_Color P2_DIM = {.r = 110, .g = 98, .b = 16, .a = 255}; // #6E6210
|
||||||
|
// Nivell / sistema → verd.
|
||||||
|
constexpr SDL_Color LEVEL_BRIGHT = {.r = 77, .g = 255, .b = 102, .a = 255}; // #4DFF66
|
||||||
|
constexpr SDL_Color LEVEL_DIM = {.r = 29, .g = 107, .b = 44, .a = 255}; // #1D6B2C
|
||||||
|
|
||||||
|
// Colors legacy (es retiren en migrar el render del marcador).
|
||||||
constexpr SDL_Color SCORE_P1 = {.r = 255, .g = 255, .b = 255, .a = 255}; // blanc
|
constexpr SDL_Color SCORE_P1 = {.r = 255, .g = 255, .b = 255, .a = 255}; // blanc
|
||||||
constexpr SDL_Color SCORE_P2 = {.r = 255, .g = 130, .b = 200, .a = 255}; // rosa magenta
|
constexpr SDL_Color SCORE_P2 = {.r = 255, .g = 130, .b = 200, .a = 255}; // rosa magenta
|
||||||
constexpr SDL_Color LIVES = {.r = 255, .g = 180, .b = 60, .a = 255}; // ambre / or
|
constexpr SDL_Color LIVES = {.r = 255, .g = 180, .b = 60, .a = 255}; // ambre / or
|
||||||
constexpr SDL_Color LEVEL = {.r = 155, .g = 255, .b = 175, .a = 255}; // verd sistema
|
constexpr SDL_Color LEVEL = {.r = 155, .g = 255, .b = 175, .a = 255}; // verd sistema
|
||||||
} // namespace Colors
|
} // namespace Colors
|
||||||
|
|
||||||
|
// Vides representades com a icones de la nau (reutilitza la shape de la nau
|
||||||
|
// escalada, no un número). Mides derivades de l'alçada del marcador
|
||||||
|
// (Defaults::Zones::SCOREBOARD_BOTTOM_H) per encaixar-hi sempre.
|
||||||
|
namespace Lives {
|
||||||
|
constexpr float ICON_HEIGHT_RATIO = 0.45F; // alçada de la icona com a fracció de l'alçada del marcador
|
||||||
|
constexpr float ICON_SPACING_FACTOR = 1.35F; // separació centre-a-centre = alçada_icona × factor
|
||||||
|
constexpr int MAX_ICONS = 5; // límit d'icones dibuixades (acota l'ample del bloc)
|
||||||
|
} // namespace Lives
|
||||||
|
|
||||||
|
// Disposició del marcador: bloc P1 ancorat a l'esquerra, bloc P2 a la dreta
|
||||||
|
// (mateix ordre intern "punts vides", no mirrored) i nivell centrat. Els
|
||||||
|
// blocs s'alineen amb les verticals del PLAYAREA.
|
||||||
|
namespace Layout {
|
||||||
|
constexpr float BLOCK_INNER_GAP = 24.0F; // separació punts↔vides dins d'un bloc (px lògics)
|
||||||
|
} // namespace Layout
|
||||||
|
|
||||||
// Animación de entrada del HUD (init_hud_animator).
|
// Animación de entrada del HUD (init_hud_animator).
|
||||||
namespace InitAnim {
|
namespace InitAnim {
|
||||||
// Spawn vertical de la nave: 50 px bajo la PLAYAREA (sale desde fuera).
|
// Spawn vertical de la nave: 50 px bajo la PLAYAREA (sale desde fuera).
|
||||||
|
|||||||
Reference in New Issue
Block a user