JailDesigner
462e91d967
tweak(hud): restaura el tracking de les xifres del marcador (spacing 2.0)
2026-05-29 20:41:32 +02:00
JailDesigner
3bc87ad652
tweak(hud): l'últim dígit de la puntuació sempre encès (puntuació 0 no apaga el marcador)
2026-05-29 20:41:05 +02:00
JailDesigner
a7233e13df
tweak(hud): MAX_VIDES com a font única de vides i recalibra el groc atenuat de P2
2026-05-29 20:40:40 +02:00
JailDesigner
0abd661905
tweak(hud): vides com a icones de la nau en miniatura en lloc d'un número
2026-05-29 20:14:32 +02:00
JailDesigner
a808226481
tweak(hud): zeros de farciment de la puntuació atenuats i etiqueta NIVELL en verd atenuat
2026-05-29 20:11:37 +02:00
JailDesigner
317e2a3fd9
tweak(hud): marcador en tres blocs ancorats (P1 esquerra, P2 dreta, nivell centrat) amb color per jugador
2026-05-29 20:09:28 +02:00
JailDesigner
e4f8f586d6
tweak(hud): constants de l'esquema de color per jugador i de les icones de vides
2026-05-29 20:06:01 +02:00
JailDesigner
d7a9bd4ab2
tweak(game over): en acabar la partida es torna al logo en lloc del títol
2026-05-29 19:13:07 +02:00
JailDesigner
ab5489a080
tweak(nau): la nau ferida parpelleja en roig pur en lloc de daurat
2026-05-29 19:12:53 +02:00
JailDesigner
4b298ffc1c
fix(attract): el logo no sona en explotar i la càmera del dive no frena amb la cortinilla
2026-05-29 19:06:40 +02:00
JailDesigner
30bbb37bff
fix(demo): el dive movia només la posició de la càmera i s'invertia el forward; ara mou posició i target alhora
2026-05-29 10:13:30 +02:00
JailDesigner
2f6d6c405f
feat(demo): transició títol→demo amb dive de càmera + cortinilla negra (substitueix el fundido)
2026-05-29 10:03:17 +02:00
JailDesigner
068f42782b
feat(demo): transició per fosa a/desde negre en el salt títol→demo
2026-05-29 09:21:02 +02:00
JailDesigner
472c543c7b
feat(demo): el marcador mostra el rètol de demo en lloc de puntuacions
2026-05-29 09:16:55 +02:00
JailDesigner
4e67a67ace
feat(demo): la graella del fons apareix ja muntada en entrar a la demo
2026-05-29 09:12:30 +02:00
JailDesigner
1e63d3ae9d
feat(demo): silenciar els efectes de so durant la demo (música intacta)
2026-05-29 09:09:37 +02:00
JailDesigner
b363efd1f0
feat(demo): logo silenciós dins el cicle d'atracció (no sons ni reinici de música si ja sona)
2026-05-29 08:54:56 +02:00
JailDesigner
455b7a6893
feat(demo): demos a 1 i 2 jugadors, esquiva de bales enemigues i vides infinites
2026-05-28 13:14:19 +02:00
JailDesigner
92f76d091d
fix(col·lisions): les bales d'enemic deixen de comptar com a foc amic (out-of-bounds a lives_per_player) i maten d'un toc
2026-05-28 13:13:36 +02:00
JailDesigner
c1956e0028
feat(demo): attract mode amb pilot IA, escenaris curats i música contínua del títol
2026-05-28 12:01:12 +02:00
JailDesigner
f03e337b9a
refactor(input): gamecontrollerdb.txt a l'arrel + target controllerdb + logs estil [Input]
2026-05-26 19:38:31 +02:00
JailDesigner
b93761eb1e
refactor(render): eliminar restes del ColorOscillator (setLineColor/getLineColor/global mutable) i deixar DEFAULT_LINE_COLOR constexpr
2026-05-26 19:23:29 +02:00
JailDesigner
71ed9dc24f
feat(hud): paleta per segments (P1 blanc, vides ambre, nivell verd, P2 rosa)
2026-05-26 19:17:22 +02:00
JailDesigner
86775d4642
refactor(audio): renombrar hit.wav a bullet_zap.wav (desintegració de bala, no HURT d'enemic)
2026-05-26 19:05:43 +02:00
JailDesigner
b936f410ce
feat(audio): so enemy_hit per a debris_partial (impacte parcial a enemic amb HP>1)
2026-05-26 19:03:19 +02:00
JailDesigner
ddcd2076a1
refactor(audio): renombrar explosion/explosion2 a enemy_explosion/player_explosion
2026-05-26 18:57:26 +02:00
JailDesigner
885caa6bc3
feat(orb): contra-atac amb bullet_double dirigida al jugador en rebre impacte
2026-05-26 18:53:34 +02:00
JailDesigner
61a4886e62
refactor(shapes): reorganitzar data/shapes en subcarpetes per categoria (enemy/bullet/ship/effect)
2026-05-26 18:25:15 +02:00
JailDesigner
164f58c883
refactor(enemies): renombrar big_pentagon a orb i enemy_big_orb a enemy_orb
2026-05-26 18:09:29 +02:00
JailDesigner
5e4d2cf993
refactor(physics): tornar std::ranges::find a bucle for explícit
2026-05-26 13:49:16 +02:00
JailDesigner
97d3749269
refactor: tornar std::ranges::{any,all,find}_of a bucles for explícits
2026-05-26 13:45:54 +02:00
JailDesigner
0254b44369
tune(stages): netejar comentaris obsolets a processPlaying
2026-05-26 13:36:48 +02:00
JailDesigner
ff11567471
feat(stages): sistema d'onades declaratives amb condicions de transició
2026-05-26 13:32:43 +02:00
JailDesigner
9e745dc3fc
tune(enemy): trossos parcials i firework petit en color wounded
2026-05-25 22:47:31 +02:00
JailDesigner
14b10c663e
tune(enemy): big_pentagon orb circular, firework petit per hit, sense wounded chain
2026-05-25 22:28:36 +02:00
JailDesigner
f64c72f9a6
feat(enemy): sistema d'HP declaratiu i nou enemic big_pentagon
2026-05-25 21:46:48 +02:00
JailDesigner
610eaf257e
refactor(debris): la bala impacta al cos O als trossos, mai a tots dos
2026-05-25 21:26:32 +02:00
JailDesigner
14295ce859
feat(enemy): els enemics poden disparar bales via tick d'IA
2026-05-25 20:05:01 +02:00
JailDesigner
5ad433e63a
feat(enemy): afegir behaviors WANDER/CHASE/FLEE i target multi-ship
2026-05-25 18:08:11 +02:00
JailDesigner
61e40e88f4
feat(enemy): migrar el moviment dels enemics a un sistema d'IA declaratiu
2026-05-25 17:45:30 +02:00
JailDesigner
9c0502eefb
feat(enemy): sistema d'events declaratius via YAML
2026-05-25 13:34:48 +02:00
JailDesigner
bc41169176
feat(enemy): afegir tipus STAR (estrella de 5 puntes) i 3 nous shapes
...
- Nou enemic STAR amb shape star_5.shp, escala 0.7 i color groc pur.
Reusa el comportament zigzag del Pentagon i carrega via EnemyRegistry.
- DistribucioEnemics estesa amb camp 'star' opcional (default 0) per
mantenir compat amb stages antics.
- Stage 1 reconfigurat a 25/25/25/25 per mostrar els 4 tipus.
- Afegits també shapes bullet_long.shp i bullet_double.shp (encara no
utilitzats; preparats per futures variants de bala).
2026-05-25 12:36:26 +02:00
JailDesigner
4b6dc8a47a
feat(entities): migrar paràmetres compartits dels enemics a cada YAML
2026-05-25 11:54:40 +02:00
JailDesigner
bea844d51e
feat(entities): migrar bullet a data/entities/bullet/bullet.yaml
2026-05-25 11:42:43 +02:00
JailDesigner
866a057704
feat(entities): derivar collision_radius del shape + scale/collision_factor al YAML
2026-05-25 11:29:43 +02:00
JailDesigner
39bda0775e
feat(entities): migrar la configuració dels 3 enemics a data/entities/<type>/*.yaml
2026-05-25 10:01:12 +02:00
JailDesigner
6447932212
feat(entities): migrar la configuració del player a data/entities/player/player.yaml
2026-05-25 08:32:49 +02:00
JailDesigner
2d073b6055
feat(pack): alinear sortida i build amb projectes germans
2026-05-25 07:55:30 +02:00
JailDesigner
cefafe99e4
feat(service_menu): triggers L2/R2 navegables + so al rebind
...
El menu de servei nomes processava AXIS_MOTION dels sticks i descartava
els triggers. Com SDL3 mai emet button events per a L2/R2 (nomes axis),
rebindar FIRE o ACCEL a un trigger feia que no funcionaren al menu, fins
i tot estant correctament al joc per via del poll de Input::checkTriggerInput.
Afegim edge-detect dels dos triggers al handleGamepadAxis i, quan creuen
el llindar, mirem si el codi virtual (100=L2, 101=R2) coincideix amb el
binding de FIRE → activateCurrent, o ACCEL → popPage. Estat held per
trigger per evitar repeticions mentre es mante premut.
DefineInputs ara reprodueix el so accept del menu en cada captura
valida, que estava silent i no donava feedback al rebind.
Tambe extraiem processStickX/Y i processTriggerEdge per mantenir
handleGamepadAxis com a dispatcher i sota el llindar de complexitat
cognitiva del clang-tidy.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-24 22:38:10 +02:00
JailDesigner
daa7eaf811
feat(service_menu): glyphs () + tanca picker al seleccionar mando
...
Afegim els glyphs ( i ) a VectorText (char_lparen.shp, char_rparen.shp,
arcs de 4 trams dins la caixa 20x40) perque el sufix (P1)/(P2) de la
picker de mando es renderitze net sense warnings.
A mes, al triar un mando o "SENSE MANDO" a la picker fem popPage
automatic, perque l'usuari no haja de tornar enrere a ma després
d'una assignacio.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-24 22:20:29 +02:00