Simplify analyser machine

This commit is contained in:
2025-12-09 10:10:50 +00:00
parent 23949b02af
commit 2b923cd4b6
4 changed files with 7 additions and 44 deletions
+3 -12
View File
@@ -1,7 +1,4 @@
module Dodge.Placement.Instance.Analyser (
analyser,
analyserWithPrompt,
) where
module Dodge.Placement.Instance.Analyser (analyser) where
import Dodge.Data.GenWorld
import Dodge.Default
@@ -9,20 +6,14 @@ import Dodge.Placement.Instance
import LensHelp
analyser :: ProximitySensorType -> PlacementSpot -> PlacementSpot -> Placement
analyser = analyserWithPrompt []
analyserWithPrompt ::
[TerminalLine] -> ProximitySensorType -> PlacementSpot -> PlacementSpot -> Placement
analyserWithPrompt l pst pslight psmc = extTrigLitPos pslight $ \tp ->
analyser pst pslight psmc = extTrigLitPos pslight $ \tp ->
Just $
plSpot .~ psmc $
putTerminal
(themachine & mcMounts . at OTTrigger .~ _plMID tp)
tparams
where
tparams =
defaultTerminal & tmStatus .~ TerminalLineRead
& tmFutureLines .~ l
tparams = defaultTerminal & tmStatus .~ TerminalLineRead
themachine =
defaultMachine -- & mcColor .~ aquamarine
& mcHP .~ 10000
-1
View File
@@ -23,7 +23,6 @@ putTerminalFull ::
Terminal ->
Placement
putTerminalFull f mc tm =
--ps0PushPS (PutTerminal (tm & tmExternalColor .~ col)) $
ps0PushPS (PutTerminal tm) $
\tmpl -> Just $
ps0PushPS (PutButton defaultButton) $
+2 -27
View File
@@ -1,7 +1,7 @@
{-# LANGUAGE TupleSections #-}
module Dodge.Room.LasTurret (
analyserByNthLinkWithPrompt,
analyserByNthLink,
analyserByDoor,
lasCenSensEdge,
lasTunnelRunPast,
@@ -92,27 +92,7 @@ healthAnalyserByDoor = analyserByDoor (RequireHealth 1100)
analyserByNthLink :: Int -> ProximityRequirement -> Int -> Placement
analyserByNthLink n proxreq i =
analyser
(SensorWithRequirement proxreq)
( atNthLnkOutShiftBy
n
( \(p, a) ->
((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow)
)
)
(atNthLnkOutShiftBy n sensorshift)
& plExternalID ?~ i
where
sensorshift (p, a) = ((p +.+ rotateV a (V2 (-30) (-10)), a), S.singleton UsedPosLow)
analyserByNthLinkWithPrompt ::
Int -> [TerminalLine] -> ProximityRequirement -> Int -> Placement
analyserByNthLinkWithPrompt n l proxreq i =
-- rm
-- & rmPmnts
-- .++~ [-- psPt (atNthLinkOut n) $ PutForeground $ verticalWire (V2 20 0) 0 80
analyserWithPrompt
l
analyser
(SensorWithRequirement proxreq)
( atNthLnkOutShiftBy
n
@@ -123,16 +103,11 @@ analyserByNthLinkWithPrompt n l proxreq i =
(atNthLnkOutShiftBy n sensorshift)
& plExternalID ?~ i
where
-- ]
sensorshift (p, a) = ((p +.+ rotateV a (V2 (-30) (-10)), a), S.singleton UsedPosLow)
analyserByDoor :: ProximityRequirement -> Int -> Room -> Room
analyserByDoor pr i = rmPmnts .:~ analyserByNthLink 0 pr i
--analyserByDoorWithPrompt :: [TerminalLine] -> ProximityRequirement -> Int -> Room -> Room
--analyserByDoorWithPrompt s x i = rmPmnts .:~ analyserByNthLinkWithPrompt 0 s x i
healthTest :: RandomGen g => Int -> State g (Tree Room)
healthTest n = do
cenroom <- shuffleLinks . healthAnalyserByDoor n =<< roomNgon 8 200
+2 -4
View File
@@ -258,10 +258,8 @@ tutHub = do
j <- nextLayoutInt
k <- nextLayoutInt
let a gw =
analyserByNthLinkWithPrompt
3 --(makeTermPara $ show is <> show (getRoomsFromInts is gw)
-- <> getCrsFromRooms' is gw)
[]
analyserByNthLink
3
(RequireDeadCreatures $ getCrsFromRooms is gw)
k
x <-