JailDesigner
cfbcdc236b
feat(whip): cabla flag combat.friendly_fire a hitPlayerIfApplicable
...
Quan el flag està desactivat, el látigo no fa dany a altres jugadors
(l'owner ja quedava exclòs per la guarda existent). Default true:
manté el comportament actual.
Sense canvis als tests del whip — friendly fire ja no es cobreix
allà perquè els stubs de Player no porten estat real (vegeu el comentari
del top de test_whip_attack.cpp).
2026-05-08 13:24:33 +02:00
JailDesigner
7871d3930e
feat(whip): cabla flag whip.damage_pierces_walls a computeDamageRect
...
Quan el flag està actiu (default), l'iteració píxel a píxel ignora
`Map::collides` i només respecta `insidePlayfield`. El mur extern,
doncs, sempre retalla — fora del playfield no hi ha res a colpejar.
Els tests existents passen amb la nova lògica perquè els seus setups
posen el damage_rect a corredors lliures (sense sarcs a la trajectòria),
i el test W2 segueix verificant el retall del playfield.
2026-05-08 13:22:52 +02:00
JailDesigner
e9f99a0542
fix(mummy): evita soft-lock per drift sub-pixel a HURT vora del mur
2026-05-08 12:07:18 +02:00
JailDesigner
0ec1a2548a
feat(mummy): so mummy_hurt en colpejada de fuet
2026-05-07 20:25:23 +02:00
JailDesigner
f591aa82fd
fix(whip_attack): treure entity_manager_ duplicat (ja viu a Entity)
2026-05-02 11:01:53 +02:00
JailDesigner
9ac0c0cb74
refactor(mummy): generalitza el filtre de cruces a isBlockedAheadInDir
2026-04-30 20:05:36 +02:00
JailDesigner
7d0aca506a
feat(decals): tiles de decal de sòl compten com a pintats des del load
2026-04-30 19:16:21 +02:00
JailDesigner
7cd7b4dc4f
chore(hole): neteja de comentaris obsolets i notes sobre riscos latents
2026-04-30 18:52:49 +02:00
JailDesigner
6d4f606eeb
feat(mummy): evita forats per detecció reactiva al canvi de tile
2026-04-30 18:30:03 +02:00
JailDesigner
1ccd444aad
fix(hazard): el jugador només cau al Hole si la hit-box hi cap del tot
2026-04-30 16:56:56 +02:00
JailDesigner
3bfca35f3a
feat(mummy): evita tiles amb decal trigger (Hole) en decidir direcció
2026-04-30 16:50:26 +02:00
JailDesigner
4da50571eb
feat(hazard): nou hazard Hole — caiguda per forat amb clip rect
2026-04-30 13:32:17 +02:00
JailDesigner
9f0a566ffb
feat(player): mort i respawn (DYING + death_spinning + lives counter)
2026-04-29 11:40:05 +02:00
JailDesigner
72384c3113
feat(anim): cardinal WEST i flip totalment governat pel motor d'animació
2026-04-29 10:11:27 +02:00
JailDesigner
9dc7ff0da3
refactor(anim): direccions cardinals (north/south/east) en YAML i codi
2026-04-29 08:59:01 +02:00
JailDesigner
8f66961c7b
feat(whip): separa draw_rect i damage_rect; sprites 80×32 / 16×96; feet_y delegat a l'owner; recover_* per al cooldown
2026-04-28 18:28:19 +02:00
JailDesigner
df60709e6d
feat(whip): aplicació de dany amb retall de hitbox, alreadyHit i friendly fire
2026-04-28 16:20:22 +02:00
JailDesigner
5db3bb0bd0
feat(mummy): estat HURT amb fugida en línia recta i recuperació al timer
2026-04-28 16:20:22 +02:00
JailDesigner
9ad21eb5bb
feat(attack): esquelet WhipAttack + canal d'spawn via EventBus
2026-04-28 16:20:22 +02:00
JailDesigner
5c5cd1d5da
feat(player): estat EXITED i porta oberta despawna jugadors via player_exited
2026-04-26 10:20:13 +02:00
JailDesigner
377e5d0b97
feat(player): clamp permet pujar al passadís + porta tancada bloqueja via Map::collides
2026-04-26 10:09:04 +02:00
JailDesigner
3e379ce129
feat(effects): polvet transitori al despegue i a l'aterratge
2026-04-25 17:51:55 +02:00
JailDesigner
ae8b9d8fe6
refactor(entities): fusiona momia i mummy en un sol tipus canònic 16×32
2026-04-24 21:02:02 +02:00
JailDesigner
4e9d5df872
feat(players): suport del segon jugador amb events amb player_id
2026-04-24 14:33:52 +02:00
JailDesigner
67ecb704d2
feat(pyramid): usa variants 16×32 sam (jugador) i momia
2026-04-23 17:33:47 +02:00
JailDesigner
e3cf2eb773
refactor(entities): rename notifyTileEntered → notifyTilePainted i escolta tile_painted
2026-04-23 13:22:02 +02:00
JailDesigner
9d256b7f2d
feat(mummy): decisió a creuaments de corredor
...
La mòmia ara decideix direcció a cada creuament de corredor (edge-detect
de travessar la línia central d'un corredor perpendicular) i no només
quan topa amb un mur o sarc. A la detecció, amarra la caixa al centre
exacte del creuament per evitar drift sub-píxel i tria entre continuar
recta o girar a una perpendicular lliure. Mai mitja volta a un creuament
— la mitja volta queda reservada al cas de bloqueig sense alternatives.
2026-04-22 22:52:51 +02:00
JailDesigner
32dcf264c4
feat(entities): caja-peus concèntrica i animacions direccionals a la momia, còpia de data/ sempre sincronitzada; v0.19.0
2026-04-21 23:21:32 +02:00
JailDesigner
ee8dc25181
feat(entities): fase 4 - moviment de la momia amb col·lisió, z-order per peus i contacte amb el jugador
2026-04-21 20:14:47 +02:00
JailDesigner
96b71b0f65
feat(entities): andamiatge del sistema d'entitats (classes, factory, bus, YAML, placeholders, smoke tests)
2026-04-21 12:35:19 +02:00