6.0 expects UI/game glue to integrate via signal buses, not by reading internal system state directly.
Placement bus events
PlacementSignalBus provides:
- placement success/failure
- validated/canceled notifications
- selection/hover/focus updates
- indicator and drag session updates
Payload pattern
Many events use typed payload objects (PlacementSuccessEvent, PlacementFailureEvent, etc.) for clear contracts.
Integration recommendations
- Subscribe in UI controller startup and unsubscribe on teardown.
- Keep handlers small: translate event data into UI updates/state transitions.
- Avoid mutating ECS state from many UI nodes; route mutating actions through dedicated game/application controller code.
Common UI mappings
- Validation result → cursor color or status label
- Placement success/failure → toast/audio feedback
- Selection/hover/focus events → highlight state and context panel updates