Outcome playback and animation #9

Open
opened 2026-08-06 21:51:50 +00:00 by icub3d · 0 comments
Owner

Play back Outcome events as animation. The simulation has already finished by the time
this runs; presentation is catching up.

Scope

  • Consume Outcome events and animate: movement along the resolved path, attack
    reaction, damage numbers, death.
  • A queue, so several outcomes from one action play in order.
  • Signal completion so MissionPhase::Animating can exit.

Acceptance criteria

  • Nothing in this module writes simulation state. It reads outcomes and moves
    transforms.
  • With playback disabled or skipped, the mission still resolves correctly and the
    headless test still passes — proving the dependency runs one way only.
  • Animation speed is a single tunable value, not a scatter of magic durations.
  • Damage and status text uses theme typography tokens.
Play back `Outcome` events as animation. The simulation has already finished by the time this runs; presentation is catching up. ## Scope - Consume `Outcome` events and animate: movement along the resolved path, attack reaction, damage numbers, death. - A queue, so several outcomes from one action play in order. - Signal completion so `MissionPhase::Animating` can exit. ## Acceptance criteria - [ ] Nothing in this module writes simulation state. It reads outcomes and moves transforms. - [ ] With playback disabled or skipped, the mission still resolves correctly and the headless test still passes — proving the dependency runs one way only. - [ ] Animation speed is a single tunable value, not a scatter of magic durations. - [ ] Damage and status text uses `theme` typography tokens.
Sign in to join this conversation.
No description provided.