refactor(data): reorganitza data/ i centralitza paths a defaults.hpp
This commit is contained in:
1 parent
9949096fba
commit
05465b791e
54 files changed
+368
-304
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# Configuració de la GameScene: timings i corbes de la FSM de sala
|
||||
# (ROOM_INTRO i ROOM_OUTRO). Tots els valors són ms i tota la geometria
|
||||
# i font del text es reutilitzen del tema UI (data/ui.yaml > pause +
|
||||
# i font del text es reutilitzen del tema UI (data/config/ui.yaml > pause +
|
||||
# notification). Si manca el fitxer o alguna clau, GameScene cau als
|
||||
# fallbacks compilats; veure `readSceneConfig` a game_scene.cpp.
|
||||
|
||||
@@ -17,7 +17,7 @@ room_intro:
|
||||
# single-player s'usa només `player_spawn_delay_ms`.
|
||||
player_spawn_delay_ms: 0
|
||||
player2_spawn_delay_ms: 300
|
||||
# Preset de reverb (catàleg a `data/sounds.yaml`) aplicat al primer
|
||||
# Preset de reverb (catàleg a `data/config/sounds.yaml`) aplicat al primer
|
||||
# LAND de cada jugador durant la cinemàtica d'entrada. La sala dona
|
||||
# "més detall" sonor a l'INTRO; els salts del joc i els respawns
|
||||
# post-mort cauen al so sec. Buit o absent = sense reverb.
|
||||
@@ -33,7 +33,7 @@ room_outro:
|
||||
|
||||
text:
|
||||
# Noms d'easing tal com els resol UiConfig::curveByName (vegeu
|
||||
# `data/ui.yaml`). El text entra suau i surt accelerant.
|
||||
# `data/config/ui.yaml`). El text entra suau i surt accelerant.
|
||||
enter_curve: outCubic
|
||||
exit_curve: inCubic
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
# Configuració de la LogoScene (logotip de l'editora). El revelat del
|
||||
# logo a la fase SCAN imita un escaneig CRT: una banda lluminosa baixa
|
||||
# de dalt a baix; per damunt es veu la imatge ja "impressa", per sota
|
||||
# encara és negre. Al voltant de la banda hi ha glitch (offset
|
||||
# horitzontal de files amb falloff per distància) i ocasionalment
|
||||
# apareixen bursts VHS (franges desplaçades) damunt la part ja
|
||||
# revelada. Quan la banda toca el peu del logo, un flash blanc tanca
|
||||
# l'efecte i s'entra a MIDDLE (logo estable).
|
||||
logo:
|
||||
scan:
|
||||
duration_ms: 1500 # durada total del scan top→bottom
|
||||
band_height_px: 4 # alçada (px) de la banda lluminosa
|
||||
band_alpha: 200 # opacitat (0..255) de la capa blanca de la banda
|
||||
band_pulse_hz: 20.0 # freqüència del pulse de brillantor (Hz)
|
||||
band_pulse_depth: 0.45 # profunditat del pulse (0..1; 0 = sense pulse)
|
||||
# Glitch d'impacte (files al voltant de la banda)
|
||||
glitch_amplitude_px: 6 # offset horitzontal màxim a la banda
|
||||
glitch_band_radius_px: 12 # files damunt/sota la banda amb glitch (falloff lineal)
|
||||
# Bursts VHS sobre la part ja revelada
|
||||
vhs_burst_per_sec: 3 # bursts/segon mitjà
|
||||
vhs_burst_duration_ms: 80 # durada de cada burst
|
||||
vhs_burst_height_px: 8 # alçada de la franja afectada
|
||||
vhs_burst_amplitude_px: 8 # offset horitzontal del burst
|
||||
flash_ms: 100 # flash blanc final quan acaba el scan
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 494 B |
Binary file not shown.
|
After Width: | Height: | Size: 200 B |
Binary file not shown.
|
After Width: | Height: | Size: 99 B |
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
@@ -0,0 +1,77 @@
|
||||
# Configuració de la TitleScene.
|
||||
# `bg_color` i `text_color` són índexs sobre la paleta "ui" (uzebox.pal):
|
||||
# 1 = (36,0,0) gairebé negre amb un mínim de càlid; 31 = (255,109,0)
|
||||
# taronja pur. `duration_ms` és el timeout abans de saltar a la
|
||||
# següent escena (skipable amb tecla no reservada). Els dos
|
||||
# `blink_*_ms` defineixen el cicle del prompt "press start": el text
|
||||
# es veu durant `visible_ms` i s'amaga durant `hidden_ms` repetint-se.
|
||||
title:
|
||||
duration_ms: 30000
|
||||
bg_color: 1
|
||||
text_color: 31
|
||||
# Color del text del © de copyright (peu de la TITLE). Off-white càlid:
|
||||
# índex 183 = (255,218,170), tipus crema/peach, ~90% blanc amb tint càlid.
|
||||
copyright_color: 183
|
||||
# Color de l'outline del prompt "PRESS START". Marró fosc càlid (índex
|
||||
# 19 = 109,72,0), coherent amb la paleta del logo. Es manté separat de
|
||||
# `copyright_color` perquè l'outline i el text del © tenen rols visuals
|
||||
# diferents (contrast vs. peu informatiu).
|
||||
press_start_outline_color: 19
|
||||
# Posicions Y dels tres elements verticals de la TITLE, en percentatge
|
||||
# sobre l'alçada del canvas (240 px). El logo s'ancora pel seu top
|
||||
# (la imatge cau cap avall des d'aquest Y); el prompt i el copyright
|
||||
# es centren verticalment sobre la línia.
|
||||
logo_y_percent: 15
|
||||
prompt_y_percent: 68
|
||||
copyright_y_percent: 92
|
||||
# Separació vertical en píxels entre el minilogo i el text del © al peu.
|
||||
mini_logo_gap_px: 2
|
||||
blink_visible_ms: 800
|
||||
blink_hidden_ms: 200
|
||||
# Fase STARTING (entre la primera pulsació de START i el salt a la
|
||||
# següent escena). `starting_ms` és la durada fixa; durant aquesta
|
||||
# fase el parpadeig accelera per `starting_blink_speedup` (2.0 = doble
|
||||
# de freqüència). Si l'altre jugador prem START dins d'aquesta
|
||||
# finestra, el comptador es reseteja i s'arrenca amb BOTH.
|
||||
starting_ms: 3000
|
||||
# Durant STARTING el prompt commuta a un cicle simètric 50/50
|
||||
# (visible/ocult) amb aquest període total. 200 ms = 5 Hz, prou
|
||||
# ràpid per llegir-se com a "pulsació confirmada".
|
||||
starting_blink_period_ms: 200
|
||||
# Fade-out estil "mosaic dissolve" durant l'última part de STARTING.
|
||||
# `fade_out_ms` ha de ser <= starting_ms (els últims X ms del STARTING
|
||||
# es fan amb el dissolve actiu fins a quedar negre). `fade_out_max_block`
|
||||
# és la mida màxima de bloc en píxels al final del fade.
|
||||
fade_out_ms: 800
|
||||
fade_out_max_block: 32
|
||||
# Fade-out de `title.ogg` en entrar a STARTING. Independent del visual:
|
||||
# la música pot acabar abans o després del mosaic dissolve.
|
||||
music_fade_out_ms: 3000
|
||||
# Fade-to-black per a la sortida d'attract (timeout cap a LOGO). NO és
|
||||
# mosaic — capa negra lineal damunt del canvas. La música no es toca:
|
||||
# `title.ogg` continua sonant cap a LOGO, que ja veurà què en fa.
|
||||
attract_fade_to_black_ms: 800
|
||||
# Seqüència d'aparició dels elements de la TITLE en fase IDLE. Tots
|
||||
# els temps són absoluts des de l'entrada a l'escena. `fade_in_ms` és
|
||||
# la capa negra inicial que s'esvaeix cap al fons; els altres marquen
|
||||
# quan apareix cada element. Si l'usuari prem START en qualsevol
|
||||
# moment, la seqüència es completa instantàniament.
|
||||
intro:
|
||||
fade_in_ms: 500 # fade-in negre inicial sobre el fons
|
||||
game_logo_at_ms: 1500 # visibilitat binària del game_logo
|
||||
mini_logo_at_ms: 2000 # inici del slide-in del mini-logo
|
||||
mini_logo_slide_ms: 500 # durada del slide
|
||||
copyright_at_ms: 2200 # inici del slide-in del copyright
|
||||
copyright_slide_ms: 500 # durada del slide
|
||||
slide_curve: outCubic # corba compartida per mini_logo i copyright
|
||||
press_start_at_ms: 3000 # quan apareix PRESS START amb parpadeig
|
||||
# Distorsió sinusoidal del fons (efecte de calor del desert).
|
||||
# `amplitude_px`: desplaçament màxim de cada fila en píxels.
|
||||
# `wavelength_px`: distància vertical entre dos pics de l'ona.
|
||||
# `speed_hz`: velocitat amb què avança la fase (cicles per segon).
|
||||
# Si `enabled` és false, el fons es pinta sense distorsió.
|
||||
heat_haze:
|
||||
enabled: true
|
||||
amplitude_px: 1.5
|
||||
wavelength_px: 32.0
|
||||
speed_hz: 0.6
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Reference in new issue
Block a user