Continue work on chasm rooms

This commit is contained in:
2025-10-03 11:52:49 +01:00
parent 7e3614c9c8
commit 5c22ca6662
11 changed files with 426 additions and 326 deletions
+12 -4
View File
@@ -8,7 +8,7 @@ Room layout (compact):
| |
+- 8,9,10 +- 8,9,10
| |
11,12,13,14,15,16,17 11,12,13,14,15,16,17,18,19,20,21
Layout with room names: Layout with room names:
tutRezBox-0 tutRezBox-0
@@ -35,15 +35,23 @@ doorToggle-6gon-3
| |
triggerDoorRoom-11 triggerDoorRoom-11
| |
autoRect-12 6gon-12
| |
Corridor-13 Corridor-13
| |
6gon-14 autoRect-14
| |
defaultRoom-15 Corridor-15
| |
autoRect-16 autoRect-16
| |
Corridor-17 Corridor-17
|
6gon-18
|
defaultRoom-19
|
autoRect-20
|
Corridor-21
+1 -1
View File
@@ -1,4 +1,4 @@
Generating level with seed 7114951007332849727 Generating level with seed 7114951007332849727
After 1 attempt(s), Successful generation of level with seed 7114951007332849727 After 1 attempt(s), Successful generation of level with seed 7114951007332849727
18 rooms in total 22 rooms in total
+9 -1
View File
@@ -43,9 +43,17 @@ Seed: 7114951007332849727
3:0:TutLight 3:0:TutLight
3:0:0:autoRect 3:0:0:6gon
| |
3:0:1:Corridor 3:0:1:Corridor
|
3:0:2:autoRect
|
3:0:3:Corridor
|
3:0:4:autoRect
|
3:0:5:Corridor
4:0:TutDrop 4:0:TutDrop
+1 -1
View File
File diff suppressed because one or more lines are too long
+4
View File
@@ -62,6 +62,9 @@ data PSType
| PutNothing | PutNothing
| PutID {_putID :: Int} | PutID {_putID :: Int}
| PutChasm {_putChasmPoly :: [Point2]} | PutChasm {_putChasmPoly :: [Point2]}
| PutLabel {_putLabel :: String} -- currently not actually put anywhere
-- just used for later inspection as top level
-- of a continuing placement in a room placement list
instance ShortShow PSType where instance ShortShow PSType where
shortShow PutCrit {} = "PutCrit" shortShow PutCrit {} = "PutCrit"
@@ -86,6 +89,7 @@ instance ShortShow PSType where
shortShow PutNothing = "PutNothing" shortShow PutNothing = "PutNothing"
shortShow PutID {} = "PutID" shortShow PutID {} = "PutID"
shortShow PutChasm {} = "PutChasm" shortShow PutChasm {} = "PutChasm"
shortShow PutLabel {} = "PutLabel"
-- maybe there is a monadic implementation of this? -- maybe there is a monadic implementation of this?
-- add room effect for any placement spot? -- add room effect for any placement spot?
+1
View File
@@ -43,6 +43,7 @@ data RoomLinkType
= OutLink = OutLink
| InLink | InLink
| LabLink Int | LabLink Int
| PolyEdge Int
| OnEdge CardinalPoint | OnEdge CardinalPoint
| FromEdge CardinalPoint Int | FromEdge CardinalPoint Int
| BlockedLink | BlockedLink
+45 -31
View File
@@ -1,4 +1,17 @@
module Dodge.Placement.Instance.LightSource where module Dodge.Placement.Instance.LightSource (
mntLSOn,
aShape,
mntLightLnkCond,
mntLS,
vShape,
iShape,
putLamp,
spanColLightBlackI,
moveLSThen,
spanLightI,
mntLightLnkCond',
spanLS,
) where
import Color import Color
import Control.Lens import Control.Lens
@@ -62,6 +75,7 @@ mntLSOn ::
(Placement -> Maybe Placement) -> (Placement -> Maybe Placement) ->
Placement Placement
mntLSOn shapeF mcol ls wallp lsp@(V3 lx ly _) = mntLSOn shapeF mcol ls wallp lsp@(V3 lx ly _) =
ps0jPushPS (PutLabel "light") .
ps0jPushPS (putShape . setCol $ shapeF wallp lsp) ps0jPushPS (putShape . setCol $ shapeF wallp lsp)
. pt0 (PutLS $ ls & lsParam . lsPos .~ lsp') . pt0 (PutLS $ ls & lsParam . lsPos .~ lsp')
where where
@@ -125,23 +139,23 @@ mntLS shp wallp lampp = mntLSOn shp Nothing defaultLS wallp lampp (const Nothing
where where
defaultLS = LS 0 $ LSParam 0 300 0.6 defaultLS = LS 0 $ LSParam 0 300 0.6
mntLSCol :: (Point2 -> Point3 -> Shape) -> Color -> Point2 -> Point3 -> Placement --mntLSCol :: (Point2 -> Point3 -> Shape) -> Color -> Point2 -> Point3 -> Placement
mntLSCol shp col wallp lampp = mntLSOn shp (Just col) defaultLS wallp lampp (const Nothing) --mntLSCol shp col wallp lampp = mntLSOn shp (Just col) defaultLS wallp lampp (const Nothing)
where -- where
defaultLS = LS 0 $ LSParam 0 200 0.6 -- defaultLS = LS 0 $ LSParam 0 200 0.6
mntLSLampCol :: (Point2 -> Point3 -> Shape) -> Color -> Point2 -> Point3 -> Placement --mntLSLampCol :: (Point2 -> Point3 -> Shape) -> Color -> Point2 -> Point3 -> Placement
mntLSLampCol shp (V4 x y z _) wallp lampp = --mntLSLampCol shp (V4 x y z _) wallp lampp =
mntLSOn -- mntLSOn
shp -- shp
Nothing -- Nothing
(defaultLS & lsParam . lsCol .~ col) -- (defaultLS & lsParam . lsCol .~ col)
wallp -- wallp
lampp -- lampp
(const Nothing) -- (const Nothing)
where -- where
col = V3 x y z -- col = V3 x y z
defaultLS = LS 0 $ LSParam 0 200 0.6 -- defaultLS = LS 0 $ LSParam 0 200 0.6
mntLSCond :: mntLSCond ::
(Point2 -> Point3 -> Shape) -> (Point2 -> Point3 -> Shape) ->
@@ -155,10 +169,10 @@ mntLSCond shp ps =
-- note that this perhaps pushes the vshape light out too far -- note that this perhaps pushes the vshape light out too far
mntLight :: RandomGen g => Point2 -> Point2 -> State g Placement --mntLight :: RandomGen g => Point2 -> Point2 -> State g Placement
mntLight a b = do --mntLight a b = do
shp <- takeOne [vShape, iShape, lShape, jShape, liShape] -- shp <- takeOne [vShape, iShape, lShape, jShape, liShape]
return $ mntLS shp a (addZ 90 b) -- return $ mntLS shp a (addZ 90 b)
mntLightLnkCond :: RandomGen g => PlacementSpot -> State g Placement mntLightLnkCond :: RandomGen g => PlacementSpot -> State g Placement
mntLightLnkCond ps = do mntLightLnkCond ps = do
@@ -168,12 +182,12 @@ mntLightLnkCond ps = do
mntLightLnkCond' :: PlacementSpot -> Placement mntLightLnkCond' :: PlacementSpot -> Placement
mntLightLnkCond' = mntLSCond (fmap (fmap $ colorSH black) vShape) mntLightLnkCond' = mntLSCond (fmap (fmap $ colorSH black) vShape)
spanLSLightI :: LightSource -> Float -> Point2 -> Point2 -> Placement --spanLSLightI :: LightSource -> Float -> Point2 -> Point2 -> Placement
spanLSLightI ls h a b = --spanLSLightI ls h a b =
ps0j (PutLS $ ls & lsParam . lsPos .~ V3 x y h) $ -- ps0j (PutLS $ ls & lsParam . lsPos .~ V3 x y h) $
sps0 $ putShape $ thinHighBar h a b -- sps0 $ putShape $ thinHighBar h a b
where -- where
V2 x y = 0.5 *.* (a +.+ b) -- V2 x y = 0.5 *.* (a +.+ b)
spanLS :: LightSource -> Point2 -> Point2 -> Placement spanLS :: LightSource -> Point2 -> Point2 -> Placement
spanLS ls a b = spanLS ls a b =
@@ -200,11 +214,11 @@ spanColLightBlackI col h a b =
spanLightI :: Point2 -> Point2 -> Placement spanLightI :: Point2 -> Point2 -> Placement
spanLightI = spanColLightI 0.75 50 spanLightI = spanColLightI 0.75 50
extendAway :: Point2 -> Point2 -> Point2 --extendAway :: Point2 -> Point2 -> Point2
extendAway p x = p +.+ squashNormalizeV (p -.- x) --extendAway p x = p +.+ squashNormalizeV (p -.- x)
putColorLamp :: Point3 -> PSType --putColorLamp :: Point3 -> PSType
putColorLamp col = PutCrit (colorLamp col 90) --putColorLamp col = PutCrit (colorLamp col 90)
putLamp :: PSType putLamp :: PSType
putLamp = PutCrit (lamp 90) putLamp = PutCrit (lamp 90)
+1
View File
@@ -129,6 +129,7 @@ placeSpotID rid ps pt w = case pt of
PutID i -> (i, w) PutID i -> (i, w)
PutWorldUpdate f -> (0, w & f rid ps) PutWorldUpdate f -> (0, w & f rid ps)
PutChasm ps' -> (0, w & gwWorld . cWorld . chasms .:~ map doShift ps') PutChasm ps' -> (0, w & gwWorld . cWorld . chasms .:~ map doShift ps')
PutLabel {} -> (0, w)
where where
p@(V2 px py) = _psPos ps p@(V2 px py) = _psPos ps
p' = V3 px py 0 p' = V3 px py 0
+15 -10
View File
@@ -1,23 +1,24 @@
module Dodge.Room.Ngon where module Dodge.Room.Ngon where
import RandomHelp
import Data.List import Data.List
import qualified Data.Set as S
--import Data.Maybe --import Data.Maybe
import Data.Tile import Data.Tile
import Dodge.Data.GenWorld import Dodge.Data.GenWorld
import Dodge.Default.Room import Dodge.Default.Room
import Dodge.Placement.Instance import Dodge.Placement.Instance
import Dodge.PlacementSpot import Dodge.PlacementSpot
import Dodge.RoomLink
import Geometry import Geometry
import RandomHelp
import Tile import Tile
roomNgon :: RandomGen g => Int -> Float -> State g Room roomNgon :: RandomGen g => Int -> Float -> State g Room
roomNgon n x = do roomNgon n x = do
thelight <- mntLightLnkCond $ resetPLUse $ rprBool $ const . isInLnk thelight <- mntLightLnkCond $ resetPLUse $ rprBool $ const . isInLnk
return defaultRoom return
defaultRoom
{ _rmPolys = [poly] { _rmPolys = [poly]
, _rmLinks = map toBothLnk lnks -- muout (init lnks) ++ muin[last lnks] , _rmLinks = map f lnks -- muout (init lnks) ++ muin[last lnks]
, _rmPath = mempty -- TODO , _rmPath = mempty -- TODO
, _rmPmnts = [thelight] , _rmPmnts = [thelight]
, _rmBound = [poly] , _rmBound = [poly]
@@ -28,9 +29,13 @@ roomNgon n x = do
rot = 2 * pi / fromIntegral n rot = 2 * pi / fromIntegral n
rots = map ((rot *) . fromIntegral) [0 .. n -1] rots = map ((rot *) . fromIntegral) [0 .. n -1]
poly = polyOrthDist n x poly = polyOrthDist n x
-- mapMaybe lnks =
-- (\(ra, rb) -> intersectLineLine (rotateV ra bl) (rotateV ra br) (rotateV rb bl) (rotateV rb br)) sortOn ((\(V2 a b) -> (negate b, a)) . fst . snd)
-- $ loopPairs rots . zip [0 ..]
-- bl = V2 x x $ map (\r -> (rotateV r (V2 0 x), r)) rots
-- br = V2 (- x) x f (i, (p, a)) =
lnks = sortOn ((\(V2 a b) -> (negate b, a)) . fst) $ map (\r -> (rotateV r (V2 0 x), r)) rots RoomLink
{ _rlType = S.fromList [OutLink, InLink, PolyEdge i]
, _rlPos = p
, _rlDir = a
}
+102 -43
View File
@@ -1,12 +1,23 @@
module Dodge.Room.Tutorial where module Dodge.Room.Tutorial where
import Control.Monad import Control.Monad
--import Dodge.Room.Corridor
--import Dodge.Room.Door
--import Dodge.Room.Link
--import Dodge.Room.RoadBlock
--import Dodge.Tree
--import Padding
import qualified Data.IntMap.Strict as IM
import qualified Data.IntSet as IS
import Data.Maybe (mapMaybe)
import qualified Data.Set as S import qualified Data.Set as S
import ShortShow
import Dodge.Data.MTRS
import Dodge.Room.Room
import Dodge.Cleat import Dodge.Cleat
import Dodge.Data.GenWorld import Dodge.Data.GenWorld
import Dodge.Data.MTRS
import Dodge.Default.Terminal import Dodge.Default.Terminal
import Dodge.Item.Ammo import Dodge.Item.Ammo
import Dodge.Item.Held.Cane import Dodge.Item.Held.Cane
@@ -19,25 +30,20 @@ import Dodge.Room.Door
import Dodge.Room.LasTurret import Dodge.Room.LasTurret
import Dodge.Room.Link import Dodge.Room.Link
import Dodge.Room.Ngon import Dodge.Room.Ngon
--import Dodge.Room.Corridor
--import Dodge.Room.Door
--import Dodge.Room.Link
import Dodge.Room.Procedural import Dodge.Room.Procedural
import Dodge.Room.RezBox import Dodge.Room.RezBox
import Dodge.Room.RoadBlock import Dodge.Room.RoadBlock
import Dodge.Room.Room
import Dodge.Room.Warning import Dodge.Room.Warning
--import Dodge.Room.RoadBlock
import Dodge.RoomLink import Dodge.RoomLink
import Dodge.Terminal import Dodge.Terminal
import Dodge.Tree.Compose import Dodge.Tree.Compose
--import Dodge.Tree
import Geometry import Geometry
import LensHelp import LensHelp
--import Padding import Linear
import RandomHelp import RandomHelp
import ShortShow
import TreeHelp import TreeHelp
import qualified Data.IntSet as IS
import qualified Data.IntMap.Strict as IM
--import Data.List (intersperse) --import Data.List (intersperse)
@@ -54,8 +60,9 @@ tutAnoTree = do
---- , AnTree $ weaponTut ---- , AnTree $ weaponTut
] ]
foldMTRS :: [State LayoutVars (MetaTree Room String)] foldMTRS ::
-> State LayoutVars (MetaTree Room String) [State LayoutVars (MetaTree Room String)] ->
State LayoutVars (MetaTree Room String)
foldMTRS xs = do foldMTRS xs = do
ys <- sequence xs ys <- sequence xs
return $ foldr1 attachOnward' ys return $ foldr1 attachOnward' ys
@@ -84,23 +91,26 @@ tutDrop = do
treePost treePost
[x & rmInPmnt .:~ (0, t j), y, cleatOnward rm] [x & rmInPmnt .:~ (0, t j), y, cleatOnward rm]
where where
t j = \ gw -> let x = gw ^? genInts . ix j t j = \gw ->
let x = gw ^? genInts . ix j
in putMessageTerminal in putMessageTerminal
terminalColor terminalColor
(defaultTerminal & tmBootLines .~ ss <> tlSetStatus (TerminalPressTo $ show x <> "QUIT") <> tlDoEffect TmWdWdPowerDownTerminal) (defaultTerminal & tmBootLines .~ ss <> tlSetStatus (TerminalPressTo $ show x <> "QUIT") <> tlDoEffect TmWdWdPowerDownTerminal)
& plSpot .~ rprBoolShift isUnusedLnk & plSpot
.~ rprBoolShift
isUnusedLnk
(\(p, a) -> ((p + 10 *.* unitVectorAtAngle (a - pi / 2), a), S.singleton UsedPosLow)) (\(p, a) -> ((p + 10 *.* unitVectorAtAngle (a - pi / 2), a), S.singleton UsedPosLow))
ss = ss =
[ makeTermLine "--------------------------------------------" [ makeTermLine "--------------------------------------------"
, makeTermLine "YOU CAN ONLY CARRY A LIMITED AMOUNT OF ITEMS" , makeTermLine "YOU CAN ONLY CARRY A LIMITED AMOUNT OF ITEMS"
, makeTermLine "--------------------------------------------" , makeTermLine "--------------------------------------------"
] ]
<> tlSetStatus (TerminalPressTo "CONTINUE") <> <> tlSetStatus (TerminalPressTo "CONTINUE")
[ makeTermLine "USE [F] TO DROP SINGLE ITEMS" <> [ makeTermLine "USE [F] TO DROP SINGLE ITEMS"
, makeTermLine "--------------------------------------------" , makeTermLine "--------------------------------------------"
] ]
<> tlSetStatus (TerminalPressTo "CONTINUE") <> <> tlSetStatus (TerminalPressTo "CONTINUE")
[ makeTermLine "YOU CAN SELECT AND MOVE MULTIPLE ITEMS" <> [ makeTermLine "YOU CAN SELECT AND MOVE MULTIPLE ITEMS"
, makeTermLine " WITH THE MOUSE" , makeTermLine " WITH THE MOUSE"
, makeTermLine "-------------------------------------------" , makeTermLine "-------------------------------------------"
] ]
@@ -130,8 +140,8 @@ zChasm z = do
roomRectAutoLinks x y roomRectAutoLinks x y
<&> rmLinks %~ setOutLinks (isCornerLink NorthWest) <&> rmLinks %~ setOutLinks (isCornerLink NorthWest)
<&> rmLinks %~ setInLinks (isCornerLink SouthEast) <&> rmLinks %~ setInLinks (isCornerLink SouthEast)
<&> rmPmnts <>~ <&> rmPmnts
[sps0 $ PutChasm (rectNSWE (y/2-z) 0 0 (x-50)) <>~ [ sps0 $ PutChasm (rectNSWE (y / 2 - z) 0 0 (x -50))
, sps0 $ PutChasm (rectNSWE y (y / 2 + z) 50 x) , sps0 $ PutChasm (rectNSWE y (y / 2 + z) 50 x)
] ]
@@ -141,7 +151,8 @@ midChasm = do
y <- state $ randomR (200, 300) y <- state $ randomR (200, 300)
r <- roomRectAutoLinks x y r <- roomRectAutoLinks x y
cs <- join $ takeOne [cenoct x y, censquare x y] cs <- join $ takeOne [cenoct x y, censquare x y]
shuffleLinks $ r shuffleLinks $
r
& rmLinks %~ setOutLinks (isMidEdgeLink r North) & rmLinks %~ setOutLinks (isMidEdgeLink r North)
& rmLinks %~ setInLinks (isMidEdgeLink r South) & rmLinks %~ setInLinks (isMidEdgeLink r South)
& rmPmnts <>~ cs & rmPmnts <>~ cs
@@ -149,30 +160,70 @@ midChasm = do
censquare x y = do censquare x y = do
z <- state $ randomR (40, 60) z <- state $ randomR (40, 60)
return [sps0 $ PutChasm (rectNSWE (y - z) z z (x - z))] return [sps0 $ PutChasm (rectNSWE (y - z) z z (x - z))]
cenoct x y = return cenoct x y =
return
[sps0 $ PutChasm $ (V2 (x / 2) (y / 2) +) <$> polyOrthDist 8 (min x y / 2 - 25)] [sps0 $ PutChasm $ (V2 (x / 2) (y / 2) +) <$> polyOrthDist 8 (min x y / 2 - 25)]
-- dia x y = [sps0 $ PutChasm [V2 ] -- dia x y = [sps0 $ PutChasm [V2 ]
polyChasm :: Int -> Float -> State LayoutVars Room polyChasm :: Int -> Float -> State LayoutVars Room
polyChasm n x = roomNgon n x polyChasm n x =
shuffleLinks
=<< ( roomNgon n x
<&> rmPmnts <>~ [sps0 $ PutChasm $ polyOrthDist n (x -30)]
<&> rmLinks %~ setOutLinks (\rl -> rl ^. rlPos . _y > 0)
<&> rmLinks %~ setInLinks (\rl -> rl ^. rlPos . _y < (5 - x))
)
polyChasmC :: Int -> Float -> State LayoutVars Room
polyChasmC n x =
roomNgon n x
<&> rmPmnts <>~ [sps0 $ PutChasm $ rectNSWE x (60 - x) (-40) 40]
<&> rmLinks %~ setInLinks (\rl -> PolyEdge 1 `S.member` (rl ^. rlType))
<&> rmLinks %~ setOutLinks (\rl -> PolyEdge (n -1) `S.member` (rl ^. rlType))
chasmSimpleMaze :: State LayoutVars Room chasmSimpleMaze :: State LayoutVars Room
chasmSimpleMaze = join $ takeOne chasmSimpleMaze =
join $
takeOne
[ midChasm [ midChasm
, zChasm 25 , zChasm 25
, lChasm , lChasm
, cChasm , cChasm
, pc1
, pc2
] ]
where
pc1 = do
i <- takeOne [6, 8]
x <- state $ randomR (100, 150)
polyChasm i x
pc2 = do
i <- takeOne [6, 8]
x <- state $ randomR (100, 150)
polyChasmC i x
tutLight :: State LayoutVars (MetaTree Room String) tutLight :: State LayoutVars (MetaTree Room String)
tutLight = do tutLight = do
-- x <- roomRectAutoLinks 200 400
-- let y = x & rmLinks %~ setOutLinks (\rl -> OnEdge North `S.member` _rlType rl)
-- -- & rmLinks %~ setInLinks (\rl -> OnEdge South `S.member` _rlType rl)
-- -- & rmLinks %~ setLinkType InLink (isCornerLink SouthEast)
-- & rmLinks %~ setLinkType InLink (isMidEdgeLink x South)
x <- chasmSimpleMaze x <- chasmSimpleMaze
return $ tToBTree "TutLight" $ treePost [x,cleatOnward corridor] y <- chasmSimpleMaze
return $
tToBTree "TutLight" $
treePost
[ x
, corridor & rmPmnts .~ mempty
, removeLights y
, corridor & rmPmnts .~ mempty
, removeLights y
, cleatOnward corridor & rmPmnts .~ mempty
]
removeLights :: Room -> Room
removeLights = rmPmnts %~ mapMaybe f
where
f x = case x ^. plType of
PutLabel "light" -> Nothing
_ -> Just x
tutHub :: State LayoutVars (MetaTree Room String) tutHub :: State LayoutVars (MetaTree Room String)
tutHub = do tutHub = do
@@ -180,11 +231,13 @@ tutHub = do
i <- nextLayoutInt i <- nextLayoutInt
j <- nextLayoutInt j <- nextLayoutInt
k <- nextLayoutInt k <- nextLayoutInt
let a gw = analyserByNthLinkWithPrompt let a gw =
analyserByNthLinkWithPrompt
3 --(makeTermPara $ show is <> show (getRoomsFromInts is gw) 3 --(makeTermPara $ show is <> show (getRoomsFromInts is gw)
-- <> getCrsFromRooms' is gw) -- <> getCrsFromRooms' is gw)
[] []
(RequireDeadCreatures $ getCrsFromRooms is gw) k (RequireDeadCreatures $ getCrsFromRooms is gw)
k
x <- x <-
shuffleLinks shuffleLinks
. analyserByDoorWithPrompt [] (RequireEquipment (AMMOMAG DRUMMAG)) i . analyserByDoorWithPrompt [] (RequireEquipment (AMMOMAG DRUMMAG)) i
@@ -222,7 +275,9 @@ tutHub = do
putMessageTerminal putMessageTerminal
terminalColor terminalColor
(defaultTerminal & tmBootLines .~ ss' <> tlSetStatus (TerminalPressTo "QUIT") <> tlDoEffect TmWdWdPowerDownTerminal) (defaultTerminal & tmBootLines .~ ss' <> tlSetStatus (TerminalPressTo "QUIT") <> tlDoEffect TmWdWdPowerDownTerminal)
& plSpot .~ rprBoolShift isUnusedLnk & plSpot
.~ rprBoolShift
isUnusedLnk
(\(p, a) -> ((p + 10 *.* unitVectorAtAngle (a - pi / 2), a), S.singleton UsedPosLow)) (\(p, a) -> ((p + 10 *.* unitVectorAtAngle (a - pi / 2), a), S.singleton UsedPosLow))
ss' = ss' =
[ makeTermLine "---------------------------------------------" [ makeTermLine "---------------------------------------------"
@@ -231,22 +286,22 @@ tutHub = do
, makeTermLine " TO REARRANGE INVENTORY ITEMS" , makeTermLine " TO REARRANGE INVENTORY ITEMS"
, makeTermLine "---------------------------------------------" , makeTermLine "---------------------------------------------"
] ]
<> tlSetStatus (TerminalPressTo "CONTINUE") <> <> tlSetStatus (TerminalPressTo "CONTINUE")
[ makeTermLine "AMMO MAGS ARE NORMALLY LOADED BENEATH WEAPONS" <> [ makeTermLine "AMMO MAGS ARE NORMALLY LOADED BENEATH WEAPONS"
, makeTermLine " .-------." , makeTermLine " .-------."
, makeTermLine " BURSTRIFLE |DRUMMAG|" , makeTermLine " BURSTRIFLE |DRUMMAG|"
, makeTermLine " <------^-------^" , makeTermLine " <------^-------^"
, makeTermLine "---------------------------------------------" , makeTermLine "---------------------------------------------"
] ]
<> tlSetStatus (TerminalPressTo "CONTINUE") <> <> tlSetStatus (TerminalPressTo "CONTINUE")
[ makeTermLine "HOLD [RMB] TO AIM" <> [ makeTermLine "HOLD [RMB] TO AIM"
, makeTermLine " THEN CLICK [LMB] TO FIRE LOADED WEAPONS" , makeTermLine " THEN CLICK [LMB] TO FIRE LOADED WEAPONS"
, makeTermLine "---------------------------------------------" , makeTermLine "---------------------------------------------"
] ]
getRoomsFromInts :: [Int] -> GenWorld -> IS.IntSet getRoomsFromInts :: [Int] -> GenWorld -> IS.IntSet
getRoomsFromInts is gw getRoomsFromInts is gw =
= foldMap IS.singleton $ IM.restrictKeys (gw ^. genInts) (IS.fromList is) foldMap IS.singleton $ IM.restrictKeys (gw ^. genInts) (IS.fromList is)
getCrsFromRooms' :: [Int] -> GenWorld -> String getCrsFromRooms' :: [Int] -> GenWorld -> String
getCrsFromRooms' is gw = fmap h $ show $ foldMap f (IM.restrictKeys (gw ^. genRooms) js) getCrsFromRooms' is gw = fmap h $ show $ foldMap f (IM.restrictKeys (gw ^. genRooms) js)
@@ -255,6 +310,7 @@ getCrsFromRooms' is gw = fmap h $ show $ foldMap f (IM.restrictKeys (gw ^. genRo
h x = x h x = x
js = getRoomsFromInts is gw js = getRoomsFromInts is gw
f rm = shortShow <$> rm ^.. rmPmnts . each . plType f rm = shortShow <$> rm ^.. rmPmnts . each . plType
--f rm = foldMap g $ rm ^. rmPmnts --f rm = foldMap g $ rm ^. rmPmnts
--g x = case x ^. plType of --g x = case x ^. plType of
-- PutCrit _ -> [x ^?! plMID . _Just] -- PutCrit _ -> [x ^?! plMID . _Just]
@@ -277,6 +333,7 @@ sensorTut =
, makeTermLine " | / - \\" , makeTermLine " | / - \\"
, makeTermLine "--------------------------------------------" , makeTermLine "--------------------------------------------"
] ]
-- <> tlSetStatus (TerminalPressTo "CONTINUE") -- <> tlSetStatus (TerminalPressTo "CONTINUE")
tutRezBox :: RandomGen g => State g Room tutRezBox :: RandomGen g => State g Room
@@ -286,7 +343,9 @@ tutRezBox = do
roomRect 40 60 1 1 roomRect 40 60 1 1
& rmPmnts & rmPmnts
.~ [ sPS (V2 20 1) 0 $ PutLS ls .~ [ sPS (V2 20 1) 0 $ PutLS ls
, Placement (PS 0 0) PutNothing Nothing Nothing $ \w _ -> Just $ putImmediateMessageTerminal , Placement (PS 0 0) PutNothing Nothing Nothing $ \w _ ->
Just $
putImmediateMessageTerminal
terminalColor terminalColor
( defaultTerminal & tmBootLines .~ s w ( defaultTerminal & tmBootLines .~ s w
<> tlSetStatus (TerminalPressTo "QUIT") <> tlSetStatus (TerminalPressTo "QUIT")
@@ -315,8 +374,8 @@ tutorialMessage1 i =
, makeTermLine " [D] TO MOVE" , makeTermLine " [D] TO MOVE"
, makeTermLine "--------------------------------------------" , makeTermLine "--------------------------------------------"
] ]
<> tlSetStatus (TerminalPressTo "CONTINUE") <> <> tlSetStatus (TerminalPressTo "CONTINUE")
[ makeTermLine "AFTER EXITING THIS TERMINAL YOUR INVENTORY" <> [ makeTermLine "AFTER EXITING THIS TERMINAL YOUR INVENTORY"
, makeTermLine " AND NEARBY OBJECTS WILL BE DISPLAYED" , makeTermLine " AND NEARBY OBJECTS WILL BE DISPLAYED"
, makeTermLine "--------------------------------------------" , makeTermLine "--------------------------------------------"
] ]
+150 -150
View File
@@ -143,7 +143,7 @@ BlockDrawMempty src/Dodge/Data/Block.hs 39;" C
BlockDraws src/Dodge/Data/Block.hs 41;" C BlockDraws src/Dodge/Data/Block.hs 41;" C
BlockObstacle src/Dodge/Data/PathGraph.hs 49;" C BlockObstacle src/Dodge/Data/PathGraph.hs 49;" C
BlockPart src/Dodge/Data/Wall/Structure.hs 16;" C BlockPart src/Dodge/Data/Wall/Structure.hs 16;" C
BlockedLink src/Dodge/Data/Room.hs 48;" C BlockedLink src/Dodge/Data/Room.hs 49;" C
BloomLayer src/Picture/Data.hs 25;" C BloomLayer src/Picture/Data.hs 25;" C
BloomNoZWrite src/Picture/Data.hs 26;" C BloomNoZWrite src/Picture/Data.hs 26;" C
Blunt src/Dodge/Data/Damage.hs 21;" C Blunt src/Dodge/Data/Damage.hs 21;" C
@@ -479,7 +479,7 @@ FootForward src/Dodge/Data/Creature/Stance.hs 35;" t
FootstepSound src/Dodge/Data/SoundOrigin.hs 30;" C FootstepSound src/Dodge/Data/SoundOrigin.hs 30;" C
ForceFieldType src/Dodge/Data/Item/Use/Consumption/Ammo.hs 11;" t ForceFieldType src/Dodge/Data/Item/Use/Consumption/Ammo.hs 11;" t
ForegroundShape src/Dodge/Data/ForegroundShape.hs 14;" t ForegroundShape src/Dodge/Data/ForegroundShape.hs 14;" t
FromEdge src/Dodge/Data/Room.hs 47;" C FromEdge src/Dodge/Data/Room.hs 48;" C
FullRes src/Dodge/Data/Config.hs 97;" C FullRes src/Dodge/Data/Config.hs 97;" C
FullShadowFidelity src/Shape/Data.hs 24;" C FullShadowFidelity src/Shape/Data.hs 24;" C
FullSize src/Dodge/Data/Item/Params.hs 28;" C FullSize src/Dodge/Data/Item/Params.hs 28;" C
@@ -886,7 +886,7 @@ NorthEast src/Dodge/Data/CardinalPoint.hs 13;" C
NorthEast8 src/Dodge/Data/CardinalPoint.hs 21;" C NorthEast8 src/Dodge/Data/CardinalPoint.hs 21;" C
NorthWest src/Dodge/Data/CardinalPoint.hs 16;" C NorthWest src/Dodge/Data/CardinalPoint.hs 16;" C
NorthWest8 src/Dodge/Data/CardinalPoint.hs 27;" C NorthWest8 src/Dodge/Data/CardinalPoint.hs 27;" C
NotLink src/Dodge/Data/Room.hs 66;" C NotLink src/Dodge/Data/Room.hs 67;" C
NotPushed src/Dodge/Data/Door.hs 30;" C NotPushed src/Dodge/Data/Door.hs 30;" C
Nothing' src/MaybeHelp.hs 13;" C Nothing' src/MaybeHelp.hs 13;" C
NothingID src/Dodge/Data/CrWlID.hs 12;" C NothingID src/Dodge/Data/CrWlID.hs 12;" C
@@ -936,7 +936,7 @@ Object src/Dodge/Data/Object.hs 10;" t
ObjectType src/Dodge/Data/ObjectType.hs 11;" t ObjectType src/Dodge/Data/ObjectType.hs 11;" t
OnBack src/Dodge/Data/Equipment/Misc.hs 24;" C OnBack src/Dodge/Data/Equipment/Misc.hs 24;" C
OnChest src/Dodge/Data/Equipment/Misc.hs 23;" C OnChest src/Dodge/Data/Equipment/Misc.hs 23;" C
OnEdge src/Dodge/Data/Room.hs 46;" C OnEdge src/Dodge/Data/Room.hs 47;" C
OnFloor src/Dodge/Data/Item/Location.hs 36;" C OnFloor src/Dodge/Data/Item/Location.hs 36;" C
OnHead src/Dodge/Data/Equipment/Misc.hs 22;" C OnHead src/Dodge/Data/Equipment/Misc.hs 22;" C
OnLeftLeg src/Dodge/Data/Equipment/Misc.hs 27;" C OnLeftLeg src/Dodge/Data/Equipment/Misc.hs 27;" C
@@ -983,16 +983,16 @@ PORTABLEFUSION src/Dodge/Data/Item/Combine.hs 89;" C
POWERLEGS src/Dodge/Data/Item/Combine.hs 130;" C POWERLEGS src/Dodge/Data/Item/Combine.hs 130;" C
PPLevelReset src/Dodge/Data/PressPlate.hs 16;" C PPLevelReset src/Dodge/Data/PressPlate.hs 16;" C
PRISM src/Dodge/Data/Item/Combine.hs 66;" C PRISM src/Dodge/Data/Item/Combine.hs 66;" C
PS src/Dodge/Data/GenWorld.hs 93;" C PS src/Dodge/Data/GenWorld.hs 95;" C
PSNoShiftCont src/Dodge/Data/GenWorld.hs 94;" C PSNoShiftCont src/Dodge/Data/GenWorld.hs 96;" C
PSPos src/Dodge/Data/GenWorld.hs 95;" C PSPos src/Dodge/Data/GenWorld.hs 97;" C
PSRoomRand src/Dodge/Data/GenWorld.hs 100;" C PSRoomRand src/Dodge/Data/GenWorld.hs 102;" C
PSType src/Dodge/Data/GenWorld.hs 32;" t PSType src/Dodge/Data/GenWorld.hs 32;" t
PUMP src/Dodge/Data/Item/Combine.hs 63;" C PUMP src/Dodge/Data/Item/Combine.hs 63;" C
PaletteColor src/Color/Data.hs 14;" t PaletteColor src/Color/Data.hs 14;" t
PathEdge src/Dodge/Data/PathGraph.hs 40;" t PathEdge src/Dodge/Data/PathGraph.hs 40;" t
PathEdgeNodes src/Dodge/Data/PathGraph.hs 33;" t PathEdgeNodes src/Dodge/Data/PathGraph.hs 33;" t
PathFromEdge src/Dodge/Data/Room.hs 69;" t PathFromEdge src/Dodge/Data/Room.hs 70;" t
PathTo src/Dodge/Data/ActionPlan.hs 88;" C PathTo src/Dodge/Data/ActionPlan.hs 88;" C
Pathing src/Dodge/Data/Config.hs 76;" C Pathing src/Dodge/Data/Config.hs 76;" C
Patrol src/Dodge/Data/ActionPlan.hs 180;" C Patrol src/Dodge/Data/ActionPlan.hs 180;" C
@@ -1005,8 +1005,8 @@ PhysicalSensor src/Dodge/Data/Machine/Sensor.hs 18;" C
Picture src/Picture/Data.hs 46;" t Picture src/Picture/Data.hs 46;" t
Piercing src/Dodge/Data/Damage.hs 20;" C Piercing src/Dodge/Data/Damage.hs 20;" C
PistolAI src/Dodge/Data/Creature/Misc.hs 43;" C PistolAI src/Dodge/Data/Creature/Misc.hs 43;" C
Placement src/Dodge/Data/GenWorld.hs 106;" t Placement src/Dodge/Data/GenWorld.hs 108;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 92;" t PlacementSpot src/Dodge/Data/GenWorld.hs 94;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 88;" C PlainBarrel src/Dodge/Data/Creature/Misc.hs 88;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlayStatus src/Sound/Data.hs 23;" t PlayStatus src/Sound/Data.hs 23;" t
@@ -1019,6 +1019,7 @@ Point3Q src/Geometry/Data.hs 52;" t
Point4 src/Geometry/Data.hs 41;" t Point4 src/Geometry/Data.hs 41;" t
Poison src/Dodge/Data/Damage.hs 30;" C Poison src/Dodge/Data/Damage.hs 30;" C
PoisonDamage src/Dodge/Data/Damage/Type.hs 6;" C PoisonDamage src/Dodge/Data/Damage/Type.hs 6;" C
PolyEdge src/Dodge/Data/Room.hs 46;" C
PolyShad src/Picture/Data.hs 36;" C PolyShad src/Picture/Data.hs 36;" C
Polyhedra src/Polyhedra/Data.hs 13;" t Polyhedra src/Polyhedra/Data.hs 13;" t
Polyhedron src/Polyhedra/Data.hs 13;" C Polyhedron src/Polyhedra/Data.hs 13;" C
@@ -1084,6 +1085,7 @@ PutFlIt src/Dodge/Data/GenWorld.hs 44;" C
PutForeground src/Dodge/Data/GenWorld.hs 60;" C PutForeground src/Dodge/Data/GenWorld.hs 60;" C
PutID src/Dodge/Data/GenWorld.hs 63;" C PutID src/Dodge/Data/GenWorld.hs 63;" C
PutLS src/Dodge/Data/GenWorld.hs 40;" C PutLS src/Dodge/Data/GenWorld.hs 40;" C
PutLabel src/Dodge/Data/GenWorld.hs 65;" C
PutLineBlock src/Dodge/Data/GenWorld.hs 50;" C PutLineBlock src/Dodge/Data/GenWorld.hs 50;" C
PutMachine src/Dodge/Data/GenWorld.hs 34;" C PutMachine src/Dodge/Data/GenWorld.hs 34;" C
PutMod src/Dodge/Data/GenWorld.hs 48;" C PutMod src/Dodge/Data/GenWorld.hs 48;" C
@@ -1111,7 +1113,7 @@ RIFLE src/Dodge/Data/Item/Combine.hs 154;" C
RLAUNCHER src/Dodge/Data/Item/Combine.hs 171;" C RLAUNCHER src/Dodge/Data/Item/Combine.hs 171;" C
RLAUNCHERX src/Dodge/Data/Item/Combine.hs 172;" C RLAUNCHERX src/Dodge/Data/Item/Combine.hs 172;" C
ROSE src/Color/Data.hs 21;" C ROSE src/Color/Data.hs 21;" C
RPLinkStatus src/Dodge/Data/Room.hs 55;" t RPLinkStatus src/Dodge/Data/Room.hs 56;" t
RProps src/Dodge/Layout/Generate.hs 13;" C RProps src/Dodge/Layout/Generate.hs 13;" C
RadarBlip src/Dodge/Data/RadarBlip.hs 14;" t RadarBlip src/Dodge/Data/RadarBlip.hs 14;" t
RadarSweep src/Dodge/Data/RadarSweep.hs 19;" t RadarSweep src/Dodge/Data/RadarSweep.hs 19;" t
@@ -1155,20 +1157,20 @@ Rocket src/Dodge/Data/Projectile.hs 34;" C
RocketHoming src/Dodge/Data/Projectile.hs 41;" t RocketHoming src/Dodge/Data/Projectile.hs 41;" t
RocketSmoke src/Dodge/Data/Projectile.hs 54;" t RocketSmoke src/Dodge/Data/Projectile.hs 54;" t
RocketSmoke src/Dodge/Data/Cloud.hs 24;" C RocketSmoke src/Dodge/Data/Cloud.hs 24;" C
Room src/Dodge/Data/GenWorld.hs 121;" t Room src/Dodge/Data/GenWorld.hs 123;" t
RoomClipping src/Dodge/Data/Config.hs 107;" t RoomClipping src/Dodge/Data/Config.hs 107;" t
RoomInt src/Dodge/Tree/Shift.hs 26;" t RoomInt src/Dodge/Tree/Shift.hs 26;" t
RoomLink src/Dodge/Data/Room.hs 23;" t RoomLink src/Dodge/Data/Room.hs 23;" t
RoomLinkType src/Dodge/Data/Room.hs 42;" t RoomLinkType src/Dodge/Data/Room.hs 42;" t
RoomPos src/Dodge/Data/Room.hs 14;" t RoomPos src/Dodge/Data/Room.hs 14;" t
RoomPosExLink src/Dodge/Data/Room.hs 75;" C RoomPosExLink src/Dodge/Data/Room.hs 76;" C
RoomPosLab src/Dodge/Data/Room.hs 76;" C RoomPosLab src/Dodge/Data/Room.hs 77;" C
RoomPosOffPath src/Dodge/Data/Room.hs 74;" C RoomPosOffPath src/Dodge/Data/Room.hs 75;" C
RoomPosOnPath src/Dodge/Data/Room.hs 73;" C RoomPosOnPath src/Dodge/Data/Room.hs 74;" C
RoomPosType src/Dodge/Data/Room.hs 72;" t RoomPosType src/Dodge/Data/Room.hs 73;" t
RoomProperties src/Dodge/Layout/Generate.hs 13;" t RoomProperties src/Dodge/Layout/Generate.hs 13;" t
RoomType src/Dodge/Data/Room.hs 30;" t RoomType src/Dodge/Data/Room.hs 30;" t
RoomWire src/Dodge/Data/Room.hs 51;" t RoomWire src/Dodge/Data/Room.hs 52;" t
RoundedFaces src/Shape/Data.hs 18;" C RoundedFaces src/Shape/Data.hs 18;" C
RunningSideEffect src/Dodge/Data/Universe.hs 69;" C RunningSideEffect src/Dodge/Data/Universe.hs 69;" C
SCRAPMETAL src/Dodge/Data/Item/Combine.hs 62;" C SCRAPMETAL src/Dodge/Data/Item/Combine.hs 62;" C
@@ -1423,7 +1425,7 @@ Unimportant src/Shape/Data.hs 37;" C
Universe src/Dodge/Data/Universe.hs 31;" t Universe src/Dodge/Data/Universe.hs 31;" t
UnloadedWeaponSF src/Dodge/Data/ComposedItem.hs 13;" C UnloadedWeaponSF src/Dodge/Data/ComposedItem.hs 13;" C
UnlockInv src/Dodge/Data/WorldEffect.hs 28;" C UnlockInv src/Dodge/Data/WorldEffect.hs 28;" C
UnusedLink src/Dodge/Data/Room.hs 65;" C UnusedLink src/Dodge/Data/Room.hs 66;" C
UseAheadPos src/Dodge/Data/ActionPlan.hs 160;" C UseAheadPos src/Dodge/Data/ActionPlan.hs 160;" C
UseAttach src/Dodge/Data/Item/Use.hs 32;" C UseAttach src/Dodge/Data/Item/Use.hs 32;" C
UseBulletMod src/Dodge/Data/Item/Use.hs 37;" C UseBulletMod src/Dodge/Data/Item/Use.hs 37;" C
@@ -1449,13 +1451,13 @@ UseValue src/Dodge/Data/Item/Use.hs 35;" C
UseableAnytime src/Dodge/Data/UseCondition.hs 7;" C UseableAnytime src/Dodge/Data/UseCondition.hs 7;" C
UseableWhenAimed src/Dodge/Data/UseCondition.hs 5;" C UseableWhenAimed src/Dodge/Data/UseCondition.hs 5;" C
UseableWhenHeld src/Dodge/Data/UseCondition.hs 6;" C UseableWhenHeld src/Dodge/Data/UseCondition.hs 6;" C
UsedInLink src/Dodge/Data/Room.hs 61;" C UsedInLink src/Dodge/Data/Room.hs 62;" C
UsedOutLink src/Dodge/Data/Room.hs 56;" C UsedOutLink src/Dodge/Data/Room.hs 57;" C
UsedPos src/Dodge/Data/Room.hs 79;" t UsedPos src/Dodge/Data/Room.hs 80;" t
UsedPosFloor src/Dodge/Data/Room.hs 83;" C UsedPosFloor src/Dodge/Data/Room.hs 84;" C
UsedPosHigh src/Dodge/Data/Room.hs 82;" C UsedPosHigh src/Dodge/Data/Room.hs 83;" C
UsedPosLow src/Dodge/Data/Room.hs 80;" C UsedPosLow src/Dodge/Data/Room.hs 81;" C
UsedPosMid src/Dodge/Data/Room.hs 81;" C UsedPosMid src/Dodge/Data/Room.hs 82;" C
VAO src/Shader/Data.hs 64;" t VAO src/Shader/Data.hs 64;" t
VBO src/Shader/Data.hs 81;" t VBO src/Shader/Data.hs 81;" t
VF src/Polyhedra/Data.hs 21;" t VF src/Polyhedra/Data.hs 21;" t
@@ -1487,7 +1489,7 @@ WallP src/Dodge/LevelGen/StaticWalls.hs 23;" t
WallP src/Dodge/LevelGen/StaticWalls/Deprecated.hs 11;" t WallP src/Dodge/LevelGen/StaticWalls/Deprecated.hs 11;" t
WallSound src/Dodge/Data/SoundOrigin.hs 25;" C WallSound src/Dodge/Data/SoundOrigin.hs 25;" C
WallStructure src/Dodge/Data/Wall/Structure.hs 12;" t WallStructure src/Dodge/Data/Wall/Structure.hs 12;" t
WallWire src/Dodge/Data/Room.hs 53;" C WallWire src/Dodge/Data/Room.hs 54;" C
Walls_info src/Dodge/Data/Config.hs 75;" C Walls_info src/Dodge/Data/Config.hs 75;" C
War src/Dodge/Data/Scenario.hs 28;" C War src/Dodge/Data/Scenario.hs 28;" C
WarmTime src/Dodge/Data/Item/Params.hs 21;" C WarmTime src/Dodge/Data/Item/Params.hs 21;" C
@@ -2098,9 +2100,9 @@ _nzAngle src/Dodge/Data/Item/Params.hs 18;" f
_nzMaxWalkAngle src/Dodge/Data/Muzzle.hs 49;" f _nzMaxWalkAngle src/Dodge/Data/Muzzle.hs 49;" f
_nzPressure src/Dodge/Data/Muzzle.hs 48;" f _nzPressure src/Dodge/Data/Muzzle.hs 48;" f
_nzWalkSpeed src/Dodge/Data/Muzzle.hs 50;" f _nzWalkSpeed src/Dodge/Data/Muzzle.hs 50;" f
_offPathFromEdges src/Dodge/Data/Room.hs 74;" f _offPathFromEdges src/Dodge/Data/Room.hs 75;" f
_oldMagnets src/Dodge/Data/LWorld.hs 127;" f _oldMagnets src/Dodge/Data/LWorld.hs 127;" f
_onPathFromEdges src/Dodge/Data/Room.hs 73;" f _onPathFromEdges src/Dodge/Data/Room.hs 74;" f
_opDraw src/Dodge/Data/Wall.hs 43;" f _opDraw src/Dodge/Data/Wall.hs 43;" f
_opSel src/Dodge/Data/RightButtonOptions.hs 17;" f _opSel src/Dodge/Data/RightButtonOptions.hs 17;" f
_opTexture src/Dodge/Data/Wall.hs 44;" f _opTexture src/Dodge/Data/Wall.hs 44;" f
@@ -2140,11 +2142,11 @@ _pjSpin src/Dodge/Data/Projectile.hs 21;" f
_pjTimer src/Dodge/Data/Projectile.hs 24;" f _pjTimer src/Dodge/Data/Projectile.hs 24;" f
_pjType src/Dodge/Data/Projectile.hs 26;" f _pjType src/Dodge/Data/Projectile.hs 26;" f
_pjVel src/Dodge/Data/Projectile.hs 19;" f _pjVel src/Dodge/Data/Projectile.hs 19;" f
_plExternalID src/Dodge/Data/GenWorld.hs 110;" f _plExternalID src/Dodge/Data/GenWorld.hs 112;" f
_plIDCont src/Dodge/Data/GenWorld.hs 111;" f _plIDCont src/Dodge/Data/GenWorld.hs 113;" f
_plMID src/Dodge/Data/GenWorld.hs 109;" f _plMID src/Dodge/Data/GenWorld.hs 111;" f
_plSpot src/Dodge/Data/GenWorld.hs 107;" f _plSpot src/Dodge/Data/GenWorld.hs 109;" f
_plType src/Dodge/Data/GenWorld.hs 108;" f _plType src/Dodge/Data/GenWorld.hs 110;" f
_playStatus src/Sound/Data.hs 17;" f _playStatus src/Sound/Data.hs 17;" f
_playingSounds src/Dodge/Data/World.hs 42;" f _playingSounds src/Dodge/Data/World.hs 42;" f
_pnZoning src/Dodge/Data/World.hs 52;" f _pnZoning src/Dodge/Data/World.hs 52;" f
@@ -2184,13 +2186,13 @@ _proxReqEquipment src/Dodge/Data/Machine/Sensor.hs 38;" f
_proxReqMinHealth src/Dodge/Data/Machine/Sensor.hs 37;" f _proxReqMinHealth src/Dodge/Data/Machine/Sensor.hs 37;" f
_proxSensorType src/Dodge/Data/Machine/Sensor.hs 28;" f _proxSensorType src/Dodge/Data/Machine/Sensor.hs 28;" f
_proxToggle src/Dodge/Data/Machine/Sensor.hs 29;" f _proxToggle src/Dodge/Data/Machine/Sensor.hs 29;" f
_psFallback src/Dodge/Data/GenWorld.hs 98;" f _psFallback src/Dodge/Data/GenWorld.hs 100;" f
_psPos src/Dodge/Data/GenWorld.hs 93;" f _psPos src/Dodge/Data/GenWorld.hs 95;" f
_psRandShift src/Dodge/Data/GenWorld.hs 102;" f _psRandShift src/Dodge/Data/GenWorld.hs 104;" f
_psRoomEff src/Dodge/Data/GenWorld.hs 97;" f _psRoomEff src/Dodge/Data/GenWorld.hs 99;" f
_psRoomRandPointNum src/Dodge/Data/GenWorld.hs 101;" f _psRoomRandPointNum src/Dodge/Data/GenWorld.hs 103;" f
_psRot src/Dodge/Data/GenWorld.hs 93;" f _psRot src/Dodge/Data/GenWorld.hs 95;" f
_psSelect src/Dodge/Data/GenWorld.hs 96;" f _psSelect src/Dodge/Data/GenWorld.hs 98;" f
_pulseBalls src/Dodge/Data/LWorld.hs 119;" f _pulseBalls src/Dodge/Data/LWorld.hs 119;" f
_pulseLasers src/Dodge/Data/LWorld.hs 118;" f _pulseLasers src/Dodge/Data/LWorld.hs 118;" f
_pulseProgress src/Dodge/Data/Creature/Misc.hs 56;" f _pulseProgress src/Dodge/Data/Creature/Misc.hs 56;" f
@@ -2201,6 +2203,7 @@ _putChasmPoly src/Dodge/Data/GenWorld.hs 64;" f
_putEndPoint src/Dodge/Data/GenWorld.hs 54;" f _putEndPoint src/Dodge/Data/GenWorld.hs 54;" f
_putID src/Dodge/Data/GenWorld.hs 63;" f _putID src/Dodge/Data/GenWorld.hs 63;" f
_putItem src/Dodge/Data/GenWorld.hs 44;" f _putItem src/Dodge/Data/GenWorld.hs 44;" f
_putLabel src/Dodge/Data/GenWorld.hs 65;" f
_putMachineMachine src/Dodge/Data/GenWorld.hs 36;" f _putMachineMachine src/Dodge/Data/GenWorld.hs 36;" f
_putMachineMaybeItem src/Dodge/Data/GenWorld.hs 38;" f _putMachineMaybeItem src/Dodge/Data/GenWorld.hs 38;" f
_putMachinePoly src/Dodge/Data/GenWorld.hs 35;" f _putMachinePoly src/Dodge/Data/GenWorld.hs 35;" f
@@ -2239,40 +2242,40 @@ _rkSmoke src/Dodge/Data/Projectile.hs 36;" f
_rlDir src/Dodge/Data/Room.hs 26;" f _rlDir src/Dodge/Data/Room.hs 26;" f
_rlPos src/Dodge/Data/Room.hs 25;" f _rlPos src/Dodge/Data/Room.hs 25;" f
_rlType src/Dodge/Data/Room.hs 24;" f _rlType src/Dodge/Data/Room.hs 24;" f
_rmBound src/Dodge/Data/GenWorld.hs 136;" f _rmBound src/Dodge/Data/GenWorld.hs 138;" f
_rmChildren src/Dodge/Data/GenWorld.hs 147;" f _rmChildren src/Dodge/Data/GenWorld.hs 149;" f
_rmClusterStatus src/Dodge/Data/GenWorld.hs 149;" f _rmClusterStatus src/Dodge/Data/GenWorld.hs 151;" f
_rmConnectsTo src/Dodge/Data/GenWorld.hs 144;" f _rmConnectsTo src/Dodge/Data/GenWorld.hs 146;" f
_rmEndWires src/Dodge/Data/GenWorld.hs 143;" f _rmEndWires src/Dodge/Data/GenWorld.hs 145;" f
_rmFloor src/Dodge/Data/GenWorld.hs 137;" f _rmFloor src/Dodge/Data/GenWorld.hs 139;" f
_rmHeight src/Dodge/Data/Room.hs 38;" f _rmHeight src/Dodge/Data/Room.hs 38;" f
_rmInPmnt src/Dodge/Data/GenWorld.hs 135;" f _rmInPmnt src/Dodge/Data/GenWorld.hs 137;" f
_rmLinkEff src/Dodge/Data/GenWorld.hs 125;" f _rmLinkEff src/Dodge/Data/GenWorld.hs 127;" f
_rmLinks src/Dodge/Data/GenWorld.hs 123;" f _rmLinks src/Dodge/Data/GenWorld.hs 125;" f
_rmMID src/Dodge/Data/GenWorld.hs 145;" f _rmMID src/Dodge/Data/GenWorld.hs 147;" f
_rmMParent src/Dodge/Data/GenWorld.hs 146;" f _rmMParent src/Dodge/Data/GenWorld.hs 148;" f
_rmName src/Dodge/Data/GenWorld.hs 138;" f _rmName src/Dodge/Data/GenWorld.hs 140;" f
_rmPath src/Dodge/Data/GenWorld.hs 133;" f _rmPath src/Dodge/Data/GenWorld.hs 135;" f
_rmPmnts src/Dodge/Data/GenWorld.hs 134;" f _rmPmnts src/Dodge/Data/GenWorld.hs 136;" f
_rmPolys src/Dodge/Data/GenWorld.hs 122;" f _rmPolys src/Dodge/Data/GenWorld.hs 124;" f
_rmPos src/Dodge/Data/GenWorld.hs 132;" f _rmPos src/Dodge/Data/GenWorld.hs 134;" f
_rmRandPSs src/Dodge/Data/GenWorld.hs 141;" f _rmRandPSs src/Dodge/Data/GenWorld.hs 143;" f
_rmShift src/Dodge/Data/GenWorld.hs 139;" f _rmShift src/Dodge/Data/GenWorld.hs 141;" f
_rmStartWires src/Dodge/Data/GenWorld.hs 142;" f _rmStartWires src/Dodge/Data/GenWorld.hs 144;" f
_rmType src/Dodge/Data/GenWorld.hs 148;" f _rmType src/Dodge/Data/GenWorld.hs 150;" f
_rmViewpoints src/Dodge/Data/GenWorld.hs 140;" f _rmViewpoints src/Dodge/Data/GenWorld.hs 142;" f
_rmWidth src/Dodge/Data/Room.hs 37;" f _rmWidth src/Dodge/Data/Room.hs 37;" f
_rpDir src/Dodge/Data/Room.hs 16;" f _rpDir src/Dodge/Data/Room.hs 16;" f
_rpLinkStatus src/Dodge/Data/Room.hs 18;" f _rpLinkStatus src/Dodge/Data/Room.hs 18;" f
_rpPlacementUse src/Dodge/Data/Room.hs 19;" f _rpPlacementUse src/Dodge/Data/Room.hs 19;" f
_rpPos src/Dodge/Data/Room.hs 15;" f _rpPos src/Dodge/Data/Room.hs 15;" f
_rpType src/Dodge/Data/Room.hs 17;" f _rpType src/Dodge/Data/Room.hs 17;" f
_rplsChildNum src/Dodge/Data/Room.hs 58;" f _rplsChildNum src/Dodge/Data/Room.hs 59;" f
_rplsInRoomID src/Dodge/Data/Room.hs 63;" f _rplsInRoomID src/Dodge/Data/Room.hs 64;" f
_rplsOutRoomID src/Dodge/Data/Room.hs 59;" f _rplsOutRoomID src/Dodge/Data/Room.hs 60;" f
_rplsType src/Dodge/Data/Room.hs 57;" f _rplsType src/Dodge/Data/Room.hs 58;" f
_rplsType src/Dodge/Data/Room.hs 62;" f _rplsType src/Dodge/Data/Room.hs 63;" f
_rplsType src/Dodge/Data/Room.hs 65;" f _rplsType src/Dodge/Data/Room.hs 66;" f
_rsAR src/Dodge/Data/RadarSweep.hs 25;" f _rsAR src/Dodge/Data/RadarSweep.hs 25;" f
_rsMapper src/Dodge/Data/RadarSweep.hs 24;" f _rsMapper src/Dodge/Data/RadarSweep.hs 24;" f
_rsObject src/Dodge/Data/RadarSweep.hs 22;" f _rsObject src/Dodge/Data/RadarSweep.hs 22;" f
@@ -2554,7 +2557,7 @@ _xNum src/Dodge/Data/Item/Combine.hs 172;" f
aFlame src/Dodge/Gas.hs 18;" f aFlame src/Dodge/Gas.hs 18;" f
aGasCloud src/Dodge/Gas.hs 13;" f aGasCloud src/Dodge/Gas.hs 13;" f
aRadarPulse src/Dodge/RadarSweep.hs 19;" f aRadarPulse src/Dodge/RadarSweep.hs 19;" f
aShape src/Dodge/Placement/Instance/LightSource.hs 107;" f aShape src/Dodge/Placement/Instance/LightSource.hs 120;" f
aSound src/Dodge/SoundLogic.hs 74;" f aSound src/Dodge/SoundLogic.hs 74;" f
aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f
accessTerminal src/Dodge/WorldEffect.hs 54;" f accessTerminal src/Dodge/WorldEffect.hs 54;" f
@@ -2584,9 +2587,9 @@ addHighGirder src/Dodge/Room/Modify/Girder.hs 132;" f
addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f
addIndefiniteArticle src/StringHelp.hs 17;" f addIndefiniteArticle src/StringHelp.hs 17;" f
addNodes src/Dodge/Path.hs 115;" f addNodes src/Dodge/Path.hs 115;" f
addPane src/Dodge/Placement/PlaceSpot.hs 153;" f addPane src/Dodge/Placement/PlaceSpot.hs 154;" f
addPlmnt src/Dodge/LevelGen/PlacementHelper.hs 87;" f addPlmnt src/Dodge/LevelGen/PlacementHelper.hs 87;" f
addPointPolygon src/Geometry/Polygon.hs 115;" f addPointPolygon src/Geometry/Polygon.hs 120;" f
addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f
addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f
addRandomGirderEW src/Dodge/Room/Girder.hs 9;" f addRandomGirderEW src/Dodge/Room/Girder.hs 9;" f
@@ -2808,7 +2811,7 @@ bulletWeapons src/Dodge/Combine/Combinations.hs 248;" f
burstRifle src/Dodge/Item/Held/Cane.hs 30;" f burstRifle src/Dodge/Item/Held/Cane.hs 30;" f
buttonFlip src/Dodge/Button/Event.hs 17;" f buttonFlip src/Dodge/Button/Event.hs 17;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f
cChasm src/Dodge/Room/Tutorial.hs 108;" f cChasm src/Dodge/Room/Tutorial.hs 118;" f
cFilledRect src/Dodge/CharacterEnums.hs 6;" f cFilledRect src/Dodge/CharacterEnums.hs 6;" f
cWireRect src/Dodge/CharacterEnums.hs 10;" f cWireRect src/Dodge/CharacterEnums.hs 10;" f
calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f
@@ -2827,8 +2830,8 @@ cenLasTur src/Dodge/Room/LasTurret.hs 25;" f
centerText src/Picture/Base.hs 184;" f centerText src/Picture/Base.hs 184;" f
centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f
centerVaultRoom src/Dodge/Room/Procedural.hs 290;" f centerVaultRoom src/Dodge/Room/Procedural.hs 290;" f
centroid src/Geometry/Polygon.hs 149;" f centroid src/Geometry/Polygon.hs 154;" f
centroidNum src/Geometry/Polygon.hs 152;" f centroidNum src/Geometry/Polygon.hs 157;" f
chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f
chainPairs src/Geometry.hs 363;" f chainPairs src/Geometry.hs 363;" f
changeSwapOther src/Dodge/Inventory.hs 140;" f changeSwapOther src/Dodge/Inventory.hs 140;" f
@@ -2842,7 +2845,7 @@ chaseCritAwarenessUpdate src/Dodge/Creature/Perception.hs 70;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 114;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 114;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 31;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 31;" f
chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 37;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 37;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 154;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 185;" f
chasmTest src/Dodge/Creature/Update.hs 131;" f chasmTest src/Dodge/Creature/Update.hs 131;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 110;" f chasmWallToSurface src/Dodge/Base/Collide.hs 110;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
@@ -2870,7 +2873,7 @@ chooseMovementPistol src/Dodge/Humanoid.hs 203;" f
chooseMovementPistol' src/Dodge/Humanoid.hs 208;" f chooseMovementPistol' src/Dodge/Humanoid.hs 208;" f
chooseMovementSpreadGun src/Dodge/CreatureEffect.hs 88;" f chooseMovementSpreadGun src/Dodge/CreatureEffect.hs 88;" f
circHitWall src/Dodge/Base/Collide.hs 232;" f circHitWall src/Dodge/Base/Collide.hs 232;" f
circInPolygon src/Geometry/Polygon.hs 83;" f circInPolygon src/Geometry/Polygon.hs 88;" f
circOnAnyCr src/Dodge/Base/Collide.hs 287;" f circOnAnyCr src/Dodge/Base/Collide.hs 287;" f
circOnSeg src/Geometry.hs 102;" f circOnSeg src/Geometry.hs 102;" f
circOnSegNoEndpoints src/Geometry.hs 92;" f circOnSegNoEndpoints src/Geometry.hs 92;" f
@@ -2968,8 +2971,8 @@ constructEdges src/Polyhedra.hs 34;" f
constructEdgesList src/Polyhedra.hs 43;" f constructEdgesList src/Polyhedra.hs 43;" f
contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 57;" f contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 57;" f
continueTerminal src/Dodge/Update/Input/InGame.hs 402;" f continueTerminal src/Dodge/Update/Input/InGame.hs 402;" f
convexHull src/Geometry/Polygon.hs 123;" f convexHull src/Geometry/Polygon.hs 128;" f
convexHullSafe src/Geometry/Polygon.hs 130;" f convexHullSafe src/Geometry/Polygon.hs 135;" f
convexPolysOverlap src/Geometry/ConvexPoly.hs 48;" f convexPolysOverlap src/Geometry/ConvexPoly.hs 48;" f
coolMachinePistol src/Dodge/Creature/State.hs 101;" f coolMachinePistol src/Dodge/Creature/State.hs 101;" f
coolMinigun src/Dodge/Creature/State.hs 94;" f coolMinigun src/Dodge/Creature/State.hs 94;" f
@@ -3547,7 +3550,6 @@ explodeShell src/Dodge/Projectile/Update.hs 282;" f
explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 556;" f explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 556;" f
explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f
extTrigLitPos src/Dodge/Placement/Instance/Button.hs 84;" f extTrigLitPos src/Dodge/Placement/Instance/Button.hs 84;" f
extendAway src/Dodge/Placement/Instance/LightSource.hs 203;" f
extendConeToScreenEdge src/Dodge/Debug/Picture.hs 81;" f extendConeToScreenEdge src/Dodge/Debug/Picture.hs 81;" f
extraPics src/Dodge/Render/ShapePicture.hs 91;" f extraPics src/Dodge/Render/ShapePicture.hs 91;" f
extraWeaponLinks src/Dodge/Item/Grammar.hs 90;" f extraWeaponLinks src/Dodge/Item/Grammar.hs 90;" f
@@ -3612,7 +3614,7 @@ floorItemSPic src/Dodge/Render/ShapePicture.hs 117;" f
floorWire src/Dodge/Wire.hs 13;" f floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f
foldMTRS src/Dodge/Room/Tutorial.hs 57;" f foldMTRS src/Dodge/Room/Tutorial.hs 63;" f
foldPairs src/ListHelp.hs 37;" f foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 110;" f foldrWhileArb src/ListHelp.hs 110;" f
followImpulse src/Dodge/Creature/Impulse.hs 39;" f followImpulse src/Dodge/Creature/Impulse.hs 39;" f
@@ -3677,8 +3679,8 @@ getCloseObj src/Dodge/Update/Input/InGame.hs 533;" f
getCommand src/Dodge/Terminal.hs 52;" f getCommand src/Dodge/Terminal.hs 52;" f
getCommands src/Dodge/Terminal.hs 49;" f getCommands src/Dodge/Terminal.hs 49;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 253;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 314;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 241;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 301;" f
getDistortions src/Dodge/Render.hs 435;" f getDistortions src/Dodge/Render.hs 435;" f
getGrenadeHitEffect src/Dodge/HeldUse.hs 1296;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1296;" f
getInventoryPath src/Dodge/Inventory/Path.hs 9;" f getInventoryPath src/Dodge/Inventory/Path.hs 9;" f
@@ -3693,7 +3695,7 @@ getNodePos src/Dodge/Path.hs 31;" f
getPJStabiliser src/Dodge/HeldUse.hs 1283;" f getPJStabiliser src/Dodge/HeldUse.hs 1283;" f
getPretty src/AesonHelp.hs 8;" f getPretty src/AesonHelp.hs 8;" f
getPromptTM src/Dodge/Terminal/Type.hs 3;" f getPromptTM src/Dodge/Terminal/Type.hs 3;" f
getRoomsFromInts src/Dodge/Room/Tutorial.hs 237;" f getRoomsFromInts src/Dodge/Room/Tutorial.hs 297;" f
getRootItemBounds src/Dodge/Render/HUD.hs 100;" f getRootItemBounds src/Dodge/Render/HUD.hs 100;" f
getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f
getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f
@@ -3722,8 +3724,8 @@ glauncherPic src/Dodge/Item/Draw/SPic.hs 412;" f
glushortSize src/Shader/Parameters.hs 25;" f glushortSize src/Shader/Parameters.hs 25;" f
goToPostStrat src/Dodge/Creature/Strategy.hs 10;" f goToPostStrat src/Dodge/Creature/Strategy.hs 10;" f
goToTarget src/Dodge/Creature/ReaderUpdate.hs 138;" f goToTarget src/Dodge/Creature/ReaderUpdate.hs 138;" f
grahamEliminate src/Geometry/Polygon.hs 144;" f grahamEliminate src/Geometry/Polygon.hs 149;" f
grahamScan src/Geometry/Polygon.hs 135;" f grahamScan src/Geometry/Polygon.hs 140;" f
grapeCannon src/Dodge/Item/Held/Cone.hs 17;" f grapeCannon src/Dodge/Item/Held/Cone.hs 17;" f
graphToEdges src/Dodge/Graph.hs 35;" f graphToEdges src/Dodge/Graph.hs 35;" f
graphToIncidence src/Dodge/Graph.hs 40;" f graphToIncidence src/Dodge/Graph.hs 40;" f
@@ -3813,7 +3815,7 @@ hotkeyToChar src/Dodge/Inventory/SelectionList.hs 188;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 81;" f hotkeyToScancode src/Dodge/Creature/YourControl.hs 81;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 185;" f hotkeyToString src/Dodge/Inventory/SelectionList.hs 185;" f
humanoidAIList src/Dodge/Humanoid.hs 182;" f humanoidAIList src/Dodge/Humanoid.hs 182;" f
iShape src/Dodge/Placement/Instance/LightSource.hs 73;" f iShape src/Dodge/Placement/Instance/LightSource.hs 86;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f
icosohedronFaces src/Polyhedra/Geodesic.hs 19;" f icosohedronFaces src/Polyhedra/Geodesic.hs 19;" f
ildtPropagate src/Dodge/DoubleTree.hs 111;" f ildtPropagate src/Dodge/DoubleTree.hs 111;" f
@@ -3930,7 +3932,7 @@ isValidCommand src/Dodge/Debug/Terminal.hs 134;" f
isVowel src/StringHelp.hs 8;" f isVowel src/StringHelp.hs 8;" f
isWalkable src/Dodge/Base/Collide.hs 317;" f isWalkable src/Dodge/Base/Collide.hs 317;" f
isoMatrix src/MatrixHelper.hs 30;" f isoMatrix src/MatrixHelper.hs 30;" f
isotriBWH src/Geometry/Polygon.hs 20;" f isotriBWH src/Geometry/Polygon.hs 21;" f
itDim src/Dodge/Item/InvSize.hs 21;" f itDim src/Dodge/Item/InvSize.hs 21;" f
itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 67;" f itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 67;" f
itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 64;" f itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 64;" f
@@ -3979,7 +3981,7 @@ itmBaseInfo src/Dodge/Item/Info.hs 30;" f
itmEquipSiteInfo src/Dodge/Item/Info.hs 251;" f itmEquipSiteInfo src/Dodge/Item/Info.hs 251;" f
itmSpaceInfo src/Dodge/Item/Info.hs 25;" f itmSpaceInfo src/Dodge/Item/Info.hs 25;" f
itmUsageInfo src/Dodge/Item/Info.hs 231;" f itmUsageInfo src/Dodge/Item/Info.hs 231;" f
jShape src/Dodge/Placement/Instance/LightSource.hs 85;" f jShape src/Dodge/Placement/Instance/LightSource.hs 98;" f
joinItemsInList src/Dodge/Item/Grammar.hs 206;" f joinItemsInList src/Dodge/Item/Grammar.hs 206;" f
joystick src/Dodge/Item/Scope.hs 149;" f joystick src/Dodge/Item/Scope.hs 149;" f
jps0' src/Dodge/LevelGen/PlacementHelper.hs 60;" f jps0' src/Dodge/LevelGen/PlacementHelper.hs 60;" f
@@ -3999,10 +4001,10 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f
keyPic src/Dodge/Item/Draw/SPic.hs 471;" f keyPic src/Dodge/Item/Draw/SPic.hs 471;" f
keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f
knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f
lChasm src/Dodge/Room/Tutorial.hs 117;" f lChasm src/Dodge/Room/Tutorial.hs 127;" f
lConnect src/Dodge/Render/Connectors.hs 42;" f lConnect src/Dodge/Render/Connectors.hs 42;" f
lConnectMulti src/Dodge/Render/Connectors.hs 46;" f lConnectMulti src/Dodge/Render/Connectors.hs 46;" f
lShape src/Dodge/Placement/Instance/LightSource.hs 76;" f lShape src/Dodge/Placement/Instance/LightSource.hs 89;" f
lamp src/Dodge/Creature/Lamp.hs 21;" f lamp src/Dodge/Creature/Lamp.hs 21;" f
lampCover src/Dodge/Placement/Instance/LightSource/Cover.hs 8;" f lampCover src/Dodge/Placement/Instance/LightSource/Cover.hs 8;" f
lampCoverWhen src/Dodge/Placement/Instance/LightSource/Cover.hs 19;" f lampCoverWhen src/Dodge/Placement/Instance/LightSource/Cover.hs 19;" f
@@ -4040,7 +4042,7 @@ leftPad src/Padding.hs 15;" f
leftRightCombine src/Dodge/Item/Grammar.hs 197;" f leftRightCombine src/Dodge/Item/Grammar.hs 197;" f
leftWristPQ src/Dodge/Creature/HandPos.hs 81;" f leftWristPQ src/Dodge/Creature/HandPos.hs 81;" f
legsSPic src/Dodge/Item/Draw/SPic.hs 480;" f legsSPic src/Dodge/Item/Draw/SPic.hs 480;" f
liShape src/Dodge/Placement/Instance/LightSource.hs 98;" f liShape src/Dodge/Placement/Instance/LightSource.hs 111;" f
light src/Color.hs 104;" f light src/Color.hs 104;" f
lightSensByDoor src/Dodge/Room/LasTurret.hs 51;" f lightSensByDoor src/Dodge/Room/LasTurret.hs 51;" f
lightSensInsideDoor src/Dodge/Room/LasTurret.hs 39;" f lightSensInsideDoor src/Dodge/Room/LasTurret.hs 39;" f
@@ -4249,7 +4251,7 @@ mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 14;" f mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f
midBounds src/Dodge/Room/Foreground.hs 151;" f midBounds src/Dodge/Room/Foreground.hs 151;" f
midChasm src/Dodge/Room/Tutorial.hs 138;" f midChasm src/Dodge/Room/Tutorial.hs 148;" f
midPad src/Padding.hs 27;" f midPad src/Padding.hs 27;" f
midPadL src/Padding.hs 33;" f midPadL src/Padding.hs 33;" f
midPoint src/Geometry.hs 84;" f midPoint src/Geometry.hs 84;" f
@@ -4265,7 +4267,7 @@ miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 381;" f
miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 716;" f miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 716;" f
miniTree2 src/Dodge/Room/Room.hs 113;" f miniTree2 src/Dodge/Room/Room.hs 113;" f
minimumOn src/FoldlHelp.hs 14;" f minimumOn src/FoldlHelp.hs 14;" f
mirrorXAxis src/Geometry/Polygon.hs 62;" f mirrorXAxis src/Geometry/Polygon.hs 67;" f
mirrorxz src/Picture/Base.hs 335;" f mirrorxz src/Picture/Base.hs 335;" f
mirroryz src/Picture/Base.hs 340;" f mirroryz src/Picture/Base.hs 340;" f
missileLaunchS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 674;" f missileLaunchS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 674;" f
@@ -4275,14 +4277,11 @@ mixColorsLinear src/Color.hs 95;" f
mkCustomLenses src/ThirdPartyLens.hs 7;" f mkCustomLenses src/ThirdPartyLens.hs 7;" f
mkGraphFromEdges src/GraphHelp.hs 4;" f mkGraphFromEdges src/GraphHelp.hs 4;" f
mkNode src/Dodge/Graph.hs 29;" f mkNode src/Dodge/Graph.hs 29;" f
mntLS src/Dodge/Placement/Instance/LightSource.hs 123;" f mntLS src/Dodge/Placement/Instance/LightSource.hs 136;" f
mntLSCol src/Dodge/Placement/Instance/LightSource.hs 128;" f mntLSCond src/Dodge/Placement/Instance/LightSource.hs 159;" f
mntLSCond src/Dodge/Placement/Instance/LightSource.hs 146;" f mntLSOn src/Dodge/Placement/Instance/LightSource.hs 67;" f
mntLSLampCol src/Dodge/Placement/Instance/LightSource.hs 133;" f mntLightLnkCond src/Dodge/Placement/Instance/LightSource.hs 176;" f
mntLSOn src/Dodge/Placement/Instance/LightSource.hs 54;" f mntLightLnkCond' src/Dodge/Placement/Instance/LightSource.hs 181;" f
mntLight src/Dodge/Placement/Instance/LightSource.hs 158;" f
mntLightLnkCond src/Dodge/Placement/Instance/LightSource.hs 163;" f
mntLightLnkCond' src/Dodge/Placement/Instance/LightSource.hs 168;" f
modTo src/Geometry/Zone.hs 10;" f modTo src/Geometry/Zone.hs 10;" f
mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 60;" f mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 60;" f
mouseCursorType src/Dodge/Render/Picture.hs 86;" f mouseCursorType src/Dodge/Render/Picture.hs 86;" f
@@ -4290,7 +4289,7 @@ mouseWorldPos src/Dodge/Base/Coordinate.hs 25;" f
moveBullet src/Dodge/Bullet.hs 194;" f moveBullet src/Dodge/Bullet.hs 194;" f
moveCombineSel src/Dodge/Update/Scroll.hs 121;" f moveCombineSel src/Dodge/Update/Scroll.hs 121;" f
moveInverseShockwave src/Dodge/Shockwave/Update.hs 44;" f moveInverseShockwave src/Dodge/Shockwave/Update.hs 44;" f
moveLSThen src/Dodge/Placement/Instance/LightSource.hs 30;" f moveLSThen src/Dodge/Placement/Instance/LightSource.hs 43;" f
movePenBullet src/Dodge/Bullet.hs 200;" f movePenBullet src/Dodge/Bullet.hs 200;" f
moveProjectile src/Dodge/Projectile/Update.hs 260;" f moveProjectile src/Dodge/Projectile/Update.hs 260;" f
moveRoomBy src/Dodge/Room/Link.hs 53;" f moveRoomBy src/Dodge/Room/Link.hs 53;" f
@@ -4312,18 +4311,18 @@ multiLookupTrie src/SimpleTrie.hs 57;" f
multiLookupTrieI src/SimpleTrie.hs 66;" f multiLookupTrieI src/SimpleTrie.hs 66;" f
muout src/Dodge/RoomLink.hs 148;" f muout src/Dodge/RoomLink.hs 148;" f
muzFlareAt src/Dodge/HeldUse.hs 674;" f muzFlareAt src/Dodge/HeldUse.hs 674;" f
mvButton src/Dodge/Placement/PlaceSpot.hs 161;" f mvButton src/Dodge/Placement/PlaceSpot.hs 162;" f
mvCr src/Dodge/Placement/PlaceSpot.hs 167;" f mvCr src/Dodge/Placement/PlaceSpot.hs 168;" f
mvFS src/Dodge/Placement/PlaceSpot.hs 170;" f mvFS src/Dodge/Placement/PlaceSpot.hs 171;" f
mvGust src/Dodge/Update.hs 770;" f mvGust src/Dodge/Update.hs 770;" f
mvLS src/Dodge/Placement/PlaceSpot.hs 228;" f mvLS src/Dodge/Placement/PlaceSpot.hs 229;" f
mvP src/Dodge/Wall/Move.hs 54;" f mvP src/Dodge/Wall/Move.hs 54;" f
mvPP src/Dodge/Placement/PlaceSpot.hs 164;" f mvPP src/Dodge/Placement/PlaceSpot.hs 165;" f
mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f
mvPointMeleeTarg src/Dodge/Creature/Boid.hs 314;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 314;" f
mvPointToward src/Dodge/Base.hs 136;" f mvPointToward src/Dodge/Base.hs 136;" f
mvPointTowardAtSpeed src/Dodge/Base.hs 105;" f mvPointTowardAtSpeed src/Dodge/Base.hs 105;" f
mvProp src/Dodge/Placement/PlaceSpot.hs 158;" f mvProp src/Dodge/Placement/PlaceSpot.hs 159;" f
mvPs src/Dodge/Wall/Move.hs 58;" f mvPs src/Dodge/Wall/Move.hs 58;" f
myIntersectLineLine src/Geometry/Intersect.hs 207;" f myIntersectLineLine src/Geometry/Intersect.hs 207;" f
myIntersectSegSeg src/Geometry/Intersect.hs 185;" f myIntersectSegSeg src/Geometry/Intersect.hs 185;" f
@@ -4383,10 +4382,10 @@ optionsToSelections src/Dodge/Menu/Option.hs 47;" f
orRegex src/Dodge/DisplayInventory.hs 81;" f orRegex src/Dodge/DisplayInventory.hs 81;" f
orange src/Color.hs 25;" f orange src/Color.hs 25;" f
orderAround3 src/Geometry/Vector3D.hs 105;" f orderAround3 src/Geometry/Vector3D.hs 105;" f
orderAroundFirst src/Geometry/Polygon.hs 101;" f orderAroundFirst src/Geometry/Polygon.hs 106;" f
orderAroundFirstReverse src/Geometry/Polygon.hs 97;" f orderAroundFirstReverse src/Geometry/Polygon.hs 102;" f
orderPolygon src/Geometry/Polygon.hs 106;" f orderPolygon src/Geometry/Polygon.hs 111;" f
orderPolygonAround src/Geometry/Polygon.hs 89;" f orderPolygonAround src/Geometry/Polygon.hs 94;" f
orientAttachment src/Dodge/Item/Orientation.hs 31;" f orientAttachment src/Dodge/Item/Orientation.hs 31;" f
orientByParentChSF src/Dodge/Item/Orientation.hs 24;" f orientByParentChSF src/Dodge/Item/Orientation.hs 24;" f
orientChild src/Dodge/Item/Orientation.hs 13;" f orientChild src/Dodge/Item/Orientation.hs 13;" f
@@ -4463,22 +4462,22 @@ pjRemoteSetDirection src/Dodge/Projectile/Update.hs 225;" f
plBlock src/Dodge/Placement/PlaceSpot/Block.hs 18;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 18;" f
plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 22;" f plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 22;" f
plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 50;" f plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 50;" f
plMachine src/Dodge/Placement/PlaceSpot.hs 173;" f plMachine src/Dodge/Placement/PlaceSpot.hs 174;" f
plMachine' src/Dodge/Placement/PlaceSpot.hs 203;" f plMachine' src/Dodge/Placement/PlaceSpot.hs 204;" f
plNew src/Dodge/Base/NewID.hs 19;" f plNew src/Dodge/Base/NewID.hs 19;" f
plNewID src/Dodge/Base/NewID.hs 7;" f plNewID src/Dodge/Base/NewID.hs 7;" f
plNewUpID src/Dodge/Base/NewID.hs 13;" f plNewUpID src/Dodge/Base/NewID.hs 13;" f
plNewUsing src/Dodge/Base/NewID.hs 27;" f plNewUsing src/Dodge/Base/NewID.hs 27;" f
plRRpt src/Dodge/LevelGen/PlacementHelper.hs 33;" f plRRpt src/Dodge/LevelGen/PlacementHelper.hs 33;" f
plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 78;" f plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 78;" f
plTurret src/Dodge/Placement/PlaceSpot.hs 179;" f plTurret src/Dodge/Placement/PlaceSpot.hs 180;" f
placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 217;" f placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 218;" f
placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 41;" f placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 41;" f
placeSpot src/Dodge/Placement/PlaceSpot.hs 31;" f placeSpot src/Dodge/Placement/PlaceSpot.hs 31;" f
placeSpotID src/Dodge/Placement/PlaceSpot.hs 91;" f placeSpotID src/Dodge/Placement/PlaceSpot.hs 91;" f
placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 78;" f placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 78;" f
placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 59;" f placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 59;" f
placeWallPoly src/Dodge/Placement/PlaceSpot.hs 147;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 148;" f
plainRegex src/Dodge/DisplayInventory.hs 189;" f plainRegex src/Dodge/DisplayInventory.hs 189;" f
playIfFree src/Sound.hs 137;" f playIfFree src/Sound.hs 137;" f
playPositionalSoundQueue src/Sound.hs 145;" f playPositionalSoundQueue src/Sound.hs 145;" f
@@ -4503,8 +4502,8 @@ pnsNearRect src/Dodge/Zoning/Pathing.hs 18;" f
pnsNearSeg src/Dodge/Zoning/Pathing.hs 15;" f pnsNearSeg src/Dodge/Zoning/Pathing.hs 15;" f
pointIfNotClose src/Dodge/LevelGen/StaticWalls/Deprecated.hs 68;" f pointIfNotClose src/Dodge/LevelGen/StaticWalls/Deprecated.hs 68;" f
pointInCircle src/Geometry.hs 212;" f pointInCircle src/Geometry.hs 212;" f
pointInOrOnPolygon src/Geometry/Polygon.hs 72;" f pointInOrOnPolygon src/Geometry/Polygon.hs 77;" f
pointInPoly src/Geometry/Polygon.hs 79;" f pointInPoly src/Geometry/Polygon.hs 84;" f
pointIsInCone src/Geometry.hs 378;" f pointIsInCone src/Geometry.hs 378;" f
pointIsOnScreen src/Dodge/Base/Window.hs 59;" f pointIsOnScreen src/Dodge/Base/Window.hs 59;" f
pointTowardsImpulse src/Dodge/Path.hs 63;" f pointTowardsImpulse src/Dodge/Path.hs 63;" f
@@ -4552,10 +4551,12 @@ pokeWall src/Shader/Poke.hs 78;" f
pokeWallsWindows src/Shader/Poke.hs 50;" f pokeWallsWindows src/Shader/Poke.hs 50;" f
poly3 src/Picture/Base.hs 84;" f poly3 src/Picture/Base.hs 84;" f
poly3Col src/Picture/Base.hs 88;" f poly3Col src/Picture/Base.hs 88;" f
polyChasm src/Dodge/Room/Tutorial.hs 169;" f
polyChasmC src/Dodge/Room/Tutorial.hs 178;" f
polyCirc src/Shape.hs 46;" f polyCirc src/Shape.hs 46;" f
polyCircx src/Shape.hs 51;" f polyCircx src/Shape.hs 51;" f
polyCornerDist src/Geometry/Polygon.hs 59;" f polyCornerDist src/Geometry/Polygon.hs 60;" f
polyOrthDist src/Geometry/Polygon.hs 49;" f polyOrthDist src/Geometry/Polygon.hs 50;" f
polyPointsIntersect src/Geometry/ConvexPoly.hs 62;" f polyPointsIntersect src/Geometry/ConvexPoly.hs 62;" f
polyPointsOverlap src/Geometry/ConvexPoly.hs 55;" f polyPointsOverlap src/Geometry/ConvexPoly.hs 55;" f
polyToEdges src/Polyhedra.hs 133;" f polyToEdges src/Polyhedra.hs 133;" f
@@ -4606,7 +4607,7 @@ prismPoly src/Shape.hs 59;" f
projV src/Geometry/Vector.hs 182;" f projV src/Geometry/Vector.hs 182;" f
projV3 src/Geometry/Vector3D.hs 127;" f projV3 src/Geometry/Vector3D.hs 127;" f
propDrawToggle src/Dodge/Prop/Draw.hs 50;" f propDrawToggle src/Dodge/Prop/Draw.hs 50;" f
propLSThen src/Dodge/Placement/Instance/LightSource.hs 16;" f propLSThen src/Dodge/Placement/Instance/LightSource.hs 29;" f
propSPic src/Dodge/Prop/Draw.hs 17;" f propSPic src/Dodge/Prop/Draw.hs 17;" f
propSetToggleAnd src/Dodge/Prop/Update.hs 39;" f propSetToggleAnd src/Dodge/Prop/Update.hs 39;" f
propUpdateIf src/Dodge/Prop/Update.hs 23;" f propUpdateIf src/Dodge/Prop/Update.hs 23;" f
@@ -4641,11 +4642,10 @@ putBlockN src/Dodge/Placement/Instance/Wall.hs 166;" f
putBlockRect src/Dodge/Placement/Instance/Wall.hs 145;" f putBlockRect src/Dodge/Placement/Instance/Wall.hs 145;" f
putBlockRect' src/Dodge/Placement/Instance/Wall.hs 132;" f putBlockRect' src/Dodge/Placement/Instance/Wall.hs 132;" f
putBlockV src/Dodge/Placement/Instance/Wall.hs 153;" f putBlockV src/Dodge/Placement/Instance/Wall.hs 153;" f
putColorLamp src/Dodge/Placement/Instance/LightSource.hs 206;" f
putDoubleDoor src/Dodge/Placement/Instance/Door.hs 17;" f putDoubleDoor src/Dodge/Placement/Instance/Door.hs 17;" f
putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 21;" f putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 21;" f
putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 66;" f putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 66;" f
putLamp src/Dodge/Placement/Instance/LightSource.hs 209;" f putLamp src/Dodge/Placement/Instance/LightSource.hs 222;" f
putLasTurret src/Dodge/Placement/Instance/Turret.hs 24;" f putLasTurret src/Dodge/Placement/Instance/Turret.hs 24;" f
putLitButOnPos src/Dodge/Placement/Instance/Button.hs 65;" f putLitButOnPos src/Dodge/Placement/Instance/Button.hs 65;" f
putLitButOnPosExtTrig src/Dodge/Placement/Instance/Button.hs 103;" f putLitButOnPosExtTrig src/Dodge/Placement/Instance/Button.hs 103;" f
@@ -4711,11 +4711,11 @@ randsSpread src/RandomHelp.hs 120;" f
ratIntersectLineLine src/Geometry/Intersect.hs 225;" f ratIntersectLineLine src/Geometry/Intersect.hs 225;" f
readSaveSlot src/Dodge/Save.hs 45;" f readSaveSlot src/Dodge/Save.hs 45;" f
recoilAmount src/Dodge/HeldUse.hs 459;" f recoilAmount src/Dodge/HeldUse.hs 459;" f
rectNSWE src/Geometry/Polygon.hs 13;" f rectNSWE src/Geometry/Polygon.hs 14;" f
rectVV src/Geometry/Polygon.hs 38;" f rectVV src/Geometry/Polygon.hs 39;" f
rectWH src/Geometry/Polygon.hs 17;" f rectWH src/Geometry/Polygon.hs 18;" f
rectXH src/Geometry/Polygon.hs 32;" f rectXH src/Geometry/Polygon.hs 33;" f
rectXY src/Geometry/Polygon.hs 35;" f rectXY src/Geometry/Polygon.hs 36;" f
rectanglePairs src/Dodge/LevelGen/DoorPane.hs 7;" f rectanglePairs src/Dodge/LevelGen/DoorPane.hs 7;" f
red src/Color.hs 14;" f red src/Color.hs 14;" f
reduceLocDT src/Dodge/DoubleTree.hs 398;" f reduceLocDT src/Dodge/DoubleTree.hs 398;" f
@@ -4743,6 +4743,7 @@ removeAimPosture src/Dodge/Creature/YourControl.hs 158;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 920;" f removeAmmoFromMag src/Dodge/HeldUse.hs 920;" f
removeDot src/ShortShow.hs 40;" f removeDot src/ShortShow.hs 40;" f
removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f
removeLights src/Dodge/Room/Tutorial.hs 218;" f
removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 26;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f
@@ -4927,7 +4928,7 @@ sensorReqToString src/Dodge/Machine/Update.hs 196;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f
sensorSPic src/Dodge/Machine/Draw.hs 81;" f sensorSPic src/Dodge/Machine/Draw.hs 81;" f
sensorTut src/Dodge/Room/Tutorial.hs 262;" f sensorTut src/Dodge/Room/Tutorial.hs 323;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 233;" f sensorTypeDamages src/Dodge/Machine/Update.hs 233;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 83;" f sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 83;" f
@@ -4953,7 +4954,7 @@ setOutLinks src/Dodge/RoomLink.hs 51;" f
setOutLinksByType src/Dodge/RoomLink.hs 76;" f setOutLinksByType src/Dodge/RoomLink.hs 76;" f
setOutLinksPD src/Dodge/RoomLink.hs 96;" f setOutLinksPD src/Dodge/RoomLink.hs 96;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 288;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 288;" f
setRoomInt src/Dodge/Room/Tutorial.hs 63;" f setRoomInt src/Dodge/Room/Tutorial.hs 70;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f setShaderSource src/Shader/Compile.hs 290;" f
@@ -4963,7 +4964,7 @@ setTargetMv src/Dodge/Creature/ReaderUpdate.hs 76;" f
setTile src/Dodge/Layout.hs 66;" f setTile src/Dodge/Layout.hs 66;" f
setTiles src/Dodge/Layout.hs 63;" f setTiles src/Dodge/Layout.hs 63;" f
setToggle src/Dodge/Prop/Update.hs 44;" f setToggle src/Dodge/Prop/Update.hs 44;" f
setTreeInts src/Dodge/Room/Tutorial.hs 70;" f setTreeInts src/Dodge/Room/Tutorial.hs 77;" f
setViewDistance src/Dodge/Update/Camera.hs 236;" f setViewDistance src/Dodge/Update/Camera.hs 236;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 63;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 63;" f
setViewport src/Dodge/Render.hs 440;" f setViewport src/Dodge/Render.hs 440;" f
@@ -5053,8 +5054,8 @@ showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 45;" f showManObj src/Dodge/TestString.hs 45;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 68;" f showTimeFlow src/Dodge/TestString.hs 68;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 155;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 160;" f
shrinkVert src/Geometry/Polygon.hs 159;" f shrinkVert src/Geometry/Polygon.hs 164;" f
shuffle src/RandomHelp.hs 49;" f shuffle src/RandomHelp.hs 49;" f
shuffleLinks src/Dodge/Room/Link.hs 30;" f shuffleLinks src/Dodge/Room/Link.hs 30;" f
shuffleRoomPos src/Dodge/Layout.hs 76;" f shuffleRoomPos src/Dodge/Layout.hs 76;" f
@@ -5112,11 +5113,10 @@ soundWithStatus src/Dodge/SoundLogic.hs 104;" f
soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f
southPillarsRoom src/Dodge/Room/LongDoor.hs 87;" f southPillarsRoom src/Dodge/Room/LongDoor.hs 87;" f
spaceAction src/Dodge/Update/Input/InGame.hs 528;" f spaceAction src/Dodge/Update/Input/InGame.hs 528;" f
spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 193;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 206;" f
spanColLightI src/Dodge/Placement/Instance/LightSource.hs 186;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 199;" f
spanLS src/Dodge/Placement/Instance/LightSource.hs 178;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 191;" f
spanLSLightI src/Dodge/Placement/Instance/LightSource.hs 171;" f spanLightI src/Dodge/Placement/Instance/LightSource.hs 213;" f
spanLightI src/Dodge/Placement/Instance/LightSource.hs 200;" f
sparkDam src/Dodge/Spark.hs 36;" f sparkDam src/Dodge/Spark.hs 36;" f
sparkGun src/Dodge/Item/Held/BatteryGuns.hs 13;" f sparkGun src/Dodge/Item/Held/BatteryGuns.hs 13;" f
sparkRandDir src/Dodge/Spark.hs 116;" f sparkRandDir src/Dodge/Spark.hs 116;" f
@@ -5141,7 +5141,7 @@ spreadGunCrit src/Dodge/Creature/SpreadGunCrit.hs 11;" f
spreadOut src/Dodge/Creature/Boid.hs 158;" f spreadOut src/Dodge/Creature/Boid.hs 158;" f
sps src/Dodge/LevelGen/PlacementHelper.hs 30;" f sps src/Dodge/LevelGen/PlacementHelper.hs 30;" f
sps0 src/Dodge/LevelGen/PlacementHelper.hs 42;" f sps0 src/Dodge/LevelGen/PlacementHelper.hs 42;" f
square src/Geometry/Polygon.hs 46;" f square src/Geometry/Polygon.hs 47;" f
squareDecoration src/Dodge/Placement/TopDecoration.hs 41;" f squareDecoration src/Dodge/Placement/TopDecoration.hs 41;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 112;" f squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 112;" f
squashNormalizeV src/Geometry/Vector.hs 157;" f squashNormalizeV src/Geometry/Vector.hs 157;" f
@@ -5361,7 +5361,7 @@ translateToRightHand src/Dodge/Creature/HandPos.hs 54;" f
translateToRightLeg src/Dodge/Creature/HandPos.hs 112;" f translateToRightLeg src/Dodge/Creature/HandPos.hs 112;" f
translateWallID src/Dodge/Wall/Move.hs 37;" f translateWallID src/Dodge/Wall/Move.hs 37;" f
translateXY src/Polyhedra.hs 26;" f translateXY src/Polyhedra.hs 26;" f
trapezionBWHW src/Geometry/Polygon.hs 24;" f trapezionBWHW src/Geometry/Polygon.hs 25;" f
treeAttachDeep src/TreeHelp.hs 193;" f treeAttachDeep src/TreeHelp.hs 193;" f
treeChildNums src/TreeHelp.hs 130;" f treeChildNums src/TreeHelp.hs 130;" f
treeFromPost src/TreeHelp.hs 40;" f treeFromPost src/TreeHelp.hs 40;" f
@@ -5399,13 +5399,13 @@ tryUseParent src/Dodge/Creature/State.hs 144;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f turnTo src/Dodge/Movement/Turn.hs 8;" f
turret src/Dodge/Placement/Instance/Turret.hs 37;" f turret src/Dodge/Placement/Instance/Turret.hs 37;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 44;" f tutAnoTree src/Dodge/Room/Tutorial.hs 50;" f
tutDrop src/Dodge/Room/Tutorial.hs 75;" f tutDrop src/Dodge/Room/Tutorial.hs 82;" f
tutHub src/Dodge/Room/Tutorial.hs 167;" f tutHub src/Dodge/Room/Tutorial.hs 223;" f
tutLight src/Dodge/Room/Tutorial.hs 157;" f tutLight src/Dodge/Room/Tutorial.hs 206;" f
tutRezBox src/Dodge/Room/Tutorial.hs 272;" f tutRezBox src/Dodge/Room/Tutorial.hs 334;" f
tutRoomTree src/Dodge/Floor.hs 21;" f tutRoomTree src/Dodge/Floor.hs 21;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 294;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 358;" f
tweenAngles src/Geometry/Vector.hs 195;" f tweenAngles src/Geometry/Vector.hs 195;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 81;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 81;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f
@@ -5595,7 +5595,7 @@ vCen3 src/Geometry/Vector3D.hs 115;" f
vInverse src/Geometry/Vector.hs 153;" f vInverse src/Geometry/Vector.hs 153;" f
vNormal src/Geometry/Vector.hs 148;" f vNormal src/Geometry/Vector.hs 148;" f
vNormaly src/Geometry/Vector3D.hs 72;" f vNormaly src/Geometry/Vector3D.hs 72;" f
vShape src/Dodge/Placement/Instance/LightSource.hs 113;" f vShape src/Dodge/Placement/Instance/LightSource.hs 126;" f
vToL src/MatrixHelper.hs 46;" f vToL src/MatrixHelper.hs 46;" f
vToQuat src/Quaternion.hs 46;" f vToQuat src/Quaternion.hs 46;" f
validTerminalCommands src/Dodge/Debug/Terminal.hs 137;" f validTerminalCommands src/Dodge/Debug/Terminal.hs 137;" f
@@ -5716,7 +5716,7 @@ yourInv src/Dodge/Base/You.hs 28;" f
yourRootItem src/Dodge/Base/You.hs 22;" f yourRootItem src/Dodge/Base/You.hs 22;" f
yourSelectedItem src/Dodge/Base/You.hs 16;" f yourSelectedItem src/Dodge/Base/You.hs 16;" f
yourStatsInfo src/Dodge/Creature/Info.hs 27;" f yourStatsInfo src/Dodge/Creature/Info.hs 27;" f
zChasm src/Dodge/Room/Tutorial.hs 126;" f zChasm src/Dodge/Room/Tutorial.hs 136;" f
zConnect src/Dodge/Render/Connectors.hs 17;" f zConnect src/Dodge/Render/Connectors.hs 17;" f
zConnectCol src/Dodge/Render/Connectors.hs 28;" f zConnectCol src/Dodge/Render/Connectors.hs 28;" f
zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f