Stop intersectSegSegTest returning True for collinear line pairs

This commit is contained in:
2026-03-12 13:37:56 +00:00
parent cdc21c9fb1
commit 65383e2303
15 changed files with 326 additions and 223 deletions
+2 -1
View File
@@ -84,7 +84,8 @@ data DebugBool
| Cr_status | Cr_status
| Cr_awareness | Cr_awareness
| Mouse_position | Mouse_position
| View_boundaries | View_gr_boundaries
| View_rm_boundaries
| Walls_info | Walls_info
| Pathing | Pathing
| Remove_LOS | Remove_LOS
+4 -2
View File
@@ -57,7 +57,8 @@ debugItem = \case
Close_shape_culling -> mempty Close_shape_culling -> mempty
Bound_box_screen -> mempty Bound_box_screen -> mempty
Show_ms_frame -> mempty Show_ms_frame -> mempty
View_boundaries -> mempty View_gr_boundaries -> mempty
View_rm_boundaries -> mempty
Show_bound_box -> mempty Show_bound_box -> mempty
Show_wall_search_rays -> mempty Show_wall_search_rays -> mempty
Show_dda_test -> mempty Show_dda_test -> mempty
@@ -227,7 +228,8 @@ drawDebug u = \case
Close_shape_culling -> mempty Close_shape_culling -> mempty
Bound_box_screen -> mempty Bound_box_screen -> mempty
Show_ms_frame -> mempty Show_ms_frame -> mempty
View_boundaries -> viewBoundaries $ _uvWorld u View_gr_boundaries -> viewGameRoomBoundaries $ _uvWorld u
View_rm_boundaries -> viewRoomBoundaries $ _uvWorld u
Show_bound_box -> drawBoundingBox $ _uvWorld u Show_bound_box -> drawBoundingBox $ _uvWorld u
Show_wall_search_rays -> drawWallSearchRays $ _uvWorld u Show_wall_search_rays -> drawWallSearchRays $ _uvWorld u
Show_dda_test -> drawDDATest $ _uvWorld u Show_dda_test -> drawDDATest $ _uvWorld u
+11 -2
View File
@@ -329,8 +329,8 @@ drawWallSearchRays w = foldMap (f . fst) $ allVisibleWalls w
uncurryV translate p (circle 5) uncurryV translate p (circle 5)
<> line [w ^. wCam . camViewFrom, p] <> line [w ^. wCam . camViewFrom, p]
viewBoundaries :: World -> Picture viewGameRoomBoundaries :: World -> Picture
viewBoundaries w = viewGameRoomBoundaries w =
setLayer DebugLayer $ setLayer DebugLayer $
color green (foldMap (polygonWire . _grBound) grs) color green (foldMap (polygonWire . _grBound) grs)
<> color yellow (foldMap (\q -> line [p, q]) $ getViewpoints p (_cWorld w)) <> color yellow (foldMap (\q -> line [p, q]) $ getViewpoints p (_cWorld w))
@@ -338,6 +338,15 @@ viewBoundaries w =
p = w ^. wCam . camViewFrom p = w ^. wCam . camViewFrom
grs = filter (pointInOrOnPolygon p . _grBound) (_cwgGameRooms $ _cwGen $ _cWorld w) grs = filter (pointInOrOnPolygon p . _grBound) (_cwgGameRooms $ _cwGen $ _cWorld w)
viewRoomBoundaries :: World -> Picture
viewRoomBoundaries w =
setLayer DebugLayer $
color green (foldMap (foldMap polygonWire . _grRmBounds) grs)
-- <> color yellow (foldMap (\q -> line [p, q]) $ getViewpoints p (_cWorld w))
where
p = w ^. wCam . camViewFrom
grs = filter (pointInOrOnPolygon p . _grBound) (_cwgGameRooms $ _cwGen $ _cWorld w)
viewClipBounds :: Config -> World -> Picture viewClipBounds :: Config -> World -> Picture
viewClipBounds cfig w viewClipBounds cfig w
| _debug_view_clip_bounds cfig == AllRoomClipBoundaries = | _debug_view_clip_bounds cfig == AllRoomClipBoundaries =
+1 -1
View File
@@ -24,7 +24,7 @@ initialRoomTree :: State LayoutVars MTRS
initialRoomTree = initialRoomTree =
foldMTRS $ foldMTRS $
intersperse intersperse
(zoom lyGen corDoor) (zoom lyGen doorCor)
[ intAnno startRoom [ intAnno startRoom
, passthroughLockKeyLists , passthroughLockKeyLists
[(sensorRoomRunPast ElectricSensor, takeOne [(sensorRoomRunPast ElectricSensor, takeOne
+1
View File
@@ -13,6 +13,7 @@ data GameRoom = GameRoom
{ _grViewpoints :: [Point2] { _grViewpoints :: [Point2]
, _grViewpointsEx :: [Point2] , _grViewpointsEx :: [Point2]
, _grBound :: [Point2] , _grBound :: [Point2]
, _grRmBounds :: [[Point2]]
, -- | gives direction of room , -- | gives direction of room
_grDir :: Float _grDir :: Float
, _grLinkDirs :: [Float] , _grLinkDirs :: [Float]
+1
View File
@@ -162,6 +162,7 @@ gameRoomFromRoom rm =
expandPolyCorners 50 . convexHullSafe . nubBy closePoints expandPolyCorners 50 . convexHullSafe . nubBy closePoints
. concat . concat
$ _rmBound rm ++ _rmPolys rm $ _rmBound rm ++ _rmPolys rm
, _grRmBounds = map (map doshift) $ _rmBound rm
, _grDir = getDir $ _rmPos rm , _grDir = getDir $ _rmPos rm
, _grLinkDirs = mapMaybe undir $ _rmPos rm , _grLinkDirs = mapMaybe undir $ _rmPos rm
, _grName = _rmName rm , _grName = _rmName rm
+4 -3
View File
@@ -20,10 +20,11 @@ corridor =
{ _rmPolys = [poly] { _rmPolys = [poly]
, _rmLinks = lnks' , _rmLinks = lnks'
, --, _rmPath = foldMap (doublePairSet . (,) (V2 20 60) . fst) lnks , --, _rmPath = foldMap (doublePairSet . (,) (V2 20 60) . fst) lnks
_rmPath = foldMap (doublePairSet . (,) (V2 20 60)) [V2 20 70, V2 20 10] _rmPath = foldMap (doublePairSet . (,) (V2 20 60)) [V2 20 70, V2 20 5]
--, _rmPmnts = [spanLightI (V2 0 39.5) (V2 40 39.5)] --, _rmPmnts = [spanLightI (V2 0 39.5) (V2 40 39.5)]
, _rmPmnts = [] , _rmPmnts = []
, _rmBound = [rectNSWE 50 30 (-5) 45] , _rmBound = [rectNSWE 45 35 (-5) 45]
-- , _rmBound = [rectNSWE 50 40 (-5) 45]
, _rmFloor = Tiled [makeTileFromPoly poly 5] , _rmFloor = Tiled [makeTileFromPoly poly 5]
, _rmRandPSs = [psRandRanges (10, 30) (30, 60) (0, 2 * pi)] , _rmRandPSs = [psRandRanges (10, 30) (30, 60) (0, 2 * pi)]
, _rmName = "Corridor" , _rmName = "Corridor"
@@ -38,7 +39,7 @@ corridor =
, outLink (V2 20 70) (negate $ pi / 4) , outLink (V2 20 70) (negate $ pi / 4)
, outLink (V2 20 70) (pi / 6) , outLink (V2 20 70) (pi / 6)
, outLink (V2 20 70) (negate $ pi / 6) , outLink (V2 20 70) (negate $ pi / 6)
, inLink (V2 20 10) pi , inLink (V2 20 5) pi
] ]
keyholeCorridor :: Room keyholeCorridor :: Room
+1
View File
@@ -19,6 +19,7 @@ door =
, -- door extends into side walls (for shadows as rendered 12/03) , -- door extends into side walls (for shadows as rendered 12/03)
_rmPmnts = [putAutoDoor (V2 0 20) (V2 40 20)] _rmPmnts = [putAutoDoor (V2 0 20) (V2 40 20)]
, _rmName = "autoDoor" , _rmName = "autoDoor"
-- , _rmBound = [rectNSWE 21 19 0 40]
, _rmBound = [rectNSWE 21 19 0 40] , _rmBound = [rectNSWE 21 19 0 40]
} }
where where
+28 -2
View File
@@ -11,6 +11,7 @@ module Dodge.Room.LasTurret (
lasCenRunClose, lasCenRunClose,
) where ) where
import Dodge.Room.Procedural
import qualified Data.Set as S import qualified Data.Set as S
import Dodge.Cleat import Dodge.Cleat
import Dodge.Data.GenWorld import Dodge.Data.GenWorld
@@ -141,8 +142,8 @@ lasCenSensEdge n = do
, treePost [door, cleatLabel 0 corridor] , treePost [door, cleatLabel 0 corridor]
] ]
lasCenRunClose :: (RandomGen g) => State g (MetaTree Room String) lasCenRunClose' :: (RandomGen g) => State g (MetaTree Room String)
lasCenRunClose = do lasCenRunClose' = do
thelight <- mntLightLnkCond $ rprBool $ const . isInLnk thelight <- mntLightLnkCond $ rprBool $ const . isInLnk
thelight1 <- mntLightLnkCond $ rprBool $ const . isOutLnk thelight1 <- mntLightLnkCond $ rprBool $ const . isOutLnk
r <- r <-
@@ -169,6 +170,31 @@ lasCenRunClose = do
inlinkwall = linkwall isInLnk inlinkwall = linkwall isInLnk
outlinkwall = linkwall isOutLnk outlinkwall = linkwall isOutLnk
lasCenRunClose :: (RandomGen g) => State g (MetaTree Room String)
lasCenRunClose = do
r <-
roomRectAutoLights 250 250
<&> rmPmnts
<>~ [ putLasTurret 0.02 & plSpot .~ PS (V2 220 20) 0
, inlinkwall 70 (rectNSWE 10 (-10) (-10) 30)
, inlinkwall 125 (rectNSWE 55 (-55) (-10) 10)
, inlinkwall 180 (rectNSWE 10 (-10) (-30) 10)
, outlinkwall 70 (rectNSWE 10 (-10) (-30) 10)
, outlinkwall 125 (rectNSWE 55 (-55) (-10) 10)
, outlinkwall 180 (rectNSWE 10 (-10) (-10) 30)
]
<&> rmLinks %~ setInLinks (memtest (FromEdge West 0) (OnEdge South))
<&> rmLinks %~ setOutLinks (memtest (FromEdge East 0) (OnEdge North))
rToOnward "lasCenRunClose" $ return $ cleatOnward r
where
memtest a b x = let y = _rlType x
in a `S.member` y && b `S.member` y
linkwall f x = heightWallPS
(resetPLUse $ rprBoolShift (const . f) (shiftInBy x <&> (,S.singleton UsedPosLow)))
30
inlinkwall = linkwall isInLnk
outlinkwall = linkwall isOutLnk
lasTunnel :: (RandomGen g) => Float -> State g Room lasTunnel :: (RandomGen g) => Float -> State g Room
lasTunnel y = do lasTunnel y = do
extraPlmnts <- extraPlmnts <-
+10 -2
View File
@@ -8,6 +8,7 @@ module Dodge.Room.Room (
pistolerRoom, pistolerRoom,
spawnerRoom, spawnerRoom,
corDoor, corDoor,
doorCor,
weaponBehindPillar, weaponBehindPillar,
critsRoom, critsRoom,
distributerRoom, distributerRoom,
@@ -395,10 +396,15 @@ spawnerRoom = do
aRoom <- airlock aRoom <- airlock
return $ treeFromTrunk [aRoom, corridor] $ pure $ cleatOnward roomWithSpawner return $ treeFromTrunk [aRoom, corridor] $ pure $ cleatOnward roomWithSpawner
doorCor :: RandomGen g => State g (MetaTree Room String)
doorCor = do
cor <- shuffleLinks (cleatOnward corridor) <&> rmPmnts .~ []
return $ tToBTree "doorCor" $ treePost [door, cor]
corDoor :: RandomGen g => State g (MetaTree Room String) corDoor :: RandomGen g => State g (MetaTree Room String)
corDoor = do corDoor = do
cor <- shuffleLinks (cleatOnward corridor) <&> rmPmnts .~ [] cor <- shuffleLinks corridor <&> rmPmnts .~ []
return $ tToBTree "corDoor" $ treePost [door, cor] return $ tToBTree "corDoor" $ treePost [cor,cor, cleatOnward door]
critsPillarRoom :: Int -> State LayoutVars Room critsPillarRoom :: Int -> State LayoutVars Room
critsPillarRoom i = do critsPillarRoom i = do
@@ -452,6 +458,8 @@ distributerRoom atype aamount = do
) )
return $ r & rmPmnts .:~ store return $ r & rmPmnts .:~ store
& rmInPmnt <>~ [(0,dst),(1,thepipe)] & rmInPmnt <>~ [(0,dst),(1,thepipe)]
& rmLinks %~ setInLinksByType (OnEdge South)
& rmLinks %~ setOutLinks (not . S.member (OnEdge South) . _rlType)
tmDistributeLines :: [TerminalLine] tmDistributeLines :: [TerminalLine]
tmDistributeLines = [TLine 1 [TerminalLineConst "ATTEMPTING TO DISTRIBUTE MATERIAL..." white] TmDistributeAmmo] tmDistributeLines = [TLine 1 [TerminalLineConst "ATTEMPTING TO DISTRIBUTE MATERIAL..." white] TmDistributeAmmo]
+36 -35
View File
@@ -52,43 +52,44 @@ tutAnoTree :: State LayoutVars MTRS
tutAnoTree = do tutAnoTree = do
foldMTRS foldMTRS
[ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox [ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox
-- , return . tToBTree "door" $ treePost [corridor, cleatOnward door]
, corDoor , corDoor
, tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
, lasCenRunClose
-- , passthroughLockKeyLists lockRoomKeyItems itemRooms
, tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor) -- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor) --aaa , lasCenRunClose
-- , passthroughLockKeyLists --aaa-- , passthroughLockKeyLists lockRoomKeyItems itemRooms
-- [(sensorRoomRunPast ElectricSensor, takeOne --aaa , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- [-- CRAFT (ENERGYBALLCRAFT TeslaBall) , --aaa-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- HELD SPARKGUN])] --aaa-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- itemRooms --aaa-- , passthroughLockKeyLists
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor) --aaa-- [(sensorRoomRunPast ElectricSensor, takeOne
-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor) --aaa-- [-- CRAFT (ENERGYBALLCRAFT TeslaBall) ,
, tToBTree "sdr" . return . cleatOnward <$> --aaa-- HELD SPARKGUN])]
(shuffleLinks =<< distributerRoom BulletAmmo 100000) --aaa-- itemRooms
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
-- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom --aaa-- , tToBTree "cor" . return <$> shuffleLinks (cleatOnward corridor)
---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] [] --aaa , tToBTree "sdr" . return . cleatOnward <$>
-- , return $ tToBTree "door" $ return $ cleatOnward door --aaa (shuffleLinks =<< distributerRoom BulletAmmo 100000)
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , tToBTree "sdr" . return . cleatOnward <$> --aaa-- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom
-- (shuffleLinks =<< tanksPipesRoom) --aaa---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] []
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , return $ tToBTree "door" $ return $ cleatOnward door
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , tToBTree "sdr" . return . cleatOnward <$>
, return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- (shuffleLinks =<< tanksPipesRoom)
, return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
, return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
, return $ tToBTree "door" $ return $ cleatOnward door --aaa-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
, tutHub --aaa , return $ tToBTree "cor" $ return $ cleatOnward corridor
, chasmSpitTerminal --aaa , return $ tToBTree "cor" $ return $ cleatOnward corridor
, tutLight --aaa , return $ tToBTree "cor" $ return $ cleatOnward corridor
, tutDrop --aaa , return $ tToBTree "door" $ return $ cleatOnward door
, return $ tToBTree "cor" $ return $ cleatOnward corridor --aaa , tutHub
---- , AnTree $ pickupTut --aaa , chasmSpitTerminal
---- , AnTree $ weaponTut --aaa , tutLight
--aaa , tutDrop
--aaa , return $ tToBTree "cor" $ return $ cleatOnward corridor
--aaa ---- , AnTree $ pickupTut
--aaa ---- , AnTree $ weaponTut
] ]
foldMTRS :: foldMTRS ::
+5 -1
View File
@@ -10,6 +10,7 @@ module Dodge.Tree.Shift (
PosRooms (..), PosRooms (..),
) where ) where
import Data.Monoid
import Control.Lens import Control.Lens
import Data.Bifunctor import Data.Bifunctor
import Data.List (delete) import Data.List (delete)
@@ -66,7 +67,9 @@ posRms prs parenti@(parent, _) ((numChild, t@(Node childi _)) : its) tseq = do
where where
tryChildLinks [] = tryParentLinks ls tryChildLinks [] = tryParentLinks ls
tryChildLinks ((numinlink, il) : ils) tryChildLinks ((numinlink, il) : ils)
| clipping = tryChildLinks ils | Just xs <- clipping' = do
putStrLn $ show xs
tryChildLinks ils
| otherwise = do | otherwise = do
putStrLn $ show j ++ "-" ++ show numinlink putStrLn $ show j ++ "-" ++ show numinlink
mayrs <- mayrs <-
@@ -83,6 +86,7 @@ posRms prs parenti@(parent, _) ((numChild, t@(Node childi _)) : its) tseq = do
where where
newBounds = map pointsToPoly . _rmBound . doRoomShift . fst $ rootLabel shiftedt newBounds = map pointsToPoly . _rmBound . doRoomShift . fst $ rootLabel shiftedt
clipping = or (convexPolysOverlap <$> newBounds <*> _prBounds prs) clipping = or (convexPolysOverlap <$> newBounds <*> _prBounds prs)
clipping' = getFirst . foldMap First $ convexPolysOverlapWitness <$> newBounds <*> _prBounds prs
updateparent rm = updateparent rm =
_rmLinkEff rm il child numChild outlnk rm _rmLinkEff rm il child numChild outlnk rm
& rmLinks %~ delete outlnk & rmLinks %~ delete outlnk
+37
View File
@@ -9,6 +9,7 @@ module Geometry.ConvexPoly (
-- , centroid -- , centroid
pointsToPoly, pointsToPoly,
convexPolysOverlap, convexPolysOverlap,
convexPolysOverlapWitness,
) where ) where
import Control.Lens import Control.Lens
@@ -18,6 +19,7 @@ import Geometry.Data
import Geometry.Intersect import Geometry.Intersect
import Geometry.Polygon import Geometry.Polygon
import Geometry.Vector import Geometry.Vector
import Control.Applicative
--import qualified Control.Foldl as L --import qualified Control.Foldl as L
data ConvexPoly = ConvexPoly data ConvexPoly = ConvexPoly
@@ -48,6 +50,13 @@ convexPolysOverlap cp1 cp2 =
dist (_cpCen cp1) (_cpCen cp2) < _cpRad cp1 + _cpRad cp2 dist (_cpCen cp1) (_cpCen cp2) < _cpRad cp1 + _cpRad cp2
&& polyPointsOverlap (_cpPoints cp1) (_cpPoints cp2) && polyPointsOverlap (_cpPoints cp1) (_cpPoints cp2)
-- | Test whether two polygons intersect or if one is contained in the other,
-- with witness.
convexPolysOverlapWitness :: ConvexPoly -> ConvexPoly -> Maybe (ConvexPoly, ConvexPoly,String)
convexPolysOverlapWitness cp1 cp2
| Just s <- polyPointsOverlapWitness (_cpPoints cp1) (_cpPoints cp2) = Just (cp1,cp2,s)
| otherwise = Nothing
-- | Test whether two polygons intersect or if one is contained in the other. -- | Test whether two polygons intersect or if one is contained in the other.
polyPointsOverlap :: [Point2] -> [Point2] -> Bool polyPointsOverlap :: [Point2] -> [Point2] -> Bool
@@ -57,6 +66,14 @@ polyPointsOverlap (p : ps) (q : qs) =
|| polyPointsIntersect (p : ps) (q : qs) || polyPointsIntersect (p : ps) (q : qs)
polyPointsOverlap _ _ = False polyPointsOverlap _ _ = False
-- | Test whether two polygons intersect or if one is contained in the other.
polyPointsOverlapWitness :: [Point2] -> [Point2] -> Maybe String
polyPointsOverlapWitness (p : ps) (q : qs)
| pointInPoly p (q : qs) = Just $ "Contained: "<> show p <> " in " <> show (q:qs)
| pointInPoly q (p : ps) = Just $ "Contained: "<> show p <> " in " <> show (q:qs)
| otherwise = polyPointsIntersectWitness (p : ps) (q : qs)
polyPointsOverlapWitness _ _ = Nothing
polyPointsIntersect :: [Point2] -> [Point2] -> Bool polyPointsIntersect :: [Point2] -> [Point2] -> Bool
polyPointsIntersect (a : b : xs) ps = go a (a : b : xs) ps polyPointsIntersect (a : b : xs) ps = go a (a : b : xs) ps
where where
@@ -65,6 +82,14 @@ polyPointsIntersect (a : b : xs) ps = go a (a : b : xs) ps
go _ _ _ = False go _ _ _ = False
polyPointsIntersect _ _ = False polyPointsIntersect _ _ = False
polyPointsIntersectWitness :: [Point2] -> [Point2] -> Maybe String
polyPointsIntersectWitness (a : b : xs) ps = go a (a : b : xs) ps
where
go x' (a' : b' : xs') ps' = pairPolyPointsIntersectWitness a' b' ps' <|> go x' (b' : xs') ps'
go b' [a'] ps' = pairPolyPointsIntersectWitness a' b' ps'
go _ _ _ = Nothing
polyPointsIntersectWitness _ _ = Nothing
pairPolyPointsIntersect :: Point2 -> Point2 -> [Point2] -> Bool pairPolyPointsIntersect :: Point2 -> Point2 -> [Point2] -> Bool
pairPolyPointsIntersect a' b' (c' : d' : xs') = go c' a' b' (c' : d' : xs') pairPolyPointsIntersect a' b' (c' : d' : xs') = go c' a' b' (c' : d' : xs')
where where
@@ -73,5 +98,17 @@ pairPolyPointsIntersect a' b' (c' : d' : xs') = go c' a' b' (c' : d' : xs')
go _ _ _ _ = False go _ _ _ _ = False
pairPolyPointsIntersect _ _ _ = False pairPolyPointsIntersect _ _ _ = False
pairPolyPointsIntersectWitness :: Point2 -> Point2 -> [Point2] -> Maybe String
pairPolyPointsIntersectWitness a' b' (c' : d' : xs') = go c' a' b' (c' : d' : xs')
where
go x a b (c : d : xs)
| intersectSegSegTest a b c d = Just $ show a <> " " <> show b <> " " <> show c <> " " <> show d
| otherwise = go x a b (d : xs)
go d a b [c]
| intersectSegSegTest a b c d = Just $ show a <> " " <> show b <> " " <> show c <> " " <> show d
| otherwise = Nothing
go _ _ _ _ = Nothing
pairPolyPointsIntersectWitness _ _ _ = Nothing
makeLenses ''ConvexPoly makeLenses ''ConvexPoly
deriveJSON defaultOptions ''ConvexPoly deriveJSON defaultOptions ''ConvexPoly
+4 -2
View File
@@ -151,8 +151,10 @@ intersectSegSegTest x y z w =
f x y z w && f z w x y && x /= y && z /= w f x y z w && f z w x y && x /= y && z /= w
where where
f a b c d = f a b c d =
(not (isRHS a b c) && not (isLHS a b d)) -- (not (isRHS a b c) && not (isLHS a b d))
|| (not (isLHS a b c) && not (isRHS a b d)) -- || (not (isLHS a b c) && not (isRHS a b d))
(isRHS a b c && isLHS a b d)
|| (isLHS a b c && isRHS a b d)
intersectSegSegPreTest :: intersectSegSegPreTest ::
Point2 -> Point2 ->
+181 -172
View File
@@ -45,7 +45,7 @@ AimStance src/Dodge/Data/AimStance.hs 10;" t
Aiming src/Dodge/Data/Creature/Stance.hs 33;" C Aiming src/Dodge/Data/Creature/Stance.hs 33;" C
AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C
AlienContact src/Dodge/Data/Scenario.hs 30;" C AlienContact src/Dodge/Data/Scenario.hs 30;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 122;" C AllRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
AlteRifleSwitch src/Dodge/Data/Item/Params.hs 18;" C AlteRifleSwitch src/Dodge/Data/Item/Params.hs 18;" C
Ambush src/Dodge/Data/ActionPlan.hs 130;" C Ambush src/Dodge/Data/ActionPlan.hs 130;" C
AmmoEffectSF src/Dodge/Data/ComposedItem.hs 33;" C AmmoEffectSF src/Dodge/Data/ComposedItem.hs 33;" C
@@ -138,7 +138,7 @@ Boosting src/Dodge/Data/Creature/Stance.hs 26;" C
BottomMenuOption src/Dodge/Data/Universe.hs 77;" C BottomMenuOption src/Dodge/Data/Universe.hs 77;" C
BounceBullet src/Dodge/Data/Bullet.hs 28;" C BounceBullet src/Dodge/Data/Bullet.hs 28;" C
BoundCurs src/Dodge/Data/SelectionList.hs 21;" C BoundCurs src/Dodge/Data/SelectionList.hs 21;" C
Bound_box_screen src/Dodge/Data/Config.hs 94;" C Bound_box_screen src/Dodge/Data/Config.hs 95;" C
Bounds src/Dodge/Data/Bounds.hs 10;" t Bounds src/Dodge/Data/Bounds.hs 10;" t
BrigSS src/Dodge/Data/Scenario.hs 102;" C BrigSS src/Dodge/Data/Scenario.hs 102;" C
Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C
@@ -206,16 +206,16 @@ ChasmObstacle src/Dodge/Data/PathGraph.hs 51;" C
ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C
ChooseMovementLtAuto src/Dodge/Data/CreatureEffect.hs 29;" C ChooseMovementLtAuto src/Dodge/Data/CreatureEffect.hs 29;" C
ChooseMovementSpreadGun src/Dodge/Data/CreatureEffect.hs 28;" C ChooseMovementSpreadGun src/Dodge/Data/CreatureEffect.hs 28;" C
Circ_collision_test src/Dodge/Data/Config.hs 98;" C Circ_collision_test src/Dodge/Data/Config.hs 99;" C
Climate src/Dodge/Data/Scenario.hs 32;" C Climate src/Dodge/Data/Scenario.hs 32;" C
CloseToMelee src/Dodge/Data/ActionPlan.hs 139;" C CloseToMelee src/Dodge/Data/ActionPlan.hs 139;" C
Close_shape_culling src/Dodge/Data/Config.hs 92;" C Close_shape_culling src/Dodge/Data/Config.hs 93;" C
Cloud src/Dodge/Data/Cloud.hs 12;" t Cloud src/Dodge/Data/Cloud.hs 12;" t
CloudType src/Dodge/Data/Cloud.hs 20;" t CloudType src/Dodge/Data/Cloud.hs 20;" t
ClusterLink src/Dodge/Data/RoomCluster.hs 13;" t ClusterLink src/Dodge/Data/RoomCluster.hs 13;" t
ClusterStatus src/Dodge/Data/RoomCluster.hs 9;" t ClusterStatus src/Dodge/Data/RoomCluster.hs 9;" t
Cognizant src/Dodge/Data/Creature/Perception.hs 65;" C Cognizant src/Dodge/Data/Creature/Perception.hs 65;" C
Collision_test src/Dodge/Data/Config.hs 97;" C Collision_test src/Dodge/Data/Config.hs 98;" C
Color src/Color/Data.hs 30;" t Color src/Color/Data.hs 30;" t
Color8 src/Color/Data.hs 32;" t Color8 src/Color/Data.hs 32;" t
ColorFaction src/Dodge/Data/Creature/State.hs 19;" C ColorFaction src/Dodge/Data/Creature/State.hs 19;" C
@@ -234,7 +234,7 @@ ContextDT src/Dodge/Data/DoubleTree.hs 82;" t
ContextLDT src/Dodge/Data/DoubleTree.hs 40;" t ContextLDT src/Dodge/Data/DoubleTree.hs 40;" t
ContinentalGovernment src/Dodge/Data/Scenario.hs 51;" C ContinentalGovernment src/Dodge/Data/Scenario.hs 51;" C
ControlDeckSS src/Dodge/Data/Scenario.hs 89;" C ControlDeckSS src/Dodge/Data/Scenario.hs 89;" C
ConvexPoly src/Geometry/ConvexPoly.hs 23;" t ConvexPoly src/Geometry/ConvexPoly.hs 25;" t
CookDeath src/Dodge/Data/Creature.hs 68;" C CookDeath src/Dodge/Data/Creature.hs 68;" C
CookingDamage src/Dodge/Data/Damage/Type.hs 5;" C CookingDamage src/Dodge/Data/Damage/Type.hs 5;" C
Corporation src/Dodge/Data/Scenario.hs 46;" C Corporation src/Dodge/Data/Scenario.hs 46;" C
@@ -281,7 +281,7 @@ Crushing src/Dodge/Data/Damage.hs 19;" C
CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C
CryostatisSS src/Dodge/Data/Scenario.hs 91;" C CryostatisSS src/Dodge/Data/Scenario.hs 91;" C
Crystal src/Dodge/Data/Material.hs 16;" C Crystal src/Dodge/Data/Material.hs 16;" C
Cull_more_lights src/Dodge/Data/Config.hs 91;" C Cull_more_lights src/Dodge/Data/Config.hs 92;" C
CursorDisplay src/Dodge/Data/SelectionList.hs 20;" t CursorDisplay src/Dodge/Data/SelectionList.hs 20;" t
Cylinder src/Shape/Data.hs 14;" C Cylinder src/Shape/Data.hs 14;" C
DETECTOR src/Dodge/Data/Item/Combine.hs 33;" C DETECTOR src/Dodge/Data/Item/Combine.hs 33;" C
@@ -344,7 +344,7 @@ DoorDoNothing src/Dodge/Data/Door.hs 43;" C
DoorLerp src/Dodge/Data/Door.hs 43;" C DoorLerp src/Dodge/Data/Door.hs 43;" C
DoorPart src/Dodge/Data/Wall/Structure.hs 12;" C DoorPart src/Dodge/Data/Wall/Structure.hs 12;" C
DoorUpdate src/Dodge/Data/Door.hs 43;" t DoorUpdate src/Dodge/Data/Door.hs 43;" t
DoubleRes src/Dodge/Data/Config.hs 112;" C DoubleRes src/Dodge/Data/Config.hs 113;" C
DoubleTreeNodeType src/Dodge/Data/DoubleTree.hs 14;" t DoubleTreeNodeType src/Dodge/Data/DoubleTree.hs 14;" t
DrawForceField src/Dodge/Data/Wall.hs 37;" C DrawForceField src/Dodge/Data/Wall.hs 37;" C
DrawnWall src/Dodge/Data/Wall.hs 33;" C DrawnWall src/Dodge/Data/Wall.hs 33;" C
@@ -363,7 +363,7 @@ Ears src/Dodge/Data/Creature/Perception.hs 45;" C
East src/Dodge/Data/CardinalPoint.hs 8;" C East src/Dodge/Data/CardinalPoint.hs 8;" C
East8 src/Dodge/Data/CardinalPoint.hs 30;" C East8 src/Dodge/Data/CardinalPoint.hs 30;" C
EdgeObstacle src/Dodge/Data/PathGraph.hs 49;" t EdgeObstacle src/Dodge/Data/PathGraph.hs 49;" t
EighthRes src/Dodge/Data/Config.hs 112;" C EighthRes src/Dodge/Data/Config.hs 113;" C
Eldritch src/Dodge/Data/Scenario.hs 34;" C Eldritch src/Dodge/Data/Scenario.hs 34;" C
ElectricSensor src/Dodge/Data/Machine/Sensor.hs 14;" C ElectricSensor src/Dodge/Data/Machine/Sensor.hs 14;" C
ElectricSpark src/Dodge/Data/Spark.hs 19;" C ElectricSpark src/Dodge/Data/Spark.hs 19;" C
@@ -453,7 +453,7 @@ ForceField src/Dodge/Data/Material.hs 19;" 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 12;" t ForegroundShape src/Dodge/Data/ForegroundShape.hs 12;" t
FromEdge src/Dodge/Data/Room.hs 49;" C FromEdge src/Dodge/Data/Room.hs 49;" C
FullRes src/Dodge/Data/Config.hs 112;" C FullRes src/Dodge/Data/Config.hs 113;" C
FullShadowFidelity src/Shape/Data.hs 19;" C FullShadowFidelity src/Shape/Data.hs 19;" C
FullSize src/Dodge/Data/Item/Params.hs 26;" C FullSize src/Dodge/Data/Item/Params.hs 26;" C
FullyVisible src/Dodge/Data/CamouflageStatus.hs 6;" C FullyVisible src/Dodge/Data/CamouflageStatus.hs 6;" C
@@ -482,7 +482,7 @@ GenFloat src/Dodge/Data/GenFloat.hs 9;" t
GenParams src/Dodge/Data/GenParams.hs 13;" t GenParams src/Dodge/Data/GenParams.hs 13;" t
GenWorld src/Dodge/Data/GenWorld.hs 24;" t GenWorld src/Dodge/Data/GenWorld.hs 24;" t
GenericFaction src/Dodge/Data/Creature/State.hs 13;" C GenericFaction src/Dodge/Data/Creature/State.hs 13;" C
GeoObjShads src/Dodge/Data/Config.hs 116;" C GeoObjShads src/Dodge/Data/Config.hs 117;" C
GetTo src/Dodge/Data/ActionPlan.hs 141;" C GetTo src/Dodge/Data/ActionPlan.hs 141;" C
GetToPoint src/Dodge/Data/Scenario.hs 12;" C GetToPoint src/Dodge/Data/Scenario.hs 12;" C
Gib src/Dodge/Data/Prop.hs 22;" C Gib src/Dodge/Data/Prop.hs 22;" C
@@ -513,7 +513,7 @@ HOMINGMODULE src/Dodge/Data/Item/Combine.hs 100;" C
HOSE src/Dodge/Data/Item/Combine.hs 54;" C HOSE src/Dodge/Data/Item/Combine.hs 54;" C
HP src/Dodge/Data/Creature.hs 63;" C HP src/Dodge/Data/Creature.hs 63;" C
HUD src/Dodge/Data/HUD.hs 29;" t HUD src/Dodge/Data/HUD.hs 29;" t
HalfRes src/Dodge/Data/Config.hs 112;" C HalfRes src/Dodge/Data/Config.hs 113;" C
HammerTrigger src/Dodge/Data/TriggerType.hs 10;" C HammerTrigger src/Dodge/Data/TriggerType.hs 10;" C
HardQuit src/Dodge/Data/Universe.hs 68;" C HardQuit src/Dodge/Data/Universe.hs 68;" C
HeavySmokeFlare src/Dodge/Data/Muzzle.hs 33;" C HeavySmokeFlare src/Dodge/Data/Muzzle.hs 33;" C
@@ -573,12 +573,12 @@ IncendiaryBall src/Dodge/Data/EnergyBall/Type.hs 11;" C
InheritFloor src/Data/Tile.hs 12;" C InheritFloor src/Data/Tile.hs 12;" C
Input src/Dodge/Data/Input.hs 33;" t Input src/Dodge/Data/Input.hs 33;" t
InputScreen src/Dodge/Data/Universe.hs 92;" C InputScreen src/Dodge/Data/Universe.hs 92;" C
Inspect_wall src/Dodge/Data/Config.hs 105;" C Inspect_wall src/Dodge/Data/Config.hs 106;" C
Institution src/Dodge/Data/Scenario.hs 42;" t Institution src/Dodge/Data/Scenario.hs 42;" t
Int2 src/Geometry/Data.hs 21;" t Int2 src/Geometry/Data.hs 21;" t
IntID src/Dodge/Data/Universe.hs 120;" t IntID src/Dodge/Data/Universe.hs 120;" t
Intention src/Dodge/Data/Creature.hs 70;" t Intention src/Dodge/Data/Creature.hs 70;" t
IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 122;" C IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
IntroScanSF src/Dodge/Data/ComposedItem.hs 21;" C IntroScanSF src/Dodge/Data/ComposedItem.hs 21;" C
IntroScanType src/Dodge/Data/Item/Combine.hs 44;" t IntroScanType src/Dodge/Data/Item/Combine.hs 44;" t
InvInt src/Dodge/Data/Item/Location.hs 16;" t InvInt src/Dodge/Data/Item/Location.hs 16;" t
@@ -800,7 +800,7 @@ MuzzleStopper src/Dodge/Data/Muzzle.hs 57;" C
MuzzleTesla src/Dodge/Data/Muzzle.hs 43;" C MuzzleTesla src/Dodge/Data/Muzzle.hs 43;" C
MuzzleTractor src/Dodge/Data/Muzzle.hs 44;" C MuzzleTractor src/Dodge/Data/Muzzle.hs 44;" C
MuzzleUnsafeBlink src/Dodge/Data/Muzzle.hs 55;" C MuzzleUnsafeBlink src/Dodge/Data/Muzzle.hs 55;" C
Muzzle_positions src/Dodge/Data/Config.hs 109;" C Muzzle_positions src/Dodge/Data/Config.hs 110;" C
MvForward src/Dodge/Data/ActionPlan.hs 34;" C MvForward src/Dodge/Data/ActionPlan.hs 34;" C
MvTurnToward src/Dodge/Data/ActionPlan.hs 33;" C MvTurnToward src/Dodge/Data/ActionPlan.hs 33;" C
MvWalking src/Dodge/Data/Creature/Misc.hs 28;" C MvWalking src/Dodge/Data/Creature/Misc.hs 28;" C
@@ -836,17 +836,17 @@ NoItTargeting src/Dodge/Data/Item.hs 44;" C
NoItemScroll src/Dodge/Data/Item.hs 39;" C NoItemScroll src/Dodge/Data/Item.hs 39;" C
NoItemZone src/Dodge/Data/Machine/Sensor.hs 31;" C NoItemZone src/Dodge/Data/Machine/Sensor.hs 31;" C
NoLightFlare src/Dodge/Data/Muzzle.hs 31;" C NoLightFlare src/Dodge/Data/Muzzle.hs 31;" C
NoLighting src/Dodge/Data/Config.hs 119;" C NoLighting src/Dodge/Data/Config.hs 120;" C
NoMouseContext src/Dodge/Data/Input.hs 14;" C NoMouseContext src/Dodge/Data/Input.hs 14;" C
NoMvType src/Dodge/Data/Creature/Misc.hs 27;" C NoMvType src/Dodge/Data/Creature/Misc.hs 27;" C
NoObjShads src/Dodge/Data/Config.hs 117;" C NoObjShads src/Dodge/Data/Config.hs 118;" C
NoParams src/Dodge/Data/Item/Params.hs 13;" C NoParams src/Dodge/Data/Item/Params.hs 13;" C
NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 14;" C NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 14;" C
NoRoomClipBoundaries src/Dodge/Data/Config.hs 122;" C NoRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
NoSF src/Dodge/Data/ComposedItem.hs 29;" C NoSF src/Dodge/Data/ComposedItem.hs 29;" C
NoSIDisplayMod src/Dodge/Data/SelectionList.hs 56;" C NoSIDisplayMod src/Dodge/Data/SelectionList.hs 56;" C
NoShadowFidelity src/Shape/Data.hs 20;" C NoShadowFidelity src/Shape/Data.hs 20;" C
NoShadows src/Dodge/Data/Config.hs 118;" C NoShadows src/Dodge/Data/Config.hs 119;" C
NoSoundFilter src/Dodge/Data/WorldEffect.hs 23;" C NoSoundFilter src/Dodge/Data/WorldEffect.hs 23;" C
NoSubInventory src/Dodge/Data/HUD.hs 15;" C NoSubInventory src/Dodge/Data/HUD.hs 15;" C
NoTrigger src/Dodge/Data/TriggerType.hs 11;" C NoTrigger src/Dodge/Data/TriggerType.hs 11;" C
@@ -979,7 +979,7 @@ PathBetweenLeftRightClick src/Dodge/Data/Universe.hs 53;" C
PathFromEdge src/Dodge/Data/Room.hs 77;" t PathFromEdge src/Dodge/Data/Room.hs 77;" t
PathShowType src/Dodge/Data/Universe.hs 52;" t PathShowType src/Dodge/Data/Universe.hs 52;" t
PathTo src/Dodge/Data/ActionPlan.hs 70;" C PathTo src/Dodge/Data/ActionPlan.hs 70;" C
Pathing src/Dodge/Data/Config.hs 89;" C Pathing src/Dodge/Data/Config.hs 90;" C
Patrol src/Dodge/Data/ActionPlan.hs 132;" C Patrol src/Dodge/Data/ActionPlan.hs 132;" C
PauseTimeMessage src/Dodge/Data/World.hs 86;" C PauseTimeMessage src/Dodge/Data/World.hs 86;" C
PausedTimeFlow src/Dodge/Data/World.hs 82;" C PausedTimeFlow src/Dodge/Data/World.hs 82;" C
@@ -1014,7 +1014,7 @@ PolyShad src/Picture/Data.hs 31;" 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
PosInf src/Dodge/Data/CardinalPoint.hs 44;" C PosInf src/Dodge/Data/CardinalPoint.hs 44;" C
PosRooms src/Dodge/Tree/Shift.hs 28;" t PosRooms src/Dodge/Tree/Shift.hs 29;" t
Posture src/Dodge/Data/Creature/Stance.hs 32;" t Posture src/Dodge/Data/Creature/Stance.hs 32;" t
PreloadData src/Data/Preload.hs 10;" t PreloadData src/Data/Preload.hs 10;" t
PrintMaterial src/Dodge/Data/AmmoType.hs 15;" C PrintMaterial src/Dodge/Data/AmmoType.hs 15;" C
@@ -1059,7 +1059,7 @@ PutTrigger src/Dodge/Data/GenWorld.hs 47;" C
PutWall src/Dodge/Data/GenWorld.hs 54;" C PutWall src/Dodge/Data/GenWorld.hs 54;" C
PutWorldUpdate src/Dodge/Data/GenWorld.hs 58;" C PutWorldUpdate src/Dodge/Data/GenWorld.hs 58;" C
QFloat src/Geometry/Data.hs 50;" t QFloat src/Geometry/Data.hs 50;" t
QuarterRes src/Dodge/Data/Config.hs 112;" C QuarterRes src/Dodge/Data/Config.hs 113;" C
QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C
RAM src/Dodge/Data/Item/Combine.hs 73;" C RAM src/Dodge/Data/Item/Combine.hs 73;" C
RCommands src/Dodge/Terminal.hs 165;" C RCommands src/Dodge/Terminal.hs 165;" C
@@ -1096,13 +1096,13 @@ Reload src/Dodge/Data/ActionPlan.hs 142;" C
RemoteDetonatorSF src/Dodge/Data/ComposedItem.hs 27;" C RemoteDetonatorSF src/Dodge/Data/ComposedItem.hs 27;" C
RemoteScreenSF src/Dodge/Data/ComposedItem.hs 25;" C RemoteScreenSF src/Dodge/Data/ComposedItem.hs 25;" C
RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 33;" C RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 33;" C
Remove_LOS src/Dodge/Data/Config.hs 90;" C Remove_LOS src/Dodge/Data/Config.hs 91;" C
RenderData src/Data/Preload/Render.hs 13;" t RenderData src/Data/Preload/Render.hs 13;" t
ReplaceEquipment src/Dodge/Data/RightButtonOptions.hs 29;" C ReplaceEquipment src/Dodge/Data/RightButtonOptions.hs 29;" C
RequireDeadCreatures src/Dodge/Data/Machine/Sensor.hs 36;" C RequireDeadCreatures src/Dodge/Data/Machine/Sensor.hs 36;" C
RequireEquipment src/Dodge/Data/Machine/Sensor.hs 35;" C RequireEquipment src/Dodge/Data/Machine/Sensor.hs 35;" C
RequireHealth src/Dodge/Data/Machine/Sensor.hs 34;" C RequireHealth src/Dodge/Data/Machine/Sensor.hs 34;" C
ResFactor src/Dodge/Data/Config.hs 112;" t ResFactor src/Dodge/Data/Config.hs 113;" t
ResearchFacility src/Dodge/Data/Scenario.hs 62;" C ResearchFacility src/Dodge/Data/Scenario.hs 62;" C
ResourceFailure src/Dodge/Data/Scenario.hs 29;" C ResourceFailure src/Dodge/Data/Scenario.hs 29;" C
RespawnDelay src/Dodge/Data/World.hs 64;" C RespawnDelay src/Dodge/Data/World.hs 64;" C
@@ -1120,8 +1120,8 @@ RocketHoming src/Dodge/Data/Projectile.hs 39;" t
RocketSmoke src/Dodge/Data/Projectile.hs 52;" t RocketSmoke src/Dodge/Data/Projectile.hs 52;" t
RocketSmoke src/Dodge/Data/Cloud.hs 22;" C RocketSmoke src/Dodge/Data/Cloud.hs 22;" C
Room src/Dodge/Data/GenWorld.hs 127;" t Room src/Dodge/Data/GenWorld.hs 127;" t
RoomClipping src/Dodge/Data/Config.hs 122;" t RoomClipping src/Dodge/Data/Config.hs 123;" t
RoomInt src/Dodge/Tree/Shift.hs 26;" t RoomInt src/Dodge/Tree/Shift.hs 27;" t
RoomLink src/Dodge/Data/Room.hs 24;" t RoomLink src/Dodge/Data/Room.hs 24;" t
RoomLinkType src/Dodge/Data/Room.hs 43;" t RoomLinkType src/Dodge/Data/Room.hs 43;" t
RoomPos src/Dodge/Data/Room.hs 15;" t RoomPos src/Dodge/Data/Room.hs 15;" t
@@ -1183,7 +1183,7 @@ ShadNum src/Picture/Data.hs 30;" t
Shader src/Shader/Data.hs 51;" t Shader src/Shader/Data.hs 51;" t
ShaderTexture src/Shader/Data.hs 102;" t ShaderTexture src/Shader/Data.hs 102;" t
ShadowFidelity src/Shape/Data.hs 19;" t ShadowFidelity src/Shape/Data.hs 19;" t
ShadowRendering src/Dodge/Data/Config.hs 115;" t ShadowRendering src/Dodge/Data/Config.hs 116;" t
Shape src/Shape/Data.hs 49;" t Shape src/Shape/Data.hs 49;" t
ShapeProp src/Dodge/Data/Prop.hs 14;" C ShapeProp src/Dodge/Data/Prop.hs 14;" C
ShapeType src/Shape/Data.hs 11;" t ShapeType src/Shape/Data.hs 11;" t
@@ -1196,27 +1196,27 @@ ShockwaveDirection src/Dodge/Data/Shockwave.hs 12;" t
ShootAt src/Dodge/Data/ActionPlan.hs 133;" C ShootAt src/Dodge/Data/ActionPlan.hs 133;" C
ShortShow src/ShortShow.hs 6;" c ShortShow src/ShortShow.hs 6;" c
ShortString src/ShortShow.hs 16;" t ShortString src/ShortShow.hs 16;" t
Show_bound_box src/Dodge/Data/Config.hs 93;" C Show_bound_box src/Dodge/Data/Config.hs 94;" C
Show_dda_test src/Dodge/Data/Config.hs 96;" C Show_dda_test src/Dodge/Data/Config.hs 97;" C
Show_far_wall_detect src/Dodge/Data/Config.hs 99;" C Show_far_wall_detect src/Dodge/Data/Config.hs 100;" C
Show_mouse_click_pos src/Dodge/Data/Config.hs 108;" C Show_mouse_click_pos src/Dodge/Data/Config.hs 109;" C
Show_ms_frame src/Dodge/Data/Config.hs 78;" C Show_ms_frame src/Dodge/Data/Config.hs 78;" C
Show_path_between src/Dodge/Data/Config.hs 106;" C Show_path_between src/Dodge/Data/Config.hs 107;" C
Show_sound src/Dodge/Data/Config.hs 82;" C Show_sound src/Dodge/Data/Config.hs 82;" C
Show_wall_search_rays src/Dodge/Data/Config.hs 95;" C Show_wall_search_rays src/Dodge/Data/Config.hs 96;" C
Show_walls_near_point_cursor src/Dodge/Data/Config.hs 100;" C Show_walls_near_point_cursor src/Dodge/Data/Config.hs 101;" C
Show_walls_near_segment src/Dodge/Data/Config.hs 102;" C Show_walls_near_segment src/Dodge/Data/Config.hs 103;" C
Show_walls_near_you src/Dodge/Data/Config.hs 101;" C Show_walls_near_you src/Dodge/Data/Config.hs 102;" C
Show_writable_values src/Dodge/Data/Config.hs 107;" C Show_writable_values src/Dodge/Data/Config.hs 108;" C
Show_zone_circ src/Dodge/Data/Config.hs 104;" C Show_zone_circ src/Dodge/Data/Config.hs 105;" C
Show_zone_near_point_cursor src/Dodge/Data/Config.hs 103;" C Show_zone_near_point_cursor src/Dodge/Data/Config.hs 104;" C
ShrapnelBomb src/Dodge/Data/Payload.hs 10;" C ShrapnelBomb src/Dodge/Data/Payload.hs 10;" C
ShrinkGunStatus src/Dodge/Data/Item/Params.hs 26;" t ShrinkGunStatus src/Dodge/Data/Item/Params.hs 26;" t
Shrunk src/Dodge/Data/Item/Params.hs 26;" C Shrunk src/Dodge/Data/Item/Params.hs 26;" C
SideCluster src/Dodge/Data/RoomCluster.hs 13;" C SideCluster src/Dodge/Data/RoomCluster.hs 13;" C
SideEffect src/Dodge/Data/Universe.hs 62;" t SideEffect src/Dodge/Data/Universe.hs 62;" t
SimpleEdge src/Dodge/Data/PathGraph.hs 43;" t SimpleEdge src/Dodge/Data/PathGraph.hs 43;" t
SixteenthRes src/Dodge/Data/Config.hs 112;" C SixteenthRes src/Dodge/Data/Config.hs 113;" C
Size src/Shape/Data.hs 23;" t Size src/Shape/Data.hs 23;" t
SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C
SleepingQuatersSS src/Dodge/Data/Scenario.hs 90;" C SleepingQuatersSS src/Dodge/Data/Scenario.hs 90;" C
@@ -1436,7 +1436,8 @@ VIOLET src/Color/Data.hs 19;" C
VOLLEYGUN src/Dodge/Data/Item/Combine.hs 151;" C VOLLEYGUN src/Dodge/Data/Item/Combine.hs 151;" C
VertexAttribute src/Shader/Data.hs 66;" t VertexAttribute src/Shader/Data.hs 66;" t
Verx src/Picture/Data.hs 11;" t Verx src/Picture/Data.hs 11;" t
View_boundaries src/Dodge/Data/Config.hs 87;" C View_gr_boundaries src/Dodge/Data/Config.hs 87;" C
View_rm_boundaries src/Dodge/Data/Config.hs 88;" C
ViewingDeckSS src/Dodge/Data/Scenario.hs 106;" C ViewingDeckSS src/Dodge/Data/Scenario.hs 106;" C
Vigilance src/Dodge/Data/Creature/Perception.hs 50;" t Vigilance src/Dodge/Data/Creature/Perception.hs 50;" t
Vigilant src/Dodge/Data/Creature/Perception.hs 54;" C Vigilant src/Dodge/Data/Creature/Perception.hs 54;" C
@@ -1465,7 +1466,7 @@ 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 10;" t WallStructure src/Dodge/Data/Wall/Structure.hs 10;" t
WallWire src/Dodge/Data/Room.hs 55;" C WallWire src/Dodge/Data/Room.hs 55;" C
Walls_info src/Dodge/Data/Config.hs 88;" C Walls_info src/Dodge/Data/Config.hs 89;" C
War src/Dodge/Data/Scenario.hs 28;" C War src/Dodge/Data/Scenario.hs 28;" C
WarmTime src/Dodge/Data/Item/Params.hs 19;" C WarmTime src/Dodge/Data/Item/Params.hs 19;" C
WarmUpCoolDown src/Dodge/Data/TriggerType.hs 14;" C WarmUpCoolDown src/Dodge/Data/TriggerType.hs 14;" C
@@ -1670,9 +1671,9 @@ _coordinates src/Dodge/Data/World.hs 60;" f
_cpAttention src/Dodge/Data/Creature/Perception.hs 32;" f _cpAttention src/Dodge/Data/Creature/Perception.hs 32;" f
_cpAudition src/Dodge/Data/Creature/Perception.hs 35;" f _cpAudition src/Dodge/Data/Creature/Perception.hs 35;" f
_cpAwareness src/Dodge/Data/Creature/Perception.hs 33;" f _cpAwareness src/Dodge/Data/Creature/Perception.hs 33;" f
_cpCen src/Geometry/ConvexPoly.hs 25;" f _cpCen src/Geometry/ConvexPoly.hs 27;" f
_cpPoints src/Geometry/ConvexPoly.hs 24;" f _cpPoints src/Geometry/ConvexPoly.hs 26;" f
_cpRad src/Geometry/ConvexPoly.hs 26;" f _cpRad src/Geometry/ConvexPoly.hs 28;" f
_cpVigilance src/Dodge/Data/Creature/Perception.hs 31;" f _cpVigilance src/Dodge/Data/Creature/Perception.hs 31;" f
_cpVision src/Dodge/Data/Creature/Perception.hs 34;" f _cpVision src/Dodge/Data/Creature/Perception.hs 34;" f
_crActionPlan src/Dodge/Data/Creature.hs 51;" f _crActionPlan src/Dodge/Data/Creature.hs 51;" f
@@ -1847,9 +1848,10 @@ _gibColor src/Dodge/Data/Prop.hs 22;" f
_gibSize src/Dodge/Data/Prop.hs 22;" f _gibSize src/Dodge/Data/Prop.hs 22;" f
_gnHitEffect src/Dodge/Data/Projectile.hs 31;" f _gnHitEffect src/Dodge/Data/Projectile.hs 31;" f
_grBound src/Dodge/GameRoom.hs 15;" f _grBound src/Dodge/GameRoom.hs 15;" f
_grDir src/Dodge/GameRoom.hs 17;" f _grDir src/Dodge/GameRoom.hs 18;" f
_grLinkDirs src/Dodge/GameRoom.hs 18;" f _grLinkDirs src/Dodge/GameRoom.hs 19;" f
_grName src/Dodge/GameRoom.hs 19;" f _grName src/Dodge/GameRoom.hs 20;" f
_grRmBounds src/Dodge/GameRoom.hs 16;" f
_grViewpoints src/Dodge/GameRoom.hs 13;" f _grViewpoints src/Dodge/GameRoom.hs 13;" f
_grViewpointsEx src/Dodge/GameRoom.hs 14;" f _grViewpointsEx src/Dodge/GameRoom.hs 14;" f
_gr_cloud_shadows src/Dodge/Data/Config.hs 53;" f _gr_cloud_shadows src/Dodge/Data/Config.hs 53;" f
@@ -2117,11 +2119,11 @@ _plType src/Dodge/Data/GenWorld.hs 114;" f
_playStatus src/Sound/Data.hs 15;" f _playStatus src/Sound/Data.hs 15;" f
_playingSounds src/Dodge/Data/World.hs 41;" f _playingSounds src/Dodge/Data/World.hs 41;" f
_posture src/Dodge/Data/Creature/Stance.hs 17;" f _posture src/Dodge/Data/Creature/Stance.hs 17;" f
_prBounds src/Dodge/Tree/Shift.hs 29;" f _prBounds src/Dodge/Tree/Shift.hs 30;" f
_prDraw src/Dodge/Data/Prop.hs 16;" f _prDraw src/Dodge/Data/Prop.hs 16;" f
_prID src/Dodge/Data/Prop.hs 17;" f _prID src/Dodge/Data/Prop.hs 17;" f
_prPos src/Dodge/Data/Prop.hs 15;" f _prPos src/Dodge/Data/Prop.hs 15;" f
_prRooms src/Dodge/Tree/Shift.hs 30;" f _prRooms src/Dodge/Tree/Shift.hs 31;" f
_prRot src/Dodge/Data/Prop.hs 18;" f _prRot src/Dodge/Data/Prop.hs 18;" f
_preloadData src/Dodge/Data/Universe.hs 30;" f _preloadData src/Dodge/Data/Universe.hs 30;" f
_pressedKeys src/Dodge/Data/Input.hs 37;" f _pressedKeys src/Dodge/Data/Input.hs 37;" f
@@ -2582,8 +2584,8 @@ ammoMagSPic src/Dodge/Item/Draw/SPic.hs 128;" f
amr src/Dodge/Item/Held/Rod.hs 34;" f amr src/Dodge/Item/Held/Rod.hs 34;" f
anRoom src/Dodge/Floor.hs 116;" f anRoom src/Dodge/Floor.hs 116;" f
analyser src/Dodge/Placement/Instance/Analyser.hs 8;" f analyser src/Dodge/Placement/Instance/Analyser.hs 8;" f
analyserByDoor src/Dodge/Room/LasTurret.hs 110;" f analyserByDoor src/Dodge/Room/LasTurret.hs 111;" f
analyserByNthLink src/Dodge/Room/LasTurret.hs 94;" f analyserByNthLink src/Dodge/Room/LasTurret.hs 95;" f
andOrRegex src/Dodge/DisplayInventory.hs 78;" f andOrRegex src/Dodge/DisplayInventory.hs 78;" f
angleBetween src/Geometry.hs 158;" f angleBetween src/Geometry.hs 158;" f
angleVV src/Geometry/Vector.hs 58;" f angleVV src/Geometry/Vector.hs 58;" f
@@ -2591,7 +2593,7 @@ angleVV3 src/Geometry/Vector3D.hs 122;" f
anyUnusedSpot src/Dodge/PlacementSpot.hs 68;" f anyUnusedSpot src/Dodge/PlacementSpot.hs 68;" f
anythingHitCirc src/Dodge/Base/Collide.hs 342;" f anythingHitCirc src/Dodge/Base/Collide.hs 342;" f
applyCME src/Dodge/HeldUse.hs 372;" f applyCME src/Dodge/HeldUse.hs 372;" f
applyClip src/Dodge/Debug.hs 138;" f applyClip src/Dodge/Debug.hs 139;" f
applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f
applyEventIO src/Loop.hs 90;" f applyEventIO src/Loop.hs 90;" f
applyGravityPU src/Dodge/Projectile/Update.hs 41;" f applyGravityPU src/Dodge/Projectile/Update.hs 41;" f
@@ -2601,8 +2603,8 @@ applyMagnetsToBul src/Dodge/Bullet.hs 32;" f
applyPastDamages src/Dodge/Creature/State.hs 49;" f applyPastDamages src/Dodge/Creature/State.hs 49;" f
applyPosition src/Sound.hs 113;" f applyPosition src/Sound.hs 113;" f
applyRecoil src/Dodge/HeldUse.hs 462;" f applyRecoil src/Dodge/HeldUse.hs 462;" f
applyResFactor src/Dodge/Data/Config.hs 125;" f applyResFactor src/Dodge/Data/Config.hs 126;" f
applyResFactorF src/Dodge/Data/Config.hs 134;" f applyResFactorF src/Dodge/Data/Config.hs 135;" f
applySetTerminalString src/Dodge/Debug/Terminal.hs 83;" f applySetTerminalString src/Dodge/Debug/Terminal.hs 83;" f
applySidePush src/Dodge/HeldUse.hs 562;" f applySidePush src/Dodge/HeldUse.hs 562;" f
applySoundCME src/Dodge/HeldUse.hs 452;" f applySoundCME src/Dodge/HeldUse.hs 452;" f
@@ -2748,7 +2750,7 @@ boxXYZ src/Polyhedra.hs 91;" f
boxXYZnobase src/Polyhedra.hs 77;" f boxXYZnobase src/Polyhedra.hs 77;" f
brainHat src/Dodge/Item/Equipment.hs 62;" f brainHat src/Dodge/Item/Equipment.hs 62;" f
branchRectWith src/Dodge/Room/Branch.hs 16;" f branchRectWith src/Dodge/Room/Branch.hs 16;" f
branchWith src/Dodge/Room/Room.hs 78;" f branchWith src/Dodge/Room/Room.hs 79;" f
bright src/Color.hs 147;" f bright src/Color.hs 147;" f
brightX src/Color.hs 143;" f brightX src/Color.hs 143;" f
btSPic src/Dodge/Render/ShapePicture.hs 160;" f btSPic src/Dodge/Render/ShapePicture.hs 160;" f
@@ -2766,7 +2768,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 593;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 593;" f
cChasm src/Dodge/Room/Tutorial.hs 148;" f cChasm src/Dodge/Room/Tutorial.hs 149;" 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
@@ -2782,7 +2784,7 @@ cardinalBetweenAdj src/Dodge/Base/CardinalPoint.hs 28;" f
cardinalVectors src/Dodge/FloorItem.hs 24;" f cardinalVectors src/Dodge/FloorItem.hs 24;" f
cdtPropagateFold src/Dodge/DoubleTree.hs 407;" f cdtPropagateFold src/Dodge/DoubleTree.hs 407;" f
ceilingTo src/Geometry/Zone.hs 15;" f ceilingTo src/Geometry/Zone.hs 15;" f
cenLasTur src/Dodge/Room/LasTurret.hs 34;" f cenLasTur src/Dodge/Room/LasTurret.hs 35;" f
centerText src/Picture/Base.hs 176;" f centerText src/Picture/Base.hs 176;" f
centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f
centerVaultRoom src/Dodge/Room/Procedural.hs 269;" f centerVaultRoom src/Dodge/Room/Procedural.hs 269;" f
@@ -2802,8 +2804,8 @@ chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 121;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f
chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f
chasmRotate src/Dodge/Creature/Update.hs 173;" f chasmRotate src/Dodge/Creature/Update.hs 173;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 309;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 310;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 280;" f chasmSpitTerminal src/Dodge/Room/Tutorial.hs 281;" f
chasmTestCorpse src/Dodge/Creature/Update.hs 155;" f chasmTestCorpse src/Dodge/Creature/Update.hs 155;" f
chasmTestLiving src/Dodge/Creature/Update.hs 137;" f chasmTestLiving src/Dodge/Creature/Update.hs 137;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f
@@ -2921,19 +2923,20 @@ contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 58;" f
continueTerminal src/Dodge/Update/Input/InGame.hs 407;" f continueTerminal src/Dodge/Update/Input/InGame.hs 407;" f
convexHull src/Geometry/Polygon.hs 150;" f convexHull src/Geometry/Polygon.hs 150;" f
convexHullSafe src/Geometry/Polygon.hs 157;" f convexHullSafe src/Geometry/Polygon.hs 157;" f
convexPolysOverlap src/Geometry/ConvexPoly.hs 46;" f convexPolysOverlap src/Geometry/ConvexPoly.hs 48;" f
convexPolysOverlapWitness src/Geometry/ConvexPoly.hs 55;" f
coolMachinePistol src/Dodge/Creature/State.hs 102;" f coolMachinePistol src/Dodge/Creature/State.hs 102;" f
coolMinigun src/Dodge/Creature/State.hs 95;" f coolMinigun src/Dodge/Creature/State.hs 95;" f
copier src/Dodge/Item/Scope.hs 94;" f copier src/Dodge/Item/Scope.hs 94;" f
copierItemUpdate src/Dodge/Creature/State.hs 131;" f copierItemUpdate src/Dodge/Creature/State.hs 131;" f
copyItemToFloor src/Dodge/FloorItem.hs 14;" f copyItemToFloor src/Dodge/FloorItem.hs 14;" f
corDoor src/Dodge/Room/Room.hs 398;" f corDoor src/Dodge/Room/Room.hs 404;" f
cornerList src/Preload/Render.hs 236;" f cornerList src/Preload/Render.hs 236;" f
corpseOrGib src/Dodge/Creature/Update.hs 98;" f corpseOrGib src/Dodge/Creature/Update.hs 98;" f
corridor src/Dodge/Room/Corridor.hs 17;" f corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 133;" f corridorBoss src/Dodge/LockAndKey.hs 133;" f
corridorN src/Dodge/Room/Corridor.hs 57;" f corridorN src/Dodge/Room/Corridor.hs 58;" f
corridorWallN src/Dodge/Room/Corridor.hs 76;" f corridorWallN src/Dodge/Room/Corridor.hs 77;" f
crAdd src/Dodge/Room/RezBox.hs 116;" f crAdd src/Dodge/Room/RezBox.hs 116;" f
crAwayFromPost src/Dodge/Creature/Test.hs 85;" f crAwayFromPost src/Dodge/Creature/Test.hs 85;" f
crBlips src/Dodge/RadarSweep.hs 88;" f crBlips src/Dodge/RadarSweep.hs 88;" f
@@ -2993,7 +2996,7 @@ createProjectile src/Dodge/HeldUse.hs 1271;" f
createProjectileR src/Dodge/HeldUse.hs 1220;" f createProjectileR src/Dodge/HeldUse.hs 1220;" f
createShell src/Dodge/Projectile/Create.hs 21;" f createShell src/Dodge/Projectile/Create.hs 21;" f
createShieldWall src/Dodge/Item/BackgroundEffect.hs 53;" f createShieldWall src/Dodge/Item/BackgroundEffect.hs 53;" f
createUnusedLinkPos src/Dodge/Tree/Shift.hs 124;" f createUnusedLinkPos src/Dodge/Tree/Shift.hs 128;" f
createWall src/Dodge/Wall/Create.hs 8;" f createWall src/Dodge/Wall/Create.hs 8;" f
creatureDisplayText src/Dodge/Creature/Picture/Awareness.hs 12;" f creatureDisplayText src/Dodge/Creature/Picture/Awareness.hs 12;" f
creatureShootLaser src/Dodge/HeldUse.hs 840;" f creatureShootLaser src/Dodge/HeldUse.hs 840;" f
@@ -3001,10 +3004,10 @@ creatureShootPulseLaser src/Dodge/HeldUse.hs 871;" f
creatureTurnTo src/Dodge/Creature/Impulse/Movement.hs 60;" f creatureTurnTo src/Dodge/Creature/Impulse/Movement.hs 60;" f
creatureTurnToward src/Dodge/Creature/Impulse/Movement.hs 81;" f creatureTurnToward src/Dodge/Creature/Impulse/Movement.hs 81;" f
creatureTurnTowardDir src/Dodge/Creature/Impulse/Movement.hs 70;" f creatureTurnTowardDir src/Dodge/Creature/Impulse/Movement.hs 70;" f
critDeadEnd src/Dodge/Room/Room.hs 256;" f critDeadEnd src/Dodge/Room/Room.hs 257;" f
critInDeadEnd src/Dodge/Room/Room.hs 252;" f critInDeadEnd src/Dodge/Room/Room.hs 253;" f
critsPillarRoom src/Dodge/Room/Room.hs 403;" f critsPillarRoom src/Dodge/Room/Room.hs 409;" f
critsRoom src/Dodge/Room/Room.hs 411;" f critsRoom src/Dodge/Room/Room.hs 417;" f
crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f
crossPic src/Dodge/Render/Label.hs 28;" f crossPic src/Dodge/Render/Label.hs 28;" f
crossProd src/Geometry/Vector3D.hs 41;" f crossProd src/Geometry/Vector3D.hs 41;" f
@@ -3071,7 +3074,7 @@ dbArgChain src/Dodge/Base.hs 170;" f
dbwMuzzles src/Dodge/HeldUse.hs 325;" f dbwMuzzles src/Dodge/HeldUse.hs 325;" f
deZoneIX src/Dodge/Zoning/Base.hs 91;" f deZoneIX src/Dodge/Zoning/Base.hs 91;" f
deZoneWall src/Dodge/Zoning/Wall.hs 70;" f deZoneWall src/Dodge/Zoning/Wall.hs 70;" f
deadEndRoom src/Dodge/Room/Room.hs 259;" f deadEndRoom src/Dodge/Room/Room.hs 260;" f
deadFeet src/Dodge/Creature/Picture.hs 68;" f deadFeet src/Dodge/Creature/Picture.hs 68;" f
deadRot src/Dodge/Creature/Picture.hs 86;" f deadRot src/Dodge/Creature/Picture.hs 86;" f
deadScalp src/Dodge/Creature/Picture.hs 81;" f deadScalp src/Dodge/Creature/Picture.hs 81;" f
@@ -3081,17 +3084,17 @@ debrisSPic src/Dodge/Prop/Draw.hs 16;" f
debrisSize src/Dodge/Block/Debris.hs 83;" f debrisSize src/Dodge/Block/Debris.hs 83;" f
debugEvent src/Dodge/Debug.hs 44;" f debugEvent src/Dodge/Debug.hs 44;" f
debugEvents src/Dodge/Debug.hs 29;" f debugEvents src/Dodge/Debug.hs 29;" f
debugGet src/Dodge/Debug.hs 82;" f debugGet src/Dodge/Debug.hs 83;" f
debugItem src/Dodge/Debug.hs 47;" f debugItem src/Dodge/Debug.hs 47;" f
debugMenu src/Dodge/Menu.hs 122;" f debugMenu src/Dodge/Menu.hs 122;" f
debugMenuOptions src/Dodge/Menu.hs 128;" f debugMenuOptions src/Dodge/Menu.hs 128;" f
debugMouseClickPos src/Dodge/Debug.hs 153;" f debugMouseClickPos src/Dodge/Debug.hs 154;" f
debugOn src/Dodge/Data/Config.hs 176;" f debugOn src/Dodge/Data/Config.hs 177;" f
debugPutDraw src/Dodge/Debug.hs 103;" f debugPutDraw src/Dodge/Debug.hs 104;" f
debugPutItems src/Dodge/Debug.hs 86;" f debugPutItems src/Dodge/Debug.hs 87;" f
debugPutN src/Dodge/Debug.hs 92;" f debugPutN src/Dodge/Debug.hs 93;" f
debugShowPath src/Dodge/Debug.hs 113;" f debugShowPath src/Dodge/Debug.hs 114;" f
debugWritableValues src/Dodge/Debug.hs 126;" f debugWritableValues src/Dodge/Debug.hs 127;" f
decodeSensorType src/Dodge/Terminal.hs 81;" f decodeSensorType src/Dodge/Terminal.hs 81;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 62;" f decomposeSelfTree src/Dodge/Tree/Compose.hs 62;" f
decomposeTree src/Dodge/Tree/Compose.hs 59;" f decomposeTree src/Dodge/Tree/Compose.hs 59;" f
@@ -3123,7 +3126,7 @@ defaultCWGen src/Dodge/Default/World.hs 62;" f
defaultCWorld src/Dodge/Default/World.hs 87;" f defaultCWorld src/Dodge/Default/World.hs 87;" f
defaultChaseMvType src/Dodge/Creature/MoveType.hs 25;" f defaultChaseMvType src/Dodge/Creature/MoveType.hs 25;" f
defaultClusterStatus src/Dodge/Default/Room.hs 37;" f defaultClusterStatus src/Dodge/Default/Room.hs 37;" f
defaultConfig src/Dodge/Data/Config.hs 151;" f defaultConfig src/Dodge/Data/Config.hs 152;" f
defaultCreature src/Dodge/Default/Creature.hs 12;" f defaultCreature src/Dodge/Default/Creature.hs 12;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 66;" f defaultCreatureMemory src/Dodge/Default/Creature.hs 66;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f
@@ -3196,7 +3199,7 @@ dist src/Geometry/Vector.hs 185;" f
dist3 src/Geometry/Vector3D.hs 101;" f dist3 src/Geometry/Vector3D.hs 101;" f
distributeAmmoToItem src/Dodge/WorldEffect.hs 152;" f distributeAmmoToItem src/Dodge/WorldEffect.hs 152;" f
distributeAmmoToYou src/Dodge/WorldEffect.hs 140;" f distributeAmmoToYou src/Dodge/WorldEffect.hs 140;" f
distributerRoom src/Dodge/Room/Room.hs 420;" f distributerRoom src/Dodge/Room/Room.hs 426;" f
divTo src/Geometry/Zone.hs 8;" f divTo src/Geometry/Zone.hs 8;" f
divideCircle src/Geometry.hs 321;" f divideCircle src/Geometry.hs 321;" f
divideDoorPane src/Dodge/Placement/Instance/Door.hs 65;" f divideDoorPane src/Dodge/Placement/Instance/Door.hs 65;" f
@@ -3221,8 +3224,8 @@ doCrWdAc src/Dodge/CreatureEffect.hs 47;" f
doDamage src/Dodge/Creature/State.hs 43;" f doDamage src/Dodge/Creature/State.hs 43;" f
doDeathToggle src/Dodge/WorldEffect.hs 101;" f doDeathToggle src/Dodge/WorldEffect.hs 101;" f
doDeathTriggers src/Dodge/WorldEffect.hs 94;" f doDeathTriggers src/Dodge/WorldEffect.hs 94;" f
doDebugGet src/Dodge/Debug.hs 106;" f doDebugGet src/Dodge/Debug.hs 107;" f
doDebugPut src/Dodge/Debug.hs 95;" f doDebugPut src/Dodge/Debug.hs 96;" f
doDebugTest src/Dodge/Update/Input/DebugTest.hs 23;" f doDebugTest src/Dodge/Update/Input/DebugTest.hs 23;" f
doDebugTest2 src/Dodge/Update/Input/DebugTest.hs 38;" f doDebugTest2 src/Dodge/Update/Input/DebugTest.hs 38;" f
doDebugTestF10 src/Dodge/Update/Input/DebugTest.hs 66;" f doDebugTestF10 src/Dodge/Update/Input/DebugTest.hs 66;" f
@@ -3274,10 +3277,11 @@ doWorldEvents src/Dodge/Update.hs 463;" f
doWorldPos src/Dodge/WorldPos.hs 10;" f doWorldPos src/Dodge/WorldPos.hs 10;" f
door src/Dodge/Room/Door.hs 13;" f door src/Dodge/Room/Door.hs 13;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 38;" f doorBetween src/Dodge/Placement/Instance/Door.hs 38;" f
doorCor src/Dodge/Room/Room.hs 399;" f
doorLerp src/Dodge/Door.hs 40;" f doorLerp src/Dodge/Door.hs 40;" f
dotV src/Geometry/Vector.hs 76;" f dotV src/Geometry/Vector.hs 76;" f
dotV3 src/Geometry/Vector3D.hs 119;" f dotV3 src/Geometry/Vector3D.hs 119;" f
doubleCorridorBarrels src/Dodge/Room/Room.hs 289;" f doubleCorridorBarrels src/Dodge/Room/Room.hs 290;" f
doublePair src/Geometry.hs 162;" f doublePair src/Geometry.hs 162;" f
doublePairSet src/Geometry.hs 166;" f doublePairSet src/Geometry.hs 166;" f
doubleTreeToIndentList src/Dodge/DoubleTree.hs 129;" f doubleTreeToIndentList src/Dodge/DoubleTree.hs 129;" f
@@ -3290,7 +3294,7 @@ drawArrowDown src/Dodge/Render/Picture.hs 219;" f
drawBaseMachine src/Dodge/Machine/Draw.hs 75;" f drawBaseMachine src/Dodge/Machine/Draw.hs 75;" f
drawBlip src/Dodge/RadarBlip.hs 16;" f drawBlip src/Dodge/RadarBlip.hs 16;" f
drawBlock src/Dodge/Render/ShapePicture.hs 80;" f drawBlock src/Dodge/Render/ShapePicture.hs 80;" f
drawBoundingBox src/Dodge/Debug/Picture.hs 359;" f drawBoundingBox src/Dodge/Debug/Picture.hs 368;" f
drawBullet src/Dodge/Render/ShapePicture.hs 166;" f drawBullet src/Dodge/Render/ShapePicture.hs 166;" f
drawButton src/Dodge/Button/Draw.hs 10;" f drawButton src/Dodge/Button/Draw.hs 10;" f
drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f
@@ -3300,10 +3304,10 @@ drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f
drawCombFilter src/Dodge/Render/Picture.hs 267;" f drawCombFilter src/Dodge/Render/Picture.hs 267;" f
drawCombineInventory src/Dodge/Render/HUD.hs 190;" f drawCombineInventory src/Dodge/Render/HUD.hs 190;" f
drawConcurrentMessage src/Dodge/Render/Picture.hs 72;" f drawConcurrentMessage src/Dodge/Render/Picture.hs 72;" f
drawCoord src/Dodge/Debug/Picture.hs 387;" f drawCoord src/Dodge/Debug/Picture.hs 396;" f
drawCountMod src/Render.hs 231;" f drawCountMod src/Render.hs 231;" f
drawCrInfo src/Dodge/Debug.hs 177;" f drawCrInfo src/Dodge/Debug.hs 178;" f
drawCrInfo' src/Dodge/Debug.hs 172;" f drawCrInfo' src/Dodge/Debug.hs 173;" f
drawCreature src/Dodge/Render/ShapePicture.hs 102;" f drawCreature src/Dodge/Render/ShapePicture.hs 102;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 199;" f drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 199;" f
drawCross src/Dodge/Render/Label.hs 25;" f drawCross src/Dodge/Render/Label.hs 25;" f
@@ -3312,7 +3316,7 @@ drawCursorAt src/Dodge/Render/List.hs 73;" f
drawCursorByTerminalStatus src/Dodge/Render/Picture.hs 137;" f drawCursorByTerminalStatus src/Dodge/Render/Picture.hs 137;" f
drawDDATest src/Dodge/Debug/Picture.hs 304;" f drawDDATest src/Dodge/Debug/Picture.hs 304;" f
drawDamSensor src/Dodge/Machine/Draw.hs 38;" f drawDamSensor src/Dodge/Machine/Draw.hs 38;" f
drawDebug src/Dodge/Debug.hs 215;" f drawDebug src/Dodge/Debug.hs 216;" f
drawDrag src/Dodge/Render/Picture.hs 198;" f drawDrag src/Dodge/Render/Picture.hs 198;" f
drawDragDrop src/Dodge/Render/Picture.hs 227;" f drawDragDrop src/Dodge/Render/Picture.hs 227;" f
drawDragPickup src/Dodge/Render/Picture.hs 236;" f drawDragPickup src/Dodge/Render/Picture.hs 236;" f
@@ -3357,11 +3361,11 @@ drawMenuOrHUD src/Dodge/Render/Picture.hs 67;" f
drawMenuScreen src/Dodge/Render/MenuScreen.hs 18;" f drawMenuScreen src/Dodge/Render/MenuScreen.hs 18;" f
drawMouseCursor src/Dodge/Render/Picture.hs 83;" f drawMouseCursor src/Dodge/Render/Picture.hs 83;" f
drawMouseOver src/Dodge/Render/HUD.hs 115;" f drawMouseOver src/Dodge/Render/HUD.hs 115;" f
drawMousePosition src/Dodge/Debug/Picture.hs 377;" f drawMousePosition src/Dodge/Debug/Picture.hs 386;" f
drawOptions src/Dodge/Render/MenuScreen.hs 36;" f drawOptions src/Dodge/Render/MenuScreen.hs 36;" f
drawPathBetween src/Dodge/Debug/Picture.hs 202;" f drawPathBetween src/Dodge/Debug/Picture.hs 202;" f
drawPathEdge src/Dodge/Debug/Picture.hs 261;" f drawPathEdge src/Dodge/Debug/Picture.hs 261;" f
drawPathing src/Dodge/Debug/Picture.hs 408;" f drawPathing src/Dodge/Debug/Picture.hs 417;" f
drawPlus src/Dodge/Render/Picture.hs 163;" f drawPlus src/Dodge/Render/Picture.hs 163;" f
drawPointLabel src/Dodge/Render/Label.hs 13;" f drawPointLabel src/Dodge/Render/Label.hs 13;" f
drawProjectile src/Dodge/Projectile/Draw.hs 13;" f drawProjectile src/Dodge/Projectile/Draw.hs 13;" f
@@ -3403,7 +3407,7 @@ drawWallsNearCursor src/Dodge/Debug/Picture.hs 233;" f
drawWallsNearSegment src/Dodge/Debug/Picture.hs 130;" f drawWallsNearSegment src/Dodge/Debug/Picture.hs 130;" f
drawWallsNearYou src/Dodge/Debug/Picture.hs 223;" f drawWallsNearYou src/Dodge/Debug/Picture.hs 223;" f
drawWeapon src/Dodge/Creature/Volition.hs 15;" f drawWeapon src/Dodge/Creature/Volition.hs 15;" f
drawWlIDs src/Dodge/Debug/Picture.hs 395;" f drawWlIDs src/Dodge/Debug/Picture.hs 404;" f
drawZone src/Dodge/Debug/Picture.hs 152;" f drawZone src/Dodge/Debug/Picture.hs 152;" f
drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f
drawZoneCol src/Dodge/Debug/Picture.hs 149;" f drawZoneCol src/Dodge/Debug/Picture.hs 149;" f
@@ -3436,7 +3440,7 @@ ebDamage src/Dodge/EnergyBall.hs 85;" f
ebEffect src/Dodge/EnergyBall.hs 45;" f ebEffect src/Dodge/EnergyBall.hs 45;" f
ebFlicker src/Dodge/EnergyBall.hs 70;" f ebFlicker src/Dodge/EnergyBall.hs 70;" f
ebtToDamage src/Dodge/EnergyBall.hs 93;" f ebtToDamage src/Dodge/EnergyBall.hs 93;" f
edgeToPic src/Dodge/Debug/Picture.hs 417;" f edgeToPic src/Dodge/Debug/Picture.hs 426;" f
effectOnEquip src/Dodge/Euse.hs 89;" f effectOnEquip src/Dodge/Euse.hs 89;" f
effectOnRemove src/Dodge/Euse.hs 79;" f effectOnRemove src/Dodge/Euse.hs 79;" f
eitType src/Dodge/Data/EquipType.hs 15;" f eitType src/Dodge/Data/EquipType.hs 15;" f
@@ -3547,7 +3551,7 @@ floorTo src/Geometry/Zone.hs 12;" f
floorWire src/Dodge/Wire.hs 13;" f floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 777;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 777;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 823;" f foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 823;" f
foldMTRS src/Dodge/Room/Tutorial.hs 94;" f foldMTRS src/Dodge/Room/Tutorial.hs 95;" f
foldPairs src/ListHelp.hs 37;" f foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 111;" f foldrWhileArb src/ListHelp.hs 111;" f
followImpulse src/Dodge/Creature/Impulse.hs 25;" f followImpulse src/Dodge/Creature/Impulse.hs 25;" f
@@ -3609,8 +3613,8 @@ getCloseObj src/Dodge/Update/Input/InGame.hs 539;" f
getCommand src/Dodge/Terminal.hs 61;" f getCommand src/Dodge/Terminal.hs 61;" f
getCommands src/Dodge/Terminal.hs 58;" f getCommands src/Dodge/Terminal.hs 58;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 461;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 462;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 448;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 449;" f
getDebugMouseOver src/Dodge/Update.hs 424;" f getDebugMouseOver src/Dodge/Update.hs 424;" f
getDistortions src/Dodge/Render.hs 443;" f getDistortions src/Dodge/Render.hs 443;" f
getEdgesCrossing src/Dodge/Path.hs 37;" f getEdgesCrossing src/Dodge/Path.hs 37;" f
@@ -3627,13 +3631,13 @@ getNodePos src/Dodge/Path.hs 34;" f
getPJStabiliser src/Dodge/HeldUse.hs 1246;" f getPJStabiliser src/Dodge/HeldUse.hs 1246;" 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 444;" f getRoomsFromInts src/Dodge/Room/Tutorial.hs 445;" f
getRootItemBounds src/Dodge/Render/HUD.hs 106;" f getRootItemBounds src/Dodge/Render/HUD.hs 106;" 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
getSmoothScrollValue src/Dodge/SmoothScroll.hs 21;" f getSmoothScrollValue src/Dodge/SmoothScroll.hs 21;" f
getSplitString src/Dodge/Debug/Terminal.hs 129;" f getSplitString src/Dodge/Debug/Terminal.hs 129;" f
getTiles src/Dodge/Layout.hs 199;" f getTiles src/Dodge/Layout.hs 200;" f
getViewpoints src/Dodge/Viewpoints.hs 29;" f getViewpoints src/Dodge/Viewpoints.hs 29;" f
getVolleyBurst src/Dodge/HeldUse.hs 128;" f getVolleyBurst src/Dodge/HeldUse.hs 128;" f
getWallPathing src/Dodge/Wall/Pathing.hs 7;" f getWallPathing src/Dodge/Wall/Pathing.hs 7;" f
@@ -3651,8 +3655,8 @@ glassShat1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 697;" f
glassShat2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 707;" f glassShat2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 707;" f
glassShat3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 711;" f glassShat3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 711;" f
glassShat4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 687;" f glassShat4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 687;" f
glassSwitchBack src/Dodge/Room/Room.hs 81;" f glassSwitchBack src/Dodge/Room/Room.hs 82;" f
glassSwitchBackCrits src/Dodge/Room/Room.hs 115;" f glassSwitchBackCrits src/Dodge/Room/Room.hs 116;" f
glauncherPic src/Dodge/Item/Draw/SPic.hs 402;" f glauncherPic src/Dodge/Item/Draw/SPic.hs 402;" f
gluintSize src/Shader/Parameters.hs 25;" f gluintSize src/Shader/Parameters.hs 25;" f
goToPostStrat src/Dodge/Creature/Strategy.hs 10;" f goToPostStrat src/Dodge/Creature/Strategy.hs 10;" f
@@ -3712,8 +3716,8 @@ headLampShape src/Dodge/Item/Draw/SPic.hs 423;" f
headMap src/Dodge/DoubleTree.hs 249;" f headMap src/Dodge/DoubleTree.hs 249;" f
headPQ src/Dodge/Creature/HandPos.hs 116;" f headPQ src/Dodge/Creature/HandPos.hs 116;" f
healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f
healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 91;" f healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 92;" f
healthTest src/Dodge/Room/LasTurret.hs 113;" f healthTest src/Dodge/Room/LasTurret.hs 114;" f
heightWallPS src/Dodge/Placement/Instance/Wall.hs 24;" f heightWallPS src/Dodge/Placement/Instance/Wall.hs 24;" f
heldAimStance src/Dodge/Item/AimStance.hs 24;" f heldAimStance src/Dodge/Item/AimStance.hs 24;" f
heldAimZoom src/Dodge/Update/Camera.hs 157;" f heldAimZoom src/Dodge/Update/Camera.hs 157;" f
@@ -3936,26 +3940,27 @@ justify src/Justify.hs 9;" f
k src/ShortShow.hs 48;" f k src/ShortShow.hs 48;" f
k' src/ShortShow.hs 48;" f k' src/ShortShow.hs 48;" f
keyCard src/Dodge/Item/Held/Utility.hs 20;" f keyCard src/Dodge/Item/Held/Utility.hs 20;" f
keyCardAnalyserByDoor src/Dodge/Room/LasTurret.hs 88;" f keyCardAnalyserByDoor src/Dodge/Room/LasTurret.hs 89;" f
keyCardRoomRunPast src/Dodge/Room/LasTurret.hs 76;" f keyCardRoomRunPast src/Dodge/Room/LasTurret.hs 77;" f
keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f
keyPic src/Dodge/Item/Draw/SPic.hs 439;" f keyPic src/Dodge/Item/Draw/SPic.hs 439;" f
keyholeCorridor src/Dodge/Room/Corridor.hs 44;" f keyholeCorridor src/Dodge/Room/Corridor.hs 45;" f
knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 741;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 741;" f
lChasm src/Dodge/Room/Tutorial.hs 157;" f lChasm src/Dodge/Room/Tutorial.hs 158;" f
lConnect src/Dodge/Render/Connectors.hs 43;" f lConnect src/Dodge/Render/Connectors.hs 43;" f
lConnectCol src/Dodge/Render/Connectors.hs 46;" f lConnectCol src/Dodge/Render/Connectors.hs 46;" f
lConnectMulti src/Dodge/Render/Connectors.hs 51;" f lConnectMulti src/Dodge/Render/Connectors.hs 51;" f
lShape src/Dodge/Placement/Instance/LightSource.hs 54;" f lShape src/Dodge/Placement/Instance/LightSource.hs 54;" f
lamp src/Dodge/Creature/Lamp.hs 18;" f lamp src/Dodge/Creature/Lamp.hs 18;" f
lampCrSPic src/Dodge/Render/ShapePicture.hs 116;" f lampCrSPic src/Dodge/Render/ShapePicture.hs 116;" f
lasCenRunClose src/Dodge/Room/LasTurret.hs 144;" f lasCenRunClose src/Dodge/Room/LasTurret.hs 173;" f
lasCenSensEdge src/Dodge/Room/LasTurret.hs 132;" f lasCenRunClose' src/Dodge/Room/LasTurret.hs 145;" f
lasCenSensEdge src/Dodge/Room/LasTurret.hs 133;" f
lasGunPic src/Dodge/Item/Draw/SPic.hs 414;" f lasGunPic src/Dodge/Item/Draw/SPic.hs 414;" f
lasPulseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 731;" f lasPulseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 731;" f
lasSensorTurretTest src/Dodge/Room/LasTurret.hs 125;" f lasSensorTurretTest src/Dodge/Room/LasTurret.hs 126;" f
lasTunnel src/Dodge/Room/LasTurret.hs 172;" f lasTunnel src/Dodge/Room/LasTurret.hs 198;" f
lasTunnelRunPast src/Dodge/Room/LasTurret.hs 213;" f lasTunnelRunPast src/Dodge/Room/LasTurret.hs 239;" f
lasTurret src/Dodge/Placement/Instance/Turret.hs 35;" f lasTurret src/Dodge/Placement/Instance/Turret.hs 35;" f
laser src/Dodge/Item/Held/BatteryGuns.hs 34;" f laser src/Dodge/Item/Held/BatteryGuns.hs 34;" f
lastMap src/Dodge/DoubleTree.hs 253;" f lastMap src/Dodge/DoubleTree.hs 253;" f
@@ -3989,8 +3994,8 @@ legsSPic src/Dodge/Item/Draw/SPic.hs 448;" f
lerpP2A src/Dodge/ShiftPoint.hs 14;" f lerpP2A src/Dodge/ShiftPoint.hs 14;" f
liShape src/Dodge/Placement/Instance/LightSource.hs 79;" f liShape src/Dodge/Placement/Instance/LightSource.hs 79;" f
light src/Color.hs 131;" f light src/Color.hs 131;" f
lightSensByDoor src/Dodge/Room/LasTurret.hs 61;" f lightSensByDoor src/Dodge/Room/LasTurret.hs 62;" f
lightSensInsideDoor src/Dodge/Room/LasTurret.hs 49;" f lightSensInsideDoor src/Dodge/Room/LasTurret.hs 50;" f
lightSensor src/Dodge/Placement/Instance/Sensor.hs 26;" f lightSensor src/Dodge/Placement/Instance/Sensor.hs 26;" f
lightsToRender src/Dodge/Render/Lights.hs 14;" f lightsToRender src/Dodge/Render/Lights.hs 14;" f
lightx4 src/Color.hs 155;" f lightx4 src/Color.hs 155;" f
@@ -4187,9 +4192,9 @@ mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 14;" f mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 23;" f midBarDecoration src/Dodge/Placement/TopDecoration.hs 23;" f
midBounds src/Dodge/Room/Foreground.hs 150;" f midBounds src/Dodge/Room/Foreground.hs 150;" f
midChasm src/Dodge/Room/Tutorial.hs 180;" f midChasm src/Dodge/Room/Tutorial.hs 181;" f
midChasmPlatform src/Dodge/Room/Tutorial.hs 199;" f midChasmPlatform src/Dodge/Room/Tutorial.hs 200;" f
midChasmSpit src/Dodge/Room/Tutorial.hs 253;" f midChasmSpit src/Dodge/Room/Tutorial.hs 254;" 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 83;" f midPoint src/Geometry.hs 83;" f
@@ -4203,7 +4208,7 @@ miniGunX src/Dodge/Item/Held/Cane.hs 33;" f
miniGunXPict src/Dodge/Item/Draw/SPic.hs 375;" f miniGunXPict src/Dodge/Item/Draw/SPic.hs 375;" f
miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 367;" f miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 367;" f
miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 653;" f miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 653;" f
miniTree2 src/Dodge/Room/Room.hs 122;" f miniTree2 src/Dodge/Room/Room.hs 123;" f
minimumOn src/FoldlHelp.hs 14;" f minimumOn src/FoldlHelp.hs 14;" f
mirrorXAxis src/Geometry/Polygon.hs 76;" f mirrorXAxis src/Geometry/Polygon.hs 76;" f
mirrorxz src/Picture/Base.hs 330;" f mirrorxz src/Picture/Base.hs 330;" f
@@ -4352,14 +4357,15 @@ overrideMeleeCloseTarget src/Dodge/Creature/ReaderUpdate.hs 35;" f
overwriteLabel src/Dodge/Tree/Compose.hs 32;" f overwriteLabel src/Dodge/Tree/Compose.hs 32;" f
p src/ShortShow.hs 48;" f p src/ShortShow.hs 48;" f
pContID src/Dodge/LevelGen/PlacementHelper.hs 15;" f pContID src/Dodge/LevelGen/PlacementHelper.hs 15;" f
pairPolyPointsIntersect src/Geometry/ConvexPoly.hs 68;" f pairPolyPointsIntersect src/Geometry/ConvexPoly.hs 93;" f
pairPolyPointsIntersectWitness src/Geometry/ConvexPoly.hs 101;" f
pairsToIncGraph src/Dodge/Path.hs 94;" f pairsToIncGraph src/Dodge/Path.hs 94;" f
pairsToIncidence src/Dodge/Graph.hs 20;" f pairsToIncidence src/Dodge/Graph.hs 20;" f
pairsToSCC src/Dodge/Graph.hs 32;" f pairsToSCC src/Dodge/Graph.hs 32;" f
paletteToColor src/Color.hs 85;" f paletteToColor src/Color.hs 85;" f
parseItem src/Dodge/Debug/Terminal.hs 62;" f parseItem src/Dodge/Debug/Terminal.hs 62;" f
parseNum src/Dodge/Debug/Terminal.hs 77;" f parseNum src/Dodge/Debug/Terminal.hs 77;" f
passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 523;" f passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 524;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f
pathEdgeObstructed src/Dodge/Path.hs 66;" f pathEdgeObstructed src/Dodge/Path.hs 66;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f
@@ -4390,7 +4396,7 @@ pincerP'' src/Dodge/Creature/Boid.hs 106;" f
pincerP''' src/Dodge/Creature/Boid.hs 77;" f pincerP''' src/Dodge/Creature/Boid.hs 77;" f
pipe src/Dodge/Item/Craftable.hs 29;" f pipe src/Dodge/Item/Craftable.hs 29;" f
pistol src/Dodge/Item/Held/Stick.hs 18;" f pistol src/Dodge/Item/Held/Stick.hs 18;" f
pistolerRoom src/Dodge/Room/Room.hs 343;" f pistolerRoom src/Dodge/Room/Room.hs 344;" f
pjRemoteSetDirection src/Dodge/Projectile/Update.hs 196;" f pjRemoteSetDirection src/Dodge/Projectile/Update.hs 196;" f
plBlock src/Dodge/Placement/PlaceSpot/Block.hs 24;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 24;" f
plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f
@@ -4428,7 +4434,7 @@ pointerToItem src/Dodge/Item/Location.hs 39;" f
pointerToItemID src/Dodge/Item/Location.hs 42;" f pointerToItemID src/Dodge/Item/Location.hs 42;" f
pointerYourRootItem src/Dodge/Item/Location.hs 33;" f pointerYourRootItem src/Dodge/Item/Location.hs 33;" f
pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f
pointsToPoly src/Geometry/ConvexPoly.hs 35;" f pointsToPoly src/Geometry/ConvexPoly.hs 37;" f
poisonSPic src/Dodge/Creature/Update.hs 130;" f poisonSPic src/Dodge/Creature/Update.hs 130;" f
poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f
poke34 src/Shader/Poke.hs 509;" f poke34 src/Shader/Poke.hs 509;" f
@@ -4463,14 +4469,16 @@ pokeWall src/Shader/Poke.hs 80;" f
pokeWallsWindows src/Shader/Poke.hs 52;" f pokeWallsWindows src/Shader/Poke.hs 52;" f
poly3 src/Picture/Base.hs 76;" f poly3 src/Picture/Base.hs 76;" f
poly3Col src/Picture/Base.hs 80;" f poly3Col src/Picture/Base.hs 80;" f
polyChasm src/Dodge/Room/Tutorial.hs 293;" f polyChasm src/Dodge/Room/Tutorial.hs 294;" f
polyChasmC src/Dodge/Room/Tutorial.hs 302;" f polyChasmC src/Dodge/Room/Tutorial.hs 303;" f
polyCirc src/Shape.hs 47;" f polyCirc src/Shape.hs 47;" f
polyCircx src/Shape.hs 52;" f polyCircx src/Shape.hs 52;" f
polyCornerDist src/Geometry/Polygon.hs 69;" f polyCornerDist src/Geometry/Polygon.hs 69;" f
polyOrthDist src/Geometry/Polygon.hs 59;" f polyOrthDist src/Geometry/Polygon.hs 59;" f
polyPointsIntersect src/Geometry/ConvexPoly.hs 60;" f polyPointsIntersect src/Geometry/ConvexPoly.hs 77;" f
polyPointsOverlap src/Geometry/ConvexPoly.hs 53;" f polyPointsIntersectWitness src/Geometry/ConvexPoly.hs 85;" f
polyPointsOverlap src/Geometry/ConvexPoly.hs 62;" f
polyPointsOverlapWitness src/Geometry/ConvexPoly.hs 70;" f
polyToEdges src/Polyhedra.hs 125;" f polyToEdges src/Polyhedra.hs 125;" f
polyToGeoRender src/Polyhedra.hs 134;" f polyToGeoRender src/Polyhedra.hs 134;" f
polyToPics src/Polyhedra.hs 119;" f polyToPics src/Polyhedra.hs 119;" f
@@ -4482,9 +4490,9 @@ polygonCol src/Picture/Base.hs 70;" f
polygonWire src/Picture/Base.hs 59;" f polygonWire src/Picture/Base.hs 59;" f
polysToPic src/Polyhedra.hs 122;" f polysToPic src/Polyhedra.hs 122;" f
popScreen src/Dodge/Menu/PushPop.hs 6;" f popScreen src/Dodge/Menu/PushPop.hs 6;" f
posRms src/Dodge/Tree/Shift.hs 44;" f posRms src/Dodge/Tree/Shift.hs 45;" f
posSelSecYint src/Dodge/SelectionSections.hs 147;" f posSelSecYint src/Dodge/SelectionSections.hs 147;" f
positionRoomsFromTree src/Dodge/Tree/Shift.hs 35;" f positionRoomsFromTree src/Dodge/Tree/Shift.hs 36;" f
postGenerationProcessing src/Dodge/LevelGen.hs 31;" f postGenerationProcessing src/Dodge/LevelGen.hs 31;" f
postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 14;" f postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 14;" f
postWorldLoad src/Dodge/WorldLoad.hs 18;" f postWorldLoad src/Dodge/WorldLoad.hs 18;" f
@@ -4504,11 +4512,11 @@ prettyDT src/Dodge/DoubleTree.hs 258;" f
prettyLDT src/Dodge/DoubleTree.hs 263;" f prettyLDT src/Dodge/DoubleTree.hs 263;" f
prettyShort src/AesonHelp.hs 11;" f prettyShort src/AesonHelp.hs 11;" f
primeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 645;" f primeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 645;" f
printColumnTitles src/Dodge/Tree/Shift.hs 149;" f printColumnTitles src/Dodge/Tree/Shift.hs 153;" f
printColumns src/Dodge/Tree/Shift.hs 139;" f printColumns src/Dodge/Tree/Shift.hs 143;" f
printInfo src/Dodge/Tree/Shift.hs 152;" f printInfo src/Dodge/Tree/Shift.hs 156;" f
printInfoCheckNum src/Dodge/Tree/Shift.hs 161;" f printInfoCheckNum src/Dodge/Tree/Shift.hs 165;" f
printPartialColumns src/Dodge/Tree/Shift.hs 142;" f printPartialColumns src/Dodge/Tree/Shift.hs 146;" f
printPoint src/Dodge/Debug/Picture.hs 35;" f printPoint src/Dodge/Debug/Picture.hs 35;" f
printRotPoint src/Dodge/Debug/Picture.hs 38;" f printRotPoint src/Dodge/Debug/Picture.hs 38;" f
prismBox src/Shape.hs 74;" f prismBox src/Shape.hs 74;" f
@@ -4655,7 +4663,7 @@ removeAimPosture src/Dodge/Creature/YourControl.hs 159;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 905;" f removeAmmoFromMag src/Dodge/HeldUse.hs 905;" f
removeDot src/ShortShow.hs 44;" f removeDot src/ShortShow.hs 44;" f
removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f
removeLights src/Dodge/Room/Tutorial.hs 359;" f removeLights src/Dodge/Room/Tutorial.hs 360;" f
removeShieldWall src/Dodge/Item/BackgroundEffect.hs 71;" f removeShieldWall src/Dodge/Item/BackgroundEffect.hs 71;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 27;" f renderDataResizeUpdate src/Preload/Update.hs 27;" f
@@ -4714,15 +4722,15 @@ rmInLinks src/Dodge/RoomLink.hs 155;" f
rmInvItem src/Dodge/Inventory.hs 74;" f rmInvItem src/Dodge/Inventory.hs 74;" f
rmLinksOfType src/Dodge/RoomLink.hs 152;" f rmLinksOfType src/Dodge/RoomLink.hs 152;" f
rmOutLinks src/Dodge/RoomLink.hs 155;" f rmOutLinks src/Dodge/RoomLink.hs 155;" f
roomC src/Dodge/Room/Room.hs 49;" f roomC src/Dodge/Room/Room.hs 50;" f
roomCCrits src/Dodge/Room/Room.hs 284;" f roomCCrits src/Dodge/Room/Room.hs 285;" f
roomCenterPillar src/Dodge/Room/Room.hs 135;" f roomCenterPillar src/Dodge/Room/Room.hs 136;" f
roomCritLS src/Dodge/Room/RunPast.hs 24;" f roomCritLS src/Dodge/Room/RunPast.hs 24;" f
roomCross src/Dodge/Room/Boss.hs 79;" f roomCross src/Dodge/Room/Boss.hs 79;" f
roomGlassOctogon src/Dodge/Room/Boss.hs 22;" f roomGlassOctogon src/Dodge/Room/Boss.hs 22;" f
roomMiniIntro src/Dodge/Room/Room.hs 130;" f roomMiniIntro src/Dodge/Room/Room.hs 131;" f
roomNgon src/Dodge/Room/Ngon.hs 16;" f roomNgon src/Dodge/Room/Ngon.hs 16;" f
roomPadCut src/Dodge/Room/Room.hs 70;" f roomPadCut src/Dodge/Room/Room.hs 71;" f
roomPillars src/Dodge/Room/Pillar.hs 106;" f roomPillars src/Dodge/Room/Pillar.hs 106;" f
roomPillarsContaining src/Dodge/Room/Containing.hs 39;" f roomPillarsContaining src/Dodge/Room/Containing.hs 39;" f
roomPillarsPassage src/Dodge/Room/Pillar.hs 93;" f roomPillarsPassage src/Dodge/Room/Pillar.hs 93;" f
@@ -4841,7 +4849,7 @@ sensorReqToString src/Dodge/Machine/Update.hs 252;" 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 99;" f sensorSPic src/Dodge/Machine/Draw.hs 99;" f
sensorTut src/Dodge/Room/Tutorial.hs 470;" f sensorTut src/Dodge/Room/Tutorial.hs 471;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 298;" f sensorTypeDamages src/Dodge/Machine/Update.hs 298;" f
sensorTypeDamages src/Dodge/Wall/Damage.hs 91;" f sensorTypeDamages src/Dodge/Wall/Damage.hs 91;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
@@ -4850,7 +4858,7 @@ sentinelFireType src/Dodge/Creature/SentinelAI.hs 49;" f
setAimPosture src/Dodge/Creature/YourControl.hs 145;" f setAimPosture src/Dodge/Creature/YourControl.hs 145;" f
setChannelPos src/Sound.hs 152;" f setChannelPos src/Sound.hs 152;" f
setClickWorldPos src/Dodge/Update.hs 109;" f setClickWorldPos src/Dodge/Update.hs 109;" f
setClip src/Dodge/Debug.hs 201;" f setClip src/Dodge/Debug.hs 202;" f
setDepth src/Picture/Base.hs 120;" f setDepth src/Picture/Base.hs 120;" f
setDirPS src/Dodge/PlacementSpot.hs 51;" f setDirPS src/Dodge/PlacementSpot.hs 51;" f
setFallback src/Dodge/PlacementSpot.hs 127;" f setFallback src/Dodge/PlacementSpot.hs 127;" f
@@ -4868,7 +4876,7 @@ setOutLinks src/Dodge/RoomLink.hs 50;" f
setOutLinksByType src/Dodge/RoomLink.hs 77;" f setOutLinksByType src/Dodge/RoomLink.hs 77;" f
setOutLinksPD src/Dodge/RoomLink.hs 97;" f setOutLinksPD src/Dodge/RoomLink.hs 97;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f
setRoomInt src/Dodge/Room/Tutorial.hs 101;" f setRoomInt src/Dodge/Room/Tutorial.hs 102;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 342;" f setSelWhileDragging src/Dodge/Update/Input/InGame.hs 342;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 97;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 97;" f
setShaderSource src/Shader/Compile.hs 121;" f setShaderSource src/Shader/Compile.hs 121;" f
@@ -4877,7 +4885,7 @@ setSoundVolume src/Sound.hs 159;" f
setTargetMv src/Dodge/Creature/ReaderUpdate.hs 83;" f setTargetMv src/Dodge/Creature/ReaderUpdate.hs 83;" f
setTile src/Dodge/Layout.hs 70;" f setTile src/Dodge/Layout.hs 70;" f
setTiles src/Dodge/Layout.hs 67;" f setTiles src/Dodge/Layout.hs 67;" f
setTreeInts src/Dodge/Room/Tutorial.hs 108;" f setTreeInts src/Dodge/Room/Tutorial.hs 109;" f
setViewDistance src/Dodge/Update/Camera.hs 246;" f setViewDistance src/Dodge/Update/Camera.hs 246;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f
setViewport src/Dodge/Render.hs 448;" f setViewport src/Dodge/Render.hs 448;" f
@@ -4938,10 +4946,10 @@ shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f
shootTeslaArc src/Dodge/HeldUse.hs 1181;" f shootTeslaArc src/Dodge/HeldUse.hs 1181;" f
shootTillEmpty src/Dodge/Creature/Volition.hs 19;" f shootTillEmpty src/Dodge/Creature/Volition.hs 19;" f
shootTractorBeam src/Dodge/HeldUse.hs 819;" f shootTractorBeam src/Dodge/HeldUse.hs 819;" f
shootersRoom src/Dodge/Room/Room.hs 337;" f shootersRoom src/Dodge/Room/Room.hs 338;" f
shootersRoom' src/Dodge/Room/Room.hs 304;" f shootersRoom' src/Dodge/Room/Room.hs 305;" f
shootersRoom1 src/Dodge/Room/Room.hs 327;" f shootersRoom1 src/Dodge/Room/Room.hs 328;" f
shootingRange src/Dodge/Room/Room.hs 354;" f shootingRange src/Dodge/Room/Room.hs 355;" f
shortPoint2 src/Dodge/ShortShow.hs 4;" f shortPoint2 src/Dodge/ShortShow.hs 4;" f
shortShow src/ShortShow.hs 7;" f shortShow src/ShortShow.hs 7;" f
shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 527;" f shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 527;" f
@@ -4953,7 +4961,7 @@ showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 130;" f showIntsString src/Dodge/Tree/Compose.hs 130;" f
showInventoryPathing src/Dodge/Item/Display.hs 86;" f showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 54;" f showManObj src/Dodge/TestString.hs 54;" f
showMuzzlePositions src/Dodge/Debug.hs 253;" f showMuzzlePositions src/Dodge/Debug.hs 255;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 77;" f showTimeFlow src/Dodge/TestString.hs 77;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 183;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 183;" f
@@ -5021,7 +5029,7 @@ soundMultiFrom src/Dodge/SoundLogic.hs 187;" f
soundOriginIDsAt src/Dodge/WorldEvent/Sound.hs 18;" f soundOriginIDsAt src/Dodge/WorldEvent/Sound.hs 18;" f
soundOriginsIDsAt src/Dodge/WorldEvent/Sound.hs 13;" f soundOriginsIDsAt src/Dodge/WorldEvent/Sound.hs 13;" f
soundPathList src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 346;" f soundPathList src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 346;" f
soundPic src/Dodge/Debug/Picture.hs 364;" f soundPic src/Dodge/Debug/Picture.hs 373;" f
soundStart src/Dodge/SoundLogic.hs 118;" f soundStart src/Dodge/SoundLogic.hs 118;" f
soundToOnomato src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 175;" f soundToOnomato src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 175;" f
soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f
@@ -5040,7 +5048,7 @@ sparkRandDir src/Dodge/Spark.hs 117;" f
sparkToDamage src/Dodge/Spark.hs 40;" f sparkToDamage src/Dodge/Spark.hs 40;" f
spawnAt src/Dodge/SpawnAt.hs 14;" f spawnAt src/Dodge/SpawnAt.hs 14;" f
spawnerCrit src/Dodge/Creature.hs 54;" f spawnerCrit src/Dodge/Creature.hs 54;" f
spawnerRoom src/Dodge/Room/Room.hs 382;" f spawnerRoom src/Dodge/Room/Room.hs 383;" f
speedLegs src/Dodge/Item/Equipment.hs 74;" f speedLegs src/Dodge/Item/Equipment.hs 74;" f
splashMenu src/Dodge/Menu.hs 31;" f splashMenu src/Dodge/Menu.hs 31;" f
splashMenuOptions src/Dodge/Menu.hs 36;" f splashMenuOptions src/Dodge/Menu.hs 36;" f
@@ -5057,8 +5065,8 @@ spreadGunCrit src/Dodge/Creature/SpreadGunCrit.hs 11;" f
spreadOut src/Dodge/Creature/Boid.hs 160;" f spreadOut src/Dodge/Creature/Boid.hs 160;" 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
sqPlatformChasm src/Dodge/Room/Tutorial.hs 223;" f sqPlatformChasm src/Dodge/Room/Tutorial.hs 224;" f
sqSpitChasm src/Dodge/Room/Tutorial.hs 238;" f sqSpitChasm src/Dodge/Room/Tutorial.hs 239;" f
square src/Geometry/Polygon.hs 56;" f square src/Geometry/Polygon.hs 56;" f
squareDecoration src/Dodge/Placement/TopDecoration.hs 48;" f squareDecoration src/Dodge/Placement/TopDecoration.hs 48;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 116;" f squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 116;" f
@@ -5117,7 +5125,7 @@ stripZ src/Geometry/Vector3D.hs 97;" f
subInvX src/Dodge/ListDisplayParams.hs 51;" f subInvX src/Dodge/ListDisplayParams.hs 51;" f
subMap src/TreeHelp.hs 119;" f subMap src/TreeHelp.hs 119;" f
subZipWith src/Dodge/Placement/Instance/Wall.hs 94;" f subZipWith src/Dodge/Placement/Instance/Wall.hs 94;" f
succB src/Dodge/Debug.hs 121;" f succB src/Dodge/Debug.hs 122;" f
swapAnyExtraSelection src/Dodge/Inventory/Swap.hs 57;" f swapAnyExtraSelection src/Dodge/Inventory/Swap.hs 57;" f
swapInOutLinks src/Dodge/RoomLink.hs 100;" f swapInOutLinks src/Dodge/RoomLink.hs 100;" f
swapIndices src/ListHelp.hs 50;" f swapIndices src/ListHelp.hs 50;" f
@@ -5126,9 +5134,9 @@ swapItemWith src/Dodge/Inventory.hs 164;" f
swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f
swarmUsingCenter src/Dodge/Creature/Boid.hs 174;" f swarmUsingCenter src/Dodge/Creature/Boid.hs 174;" f
t src/ShortShow.hs 48;" f t src/ShortShow.hs 48;" f
tEast src/Dodge/Room/Corridor.hs 95;" f tEast src/Dodge/Room/Corridor.hs 96;" f
tToBTree src/Dodge/Tree/Compose.hs 93;" f tToBTree src/Dodge/Tree/Compose.hs 93;" f
tWest src/Dodge/Room/Corridor.hs 120;" f tWest src/Dodge/Room/Corridor.hs 121;" f
takeN src/RandomHelp.hs 46;" f takeN src/RandomHelp.hs 46;" f
takeNMore src/RandomHelp.hs 43;" f takeNMore src/RandomHelp.hs 43;" f
takeOne src/RandomHelp.hs 24;" f takeOne src/RandomHelp.hs 24;" f
@@ -5187,7 +5195,7 @@ tflat2 src/Picture/Data.hs 55;" f
tflat3 src/Picture/Data.hs 59;" f tflat3 src/Picture/Data.hs 59;" f
tflat4 src/Picture/Data.hs 63;" f tflat4 src/Picture/Data.hs 63;" f
theCleanup appDodge/Main.hs 65;" f theCleanup appDodge/Main.hs 65;" f
theColumns src/Dodge/Tree/Shift.hs 146;" f theColumns src/Dodge/Tree/Shift.hs 150;" f
theUpdateStep appDodge/Main.hs 101;" f theUpdateStep appDodge/Main.hs 101;" f
thickArc src/Picture/Base.hs 293;" f thickArc src/Picture/Base.hs 293;" f
thickCircle src/Picture/Base.hs 267;" f thickCircle src/Picture/Base.hs 267;" f
@@ -5204,7 +5212,7 @@ throb1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 801;" f
throbC4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 761;" f throbC4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 761;" f
throwItem src/Dodge/Creature/Action.hs 191;" f throwItem src/Dodge/Creature/Action.hs 191;" f
tileTexCoords src/Tile.hs 11;" f tileTexCoords src/Tile.hs 11;" f
tilesFromRooms src/Dodge/Layout.hs 196;" f tilesFromRooms src/Dodge/Layout.hs 197;" f
tilesToLine src/Shader/AuxAddition.hs 66;" f tilesToLine src/Shader/AuxAddition.hs 66;" f
timeFlowUpdate src/Dodge/Update.hs 182;" f timeFlowUpdate src/Dodge/Update.hs 182;" f
timeScroller src/Dodge/Item/Held/Utility.hs 42;" f timeScroller src/Dodge/Item/Held/Utility.hs 42;" f
@@ -5222,7 +5230,7 @@ titleOptionsNoWrite src/Dodge/Menu.hs 107;" f
tlDoEffect src/Dodge/Terminal.hs 115;" f tlDoEffect src/Dodge/Terminal.hs 115;" f
tlSetStatus src/Dodge/Terminal.hs 112;" f tlSetStatus src/Dodge/Terminal.hs 112;" f
tmDistributeAmmo src/Dodge/WorldEffect.hs 120;" f tmDistributeAmmo src/Dodge/WorldEffect.hs 120;" f
tmDistributeLines src/Dodge/Room/Room.hs 456;" f tmDistributeLines src/Dodge/Room/Room.hs 464;" f
tmMachine src/Dodge/Placement/Instance/Terminal.hs 54;" f tmMachine src/Dodge/Placement/Instance/Terminal.hs 54;" f
toBinary src/Dodge/Inventory/SelectionList.hs 138;" f toBinary src/Dodge/Inventory/SelectionList.hs 138;" f
toBothLnk src/Dodge/RoomLink.hs 138;" f toBothLnk src/Dodge/RoomLink.hs 138;" f
@@ -5297,7 +5305,7 @@ treePaths src/TreeHelp.hs 139;" f
treePost src/TreeHelp.hs 46;" f treePost src/TreeHelp.hs 46;" f
treeToPotentialFunction src/Dodge/Item/Grammar.hs 143;" f treeToPotentialFunction src/Dodge/Item/Grammar.hs 143;" f
triLootRoom src/Dodge/Room/Treasure.hs 23;" f triLootRoom src/Dodge/Room/Treasure.hs 23;" f
triggerDoorRoom src/Dodge/Room/Door.hs 30;" f triggerDoorRoom src/Dodge/Room/Door.hs 31;" f
triggerSwitch src/Dodge/Placement/Instance/Button.hs 47;" f triggerSwitch src/Dodge/Placement/Instance/Button.hs 47;" f
triggerSwitchSPic src/Dodge/Placement/Instance/Button.hs 14;" f triggerSwitchSPic src/Dodge/Placement/Instance/Button.hs 14;" f
triggerSwitchSPicLight src/Dodge/Placement/Instance/Button.hs 31;" f triggerSwitchSPicLight src/Dodge/Placement/Instance/Button.hs 31;" f
@@ -5324,12 +5332,12 @@ tryUseParent src/Dodge/Creature/State.hs 145;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f turnTo src/Dodge/Movement/Turn.hs 8;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 22;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 22;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 51;" f tutAnoTree src/Dodge/Room/Tutorial.hs 51;" f
tutDrop src/Dodge/Room/Tutorial.hs 113;" f tutDrop src/Dodge/Room/Tutorial.hs 114;" f
tutHub src/Dodge/Room/Tutorial.hs 366;" f tutHub src/Dodge/Room/Tutorial.hs 367;" f
tutLight src/Dodge/Room/Tutorial.hs 331;" f tutLight src/Dodge/Room/Tutorial.hs 332;" f
tutRezBox src/Dodge/Room/Tutorial.hs 481;" f tutRezBox src/Dodge/Room/Tutorial.hs 482;" f
tutRoomTree src/Dodge/Floor.hs 20;" f tutRoomTree src/Dodge/Floor.hs 20;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 504;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 505;" f
tweenAngles src/Geometry/Vector.hs 190;" f tweenAngles src/Geometry/Vector.hs 190;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 79;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 79;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 34;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 34;" f
@@ -5539,9 +5547,10 @@ verticalPipe src/Dodge/Picture.hs 19;" f
verticalPipe src/Dodge/Placement/Instance/Pipe.hs 6;" f verticalPipe src/Dodge/Placement/Instance/Pipe.hs 6;" f
verticalWire src/Dodge/Wire.hs 23;" f verticalWire src/Dodge/Wire.hs 23;" f
vgunMuzzles src/Dodge/HeldUse.hs 344;" f vgunMuzzles src/Dodge/HeldUse.hs 344;" f
viewBoundaries src/Dodge/Debug/Picture.hs 332;" f viewClipBounds src/Dodge/Debug/Picture.hs 350;" f
viewClipBounds src/Dodge/Debug/Picture.hs 341;" f
viewDistanceFromItems src/Dodge/Update/Camera.hs 202;" f viewDistanceFromItems src/Dodge/Update/Camera.hs 202;" f
viewGameRoomBoundaries src/Dodge/Debug/Picture.hs 332;" f
viewRoomBoundaries src/Dodge/Debug/Picture.hs 341;" f
viewTarget src/Dodge/Creature/ReaderUpdate.hs 155;" f viewTarget src/Dodge/Creature/ReaderUpdate.hs 155;" f
violet src/Color.hs 48;" f violet src/Color.hs 48;" f
visibleWalls src/Dodge/Base/Collide.hs 216;" f visibleWalls src/Dodge/Base/Collide.hs 216;" f
@@ -5567,12 +5576,12 @@ wasdMovement src/Dodge/Creature/YourControl.hs 169;" f
wasdWithAiming src/Dodge/Creature/YourControl.hs 126;" f wasdWithAiming src/Dodge/Creature/YourControl.hs 126;" f
watchCombinations src/Dodge/Combine/Combinations.hs 16;" f watchCombinations src/Dodge/Combine/Combinations.hs 16;" f
watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 185;" f watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 185;" f
weaponBehindPillar src/Dodge/Room/Room.hs 195;" f weaponBehindPillar src/Dodge/Room/Room.hs 196;" f
weaponBetweenPillars src/Dodge/Room/Room.hs 211;" f weaponBetweenPillars src/Dodge/Room/Room.hs 212;" f
weaponEmptyRoom src/Dodge/Room/Room.hs 156;" f weaponEmptyRoom src/Dodge/Room/Room.hs 157;" f
weaponLongCorridor src/Dodge/Room/Room.hs 236;" f weaponLongCorridor src/Dodge/Room/Room.hs 237;" f
weaponRoom src/Dodge/Room/Room.hs 273;" f weaponRoom src/Dodge/Room/Room.hs 274;" f
weaponUnderCrits src/Dodge/Room/Room.hs 174;" f weaponUnderCrits src/Dodge/Room/Room.hs 175;" f
wedgeGeom src/Dodge/Base.hs 42;" f wedgeGeom src/Dodge/Base.hs 42;" f
wedgeOfThickness src/Dodge/Picture.hs 9;" f wedgeOfThickness src/Dodge/Picture.hs 9;" f
whirS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 639;" f whirS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 639;" f
@@ -5647,13 +5656,13 @@ 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 167;" f zChasm src/Dodge/Room/Tutorial.hs 168;" f
zConnect src/Dodge/Render/Connectors.hs 18;" f zConnect src/Dodge/Render/Connectors.hs 18;" f
zConnectCol src/Dodge/Render/Connectors.hs 29;" f zConnectCol src/Dodge/Render/Connectors.hs 29;" f
zConnectColMidX src/Dodge/Render/Connectors.hs 32;" f zConnectColMidX src/Dodge/Render/Connectors.hs 32;" f
zeroZ src/Geometry/Vector.hs 9;" f zeroZ src/Geometry/Vector.hs 9;" f
zipArcs src/Dodge/Tesla.hs 51;" f zipArcs src/Dodge/Tesla.hs 51;" f
zipCount src/Dodge/Tree/Shift.hs 136;" f zipCount src/Dodge/Tree/Shift.hs 140;" f
zoneCloud src/Dodge/Zoning/Cloud.hs 33;" f zoneCloud src/Dodge/Zoning/Cloud.hs 33;" f
zoneClouds src/Dodge/Update.hs 511;" f zoneClouds src/Dodge/Update.hs 511;" f
zoneCreature src/Dodge/Zoning/Creature.hs 56;" f zoneCreature src/Dodge/Zoning/Creature.hs 56;" f