7ddb4a1bb5
float the selection panel over the game world instead of a side column
...
Remove the 25% side panel column: the header bar and game world view now
span the full window width, and the selection panel floats over the world
at its right edge, content-sized and shown only while something is
selected.
REQ-UI-PANEL-COLUMN is replaced by REQ-UI-SELECTION-PANEL, which defines
the panel's geometry, visibility, overlay, and input rules. The panel is
centered within the view height less its margins and the build button
bar's strip, so the bar never has to move out of its way. Rename the
"selected building panel" to "selection panel" throughout, since it has
long shown ships, stations, and debris too.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01JcReq7hVk4KUPhTDKWAG7K
2026-08-06 21:17:43 +02:00
3b37b0ecf8
target single-building transfers by hovering, not by footprint coincidence
2026-08-06 20:31:51 +02:00
98deab932a
let any blueprint transfer configuration, not just single-building ones (if the orientation matches)
2026-08-06 20:29:20 +02:00
08d8b0dd90
re-cover copy-settings through single-building blueprints
2026-08-06 19:44:55 +02:00
9a3b6c10d6
fix bug where selecting the same layout for a shipyard discarded the current progress and buffers
2026-08-06 19:18:45 +02:00
cd31af2611
remove the Shift copy-building-settings gesture
2026-08-06 19:09:11 +02:00
fd6a7c5815
rekey the temporary blueprint to C, add V to re-place it
2026-08-06 19:07:13 +02:00
18cfe238f6
move blueprints out of the sidebar into Ctrl+C / Ctrl+V dialogs
2026-08-06 19:03:59 +02:00
2cbcf1554f
add the ASCII-only source rule and the visual-verification note to CLAUDE.md
2026-08-06 08:28:57 +02:00
c1af58d80c
float the build buttons as a horizontal bar over the game world and show key bindings inside build buttons
2026-08-06 08:28:40 +02:00
f39fe9a118
move the debug stats panel out of the renderer
2026-08-05 22:14:55 +02:00
e5dcb9de5f
extract WorldRenderer
2026-08-05 22:14:55 +02:00
dc83add5c6
move two placement queries out of the view into PlacementRules
2026-08-05 22:14:54 +02:00
3a1951559d
share the world shapes both views (game and balancing) draw identically
2026-08-05 22:14:54 +02:00
26d7448492
extract BuildModeController, fixing a silent blueprint exit
2026-08-05 22:14:54 +02:00
202f583067
extract SelectionController
2026-08-05 22:14:54 +02:00
d5ab44b9bf
move the remaining hotkeys into the InputMapper
2026-08-05 22:14:53 +02:00
bb1ffab8fc
fix a bug where view continues to pan when window lost focus while panning
2026-08-05 22:14:53 +02:00
e1445fe508
move the already-event-driven hotkeys into the InputMapper
2026-08-05 22:14:53 +02:00
caa810f66d
move pan input into an InputMapper
2026-08-05 22:14:53 +02:00
f6df95abb2
extract the scroll position into WorldCamera
2026-08-05 22:14:52 +02:00
fa9dbd62ad
use WorldCoordinates in ArenaView too
2026-08-05 22:14:52 +02:00
2af09d9eb1
extract the world<->widget transform into WorldCoordinates
2026-08-05 22:14:52 +02:00
4f7fdb8a4c
add tone, critique and class layout rules to CLAUDE.md
...
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01JcReq7hVk4KUPhTDKWAG7K
2026-08-05 22:14:37 +02:00
949937d2c2
re-use PlacementFixture in BuildingTests
2026-08-05 07:53:08 +02:00
4c166bf47f
depend on the registry instead of DebrisSystem in the AI path
2026-08-05 07:25:59 +02:00
60260540cd
make deconstruction its own system
2026-08-05 07:10:46 +02:00
1f4503176b
make construction its own system (extracted from BuildingSystem)
2026-08-05 06:57:12 +02:00
fd85e8e10a
free the buffer setup and belt registration from BuildingSystem
2026-08-05 06:55:13 +02:00
114a43b205
make BuildingSystem stateless: FactoryState becomes a parameter
2026-08-05 06:50:11 +02:00
d87d063b10
move the placement rules and the config-dependent queries off BuildingSystem
2026-08-05 06:49:49 +02:00
537597c854
delete the unused getAllBeltTiles and BeltTileInfo
2026-08-05 06:49:28 +02:00
9c3be0fbd0
extract the production rules as free functions over config and building
2026-08-05 06:49:15 +02:00
58b94223f7
migrate every factory query off BuildingSystem onto the free functions
2026-08-05 06:46:13 +02:00
1fb63cce4e
move the asteroid width bound into FactoryState
2026-08-05 06:45:33 +02:00
0b7e94b4e4
drop CombatSystem's unused BuildingSystem parameter
2026-08-05 06:45:16 +02:00
0408336cf9
depend on factory data instead of BuildingSystem in the AI path
2026-08-05 06:44:49 +02:00
46932e4abf
move FactoryState ownership out of BuildingSystem to Simulation
2026-08-05 06:43:52 +02:00
0edea5d961
gather the factory's world data into FactoryState
2026-08-05 06:43:30 +02:00
60cc187d92
add BuildingGrid to manage tile occupancy
2026-08-04 18:26:01 +02:00
3990351a16
share BuildingSystem's free functions instead of copying them
2026-08-04 18:24:38 +02:00
bd344e4fbe
add FieldSelectionPanel for extracting the ships/stations/debris selection
2026-08-04 18:23:28 +02:00
64c344c3a3
correct the belt subsystem interface description in architecture.md
2026-08-04 18:12:02 +02:00
02c7fed9b4
allow "auto" for named local lambdas and iterator types via claude.md
2026-08-04 18:11:37 +02:00
5d4a975384
cover unlock state in the determinism tests
2026-08-04 18:11:03 +02:00
475df0e5fd
extract unlock state from Simulation to UnlockState class
2026-08-04 18:10:43 +02:00
61634f6fd2
move the shared TOML helpers into the utility namespace to avoid name collisions
2026-08-04 18:05:52 +02:00
c8ff7da345
extract load methods into their own files
2026-08-04 18:05:27 +02:00
d664ab54cc
extract shared TOML helpers into TomlHelpers.h/.cpp
2026-08-04 18:02:23 +02:00
906000b0e9
drop the dead payloads from the state-change events
2026-08-03 22:02:47 +02:00