42b86785a5329d91fc69050d4c423a52a7658714
Belts are no longer placed on hover during a drag. Left-press anchors the drag; as the cursor moves, a rectilinear (L-shaped) path of belt ghosts is previewed from the anchor to the cursor — first leg parallel to the belt's current orientation, then orthogonal — with each tile auto-oriented to follow the path. Construction sites are placed on release: new valid tiles are placed (subject to cumulative affordability), tiles holding only a belt are re-oriented in place, and occupied/invalid tiles are skipped. Unaffordable tiles show no ghost. Right-click during a drag cancels it without leaving belt build mode. Path geometry is factored into a pure computeBeltDragPath() in lib/core with Catch2 coverage; GameWorldView owns the classification, affordability, and rendering against live sim state. Implements REQ-BLD-BELT-DRAG. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y7N59FsLA5e2kuVdqe4Uhc
Description
No description provided
Languages
C++
96%
CMake
2.2%
Python
1.2%
C
0.6%