refactor(world): own live environment state

Move the DAT sky, selected day group, world clock, weather, AdminEnvirons bridge, and debug cycles into a one-shot WorldEnvironmentController while preserving GameWindow's public aliases and accepted startup/session/render order. Correct the named retail citations and register the remaining environment audio and fog/radar gaps.

Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-22 10:54:33 +02:00
parent 557eb7ef6b
commit d09e246d3a
19 changed files with 606 additions and 368 deletions

View file

@ -27,10 +27,11 @@ What does NOT go here:
## Current queue — 2026-07-22
- **Active structural work:** `GameWindow` decomposition. Slices 17 are
complete; Slice 8 checkpoints AC now own native callbacks and live-session
composition outside the shell. `GameWindow.OnUpdate` and
`GameWindow.OnRender` are typed orchestration handoffs and the class is 4,589
lines / 196 fields / 69 methods. Remaining Slice 8 composition/shutdown
complete; Slice 8 checkpoints AD now own native callbacks, live-session
composition, and world-environment state outside the shell.
`GameWindow.OnUpdate` and `GameWindow.OnRender` are typed orchestration
handoffs and the class is 4,330 lines / 192 fields / 67 methods. Remaining
Slice 8 input/settings/composition/shutdown
cleanup is active in
[`docs/architecture/code-structure.md`](architecture/code-structure.md).
This is the behavior-preserving prerequisite before new M4 feature bodies.