better wirer behavior etc

This commit is contained in:
Your Name 2026-08-12 00:12:26 -04:00
parent bc4976b324
commit 6a5c2fc951
24 changed files with 11347 additions and 8198 deletions

View file

@ -938,7 +938,7 @@ function wireView()
wireDirtyRooms = {}
editorStatus = selectedCircuitId
and "Circuit selected. Drag to draw; right-drag erases; arrow keys pan."
or "Click a wired door to select its circuit, then drag to its switches."
or "Drag from a wired door and release on a switch."
end
function worldView()
@ -1027,10 +1027,12 @@ local function beginWireBrush(x, y, button)
end
end
if not selectedCircuitId then
editorStatus = "Start by clicking a wired door."
editorStatus = "Start by dragging from a wired door."
return
end
rememberWireRooms(gameWorld:ensureWireAt(cell, selectedCircuitId))
-- Do not materialize a wire until this stroke actually crosses into an
-- adjacent cell. Previously a click on a door wrote a zero-length track,
-- which later behaved like an orphaned circuit underneath that door.
else
-- Prefer the selected circuit when several routes overlap here; otherwise
-- adopt the top route. Repeated right-clicks can therefore remove every
@ -1439,7 +1441,7 @@ function editorDraw()
love.graphics.printf("No circuit selected", 10, 54, sb.w - 20, "center")
end
love.graphics.printf(
"Click a door to start a new run, or a wire to edit that run. Each run ends at one switch; start another run from the door for another switch.\n\nLeft-drag draws. Right-drag erases. Independent wires may share a cell without connecting.\n\nArrow keys pan by one room.",
"Drag from a door to start a new run, or drag from a wire to edit that run. Release on a switch to terminate it; start another run from the door for another switch.\n\nLeft-drag draws. Right-drag erases. Independent wires may share a cell without connecting.\n\nArrow keys pan by one room.",
24, 100, sb.w - 48, "left"
)
if editorStatus then