Skip to content

refactor: unify overlay pipeline with OverlayCoordinator#1141

Merged
braedonsaunders merged 2 commits into
mainfrom
claude/unify-overlay-pipeline-CssiA
Jan 30, 2026
Merged

refactor: unify overlay pipeline with OverlayCoordinator#1141
braedonsaunders merged 2 commits into
mainfrom
claude/unify-overlay-pipeline-CssiA

Conversation

@braedonsaunders

Copy link
Copy Markdown
Owner

Consolidate the split overlay system (TSL GameOverlay + Phaser OverlayScene) into a unified pipeline with a single coordinator class.

Changes:

  • Create OverlayCoordinator singleton to own overlay state and coordinate TSLGameOverlayManager (3D) and OverlayScene (2D) via typed events
  • Remove dead code from OverlayScene (deprecated attack/vision/resource graphics that were migrated to TSL)
  • Implement Alt+A/Alt+V keyboard shortcuts for SC2-style hold-to-show attack and vision range overlays
  • Replace scattered UIStore subscriptions with coordinator-based updates
  • Add typed overlay events: overlay:typeChanged, overlay:rangeToggle, overlay:opacityChanged, overlay:navmeshProgress

The coordinator provides a single API for input handlers and ensures consistent state across all overlay systems.

https://claude.ai/code/session_01JCAYBr5BpixTZTA9Z9HMq5

Consolidate the split overlay system (TSL GameOverlay + Phaser OverlayScene)
into a unified pipeline with a single coordinator class.

Changes:
- Create OverlayCoordinator singleton to own overlay state and coordinate
  TSLGameOverlayManager (3D) and OverlayScene (2D) via typed events
- Remove dead code from OverlayScene (deprecated attack/vision/resource
  graphics that were migrated to TSL)
- Implement Alt+A/Alt+V keyboard shortcuts for SC2-style hold-to-show
  attack and vision range overlays
- Replace scattered UIStore subscriptions with coordinator-based updates
- Add typed overlay events: overlay:typeChanged, overlay:rangeToggle,
  overlay:opacityChanged, overlay:navmeshProgress

The coordinator provides a single API for input handlers and ensures
consistent state across all overlay systems.

https://claude.ai/code/session_01JCAYBr5BpixTZTA9Z9HMq5
Keep OverlayCoordinator-based approach for overlay management:
- Use coordinator.setActiveOverlay() instead of direct refs access
- Use coordinator.setShowAttackRange/VisionRange() for SC2-style
  hold-to-show behavior (show on keydown, hide on keyup)

https://claude.ai/code/session_01JCAYBr5BpixTZTA9Z9HMq5
@braedonsaunders braedonsaunders merged commit 548b080 into main Jan 30, 2026
4 checks passed
@braedonsaunders braedonsaunders deleted the claude/unify-overlay-pipeline-CssiA branch January 30, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants