Files
Project-M/Assets/_Project/Scripts/Client/Presentation
kronic 304ee8c2a7 Base<->Expedition ties: portal rooms, class-at-base, prep spend + Health.Max, C3/C4/Spitter (DR-046)
Portal-gated rooms: new RunLifecycle.RoomExplore loot window; room+nodes
persist past the last kill; PortalInteractRequest -> server-only PortalCommand
advances (client derives the portal pos). RunDirectorSystem moves teardown off
the InRoom edge, relocates the boss-branch/route-gate into the RoomExplore exit,
and advances an empty expedition immediately (incl. a boss clear).

Class-at-base via a shared ClassSwapUtil (meta-band strip + per-class
MetaTierState replay, so the base RPC and the dev SetClass can't drift);
ClassSelectRequest Staging-gated. Per-run PREP buffs (PrepPurchaseRequest,
PrepCatalog): once-per-run == the row's prep StatModifier band is present,
TotalOf-before-Withdraw atomic, stripped on Returning beside the boon band.

Health.Max promoted to [GhostField] (the one ghost-hash re-bake) so the boss +
floating enemy HP bars read it directly. Feel: melee cone connect-thunk (C3),
hit-stop throttle so a horde wipe can't stutter (C4), Spitter cornered-hold.

456/456 EditMode; two adversarial reviews (pre-code 13-confirmed folded;
post-impl clean bar the RoomExplore boss-clear dead-time, fixed).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-06 10:37:24 -07:00
..
2026-06-03 13:46:13 -07:00
2026-07-04 16:57:40 -07:00
2026-07-04 16:57:40 -07:00
2026-07-04 16:57:40 -07:00
2026-06-04 11:35:57 -07:00
2026-07-04 16:57:40 -07:00
2026-07-04 16:57:40 -07:00
2026-06-03 13:46:13 -07:00
2026-06-03 13:46:13 -07:00
2026-07-02 20:41:43 -07:00
2026-06-04 21:49:03 -07:00
2026-06-04 21:49:03 -07:00
2026-06-04 21:49:03 -07:00