Add wire to central laser room

This commit is contained in:
2021-11-21 19:14:17 +00:00
parent 2f3896345d
commit afeb9d2b64
9 changed files with 57 additions and 35 deletions
+5 -8
View File
@@ -68,14 +68,11 @@ placeRoomWires rm w = IM.foldr ($) w
$ IM.intersectionWith (placeWire rm) (_rmStartWires rm) (_rmEndWires rm)
placeWire :: Room -> RoomWire -> RoomWire -> World -> World
placeWire rm (WallWire p a h) wr = placeWire rm wr (RoomWire p a) .
(foregroundShape %~ (colorSH red (barPP 1.5 (addZ h p') (addZ 80 p')) <>)
)
where
p' = shiftPointBy (_rmShift rm) p
placeWire rm rw1 rw2@WallWire{} = placeWire rm rw2 rw1
placeWire rm (RoomWire p _) (RoomWire q _) = foregroundShape
%~ ((col $ thinHighBarChain 80 $ map (shiftPointBy rs) doOrdering) <>)
placeWire rm (WallWire p _ h1) (WallWire q _ h2) = foregroundShape
%~ (col ( (thinHighBarChain h2 $ map (shiftPointBy rs) doOrdering) <>
(barPP 1.5 (addZ h1 p) (addZ h2 p))
) <>
)
where
--TODO use rmWalls for non convex rooms
--rmWalls = foldr cutWalls [] (_rmPolys rm)