JailDesigner
9b09ccb765
feat(editor): col·locació d'entitats amb snap per tipus i bloqueig de solapaments
2026-05-02 11:21:05 +02:00
JailDesigner
f591aa82fd
fix(whip_attack): treure entity_manager_ duplicat (ja viu a Entity)
2026-05-02 11:01:53 +02:00
JailDesigner
de7233a012
fix(player): facing del sprite des del desplaçament real, no de l'input
2026-05-01 10:24:13 +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
3e5217066f
fix(hazard): aterrar damunt d'un Hole salta el LANDING_STUN
2026-04-30 13:53: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
37fdcb4751
feat(controls): redefinició de tecles i botons del mando des del menú de servei
2026-04-29 19:54:47 +02:00
JailDesigner
38070b33aa
feat(player): so de hurt al morir + respawn cinemàtic amb limbo invisible
2026-04-29 12:15:52 +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
72642dc10e
feat(player): so del swing del làtigo i de l'entrada a HURT
2026-04-28 19:55:53 +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
d208ba02df
feat(player): estat ATTACKING amb edge-detect, animacions i spawn del whip via bus
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
47bb92144e
feat(audio): reverb 'stone_hall' al primer LAND cinemàtic d'INTRO
...
Lligua el reverb al moment de la cinemàtica d'entrada de sala, no als
salts en general. La sala dóna "més detall" sonor a l'INTRO; un cop el
joc està en marxa, els salts (i els respawns post-mort) tornen al so
sec. Així el primer aterratge es percep com a part de l'animació
d'arribada, no com una propietat permanent del personatge.
- RoomFsm::Config: nou camp `intro_land_reverb_preset` carregat des
de `room_intro.land_reverb` a `data/scenes/game.yaml` (per defecte
'stone_hall'). Buit = sense reverb a l'INTRO.
- Player: membre `next_land_reverb_preset_` consumit per
`integrateJump` al primer aterratge que el trobe armat. Setter
públic `armNextLandReverb(preset)` per a GameScene. Cap altre punt
(respawn, exit, disable) el toca: el reverb és estrictament
one-shot lligat al spawn aeri d'INTRO.
- GameScene::triggerPlayerSpawn: arma el preset al jugador just
després de `spawnFromAir`, així cada slot rep el seu reverb un
sol cop per cinemàtica.
- JumpConfig perd `land_reverb_preset` i els YAMLs de Sam/Morcus
perden `land_reverb`: la decisió ja no viu al personatge.
2026-04-27 08:31:51 +02:00
JailDesigner
8da18a6a86
feat(debug): tecla Keypad 1 per forçar l'obertura de la porta
...
Hook només Debug que crida EntityManager::forceOpenDoor (nou helper
públic que delega a Door::open). El flux posterior — creuar la porta,
player_exited, level_complete, transició a OUTRO — funciona idèntic
al del joc real, perquè depèn de la Door, no del comptador de
sarcòfags. Útil per saltar la mecànica de pintat/sarcs durant proves
de progressió de sales.
Tecla configurable a data/input/keys.yaml > id: open_door
(per defecte Keypad 1). Mateixos gates que els salts [/]: ignora la
pulsació si la pausa està activa o l'editor obert. En Release la
ENTRADA del YAML segueix carregant-se però no té consumidor.
2026-04-26 17:20:12 +02:00
JailDesigner
580c13e854
feat: estat DISABLED i spawn aeri al començar la sala — v0.25.0
2026-04-26 14:17:17 +02:00
JailDesigner
d054d1b246
fix(player): respawn reseteja facing a DOWN i input/cardinal pendents
2026-04-26 10:47:13 +02:00
JailDesigner
cd5bb94223
fix(player): EXITED no participa al resolver ni a checkPlayerCollisions
2026-04-26 10:41:05 +02:00
JailDesigner
59cd9b524c
feat(entity-manager): reload del nivell + PaintLayer::clear
2026-04-26 10:26:07 +02:00
JailDesigner
28e55a0615
feat(entity-manager): comptador player_exited agrega a level_complete
2026-04-26 10:22:42 +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
648a5932f8
feat(door): col·locació derivada de Map::door_col i caixa de col·lisió neta
2026-04-26 10:07:37 +02:00
JailDesigner
3e379ce129
feat(effects): polvet transitori al despegue i a l'aterratge
2026-04-25 17:51:55 +02:00
JailDesigner
c38c80753a
feat(player): direcció preferida al HURT segons l'offset d'impacte
2026-04-25 15:29:48 +02:00
JailDesigner
4667e0abf9
fix(player): saltar enmig d'un gir de 180° comprometeix la direcció final
2026-04-25 15:17:45 +02:00
JailDesigner
7f78f556f3
fix(player): el disparador del HURT en aterrar usa la hit-box, no la base-box
2026-04-25 15:01:56 +02:00
JailDesigner
e8407ce35e
feat(player): nou estat HURT — caure damunt d'un altre el llança projectat
2026-04-25 14:56:15 +02:00
JailDesigner
188f035333
feat(player): saltar travessa el caminant; rebot mid-aire entre dos saltadors
2026-04-25 14:20:38 +02:00
JailDesigner
3646e6a4aa
feat(player): efectes de so configurables al despegue i a l'aterratge
2026-04-25 13:50:30 +02:00
JailDesigner
f3f5fa5e92
feat(player): animacions stun_* durant l'aterratge
2026-04-25 13:48:03 +02:00
JailDesigner
3a750822f6
fix(player): la resolució del solapament en aterrar usa la base-box, no la hit-box
2026-04-25 12:23:21 +02:00
JailDesigner
06ff11d563
fix(player): el z-order del saltador respecta la seua posició al sòl
2026-04-25 12:21:27 +02:00
JailDesigner
f0a0515f28
fix(player): puja la sombra pel valor jump.shadow_y_offset del YAML
2026-04-25 12:19:51 +02:00
JailDesigner
4758d5d8a4
refactor(player): mou height de jump a collision per coherència amb les entitats
2026-04-25 12:16:03 +02:00
JailDesigner
64390f8ad7
feat(player): sombra translúcida sota el jugador mentre està en l'aire
2026-04-25 11:59:13 +02:00
JailDesigner
c4caa9021e
feat(player): resol el solapament en aterrar damunt d'un altre jugador
2026-04-25 11:55:04 +02:00
JailDesigner
a64f33fe43
feat(player): no pinta el sòl mentre està en l'aire; aterratge sí pinta
2026-04-25 11:52:25 +02:00
JailDesigner
cd50626b88
feat(collisions): filtre per altura — saltar esquiva momies, roques i altres jugadors
2026-04-25 11:49:48 +02:00
JailDesigner
7b09a076b2
feat(player): salt vertical amb física, màquina d'estats i animació jump_*
2026-04-25 11:42:07 +02:00
JailDesigner
4f1a3260a5
fix(player): snapToLane respecta col·lisió PvP i empeny amb push_factor
2026-04-24 22:38:36 +02:00