JailDesigner
4f5421191d
Merge branch 'feat/hud-palette': HUD amb colors per funció + diferenciació P1/P2
2026-05-26 19:18:07 +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
1a0cc504c4
Merge branch 'refactor/rename-explosion-sounds': sons d'explosió i bullet_zap amb noms descriptius + enemy_hit per a debris_partial
2026-05-26 19:06:00 +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
9345facaed
Merge branch 'feat/orb-counterattack': orb taronja rosat dispara bullet_double cap al jugador en cada hit
2026-05-26 18:54:27 +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
a77bbe4420
Merge branch 'feat/reorganize-shapes': renombre big_pentagon→orb i reorganització de data/shapes per categoria
2026-05-26 18:27:11 +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
fbfacb825b
Merge branch 'refactor/revert-stl-loops': bucles for explícits en lloc de std::ranges::* on aplica
2026-05-26 13:50:46 +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
0dcecf9a3c
tune(lint): desactivar readability-use-anyofallof per coherència amb cppcheck
2026-05-26 13:41:06 +02:00
JailDesigner
c75e6406cd
Merge branch 'feat/wave-based-stages': sistema d'onades declaratives per fase
2026-05-26 13:37:24 +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
06e383fe2c
Merge branch 'feat/enemy-health-system': sistema d'HP declaratiu, big_pentagon i ajustos visuals
2026-05-25 22:47:54 +02:00
JailDesigner
dc5b31087a
Merge branch 'feat/debris-bullet-impulse': la bala impacta al cos O als trossos
2026-05-25 22:47:54 +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
b511740d93
Merge branch 'feat/enemy-ai-shoot': els enemics poden disparar bales declaratives des del YAML
2026-05-25 20:23:30 +02:00
JailDesigner
b0643b6f62
Merge branch 'feat/enemy-ai-wander-chase-flee': afegir WANDER/CHASE/FLEE i target multi-ship
2026-05-25 20:23:25 +02:00
JailDesigner
7e8d79222c
Merge branch 'feat/enemy-ai-movement-migration': moviment dels enemics a un sistema d'IA declaratiu
2026-05-25 20:23:02 +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
410955de3c
Merge branch 'feat/entity-event-system': sistema d'events declaratius per a enemics
2026-05-25 13:44:06 +02:00
JailDesigner
9c0502eefb
feat(enemy): sistema d'events declaratius via YAML
2026-05-25 13:34:48 +02:00
JailDesigner
9b3da3a6e7
Merge branch 'feat/enemy-star': afegir tipus STAR i 3 nous shapes
2026-05-25 12:42:06 +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
b3a1afce06
Merge branch 'feat/entities-yaml-enemy-shared': paràmetres compartits dels enemics a cada YAML
2026-05-25 11:59:28 +02:00
JailDesigner
4b6dc8a47a
feat(entities): migrar paràmetres compartits dels enemics a cada YAML
2026-05-25 11:54:40 +02:00
JailDesigner
3dadd5fc1a
Merge branch 'feat/entities-yaml-bullet': migració de la bala a YAML
2026-05-25 11:47:36 +02:00
JailDesigner
bea844d51e
feat(entities): migrar bullet a data/entities/bullet/bullet.yaml
2026-05-25 11:42:43 +02:00
JailDesigner
5fb6c68df4
Merge branch 'feat/entities-shape-scale': collision_radius derivat del shape + scale al YAML
2026-05-25 11:33:52 +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
da8eab330d
Merge branch 'feat/entities-yaml-enemies': configuració dels enemics en YAML
2026-05-25 10:15:34 +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
ed4d3a3915
Merge branch 'feat/entities-yaml-player': configuració del player en YAML
2026-05-25 09:39:39 +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
9f278772bb
Merge branch 'feat/pack-resources-align': alinear pack_resources amb projectes germans
2026-05-25 07:55:49 +02:00
JailDesigner
2d073b6055
feat(pack): alinear sortida i build amb projectes germans
2026-05-25 07:55:30 +02:00
JailDesigner
99b18d208d
chore: bump version a 0.8.0
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
v0.8.0
2026-05-24 22:41:25 +02:00
JailDesigner
1321566910
Merge branch 'feature/sistema-gestio-inputs': sistema de gestio d'inputs
...
Modul DefineInputs per redefinir teclat i mando amb overlay modal,
pagina CONTROLS al menu de servei (picker de mando amb llista, swap
automatic en conflicte, slot SENSE MANDO, rebind per jugador), so
accept en cada captura, navegacio del menu amb dpad/stick i triggers
L2/R2, glyphs ( ) i / al charset, autoassignacio de mando al primer
arranque, i diversos fixes de pipeline d'events.
2026-05-24 22:39:47 +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