Improve xIntercepts (still not perfect)

This commit is contained in:
2025-10-22 22:07:45 +01:00
parent d5f985f3ab
commit 59472b16d2
9 changed files with 316 additions and 208 deletions
+38 -2
View File
@@ -1,5 +1,9 @@
module Dodge.DrWdWd (doDrWdWd) where module Dodge.DrWdWd (doDrWdWd,doDrWdWd') where
import ListHelp
import Dodge.Zoning.Pathing
import Dodge.Zoning.Base
import Geometry.Data
import Control.Lens import Control.Lens
import Data.Maybe import Data.Maybe
import Dodge.Block.Debris import Dodge.Block.Debris
@@ -8,6 +12,7 @@ import Dodge.ShiftPoint
import Dodge.SoundLogic import Dodge.SoundLogic
import Dodge.Wall.Move import Dodge.Wall.Move
import Dodge.WorldBool import Dodge.WorldBool
import qualified Data.Set as S
doDrWdWd :: DrWdWd -> Door -> World -> World doDrWdWd :: DrWdWd -> Door -> World -> World
doDrWdWd dww = case dww of doDrWdWd dww = case dww of
@@ -15,6 +20,12 @@ doDrWdWd dww = case dww of
DrWdMakeDoorDebris -> makeDoorDebris DrWdMakeDoorDebris -> makeDoorDebris
DoorLerp -> doorLerp DoorLerp -> doorLerp
doDrWdWd' :: Door -> World -> (S.Set Int2, World)
doDrWdWd' dr w = case dr ^. drMech of
DrWdId -> (mempty,w)
DrWdMakeDoorDebris -> (mempty, makeDoorDebris dr w)
DoorLerp -> doorLerp' dr w
doorLerp :: Door -> World -> World doorLerp :: Door -> World -> World
doorLerp dr w = fromMaybe w $ do doorLerp dr w = fromMaybe w $ do
x <- newlerp x <- newlerp
@@ -38,4 +49,29 @@ doorLerp dr w = fromMaybe w $ do
| _drPushedBy dr == PushesItself = | _drPushedBy dr == PushesItself =
soundContinue (WallSound drid) (fst $ p2a x) slideDoorS (Just 1) soundContinue (WallSound drid) (fst $ p2a x) slideDoorS (Just 1)
| otherwise = id | otherwise = id
-- dpos = snd $ _drPos dr
doorLerp' :: Door -> World -> (S.Set Int2,World)
doorLerp' dr w = fromMaybe (mempty,w) $ do
x <- newlerp
let ps = (dr ^. drFootPrint) & each . each %~ shiftPointBy (p2a x)
is = foldMap (S.fromList . uncurry (zoneOfSeg peZoneSize)) ps
return $ (is,
f x
& playSound x
& cWorld . lWorld . doors . ix drid . drLerp .~ x)
where
f = ifoldl' (flip . moveWallID) w . wlposs
p2a = lerpP2A (dr ^. drZeroPos) (dr ^. drOnePos)
wlposs x = (dr ^. drFootPrint) & each . each %~ shiftPointBy (p2a x)
clerp = dr ^. drLerp
newlerp
| toOpen && clerp < 1 = Just . min 1 $ clerp + speed
| clerp > 0 && not toOpen = Just . max 0 $ clerp - speed
| otherwise = Nothing
toOpen = doWdBl (_drTrigger dr) w
speed = _drSpeed dr
drid = _drID dr
playSound x
| _drPushedBy dr == PushesItself =
soundContinue (WallSound drid) (fst $ p2a x) slideDoorS (Just 1)
| otherwise = id
+8
View File
@@ -40,6 +40,14 @@ import Linear
getNodePos :: Int -> World -> Maybe Point2 getNodePos :: Int -> World -> Maybe Point2
getNodePos i w = w ^? cWorld . incNode . ix i getNodePos i w = w ^? cWorld . incNode . ix i
getEdgesCrossingPoly :: [Point2] -> World -> [(Int,Int)]
getEdgesCrossingPoly ps w = filter tcross $ zonesExtract (w ^. incEdgeZoning)
$ Set.toList $ foldMap (uncurry $ zoneOfSegSet peZoneSize) $ pairs
where
pairs = loopPairs ps
tcross (i,j) = any (isJust . uncurry (intersectSegSeg (f i) (f j))) pairs
f i = w ^?! cWorld . incNode . ix i
getEdgesCrossing :: Point2 -> Point2 -> World -> [(Int,Int)] getEdgesCrossing :: Point2 -> Point2 -> World -> [(Int,Int)]
getEdgesCrossing s e w = filter inedgecrosses $ nearSeg peZoneSize _incEdgeZoning s e w getEdgesCrossing s e w = filter inedgecrosses $ nearSeg peZoneSize _incEdgeZoning s e w
where where
+5 -6
View File
@@ -3,6 +3,7 @@
{- Rooms that contain two doors and a switch alternating both. -} {- Rooms that contain two doors and a switch alternating both. -}
module Dodge.Room.Airlock where module Dodge.Room.Airlock where
import Dodge.Room.Path
import Control.Lens import Control.Lens
import Control.Monad import Control.Monad
import Data.Maybe import Data.Maybe
@@ -164,12 +165,9 @@ airlockZ = do
defaultRoom defaultRoom
{ _rmPolys = { _rmPolys =
[rectNSWE 120 0 0 180] [rectNSWE 120 0 0 180]
, _rmLinks = muout [(V2 0 30, pi / 2)] ++ muin [(V2 180 30, 1.5 * pi)] , _rmLinks = lnks
, _rmPath = mempty , _rmPath = linksGridToPath' lnks $ loopPairs $ rectNSWE 100 40 40 140
, -- [(V2 0 40,V2 40 0) , _rmPmnts =
-- ,(V2 40 0,V2 0 40)
-- ]
_rmPmnts =
[ pContID (PS (V2 90 115) pi) (PutButton $ makeSwitch col red NoWorldEffect NoWorldEffect) $ [ pContID (PS (V2 90 115) pi) (PutButton $ makeSwitch col red NoWorldEffect NoWorldEffect) $
\btid -> \btid ->
airlockDoubleDoor airlockDoubleDoor
@@ -191,6 +189,7 @@ airlockZ = do
[rectNSWE 120 0 0 180] [rectNSWE 120 0 0 180]
} }
where where
lnks = muout [(V2 0 30, pi / 2)] ++ muin [(V2 180 30, 1.5 * pi)]
col = dim $ dim $ bright red col = dim $ dim $ bright red
l1 = 61 l1 = 61
l2 = 61 l2 = 61
+8
View File
@@ -4,6 +4,7 @@ module Dodge.Room.Path (
makeGrid, makeGrid,
createPathGrid, createPathGrid,
gridPoints'', gridPoints'',
linksGridToPath',
) where ) where
import Control.Lens import Control.Lens
@@ -33,11 +34,18 @@ createPathGrid rm = rm & rmPath .~ linksGridToPath (_rmLinks rm) filterGrid
<*> L.premap sndV2 L.minimum <*> L.premap sndV2 L.minimum
<*> L.premap sndV2 L.maximum <*> L.premap sndV2 L.maximum
-- assumes subpth is symmetric
linksGridToPath :: [RoomLink] -> [(Point2, Point2)] -> S.Set (Point2, Point2) linksGridToPath :: [RoomLink] -> [(Point2, Point2)] -> S.Set (Point2, Point2)
linksGridToPath lnks subpth = S.fromList subpth <> foldMap (linkClosest . (^. rlPos)) lnks linksGridToPath lnks subpth = S.fromList subpth <> foldMap (linkClosest . (^. rlPos)) lnks
where where
linkClosest p = doublePairSet (p, minimumBy (compare `on` dist p) $ map fst subpth) linkClosest p = doublePairSet (p, minimumBy (compare `on` dist p) $ map fst subpth)
linksGridToPath' :: Foldable f => [RoomLink] -> f (Point2, Point2) -> S.Set (Point2, Point2)
linksGridToPath' lnks subpth' = subpth <> foldMap (linkClosest . (^. rlPos)) lnks
where
subpth = foldMap doublePairSet subpth'
linkClosest p = doublePairSet (p, minimumBy (compare `on` dist p) $ S.map fst subpth)
testCrossWalls :: [(Point2, Point2)] -> (Point2, Point2) -> Bool testCrossWalls :: [(Point2, Point2)] -> (Point2, Point2) -> Bool
testCrossWalls wls (a, b) = not $ any (isJust . uncurry (intersectSegSeg a b)) wls testCrossWalls wls (a, b) = not $ any (isJust . uncurry (intersectSegSeg a b)) wls
+5
View File
@@ -44,6 +44,11 @@ tutAnoTree = do
[ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox [ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox
, corDoor , corDoor
, return $ tToBTree "cor" $ return $ cleatOnward corridor , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , return $ tToBTree "cor" $ return $ cleatOnward (twinSlowDoorRoom 80 200 40)
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
-- , return $ tToBTree "cor" $ return $ cleatOnward corridor
, return $ tToBTree "cor" $ return $ cleatOnward corridor , return $ tToBTree "cor" $ return $ cleatOnward corridor
, tToBTree "asdf" . return . cleatOnward <$> airlockZ , tToBTree "asdf" . return . cleatOnward <$> airlockZ
--, return . tToBTree "asdf" . return . cleatOnward $ airlockCrystal --, return . tToBTree "asdf" . return . cleatOnward $ airlockCrystal
+36 -1
View File
@@ -3,6 +3,11 @@
module Dodge.Update (updateUniverse) where module Dodge.Update (updateUniverse) where
import Dodge.Zoning.Pathing
import Dodge.Debug.Picture
import Dodge.Zoning.Base
import Dodge.Path
import Data.Foldable
import qualified Data.Set as S import qualified Data.Set as S
import Color import Color
import Control.Applicative import Control.Applicative
@@ -247,7 +252,8 @@ functionalUpdate =
. over uvWorld updateCreatureSoundPositions . over uvWorld updateCreatureSoundPositions
. colCrsWalls . colCrsWalls
. over uvWorld simpleCrSprings . over uvWorld simpleCrSprings
. over uvWorld (updateIMl' (_doors . _lWorld . _cWorld) updateDoor) -- . over uvWorld (updateIMl' (_doors . _lWorld . _cWorld) updateDoor)
. over uvWorld updateDoors
. over uvWorld doWorldEvents . over uvWorld doWorldEvents
. over uvWorld updateDelayedEvents . over uvWorld updateDelayedEvents
. over . over
@@ -307,6 +313,27 @@ updateAimPos u =
u & uvWorld . cWorld . lWorld . lAimPos u & uvWorld . cWorld . lWorld . lAimPos
.~ mouseWorldPos (u ^. uvWorld . input) (u ^. uvWorld . wCam) .~ mouseWorldPos (u ^. uvWorld . input) (u ^. uvWorld . wCam)
updateEdgesWall :: S.Set (Int,Int) -> World -> World
updateEdgesWall = flip $ foldl' updateEdgeWallObs
updateEdgeWallObs :: World -> (Int,Int) -> World
updateEdgeWallObs w (i,j) = fromMaybe w $ do
s <- getNodePos i w
e <- getNodePos i w
let wls = snd <$> wlsHitUnsorted s e w
return $ w & cWorld . incGraph %~ updateEdge (f wls) (i,j)
where
f wls = at DoorObstacle ?~ ()
-- | all _wlWalkable wls = (at BlockObstacle .~ Nothing) . (at DoorObstacle .~ Nothing)
-- | otherwise = at DoorObstacle ?~ ()
updateDoors :: World -> World
updateDoors w = let (is,w') = foldrM doDrWdWd' w (w ^. cWorld . lWorld . doors)
in updateEdgesWall (zonesExtract (w ^. incEdgeZoning & each . each %~ S.fromList) is) w'
& cWorld . lWorld . flares <>~ foldMap (drawZoneCol green peZoneSize) is
--updateDoors w = uncurry updateEdgesWall .
-- over _1 (zonesExtract (w ^. incEdgeZoning & each . each %~ S.fromList)) $ foldrM doDrWdWd' w (w ^. cWorld . lWorld . doors)
updateDoor :: Door -> World -> World updateDoor :: Door -> World -> World
updateDoor dr = doDrWdWd (_drMech dr) dr updateDoor dr = doDrWdWd (_drMech dr) dr
@@ -534,6 +561,14 @@ updateIMl fim fup w = alaf Endo foldMap (dbArg fup) (fim w) w
updateIMl' :: (World -> IM.IntMap a) -> (a -> World -> World) -> World -> World updateIMl' :: (World -> IM.IntMap a) -> (a -> World -> World) -> World -> World
updateIMl' fim fup w = alaf Endo foldMap fup (fim w) w updateIMl' fim fup w = alaf Endo foldMap fup (fim w) w
updateAccum :: (Foldable f, Monoid m)
=> (World -> f a)
-> (a -> World -> (m, World))
-> World
-> (m, World)
updateAccum fim fup w = foldrM fup w (fim w)
--alaf Endo foldMap fup (fim w) w
updateCreatureGroups :: World -> World updateCreatureGroups :: World -> World
updateCreatureGroups w = updateCreatureGroups w =
w & cWorld . lWorld . creatureGroups w & cWorld . lWorld . creatureGroups
+6 -3
View File
@@ -13,6 +13,7 @@ module Dodge.WorldEvent.ThingsHit (
wlsHitRadial, wlsHitRadial,
crHit, crHit,
crWlPbHit, crWlPbHit,
wlsHitUnsorted,
) where ) where
import Linear import Linear
@@ -131,11 +132,13 @@ thingsHitExceptCr (Just cid) sp ep = filter t . thingsHit sp ep
t = (Just cid /=) . (^? _2 . _Left . crID) t = (Just cid /=) . (^? _2 . _Left . crID)
wlsHit :: Point2 -> Point2 -> World -> [(Point2, Wall)] wlsHit :: Point2 -> Point2 -> World -> [(Point2, Wall)]
wlsHit sp ep wlsHit sp ep = sortOn (dist sp . fst) . wlsHitUnsorted sp ep
wlsHitUnsorted :: Point2 -> Point2 -> World -> [(Point2, Wall)]
wlsHitUnsorted sp ep
| sp == ep = const mempty | sp == ep = const mempty
| otherwise = | otherwise =
sortOn (dist sp . fst) overlapSegWalls sp ep
. overlapSegWalls sp ep
. wlsNearSeg sp ep . wlsNearSeg sp ep
wlsHitRadial :: Point2 -> Float -> World -> [(Point2, Wall)] wlsHitRadial :: Point2 -> Float -> World -> [(Point2, Wall)]
+14 -7
View File
@@ -4,18 +4,20 @@ module Dodge.Zoning.Base
, zoneOfPoint , zoneOfPoint
, zonesExtract , zonesExtract
, zoneOfSeg , zoneOfSeg
, zoneOfSegSet
, zoneOfRect , zoneOfRect
, zoneMonoid , zoneMonoid
, deZoneIX , deZoneIX
, zoneOfCirc , zoneOfCirc
, zonesAroundPoint , zonesAroundPoint
, xIntercepts , xIntercepts
, yIntercepts' , yIntercepts
, updateInt2Map , updateInt2Map
) where ) where
import Control.Lens import Control.Lens
import qualified Data.IntSet as IS import qualified Data.IntSet as IS
import qualified Data.Set as S
--import Data.Maybe --import Data.Maybe
import Geometry import Geometry
import Geometry.Zone import Geometry.Zone
@@ -46,21 +48,26 @@ zoneOfPoint = fmap . divTo
zoneOfSeg :: Float -> Point2 -> Point2 -> [Int2] zoneOfSeg :: Float -> Point2 -> Point2 -> [Int2]
{-# INLINE zoneOfSeg #-} {-# INLINE zoneOfSeg #-}
zoneOfSeg s sp ep = map (zoneOfPoint s) (sp : xIntercepts s sp ep ++ yIntercepts' s sp ep) zoneOfSeg s sp ep = map (zoneOfPoint s) (sp : xIntercepts s sp ep ++ yIntercepts s sp ep)
--zoneOfSeg s sp ep = map (zoneOfPoint s) (sp : xIntercepts s sp ep )
zoneOfSegSet :: Float -> Point2 -> Point2 -> S.Set Int2
{-# INLINE zoneOfSegSet #-}
zoneOfSegSet s sp = S.fromList . zoneOfSeg s sp
-- | zoneExtract (V2 x y) == fromMaybe mempty . (^? ix x . ix y) -- | zoneExtract (V2 x y) == fromMaybe mempty . (^? ix x . ix y)
zoneExtract :: Monoid m => Int2 -> IM.IntMap (IM.IntMap m) -> m zoneExtract :: Monoid m => Int2 -> IM.IntMap (IM.IntMap m) -> m
{-# INLINE zoneExtract #-} {-# INLINE zoneExtract #-}
zoneExtract (V2 x y) = foldOf (ix x . ix y) zoneExtract (V2 x y) = foldOf (ix x . ix y)
zonesExtract :: Monoid m => IM.IntMap (IM.IntMap m) -> [Int2] -> m zonesExtract :: (Foldable f,Monoid m) => IM.IntMap (IM.IntMap m) -> f Int2 -> m
{-# INLINE zonesExtract #-} {-# INLINE zonesExtract #-}
zonesExtract = foldMap . flip zoneExtract zonesExtract = foldMap . flip zoneExtract
xIntercepts :: Float -> Point2 -> Point2 -> [Point2] xIntercepts :: Float -> Point2 -> Point2 -> [Point2]
{-# INLINE xIntercepts #-} {-# INLINE xIntercepts #-}
xIntercepts s (V2 sx sy) (V2 ex ey) xIntercepts s (V2 sx sy) (V2 ex ey)
| xdx == 0 = [] | divTo s sx == divTo s ex = []
| otherwise = zipWith V2 [halfstep + sx', halfstep + sx' + xdx * s .. ex] ([sy', sy' + ydx * s .. ey] ++ repeat ey) | otherwise = zipWith V2 [halfstep + sx', halfstep + sx' + xdx * s .. ex] ([sy', sy' + ydx * s .. ey] ++ repeat ey)
where where
halfstep halfstep
@@ -73,9 +80,9 @@ xIntercepts s (V2 sx sy) (V2 ex ey)
| xdx < 0 = sx - modTo s sx | xdx < 0 = sx - modTo s sx
| otherwise = s + sx - modTo s sx | otherwise = s + sx - modTo s sx
yIntercepts' :: Float -> Point2 -> Point2 -> [Point2] yIntercepts :: Float -> Point2 -> Point2 -> [Point2]
{-# INLINE yIntercepts' #-} {-# INLINE yIntercepts #-}
yIntercepts' s sp ep = map f $ xIntercepts s (f sp) (f ep) yIntercepts s sp ep = map f $ xIntercepts s (f sp) (f ep)
where where
f (V2 x y) = V2 y x f (V2 x y) = V2 y x
+196 -189
View File
@@ -131,7 +131,7 @@ BlSh src/Dodge/Data/Block.hs 42;" t
BlShConst src/Dodge/Data/Block.hs 44;" C BlShConst src/Dodge/Data/Block.hs 44;" C
BlShMempty src/Dodge/Data/Block.hs 43;" C BlShMempty src/Dodge/Data/Block.hs 43;" C
Block src/Dodge/Data/Block.hs 20;" t Block src/Dodge/Data/Block.hs 20;" t
BlockDebris src/Dodge/Data/Prop.hs 31;" C BlockDebris src/Dodge/Data/Prop.hs 29;" C
BlockDegradeSound src/Dodge/Data/SoundOrigin.hs 30;" C BlockDegradeSound src/Dodge/Data/SoundOrigin.hs 30;" C
BlockDraw src/Dodge/Data/Block.hs 35;" t BlockDraw src/Dodge/Data/Block.hs 35;" t
BlockDrawBlSh src/Dodge/Data/Block.hs 37;" C BlockDrawBlSh src/Dodge/Data/Block.hs 37;" C
@@ -315,9 +315,9 @@ DamageHitSound src/Dodge/Data/SoundOrigin.hs 40;" C
DamageLaser src/Dodge/Data/Laser.hs 15;" C DamageLaser src/Dodge/Data/Laser.hs 15;" C
DamageSensor src/Dodge/Data/Machine/Sensor.hs 19;" t DamageSensor src/Dodge/Data/Machine/Sensor.hs 19;" t
DamageType src/Dodge/Data/Damage/Type.hs 3;" t DamageType src/Dodge/Data/Damage/Type.hs 3;" t
Debris src/Dodge/Data/Prop.hs 33;" t Debris src/Dodge/Data/Prop.hs 31;" t
DebrisChunk src/Dodge/Data/Prop.hs 33;" C DebrisChunk src/Dodge/Data/Prop.hs 31;" C
DebrisType src/Dodge/Data/Prop.hs 27;" t DebrisType src/Dodge/Data/Prop.hs 24;" t
DebugBool src/Dodge/Data/Config.hs 66;" t DebugBool src/Dodge/Data/Config.hs 66;" t
DebugItem src/Dodge/Data/Universe.hs 57;" t DebugItem src/Dodge/Data/Universe.hs 57;" t
DebugLayer src/Picture/Data.hs 25;" C DebugLayer src/Picture/Data.hs 25;" C
@@ -493,7 +493,7 @@ GenericFaction src/Dodge/Data/Creature/State.hs 13;" C
GeoObjShads src/Dodge/Data/Config.hs 102;" C GeoObjShads src/Dodge/Data/Config.hs 102;" 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 28;" C Gib src/Dodge/Data/Prop.hs 25;" C
Glass src/Dodge/Data/Material.hs 9;" C Glass src/Dodge/Data/Material.hs 9;" C
GlassBreakSound src/Dodge/Data/SoundOrigin.hs 33;" C GlassBreakSound src/Dodge/Data/SoundOrigin.hs 33;" C
Goal src/Dodge/Data/ActionPlan.hs 149;" t Goal src/Dodge/Data/ActionPlan.hs 149;" t
@@ -1007,26 +1007,24 @@ Projectile src/Dodge/Data/Projectile.hs 15;" t
ProjectileParams src/Dodge/Data/Item/Use.hs 51;" C ProjectileParams src/Dodge/Data/Item/Use.hs 51;" C
ProjectileStabiliserSF src/Dodge/Data/ComposedItem.hs 36;" C ProjectileStabiliserSF src/Dodge/Data/ComposedItem.hs 36;" C
ProjectileType src/Dodge/Data/Projectile.hs 30;" t ProjectileType src/Dodge/Data/Projectile.hs 30;" t
Prop src/Dodge/Data/Prop.hs 16;" t Prop src/Dodge/Data/Prop.hs 15;" t
PropDoubleLampCover src/Dodge/Data/Prop.hs 48;" C PropDoubleLampCover src/Dodge/Data/Prop.hs 46;" C
PropDraw src/Dodge/Data/Prop.hs 43;" t PropDraw src/Dodge/Data/Prop.hs 41;" t
PropDrawFlatTranslate src/Dodge/Data/Prop.hs 47;" C PropDrawFlatTranslate src/Dodge/Data/Prop.hs 45;" C
PropDrawMovingShape src/Dodge/Data/Prop.hs 46;" C PropDrawSPic src/Dodge/Data/Prop.hs 42;" C
PropDrawMovingShapeCol src/Dodge/Data/Prop.hs 45;" C PropDrawToggle src/Dodge/Data/Prop.hs 49;" C
PropDrawSPic src/Dodge/Data/Prop.hs 44;" C PropLampCover src/Dodge/Data/Prop.hs 48;" C
PropDrawToggle src/Dodge/Data/Prop.hs 51;" C PropRotate src/Dodge/Data/Prop.hs 57;" C
PropLampCover src/Dodge/Data/Prop.hs 50;" C PropSetToggleAnd src/Dodge/Data/Prop.hs 58;" C
PropRotate src/Dodge/Data/Prop.hs 58;" C PropUpdate src/Dodge/Data/Prop.hs 54;" t
PropSetToggleAnd src/Dodge/Data/Prop.hs 59;" C PropUpdateAnd src/Dodge/Data/Prop.hs 56;" C
PropUpdate src/Dodge/Data/Prop.hs 55;" t PropUpdateId src/Dodge/Data/Prop.hs 55;" C
PropUpdateAnd src/Dodge/Data/Prop.hs 57;" C PropUpdateIf src/Dodge/Data/Prop.hs 63;" C
PropUpdateId src/Dodge/Data/Prop.hs 56;" C PropUpdateLS src/Dodge/Data/Prop.hs 60;" C
PropUpdateIf src/Dodge/Data/Prop.hs 64;" C PropUpdatePosition src/Dodge/Data/Prop.hs 61;" C
PropUpdateLS src/Dodge/Data/Prop.hs 61;" C PropUpdateWhen src/Dodge/Data/Prop.hs 62;" C
PropUpdatePosition src/Dodge/Data/Prop.hs 62;" C PropUpdates src/Dodge/Data/Prop.hs 59;" C
PropUpdateWhen src/Dodge/Data/Prop.hs 63;" C PropVerticalLampCover src/Dodge/Data/Prop.hs 47;" C
PropUpdates src/Dodge/Data/Prop.hs 60;" C
PropVerticalLampCover src/Dodge/Data/Prop.hs 49;" C
ProxSensor src/Dodge/Data/Machine/Sensor.hs 25;" C ProxSensor src/Dodge/Data/Machine/Sensor.hs 25;" C
ProximityRequirement src/Dodge/Data/Machine/Sensor.hs 34;" t ProximityRequirement src/Dodge/Data/Machine/Sensor.hs 34;" t
ProximitySensor src/Dodge/Data/Machine/Sensor.hs 25;" t ProximitySensor src/Dodge/Data/Machine/Sensor.hs 25;" t
@@ -1185,7 +1183,7 @@ ShaderTexture src/Shader/Data.hs 94;" t
ShadowFidelity src/Shape/Data.hs 19;" t ShadowFidelity src/Shape/Data.hs 19;" t
ShadowRendering src/Dodge/Data/Config.hs 101;" t ShadowRendering src/Dodge/Data/Config.hs 101;" t
Shape src/Shape/Data.hs 48;" t Shape src/Shape/Data.hs 48;" t
ShapeProp src/Dodge/Data/Prop.hs 17;" C ShapeProp src/Dodge/Data/Prop.hs 15;" C
ShapeType src/Shape/Data.hs 11;" t ShapeType src/Shape/Data.hs 11;" t
Shattering src/Dodge/Data/Damage.hs 20;" C Shattering src/Dodge/Data/Damage.hs 20;" C
Shell src/Dodge/Data/Projectile.hs 15;" C Shell src/Dodge/Data/Projectile.hs 15;" C
@@ -1532,7 +1530,7 @@ _avatarMaterial src/Dodge/Data/Creature/Misc.hs 61;" f
_avatarPulse src/Dodge/Data/Creature/Misc.hs 60;" f _avatarPulse src/Dodge/Data/Creature/Misc.hs 60;" f
_barrelShader src/Data/Preload/Render.hs 23;" f _barrelShader src/Data/Preload/Render.hs 23;" f
_barrelType src/Dodge/Data/Creature/Misc.hs 71;" f _barrelType src/Dodge/Data/Creature/Misc.hs 71;" f
_bdColor src/Dodge/Data/Prop.hs 31;" f _bdColor src/Dodge/Data/Prop.hs 29;" f
_bdMaxX src/Dodge/Data/Bounds.hs 12;" f _bdMaxX src/Dodge/Data/Bounds.hs 12;" f
_bdMaxY src/Dodge/Data/Bounds.hs 14;" f _bdMaxY src/Dodge/Data/Bounds.hs 14;" f
_bdMinX src/Dodge/Data/Bounds.hs 11;" f _bdMinX src/Dodge/Data/Bounds.hs 11;" f
@@ -1705,11 +1703,11 @@ _cwgRoomClipping src/Dodge/Data/CWorld.hs 40;" f
_cwgSeed src/Dodge/Data/CWorld.hs 41;" f _cwgSeed src/Dodge/Data/CWorld.hs 41;" f
_cwgWorldBounds src/Dodge/Data/CWorld.hs 38;" f _cwgWorldBounds src/Dodge/Data/CWorld.hs 38;" f
_cylinderSize src/Shape/Data.hs 14;" f _cylinderSize src/Shape/Data.hs 14;" f
_dbPos src/Dodge/Data/Prop.hs 34;" f _dbPos src/Dodge/Data/Prop.hs 32;" f
_dbRot src/Dodge/Data/Prop.hs 37;" f _dbRot src/Dodge/Data/Prop.hs 35;" f
_dbSpin src/Dodge/Data/Prop.hs 38;" f _dbSpin src/Dodge/Data/Prop.hs 36;" f
_dbType src/Dodge/Data/Prop.hs 35;" f _dbType src/Dodge/Data/Prop.hs 33;" f
_dbVel src/Dodge/Data/Prop.hs 36;" f _dbVel src/Dodge/Data/Prop.hs 34;" f
_debris src/Dodge/Data/LWorld.hs 99;" f _debris src/Dodge/Data/LWorld.hs 99;" f
_debugFunction src/Dodge/Data/Universe.hs 59;" f _debugFunction src/Dodge/Data/Universe.hs 59;" f
_debugMessage src/Dodge/Data/Universe.hs 58;" f _debugMessage src/Dodge/Data/Universe.hs 58;" f
@@ -1832,8 +1830,8 @@ _getSoundID src/Sound/Data.hs 30;" f
_gfConstant src/Dodge/Data/GenFloat.hs 9;" f _gfConstant src/Dodge/Data/GenFloat.hs 9;" f
_gfMax src/Dodge/Data/GenFloat.hs 10;" f _gfMax src/Dodge/Data/GenFloat.hs 10;" f
_gfMin src/Dodge/Data/GenFloat.hs 10;" f _gfMin src/Dodge/Data/GenFloat.hs 10;" f
_gibColor src/Dodge/Data/Prop.hs 29;" f _gibColor src/Dodge/Data/Prop.hs 27;" f
_gibSize src/Dodge/Data/Prop.hs 28;" f _gibSize src/Dodge/Data/Prop.hs 26;" 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 17;" f
@@ -2097,13 +2095,13 @@ _playStatus src/Sound/Data.hs 15;" f
_playingSounds src/Dodge/Data/World.hs 40;" f _playingSounds src/Dodge/Data/World.hs 40;" 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 29;" f
_prDraw src/Dodge/Data/Prop.hs 19;" f _prDraw src/Dodge/Data/Prop.hs 17;" f
_prID src/Dodge/Data/Prop.hs 21;" f _prID src/Dodge/Data/Prop.hs 19;" f
_prPos src/Dodge/Data/Prop.hs 18;" f _prPos src/Dodge/Data/Prop.hs 16;" f
_prRooms src/Dodge/Tree/Shift.hs 30;" f _prRooms src/Dodge/Tree/Shift.hs 30;" f
_prRot src/Dodge/Data/Prop.hs 22;" f _prRot src/Dodge/Data/Prop.hs 20;" f
_prToggle src/Dodge/Data/Prop.hs 23;" f _prToggle src/Dodge/Data/Prop.hs 21;" f
_prUpdate src/Dodge/Data/Prop.hs 20;" f _prUpdate src/Dodge/Data/Prop.hs 18;" f
_preloadData src/Dodge/Data/Universe.hs 31;" f _preloadData src/Dodge/Data/Universe.hs 31;" f
_pressedKeys src/Dodge/Data/Input.hs 37;" f _pressedKeys src/Dodge/Data/Input.hs 37;" f
_projectiles src/Dodge/Data/LWorld.hs 100;" f _projectiles src/Dodge/Data/LWorld.hs 100;" f
@@ -2529,20 +2527,20 @@ addToTrunk src/TreeHelp.hs 157;" f
addWarningTerminal src/Dodge/Room/Warning.hs 61;" f addWarningTerminal src/Dodge/Room/Warning.hs 61;" f
addZ src/Geometry/Vector3D.hs 89;" f addZ src/Geometry/Vector3D.hs 89;" f
adjustIMZone src/Dodge/Base.hs 81;" f adjustIMZone src/Dodge/Base.hs 81;" f
advanceScrollAmount src/Dodge/Update.hs 419;" f advanceScrollAmount src/Dodge/Update.hs 441;" f
advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f
advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 60;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 60;" f
aimDelaySweep src/Dodge/Render/Picture.hs 287;" f aimDelaySweep src/Dodge/Render/Picture.hs 287;" f
aimStanceInfo src/Dodge/Item/Info.hs 243;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f
aimTurn src/Dodge/Creature/YourControl.hs 181;" f aimTurn src/Dodge/Creature/YourControl.hs 181;" f
airlock src/Dodge/Room/Airlock.hs 23;" f airlock src/Dodge/Room/Airlock.hs 24;" f
airlock0 src/Dodge/Room/Airlock.hs 71;" f airlock0 src/Dodge/Room/Airlock.hs 72;" f
airlock90 src/Dodge/Room/Airlock.hs 205;" f airlock90 src/Dodge/Room/Airlock.hs 204;" f
airlockCrystal src/Dodge/Room/Airlock.hs 250;" f airlockCrystal src/Dodge/Room/Airlock.hs 249;" f
airlockDoor src/Dodge/Room/Airlock.hs 98;" f airlockDoor src/Dodge/Room/Airlock.hs 99;" f
airlockDoubleDoor src/Dodge/Room/Airlock.hs 101;" f airlockDoubleDoor src/Dodge/Room/Airlock.hs 102;" f
airlockSimple src/Dodge/Room/Airlock.hs 117;" f airlockSimple src/Dodge/Room/Airlock.hs 118;" f
airlockZ src/Dodge/Room/Airlock.hs 156;" f airlockZ src/Dodge/Room/Airlock.hs 157;" f
allVisibleWalls src/Dodge/Base/Collide.hs 225;" f allVisibleWalls src/Dodge/Base/Collide.hs 225;" f
alongSegBy src/Geometry.hs 40;" f alongSegBy src/Geometry.hs 40;" f
alteRifle src/Dodge/Item/Held/Cane.hs 22;" f alteRifle src/Dodge/Item/Held/Cane.hs 22;" f
@@ -2740,7 +2738,7 @@ bulletWeapons src/Dodge/Combine/Combinations.hs 248;" f
burstRifle src/Dodge/Item/Held/Cane.hs 30;" f burstRifle src/Dodge/Item/Held/Cane.hs 30;" f
buttonFlip src/Dodge/Button/Event.hs 17;" f buttonFlip src/Dodge/Button/Event.hs 17;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f
cChasm src/Dodge/Room/Tutorial.hs 121;" f cChasm src/Dodge/Room/Tutorial.hs 126;" 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
@@ -2775,20 +2773,20 @@ chaseCritInternal src/Dodge/Humanoid.hs 7;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 120;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 120;" 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
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 188;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 193;" f
chasmTest src/Dodge/Creature/Update.hs 132;" f chasmTest src/Dodge/Creature/Update.hs 132;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 120;" f chasmWallToSurface src/Dodge/Base/Collide.hs 120;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
checkConnection src/Dodge/Inventory/Swap.hs 66;" f checkConnection src/Dodge/Inventory/Swap.hs 66;" f
checkDeath src/Dodge/Creature/Update.hs 70;" f checkDeath src/Dodge/Creature/Update.hs 70;" f
checkDeath' src/Dodge/Creature/Update.hs 73;" f checkDeath' src/Dodge/Creature/Update.hs 73;" f
checkEndGame src/Dodge/Update.hs 768;" f checkEndGame src/Dodge/Update.hs 798;" f
checkErrorGL src/Shader/Compile.hs 255;" f checkErrorGL src/Shader/Compile.hs 255;" f
checkFBO src/Framebuffer/Check.hs 6;" f checkFBO src/Framebuffer/Check.hs 6;" f
checkGLError src/GLHelp.hs 17;" f checkGLError src/GLHelp.hs 17;" f
checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 18;" f checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 18;" f
checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f
checkTermDist src/Dodge/Update.hs 318;" f checkTermDist src/Dodge/Update.hs 340;" f
checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f
checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f
checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f
@@ -2811,7 +2809,7 @@ circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f
circleSolid src/Picture/Base.hs 164;" f circleSolid src/Picture/Base.hs 164;" f
circleSolidCol src/Picture/Base.hs 168;" f circleSolidCol src/Picture/Base.hs 168;" f
clAlt src/Dodge/Cloud.hs 5;" f clAlt src/Dodge/Cloud.hs 5;" f
clClSpringVel src/Dodge/Update.hs 841;" f clClSpringVel src/Dodge/Update.hs 871;" f
clColor src/Shader/Poke/Cloud.hs 35;" f clColor src/Shader/Poke/Cloud.hs 35;" f
clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f
clampPath src/Dodge/Room/Procedural.hs 168;" f clampPath src/Dodge/Room/Procedural.hs 168;" f
@@ -2838,7 +2836,7 @@ closeObjectInfo src/Dodge/Render/HUD.hs 226;" f
closestPointOnLine src/Geometry/Intersect.hs 272;" f closestPointOnLine src/Geometry/Intersect.hs 272;" f
closestPointOnLineParam src/Geometry/Intersect.hs 288;" f closestPointOnLineParam src/Geometry/Intersect.hs 288;" f
closestPointOnSeg src/Geometry/Intersect.hs 303;" f closestPointOnSeg src/Geometry/Intersect.hs 303;" f
cloudEffect src/Dodge/Update.hs 793;" f cloudEffect src/Dodge/Update.hs 823;" f
cloudPoisonDamage src/Dodge/Update/Cloud.hs 11;" f cloudPoisonDamage src/Dodge/Update/Cloud.hs 11;" f
clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f
clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f
@@ -2917,7 +2915,7 @@ crAwayFromPost src/Dodge/Creature/Test.hs 85;" f
crBlips src/Dodge/RadarSweep.hs 88;" f crBlips src/Dodge/RadarSweep.hs 88;" f
crCamouflage src/Dodge/Creature/Picture.hs 33;" f crCamouflage src/Dodge/Creature/Picture.hs 33;" f
crCanSeeCr src/Dodge/Creature/Test.hs 52;" f crCanSeeCr src/Dodge/Creature/Test.hs 52;" f
crCrSpring src/Dodge/Update.hs 870;" f crCrSpring src/Dodge/Update.hs 900;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 62;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 62;" f
crDexterity src/Dodge/Creature/Statistics.hs 19;" f crDexterity src/Dodge/Creature/Statistics.hs 19;" f
crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 39;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 39;" f
@@ -2925,7 +2923,7 @@ crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 53;" f
crHasTarget src/Dodge/Creature/Test.hs 65;" f crHasTarget src/Dodge/Creature/Test.hs 65;" f
crHasTargetLOS src/Dodge/Creature/Test.hs 68;" f crHasTargetLOS src/Dodge/Creature/Test.hs 68;" f
crHeight src/Dodge/Base/Collide.hs 175;" f crHeight src/Dodge/Base/Collide.hs 175;" f
crHit src/Dodge/WorldEvent/ThingsHit.hs 113;" f crHit src/Dodge/WorldEvent/ThingsHit.hs 114;" f
crIXsNearCirc src/Dodge/Zoning/Creature.hs 33;" f crIXsNearCirc src/Dodge/Zoning/Creature.hs 33;" f
crIXsNearPoint src/Dodge/Zoning/Creature.hs 15;" f crIXsNearPoint src/Dodge/Zoning/Creature.hs 15;" f
crInAimStance src/Dodge/Creature/Test.hs 93;" f crInAimStance src/Dodge/Creature/Test.hs 93;" f
@@ -2948,7 +2946,7 @@ crRad src/Dodge/Creature/Radius.hs 7;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 74;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 74;" f
crSetRoots src/Dodge/Inventory/Location.hs 55;" f crSetRoots src/Dodge/Inventory/Location.hs 55;" f
crShape src/Dodge/Creature/Shape.hs 8;" f crShape src/Dodge/Creature/Shape.hs 8;" f
crSpring src/Dodge/Update.hs 867;" f crSpring src/Dodge/Update.hs 897;" f
crStratConMatches src/Dodge/Creature/Test.hs 80;" f crStratConMatches src/Dodge/Creature/Test.hs 80;" f
crStrength src/Dodge/Creature/Statistics.hs 29;" f crStrength src/Dodge/Creature/Statistics.hs 29;" f
crUpdate src/Dodge/Creature/Update.hs 63;" f crUpdate src/Dodge/Creature/Update.hs 63;" f
@@ -2956,7 +2954,7 @@ crUpdateInvidLocations src/Dodge/Inventory/Location.hs 66;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 48;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 48;" f
crVocalizationSound src/Dodge/Creature/Vocalization.hs 13;" f crVocalizationSound src/Dodge/Creature/Vocalization.hs 13;" f
crWarningSounds src/Dodge/Creature/Vocalization.hs 23;" f crWarningSounds src/Dodge/Creature/Vocalization.hs 23;" f
crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 51;" f crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 52;" f
crZoneSize src/Dodge/Zoning/Creature.hs 42;" f crZoneSize src/Dodge/Zoning/Creature.hs 42;" f
craftInfo src/Dodge/Item/Info.hs 169;" f craftInfo src/Dodge/Item/Info.hs 169;" f
craftItemSPic src/Dodge/Item/Draw/SPic.hs 40;" f craftItemSPic src/Dodge/Item/Draw/SPic.hs 40;" f
@@ -2966,7 +2964,7 @@ createGas src/Dodge/Gas.hs 10;" f
createHeadLamp src/Dodge/Euse.hs 58;" f createHeadLamp src/Dodge/Euse.hs 58;" f
createItemYou src/Dodge/Inventory/Add.hs 61;" f createItemYou src/Dodge/Inventory/Add.hs 61;" f
createLightMap src/Render.hs 26;" f createLightMap src/Render.hs 26;" f
createPathGrid src/Dodge/Room/Path.hs 20;" f createPathGrid src/Dodge/Room/Path.hs 21;" f
createProjectile src/Dodge/HeldUse.hs 1276;" f createProjectile src/Dodge/HeldUse.hs 1276;" f
createProjectileR src/Dodge/HeldUse.hs 1225;" f createProjectileR src/Dodge/HeldUse.hs 1225;" f
createShell src/Dodge/Projectile/Create.hs 21;" f createShell src/Dodge/Projectile/Create.hs 21;" f
@@ -2985,9 +2983,9 @@ critsRoom src/Dodge/Room/Room.hs 398;" f
crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f
crossPic src/Dodge/Render/Label.hs 27;" f crossPic src/Dodge/Render/Label.hs 27;" f
crossProd src/Geometry/Vector3D.hs 41;" f crossProd src/Geometry/Vector3D.hs 41;" f
crsHit src/Dodge/WorldEvent/ThingsHit.hs 61;" f crsHit src/Dodge/WorldEvent/ThingsHit.hs 62;" f
crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 148;" f crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 151;" f
crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 72;" f crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 73;" f
crsItmsUnused src/Dodge/Room/Containing.hs 45;" f crsItmsUnused src/Dodge/Room/Containing.hs 45;" f
crsNearCirc src/Dodge/Zoning/Creature.hs 36;" f crsNearCirc src/Dodge/Zoning/Creature.hs 36;" f
crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f
@@ -3040,7 +3038,7 @@ darkenBackground src/Dodge/Render/MenuScreen.hs 32;" f
dbArg src/Dodge/Base.hs 165;" f dbArg src/Dodge/Base.hs 165;" f
dbArgChain src/Dodge/Base.hs 170;" f dbArgChain src/Dodge/Base.hs 170;" f
dbwMuzzles src/Dodge/HeldUse.hs 322;" f dbwMuzzles src/Dodge/HeldUse.hs 322;" f
deZoneIX src/Dodge/Zoning/Base.hs 89;" f deZoneIX src/Dodge/Zoning/Base.hs 95;" f
deZoneWall src/Dodge/Zoning/Wall.hs 70;" f deZoneWall src/Dodge/Zoning/Wall.hs 70;" f
deadEndRoom src/Dodge/Room/Room.hs 246;" f deadEndRoom src/Dodge/Room/Room.hs 246;" f
deadFeet src/Dodge/Creature/Picture.hs 68;" f deadFeet src/Dodge/Creature/Picture.hs 68;" f
@@ -3062,7 +3060,7 @@ debugWritableValues src/Dodge/Debug.hs 84;" f
decodeSensorType src/Dodge/Terminal.hs 72;" f decodeSensorType src/Dodge/Terminal.hs 72;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 61;" f decomposeSelfTree src/Dodge/Tree/Compose.hs 61;" f
decomposeTree src/Dodge/Tree/Compose.hs 58;" f decomposeTree src/Dodge/Tree/Compose.hs 58;" f
decontamRoom src/Dodge/Room/Airlock.hs 28;" f decontamRoom src/Dodge/Room/Airlock.hs 29;" f
decoratedBlock src/Dodge/Placement/Instance/Block.hs 10;" f decoratedBlock src/Dodge/Placement/Instance/Block.hs 10;" f
decorationToShape src/Dodge/Placement/TopDecoration.hs 9;" f decorationToShape src/Dodge/Placement/TopDecoration.hs 9;" f
decreaseAwareness src/Dodge/Creature/Perception.hs 118;" f decreaseAwareness src/Dodge/Creature/Perception.hs 118;" f
@@ -3162,7 +3160,7 @@ displayFrameTicks src/Dodge/Render/Picture.hs 51;" f
displayFreeSlots src/Dodge/DisplayInventory.hs 192;" f displayFreeSlots src/Dodge/DisplayInventory.hs 192;" f
displayIndents src/Dodge/DisplayInventory.hs 110;" f displayIndents src/Dodge/DisplayInventory.hs 110;" f
displayPulse src/Dodge/Inventory/SelectionList.hs 179;" f displayPulse src/Dodge/Inventory/SelectionList.hs 179;" f
displayTerminalLineString src/Dodge/Update.hs 483;" f displayTerminalLineString src/Dodge/Update.hs 505;" f
dist src/Geometry/Vector.hs 185;" f dist src/Geometry/Vector.hs 185;" f
dist3 src/Geometry/Vector3D.hs 101;" f dist3 src/Geometry/Vector3D.hs 101;" f
divTo src/Geometry/Zone.hs 6;" f divTo src/Geometry/Zone.hs 6;" f
@@ -3198,7 +3196,8 @@ doDebugTestF12 src/Dodge/Update/Input/DebugTest.hs 84;" f
doDebugTestF6 src/Dodge/Update/Input/DebugTest.hs 41;" f doDebugTestF6 src/Dodge/Update/Input/DebugTest.hs 41;" f
doDebugTestF7 src/Dodge/Update/Input/DebugTest.hs 51;" f doDebugTestF7 src/Dodge/Update/Input/DebugTest.hs 51;" f
doDebugTestF8 src/Dodge/Update/Input/DebugTest.hs 59;" f doDebugTestF8 src/Dodge/Update/Input/DebugTest.hs 59;" f
doDrWdWd src/Dodge/DrWdWd.hs 12;" f doDrWdWd src/Dodge/DrWdWd.hs 17;" f
doDrWdWd' src/Dodge/DrWdWd.hs 23;" f
doDrag src/Dodge/Update/Input/InGame.hs 127;" f doDrag src/Dodge/Update/Input/InGame.hs 127;" f
doDrawing src/Dodge/Render.hs 34;" f doDrawing src/Dodge/Render.hs 34;" f
doDrawing' src/Dodge/Render.hs 45;" f doDrawing' src/Dodge/Render.hs 45;" f
@@ -3209,7 +3208,7 @@ doHeldUseEffect src/Dodge/HeldUse.hs 351;" f
doInPlacements src/Dodge/Layout.hs 87;" f doInPlacements src/Dodge/Layout.hs 87;" f
doIndividualPlacements src/Dodge/Layout.hs 101;" f doIndividualPlacements src/Dodge/Layout.hs 101;" f
doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 28;" f doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 28;" f
doItemTimeScroll src/Dodge/Update.hs 193;" f doItemTimeScroll src/Dodge/Update.hs 196;" f
doLoop src/Loop.hs 60;" f doLoop src/Loop.hs 60;" f
doMagnetBuBu src/Dodge/Bullet.hs 35;" f doMagnetBuBu src/Dodge/Bullet.hs 35;" f
doModificationEffect src/Dodge/ModificationEffect.hs 7;" f doModificationEffect src/Dodge/ModificationEffect.hs 7;" f
@@ -3230,18 +3229,19 @@ doTestDrawing src/Dodge/Render.hs 41;" f
doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f
doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f
doThrust src/Dodge/Projectile/Update.hs 128;" f doThrust src/Dodge/Projectile/Update.hs 128;" f
doTimeScroll src/Dodge/Update.hs 198;" f doTimeScroll src/Dodge/Update.hs 201;" f
doTmWdWd src/Dodge/WorldEffect.hs 89;" f doTmWdWd src/Dodge/WorldEffect.hs 89;" f
doWallRotate src/Dodge/Update/Camera.hs 220;" f doWallRotate src/Dodge/Update/Camera.hs 220;" f
doWdBl src/Dodge/WorldBool.hs 10;" f doWdBl src/Dodge/WorldBool.hs 10;" f
doWdCrBl src/Dodge/CreatureEffect.hs 18;" f doWdCrBl src/Dodge/CreatureEffect.hs 18;" f
doWdP2f src/Dodge/WdP2f.hs 10;" f doWdP2f src/Dodge/WdP2f.hs 10;" f
doWdWd src/Dodge/WorldEffect.hs 28;" f doWdWd src/Dodge/WorldEffect.hs 28;" f
doWorldEvents src/Dodge/Update.hs 428;" f doWorldEvents src/Dodge/Update.hs 450;" f
doWorldPos src/Dodge/WorldPos.hs 10;" f doWorldPos src/Dodge/WorldPos.hs 10;" f
door src/Dodge/Room/Door.hs 14;" f door src/Dodge/Room/Door.hs 14;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 39;" f doorBetween src/Dodge/Placement/Instance/Door.hs 39;" f
doorLerp src/Dodge/DrWdWd.hs 18;" f doorLerp src/Dodge/DrWdWd.hs 29;" f
doorLerp' src/Dodge/DrWdWd.hs 53;" 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 276;" f doubleCorridorBarrels src/Dodge/Room/Room.hs 276;" f
@@ -3332,7 +3332,6 @@ drawMenuScreen src/Dodge/Render/MenuScreen.hs 14;" f
drawMouseCursor src/Dodge/Render/Picture.hs 85;" f drawMouseCursor src/Dodge/Render/Picture.hs 85;" f
drawMouseOver src/Dodge/Render/HUD.hs 109;" f drawMouseOver src/Dodge/Render/HUD.hs 109;" f
drawMousePosition src/Dodge/Debug/Picture.hs 373;" f drawMousePosition src/Dodge/Debug/Picture.hs 373;" f
drawMovingShapeCol src/Dodge/Prop/Draw.hs 87;" f
drawOptions src/Dodge/Render/MenuScreen.hs 22;" f drawOptions src/Dodge/Render/MenuScreen.hs 22;" f
drawPathBetween src/Dodge/Debug/Picture.hs 201;" f drawPathBetween src/Dodge/Debug/Picture.hs 201;" f
drawPathEdge src/Dodge/Debug/Picture.hs 266;" f drawPathEdge src/Dodge/Debug/Picture.hs 266;" f
@@ -3409,7 +3408,7 @@ dtToRootIntMap' src/Dodge/DoubleTree.hs 153;" f
dtToUpDownAdj src/Dodge/DoubleTree.hs 158;" f dtToUpDownAdj src/Dodge/DoubleTree.hs 158;" f
dummyMenuOption src/Dodge/Menu/Option.hs 72;" f dummyMenuOption src/Dodge/Menu/Option.hs 72;" f
dustColor src/Shader/Poke/Cloud.hs 71;" f dustColor src/Shader/Poke/Cloud.hs 71;" f
dustSpringVel src/Dodge/Update.hs 852;" f dustSpringVel src/Dodge/Update.hs 882;" f
ebColor src/Dodge/EnergyBall.hs 77;" f ebColor src/Dodge/EnergyBall.hs 77;" f
ebDamage src/Dodge/EnergyBall.hs 85;" f ebDamage src/Dodge/EnergyBall.hs 85;" f
ebEffect src/Dodge/EnergyBall.hs 45;" f ebEffect src/Dodge/EnergyBall.hs 45;" f
@@ -3526,7 +3525,7 @@ floorItemSPic src/Dodge/Render/ShapePicture.hs 120;" f
floorWire src/Dodge/Wire.hs 13;" f floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f
foldMTRS src/Dodge/Room/Tutorial.hs 66;" f foldMTRS src/Dodge/Room/Tutorial.hs 71;" f
foldPairs src/ListHelp.hs 37;" f foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 110;" f foldrWhileArb src/ListHelp.hs 110;" f
followImpulse src/Dodge/Creature/Impulse.hs 24;" f followImpulse src/Dodge/Creature/Impulse.hs 24;" f
@@ -3551,7 +3550,7 @@ fromV3 src/Geometry/Data.hs 63;" f
frontArmour src/Dodge/Item/Equipment.hs 38;" f frontArmour src/Dodge/Item/Equipment.hs 38;" f
fstV2 src/Geometry/Data.hs 70;" f fstV2 src/Geometry/Data.hs 70;" f
fuelPack src/Dodge/Item/Equipment.hs 53;" f fuelPack src/Dodge/Item/Equipment.hs 53;" f
functionalUpdate src/Dodge/Update.hs 241;" f functionalUpdate src/Dodge/Update.hs 244;" f
fusePoint src/Dodge/LevelGen/StaticWalls.hs 158;" f fusePoint src/Dodge/LevelGen/StaticWalls.hs 158;" f
fuseWall src/Dodge/LevelGen/StaticWalls.hs 165;" f fuseWall src/Dodge/LevelGen/StaticWalls.hs 165;" f
fuseWallsWith src/Dodge/LevelGen/StaticWalls.hs 172;" f fuseWallsWith src/Dodge/LevelGen/StaticWalls.hs 172;" f
@@ -3587,11 +3586,12 @@ getCloseObj src/Dodge/Update/Input/InGame.hs 533;" f
getCommand src/Dodge/Terminal.hs 52;" f getCommand src/Dodge/Terminal.hs 52;" f
getCommands src/Dodge/Terminal.hs 49;" f getCommands src/Dodge/Terminal.hs 49;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 337;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 342;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 324;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 329;" f
getDebugMouseOver src/Dodge/Update.hs 376;" f getDebugMouseOver src/Dodge/Update.hs 398;" f
getDistortions src/Dodge/Render.hs 435;" f getDistortions src/Dodge/Render.hs 435;" f
getEdgesCrossing src/Dodge/Path.hs 43;" f getEdgesCrossing src/Dodge/Path.hs 51;" f
getEdgesCrossingPoly src/Dodge/Path.hs 43;" f
getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f
getInventoryPath src/Dodge/Inventory/Path.hs 9;" f getInventoryPath src/Dodge/Inventory/Path.hs 9;" f
getItemValue src/Dodge/Inventory/SelectionList.hs 147;" f getItemValue src/Dodge/Inventory/SelectionList.hs 147;" f
@@ -3600,12 +3600,12 @@ getLaserDamage src/Dodge/HeldUse.hs 704;" f
getLaserPhaseV src/Dodge/HeldUse.hs 701;" f getLaserPhaseV src/Dodge/HeldUse.hs 701;" f
getLinksOfType src/Dodge/RoomLink.hs 41;" f getLinksOfType src/Dodge/RoomLink.hs 41;" f
getMaxLinesTM src/Dodge/Terminal/Type.hs 6;" f getMaxLinesTM src/Dodge/Terminal/Type.hs 6;" f
getMenuMouseContext src/Dodge/Update.hs 388;" f getMenuMouseContext src/Dodge/Update.hs 410;" f
getNodePos src/Dodge/Path.hs 40;" f getNodePos src/Dodge/Path.hs 40;" f
getPJStabiliser src/Dodge/HeldUse.hs 1251;" f getPJStabiliser src/Dodge/HeldUse.hs 1251;" 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 320;" f getRoomsFromInts src/Dodge/Room/Tutorial.hs 325;" f
getRootItemBounds src/Dodge/Render/HUD.hs 100;" f getRootItemBounds src/Dodge/Render/HUD.hs 100;" f
getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f
getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f
@@ -3834,7 +3834,7 @@ isNHS src/Geometry/Intersect.hs 53;" f
isNothing' src/MaybeHelp.hs 31;" f isNothing' src/MaybeHelp.hs 31;" f
isOnSeg src/Geometry.hs 237;" f isOnSeg src/Geometry.hs 237;" f
isOutLnk src/Dodge/PlacementSpot.hs 166;" f isOutLnk src/Dodge/PlacementSpot.hs 166;" f
isOverTerminalScreen src/Dodge/Update.hs 399;" f isOverTerminalScreen src/Dodge/Update.hs 421;" f
isPulseLaser src/Dodge/IsPulseLaser.hs 10;" f isPulseLaser src/Dodge/IsPulseLaser.hs 10;" f
isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f
isRHS src/Geometry/LHS.hs 32;" f isRHS src/Geometry/LHS.hs 32;" f
@@ -3919,7 +3919,7 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f
keyPic src/Dodge/Item/Draw/SPic.hs 459;" f keyPic src/Dodge/Item/Draw/SPic.hs 459;" f
keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f
knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f
lChasm src/Dodge/Room/Tutorial.hs 130;" f lChasm src/Dodge/Room/Tutorial.hs 135;" f
lConnect src/Dodge/Render/Connectors.hs 42;" f lConnect src/Dodge/Render/Connectors.hs 42;" f
lConnectMulti src/Dodge/Render/Connectors.hs 46;" f lConnectMulti src/Dodge/Render/Connectors.hs 46;" f
lShape src/Dodge/Placement/Instance/LightSource.hs 89;" f lShape src/Dodge/Placement/Instance/LightSource.hs 89;" f
@@ -3979,7 +3979,8 @@ lineOutputTerminal src/Dodge/Room/Warning.hs 66;" f
lineSplit src/Justify.hs 26;" f lineSplit src/Justify.hs 26;" f
lineThick src/Picture/Base.hs 234;" f lineThick src/Picture/Base.hs 234;" f
lineUp src/Dodge/Creature/Boid.hs 150;" f lineUp src/Dodge/Creature/Boid.hs 150;" f
linksGridToPath src/Dodge/Room/Path.hs 36;" f linksGridToPath src/Dodge/Room/Path.hs 38;" f
linksGridToPath' src/Dodge/Room/Path.hs 43;" f
linksOnPath src/Dodge/Room/CheckConsistency.hs 6;" f linksOnPath src/Dodge/Room/CheckConsistency.hs 6;" f
listConfig src/Dodge/Menu.hs 239;" f listConfig src/Dodge/Menu.hs 239;" f
listControls src/Dodge/Menu.hs 251;" f listControls src/Dodge/Menu.hs 251;" f
@@ -4079,13 +4080,13 @@ makeFlamelet src/Dodge/EnergyBall.hs 21;" f
makeFragBullets src/Dodge/Bullet.hs 131;" f makeFragBullets src/Dodge/Bullet.hs 131;" f
makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 11;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 11;" f
makeGrid src/Grid.hs 46;" f makeGrid src/Grid.hs 46;" f
makeIntInterval src/Dodge/Zoning/Base.hs 35;" f makeIntInterval src/Dodge/Zoning/Base.hs 37;" f
makeMovingEB src/Dodge/EnergyBall.hs 60;" f makeMovingEB src/Dodge/EnergyBall.hs 60;" f
makeMuzzleFlare src/Dodge/HeldUse.hs 656;" f makeMuzzleFlare src/Dodge/HeldUse.hs 656;" f
makeParagraph src/Justify.hs 6;" f makeParagraph src/Justify.hs 6;" f
makePathBetween src/Dodge/Path.hs 73;" f makePathBetween src/Dodge/Path.hs 81;" f
makePathBetweenPs src/Dodge/Path.hs 94;" f makePathBetweenPs src/Dodge/Path.hs 102;" f
makePathUsing src/Dodge/Path.hs 60;" f makePathUsing src/Dodge/Path.hs 68;" f
makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 25;" f makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 25;" f
makeRect src/Grid.hs 82;" f makeRect src/Grid.hs 82;" f
makeSelectionListPictures src/Dodge/Render/List.hs 66;" f makeSelectionListPictures src/Dodge/Render/List.hs 66;" f
@@ -4120,7 +4121,7 @@ maybeClearPaths src/Dodge/Block.hs 69;" f
maybeDestroyBlock src/Dodge/Wall/Damage.hs 32;" f maybeDestroyBlock src/Dodge/Wall/Damage.hs 32;" f
maybeDestroyDoor src/Dodge/Wall/Damage.hs 37;" f maybeDestroyDoor src/Dodge/Wall/Damage.hs 37;" f
maybeExitCombine src/Dodge/Update/Input/InGame.hs 562;" f maybeExitCombine src/Dodge/Update/Input/InGame.hs 562;" f
maybeOpenConsole src/Dodge/Update.hs 126;" f maybeOpenConsole src/Dodge/Update.hs 129;" f
maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f
maybeTakeOne src/RandomHelp.hs 116;" f maybeTakeOne src/RandomHelp.hs 116;" f
maybeWarmupStatus src/Dodge/Item/Display.hs 45;" f maybeWarmupStatus src/Dodge/Item/Display.hs 45;" f
@@ -4170,7 +4171,7 @@ mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 14;" f mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f
midBounds src/Dodge/Room/Foreground.hs 151;" f midBounds src/Dodge/Room/Foreground.hs 151;" f
midChasm src/Dodge/Room/Tutorial.hs 151;" f midChasm src/Dodge/Room/Tutorial.hs 156;" 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
@@ -4234,7 +4235,7 @@ muzzleRandPos src/Dodge/HeldUse.hs 778;" f
mvButton src/Dodge/Placement/PlaceSpot.hs 193;" f mvButton src/Dodge/Placement/PlaceSpot.hs 193;" f
mvCr src/Dodge/Placement/PlaceSpot.hs 196;" f mvCr src/Dodge/Placement/PlaceSpot.hs 196;" f
mvFS src/Dodge/Placement/PlaceSpot.hs 203;" f mvFS src/Dodge/Placement/PlaceSpot.hs 203;" f
mvGust src/Dodge/Update.hs 784;" f mvGust src/Dodge/Update.hs 814;" f
mvLS src/Dodge/Placement/PlaceSpot.hs 275;" f mvLS src/Dodge/Placement/PlaceSpot.hs 275;" f
mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f
mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f
@@ -4284,13 +4285,13 @@ numShads src/Picture/Data.hs 40;" f
numSubElements src/Shader/Parameters.hs 39;" f numSubElements src/Shader/Parameters.hs 39;" f
numTraversable src/TreeHelp.hs 184;" f numTraversable src/TreeHelp.hs 184;" f
obstacleColor src/Dodge/Debug/Picture.hs 269;" f obstacleColor src/Dodge/Debug/Picture.hs 269;" f
obstructPathsCrossing src/Dodge/Path.hs 123;" f obstructPathsCrossing src/Dodge/Path.hs 131;" f
oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 698;" f oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 698;" f
onEquipWristShield src/Dodge/Equipment.hs 37;" f onEquipWristShield src/Dodge/Equipment.hs 37;" f
onRemoveWristShield src/Dodge/Equipment.hs 24;" f onRemoveWristShield src/Dodge/Equipment.hs 24;" f
onXY src/Geometry/Vector3D.hs 130;" f onXY src/Geometry/Vector3D.hs 130;" f
oneH src/Dodge/Creature/Test.hs 96;" f oneH src/Dodge/Creature/Test.hs 96;" f
openConsole src/Dodge/Update.hs 131;" f openConsole src/Dodge/Update.hs 134;" f
optionMenu src/Dodge/Menu.hs 112;" f optionMenu src/Dodge/Menu.hs 112;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 52;" f optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 52;" f
optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 43;" f optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 43;" f
@@ -4330,9 +4331,9 @@ overrideMeleeCloseTarget src/Dodge/Creature/ReaderUpdate.hs 35;" f
overwriteLabel src/Dodge/Tree/Compose.hs 31;" f overwriteLabel src/Dodge/Tree/Compose.hs 31;" 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
pairInPolys src/Dodge/Room/Path.hs 45;" f pairInPolys src/Dodge/Room/Path.hs 53;" f
pairPolyPointsIntersect src/Geometry/ConvexPoly.hs 68;" f pairPolyPointsIntersect src/Geometry/ConvexPoly.hs 68;" f
pairsToIncGraph src/Dodge/Path.hs 101;" f pairsToIncGraph src/Dodge/Path.hs 109;" 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 58;" f paletteToColor src/Color.hs 58;" f
@@ -4340,15 +4341,15 @@ 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/Floor.hs 120;" f passthroughLockKeyLists src/Dodge/Floor.hs 120;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f
pathEdgeObstructed src/Dodge/Path.hs 76;" f pathEdgeObstructed src/Dodge/Path.hs 84;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f
pauseGame src/Dodge/Update/Input/InGame.hs 525;" f pauseGame src/Dodge/Update/Input/InGame.hs 525;" f
pauseMenu src/Dodge/Menu.hs 59;" f pauseMenu src/Dodge/Menu.hs 59;" f
pauseMenuOptions src/Dodge/Menu.hs 66;" f pauseMenuOptions src/Dodge/Menu.hs 66;" f
pauseSound src/Dodge/SoundLogic.hs 42;" f pauseSound src/Dodge/SoundLogic.hs 42;" f
pauseTime src/Dodge/Update.hs 182;" f pauseTime src/Dodge/Update.hs 185;" f
pbFlicker src/Dodge/Update.hs 469;" f pbFlicker src/Dodge/Update.hs 491;" f
pbsHit src/Dodge/WorldEvent/ThingsHit.hs 89;" f pbsHit src/Dodge/WorldEvent/ThingsHit.hs 90;" f
peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f
pedestalRoom src/Dodge/Room/Containing.hs 50;" f pedestalRoom src/Dodge/Room/Containing.hs 50;" f
penThing src/Dodge/Bullet.hs 210;" f penThing src/Dodge/Bullet.hs 210;" f
@@ -4418,7 +4419,7 @@ pointInOrOnPolygon src/Geometry/Polygon.hs 78;" f
pointInPoly src/Geometry/Polygon.hs 86;" f pointInPoly src/Geometry/Polygon.hs 86;" f
pointIsInCone src/Geometry.hs 375;" f pointIsInCone src/Geometry.hs 375;" f
pointIsOnScreen src/Dodge/Base/Window.hs 59;" f pointIsOnScreen src/Dodge/Base/Window.hs 59;" f
pointTowardsImpulse src/Dodge/Path.hs 98;" f pointTowardsImpulse src/Dodge/Path.hs 106;" f
pointerToItem src/Dodge/Item/Location.hs 39;" f 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
@@ -4463,8 +4464,8 @@ pokeWall src/Shader/Poke.hs 78;" f
pokeWallsWindows src/Shader/Poke.hs 50;" f pokeWallsWindows src/Shader/Poke.hs 50;" f
poly3 src/Picture/Base.hs 84;" f poly3 src/Picture/Base.hs 84;" f
poly3Col src/Picture/Base.hs 88;" f poly3Col src/Picture/Base.hs 88;" f
polyChasm src/Dodge/Room/Tutorial.hs 172;" f polyChasm src/Dodge/Room/Tutorial.hs 177;" f
polyChasmC src/Dodge/Room/Tutorial.hs 181;" f polyChasmC src/Dodge/Room/Tutorial.hs 186;" f
polyCirc src/Shape.hs 46;" f polyCirc src/Shape.hs 46;" f
polyCircx src/Shape.hs 51;" f polyCircx src/Shape.hs 51;" f
polyCornerDist src/Geometry/Polygon.hs 61;" f polyCornerDist src/Geometry/Polygon.hs 61;" f
@@ -4602,7 +4603,7 @@ randPeakedParam src/RandomHelp.hs 130;" f
randProb src/RandomHelp.hs 68;" f randProb src/RandomHelp.hs 68;" f
randSpark src/Dodge/Spark.hs 69;" f randSpark src/Dodge/Spark.hs 69;" f
randSparkExtraVel src/Dodge/Spark.hs 92;" f randSparkExtraVel src/Dodge/Spark.hs 92;" f
randWallReflect src/Dodge/Update.hs 643;" f randWallReflect src/Dodge/Update.hs 673;" f
randomChallenges src/Dodge/Room/Start.hs 63;" f randomChallenges src/Dodge/Room/Start.hs 63;" f
randomCompass src/Dodge/Layout.hs 60;" f randomCompass src/Dodge/Layout.hs 60;" f
randomFourCornerRoom src/Dodge/Room/Procedural.hs 268;" f randomFourCornerRoom src/Dodge/Room/Procedural.hs 268;" f
@@ -4652,7 +4653,7 @@ removeAimPosture src/Dodge/Creature/YourControl.hs 159;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 907;" f removeAmmoFromMag src/Dodge/HeldUse.hs 907;" 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 237;" f removeLights src/Dodge/Room/Tutorial.hs 242;" f
removeShieldWall src/Dodge/Item/BackgroundEffect.hs 58;" f removeShieldWall src/Dodge/Item/BackgroundEffect.hs 58;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 26;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f
@@ -4798,8 +4799,8 @@ scrollAugInvSel src/Dodge/Inventory.hs 191;" f
scrollAugNextInSection src/Dodge/Inventory.hs 204;" f scrollAugNextInSection src/Dodge/Inventory.hs 204;" f
scrollRBOption src/Dodge/Update/Scroll.hs 202;" f scrollRBOption src/Dodge/Update/Scroll.hs 202;" f
scrollSelectionSections src/Dodge/SelectionSections.hs 28;" f scrollSelectionSections src/Dodge/SelectionSections.hs 28;" f
scrollTimeBack src/Dodge/Update.hs 208;" f scrollTimeBack src/Dodge/Update.hs 211;" f
scrollTimeForward src/Dodge/Update.hs 225;" f scrollTimeForward src/Dodge/Update.hs 228;" f
seagullBarkS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 570;" f seagullBarkS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 570;" f
seagullBarkTransformedS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 654;" f seagullBarkTransformedS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 654;" f
seagullChatter1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 666;" f seagullChatter1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 666;" f
@@ -4831,14 +4832,14 @@ sensorReqToString src/Dodge/Machine/Update.hs 197;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f
sensorSPic src/Dodge/Machine/Draw.hs 81;" f sensorSPic src/Dodge/Machine/Draw.hs 81;" f
sensorTut src/Dodge/Room/Tutorial.hs 346;" f sensorTut src/Dodge/Room/Tutorial.hs 351;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 234;" f sensorTypeDamages src/Dodge/Machine/Update.hs 234;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 81;" f sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 81;" f
sentinelFireType src/Dodge/Creature/SentinelAI.hs 49;" f 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 150;" f setChannelPos src/Sound.hs 150;" f
setClickWorldPos src/Dodge/Update.hs 101;" f setClickWorldPos src/Dodge/Update.hs 104;" f
setClip src/Dodge/Debug.hs 159;" f setClip src/Dodge/Debug.hs 159;" f
setClusterID src/Dodge/Combine/Graph.hs 114;" f setClusterID src/Dodge/Combine/Graph.hs 114;" f
setDepth src/Picture/Base.hs 128;" f setDepth src/Picture/Base.hs 128;" f
@@ -4853,12 +4854,12 @@ setLinkType src/Dodge/RoomLink.hs 78;" f
setLinkTypePD src/Dodge/RoomLink.hs 85;" f setLinkTypePD src/Dodge/RoomLink.hs 85;" f
setMusicVolume src/Sound.hs 162;" f setMusicVolume src/Sound.hs 162;" f
setMvPos src/Dodge/Creature/ReaderUpdate.hs 58;" f setMvPos src/Dodge/Creature/ReaderUpdate.hs 58;" f
setOldPos src/Dodge/Update.hs 502;" f setOldPos src/Dodge/Update.hs 524;" f
setOutLinks src/Dodge/RoomLink.hs 50;" f setOutLinks src/Dodge/RoomLink.hs 50;" f
setOutLinksByType src/Dodge/RoomLink.hs 75;" f setOutLinksByType src/Dodge/RoomLink.hs 75;" f
setOutLinksPD src/Dodge/RoomLink.hs 95;" f setOutLinksPD src/Dodge/RoomLink.hs 95;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f
setRoomInt src/Dodge/Room/Tutorial.hs 73;" f setRoomInt src/Dodge/Room/Tutorial.hs 78;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f setShaderSource src/Shader/Compile.hs 290;" f
@@ -4868,7 +4869,7 @@ setTargetMv src/Dodge/Creature/ReaderUpdate.hs 82;" 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
setToggle src/Dodge/Prop/Update.hs 44;" f setToggle src/Dodge/Prop/Update.hs 44;" f
setTreeInts src/Dodge/Room/Tutorial.hs 80;" f setTreeInts src/Dodge/Room/Tutorial.hs 85;" f
setViewDistance src/Dodge/Update/Camera.hs 236;" f setViewDistance src/Dodge/Update/Camera.hs 236;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f
setViewport src/Dodge/Render.hs 440;" f setViewport src/Dodge/Render.hs 440;" f
@@ -4964,7 +4965,7 @@ shuffleLinks src/Dodge/Room/Link.hs 30;" f
shuffleRoomPos src/Dodge/Layout.hs 82;" f shuffleRoomPos src/Dodge/Layout.hs 82;" f
shuffleTail src/RandomHelp.hs 59;" f shuffleTail src/RandomHelp.hs 59;" f
sigmoid src/Dodge/Base.hs 151;" f sigmoid src/Dodge/Base.hs 151;" f
simpleCrSprings src/Dodge/Update.hs 861;" f simpleCrSprings src/Dodge/Update.hs 891;" f
simpleTermMessage src/Dodge/Terminal.hs 164;" f simpleTermMessage src/Dodge/Terminal.hs 164;" f
sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 680;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 680;" f
sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f
@@ -4993,11 +4994,11 @@ smallGlass3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 518;" f
smallGlass4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 466;" f smallGlass4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 466;" f
smallPillar src/Dodge/Room/Pillar.hs 37;" f smallPillar src/Dodge/Room/Pillar.hs 37;" f
smallRoom src/Dodge/Room/RunPast.hs 31;" f smallRoom src/Dodge/Room/RunPast.hs 31;" f
smallSnailInt2 src/Dodge/Path.hs 88;" f smallSnailInt2 src/Dodge/Path.hs 96;" f
smg src/Dodge/Item/Held/Stick.hs 58;" f smg src/Dodge/Item/Held/Stick.hs 58;" f
smokeReducer src/Dodge/Item/Scope.hs 162;" f smokeReducer src/Dodge/Item/Scope.hs 162;" f
snailAround src/Dodge/Path.hs 85;" f snailAround src/Dodge/Path.hs 93;" f
snapToGrid src/Dodge/Path.hs 146;" f snapToGrid src/Dodge/Path.hs 154;" f
sndV2 src/Geometry/Data.hs 73;" f sndV2 src/Geometry/Data.hs 73;" f
sniperRifle src/Dodge/Item/Held/Rod.hs 44;" f sniperRifle src/Dodge/Item/Held/Rod.hs 44;" f
someCrits src/Dodge/LockAndKey.hs 120;" f someCrits src/Dodge/LockAndKey.hs 120;" f
@@ -5156,7 +5157,7 @@ terminalWheelEvent src/Dodge/Update/Scroll.hs 131;" f
teslaGun src/Dodge/Item/Held/BatteryGuns.hs 19;" f teslaGun src/Dodge/Item/Held/BatteryGuns.hs 19;" f
teslaGunPic src/Dodge/Item/Draw/SPic.hs 409;" f teslaGunPic src/Dodge/Item/Draw/SPic.hs 409;" f
teslaParams src/Dodge/Item/Held/BatteryGuns.hs 25;" f teslaParams src/Dodge/Item/Held/BatteryGuns.hs 25;" f
testCrossWalls src/Dodge/Room/Path.hs 41;" f testCrossWalls src/Dodge/Room/Path.hs 49;" f
testEvent src/Dodge/Event/Test.hs 9;" f testEvent src/Dodge/Event/Test.hs 9;" f
testInventory src/Dodge/Creature.hs 292;" f testInventory src/Dodge/Creature.hs 292;" f
testStringInit src/Dodge/TestString.hs 33;" f testStringInit src/Dodge/TestString.hs 33;" f
@@ -5181,17 +5182,17 @@ thickCircle src/Picture/Base.hs 272;" f
thickLine src/Picture/Base.hs 244;" f thickLine src/Picture/Base.hs 244;" f
thickLineCol src/Picture/Base.hs 255;" f thickLineCol src/Picture/Base.hs 255;" f
thinHighBar src/Dodge/Room/Foreground.hs 77;" f thinHighBar src/Dodge/Room/Foreground.hs 77;" f
thingHit src/Dodge/WorldEvent/ThingsHit.hs 110;" f thingHit src/Dodge/WorldEvent/ThingsHit.hs 111;" f
thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 98;" f thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 99;" f
thingsHit src/Dodge/WorldEvent/ThingsHit.hs 36;" f thingsHit src/Dodge/WorldEvent/ThingsHit.hs 37;" f
thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 119;" f thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 120;" f
thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 44;" f thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 45;" f
threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f
throwItem src/Dodge/Creature/Action.hs 190;" f throwItem src/Dodge/Creature/Action.hs 190;" 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 196;" f
tilesToLine src/Shader/AuxAddition.hs 66;" f tilesToLine src/Shader/AuxAddition.hs 66;" f
timeFlowUpdate src/Dodge/Update.hs 169;" f timeFlowUpdate src/Dodge/Update.hs 172;" f
timeScroller src/Dodge/Item/Held/Utility.hs 42;" f timeScroller src/Dodge/Item/Held/Utility.hs 42;" f
timeStopper src/Dodge/Item/Held/Utility.hs 39;" f timeStopper src/Dodge/Item/Held/Utility.hs 39;" f
tinMag src/Dodge/Item/Ammo.hs 28;" f tinMag src/Dodge/Item/Ammo.hs 28;" f
@@ -5206,7 +5207,7 @@ titleOptionsMenu src/Dodge/Menu.hs 106;" f
titleOptionsNoWrite src/Dodge/Menu.hs 109;" f titleOptionsNoWrite src/Dodge/Menu.hs 109;" f
tlDoEffect src/Dodge/Terminal.hs 102;" f tlDoEffect src/Dodge/Terminal.hs 102;" f
tlSetStatus src/Dodge/Terminal.hs 99;" f tlSetStatus src/Dodge/Terminal.hs 99;" f
tmUpdate src/Dodge/Update.hs 486;" f tmUpdate src/Dodge/Update.hs 508;" f
toBinary src/Dodge/Inventory/SelectionList.hs 141;" f toBinary src/Dodge/Inventory/SelectionList.hs 141;" f
toBothLnk src/Dodge/RoomLink.hs 136;" f toBothLnk src/Dodge/RoomLink.hs 136;" f
toClosestMultiple src/HelpNum.hs 3;" f toClosestMultiple src/HelpNum.hs 3;" f
@@ -5306,12 +5307,12 @@ turnTo src/Dodge/Movement/Turn.hs 8;" f
turret src/Dodge/Placement/Instance/Turret.hs 37;" f turret src/Dodge/Placement/Instance/Turret.hs 37;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 41;" f tutAnoTree src/Dodge/Room/Tutorial.hs 41;" f
tutDrop src/Dodge/Room/Tutorial.hs 85;" f tutDrop src/Dodge/Room/Tutorial.hs 90;" f
tutHub src/Dodge/Room/Tutorial.hs 244;" f tutHub src/Dodge/Room/Tutorial.hs 249;" f
tutLight src/Dodge/Room/Tutorial.hs 209;" f tutLight src/Dodge/Room/Tutorial.hs 214;" f
tutRezBox src/Dodge/Room/Tutorial.hs 357;" f tutRezBox src/Dodge/Room/Tutorial.hs 362;" f
tutRoomTree src/Dodge/Floor.hs 21;" f tutRoomTree src/Dodge/Floor.hs 21;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 381;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 386;" f
tweenAngles src/Geometry/Vector.hs 190;" f tweenAngles src/Geometry/Vector.hs 190;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 81;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 81;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f
@@ -5342,7 +5343,8 @@ unusedOffPathAwayFromLink src/Dodge/PlacementSpot.hs 131;" f
unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 137;" f unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 137;" f
unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 119;" f unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 119;" f
unusedSpotNearInLink src/Dodge/PlacementSpot.hs 196;" f unusedSpotNearInLink src/Dodge/PlacementSpot.hs 196;" f
updateAimPos src/Dodge/Update.hs 305;" f updateAccum src/Dodge/Update.hs 559;" f
updateAimPos src/Dodge/Update.hs 309;" f
updateAllNodes src/TreeHelp.hs 86;" f updateAllNodes src/TreeHelp.hs 86;" f
updateArc src/Dodge/Tesla.hs 44;" f updateArc src/Dodge/Tesla.hs 44;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 478;" f updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 478;" f
@@ -5352,47 +5354,50 @@ updateBaseWheelEvent src/Dodge/Update/Scroll.hs 34;" f
updateBounds src/Dodge/Update/Camera.hs 258;" f updateBounds src/Dodge/Update/Camera.hs 258;" f
updateBulVel src/Dodge/Bullet.hs 57;" f updateBulVel src/Dodge/Bullet.hs 57;" f
updateBullet src/Dodge/Bullet.hs 22;" f updateBullet src/Dodge/Bullet.hs 22;" f
updateBullets src/Dodge/Update.hs 565;" f updateBullets src/Dodge/Update.hs 595;" f
updateCamera src/Dodge/Update/Camera.hs 30;" f updateCamera src/Dodge/Update/Camera.hs 30;" f
updateCloseObjects src/Dodge/Inventory.hs 115;" f updateCloseObjects src/Dodge/Inventory.hs 115;" f
updateCloud src/Dodge/Update.hs 798;" f updateCloud src/Dodge/Update.hs 828;" f
updateClouds src/Dodge/Update.hs 669;" f updateClouds src/Dodge/Update.hs 699;" f
updateCombinePositioning src/Dodge/DisplayInventory.hs 40;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 40;" f
updateCombineSections src/Dodge/DisplayInventory.hs 47;" f updateCombineSections src/Dodge/DisplayInventory.hs 47;" f
updateCreature src/Dodge/Creature/Update.hs 32;" f updateCreature src/Dodge/Creature/Update.hs 32;" f
updateCreature' src/Dodge/Creature/Update.hs 41;" f updateCreature' src/Dodge/Creature/Update.hs 41;" f
updateCreatureGroups src/Dodge/Update.hs 537;" f updateCreatureGroups src/Dodge/Update.hs 567;" f
updateCreatureSoundPositions src/Dodge/Update.hs 516;" f updateCreatureSoundPositions src/Dodge/Update.hs 538;" f
updateDebris src/Dodge/Update.hs 572;" f updateDebris src/Dodge/Update.hs 602;" f
updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f
updateDebugMessageOffset src/Dodge/Update.hs 95;" f updateDebugMessageOffset src/Dodge/Update.hs 98;" f
updateDelayedEvents src/Dodge/Update.hs 890;" f updateDelayedEvents src/Dodge/Update.hs 920;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f
updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortion src/Dodge/Distortion.hs 5;" f
updateDistortions src/Dodge/Update.hs 558;" f updateDistortions src/Dodge/Update.hs 588;" f
updateDoor src/Dodge/Update.hs 310;" f updateDoor src/Dodge/Update.hs 332;" f
updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 74;" f updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 74;" f
updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 71;" f updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 71;" f
updateDust src/Dodge/Update.hs 822;" f updateDoors src/Dodge/Update.hs 328;" f
updateDusts src/Dodge/Update.hs 672;" f updateDust src/Dodge/Update.hs 852;" f
updateEdge src/Dodge/Path.hs 49;" f updateDusts src/Dodge/Update.hs 702;" f
updateEdge src/Dodge/Path.hs 57;" f
updateEdgeWallObs src/Dodge/Update.hs 317;" f
updateEdgesWall src/Dodge/Update.hs 314;" f
updateEnergyBall src/Dodge/EnergyBall.hs 31;" f updateEnergyBall src/Dodge/EnergyBall.hs 31;" f
updateEnergyBalls src/Dodge/Update.hs 660;" f updateEnergyBalls src/Dodge/Update.hs 690;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 505;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 505;" f
updateExpBarrel src/Dodge/Barreloid.hs 21;" f updateExpBarrel src/Dodge/Barreloid.hs 21;" f
updateFBOTO src/Framebuffer/Update.hs 97;" f updateFBOTO src/Framebuffer/Update.hs 97;" f
updateFBOTO3 src/Framebuffer/Update.hs 131;" f updateFBOTO3 src/Framebuffer/Update.hs 131;" f
updateFlame src/Dodge/Flame.hs 19;" f updateFlame src/Dodge/Flame.hs 19;" f
updateFlames src/Dodge/Update.hs 657;" f updateFlames src/Dodge/Update.hs 687;" f
updateFloatingCamera src/Dodge/Update/Camera.hs 35;" f updateFloatingCamera src/Dodge/Update/Camera.hs 35;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 363;" f updateFunctionKey src/Dodge/Update/Input/InGame.hs 363;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 359;" f updateFunctionKeys src/Dodge/Update/Input/InGame.hs 359;" f
updateGusts src/Dodge/Update.hs 781;" f updateGusts src/Dodge/Update.hs 811;" f
updateIMl src/Dodge/Update.hs 531;" f updateIMl src/Dodge/Update.hs 553;" f
updateIMl' src/Dodge/Update.hs 534;" f updateIMl' src/Dodge/Update.hs 556;" f
updateInGameCamera src/Dodge/Update/Camera.hs 79;" f updateInGameCamera src/Dodge/Update/Camera.hs 79;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 428;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 428;" f
updateInt2Map src/Dodge/Zoning/Base.hs 92;" f updateInt2Map src/Dodge/Zoning/Base.hs 98;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f
updateItemTargeting src/Dodge/Creature/State.hs 260;" f updateItemTargeting src/Dodge/Creature/State.hs 260;" f
updateKeyContinueTerminal src/Dodge/Update/Input/InGame.hs 396;" f updateKeyContinueTerminal src/Dodge/Update/Input/InGame.hs 396;" f
@@ -5402,33 +5407,33 @@ updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 382;" f
updateKeysTextInputTerminal src/Dodge/Update/Input/InGame.hs 405;" f updateKeysTextInputTerminal src/Dodge/Update/Input/InGame.hs 405;" f
updateLampoid src/Dodge/Lampoid.hs 13;" f updateLampoid src/Dodge/Lampoid.hs 13;" f
updateLaser src/Dodge/Laser/Update.hs 11;" f updateLaser src/Dodge/Laser/Update.hs 11;" f
updateLasers src/Dodge/Update.hs 435;" f updateLasers src/Dodge/Update.hs 457;" f
updateLeftParentSF src/Dodge/Item/Grammar.hs 170;" f updateLeftParentSF src/Dodge/Item/Grammar.hs 170;" f
updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 441;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 441;" f
updateMachine src/Dodge/Machine/Update.hs 24;" f updateMachine src/Dodge/Machine/Update.hs 24;" f
updateMagnets src/Dodge/Update.hs 313;" f updateMagnets src/Dodge/Update.hs 335;" f
updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 203;" f updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 203;" f
updateMouseContext src/Dodge/Update.hs 326;" f updateMouseContext src/Dodge/Update.hs 348;" f
updateMouseContextGame src/Dodge/Update.hs 331;" f updateMouseContextGame src/Dodge/Update.hs 353;" f
updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 96;" f updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 96;" f
updateMouseInGame src/Dodge/Update/Input/InGame.hs 86;" f updateMouseInGame src/Dodge/Update/Input/InGame.hs 86;" f
updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 166;" f updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 166;" f
updateObjCatMaybes src/Dodge/Update.hs 549;" f updateObjCatMaybes src/Dodge/Update.hs 579;" f
updateObjMapMaybe src/Dodge/Update.hs 542;" f updateObjMapMaybe src/Dodge/Update.hs 572;" f
updatePastWorlds src/Dodge/Update.hs 424;" f updatePastWorlds src/Dodge/Update.hs 446;" f
updatePreload src/Preload/Update.hs 20;" f updatePreload src/Preload/Update.hs 20;" f
updateProjectile src/Dodge/Projectile/Update.hs 25;" f updateProjectile src/Dodge/Projectile/Update.hs 25;" f
updateProp src/Dodge/Prop/Update.hs 11;" f updateProp src/Dodge/Prop/Update.hs 11;" f
updatePulse src/Dodge/Creature/Update.hs 146;" f updatePulse src/Dodge/Creature/Update.hs 146;" f
updatePulseBall src/Dodge/Update.hs 449;" f updatePulseBall src/Dodge/Update.hs 471;" f
updatePulseLaser src/Dodge/Update.hs 612;" f updatePulseLaser src/Dodge/Update.hs 642;" f
updatePulseLasers src/Dodge/Update.hs 444;" f updatePulseLasers src/Dodge/Update.hs 466;" f
updateRBList src/Dodge/Inventory/RBList.hs 22;" f updateRBList src/Dodge/Inventory/RBList.hs 22;" f
updateRadarBlip src/Dodge/RadarBlip.hs 11;" f updateRadarBlip src/Dodge/RadarBlip.hs 11;" f
updateRadarBlips src/Dodge/Update.hs 561;" f updateRadarBlips src/Dodge/Update.hs 591;" f
updateRadarSweep src/Dodge/RadarSweep.hs 40;" f updateRadarSweep src/Dodge/RadarSweep.hs 40;" f
updateRadarSweeps src/Dodge/Update.hs 663;" f updateRadarSweeps src/Dodge/Update.hs 693;" f
updateRandNode src/TreeHelp.hs 109;" f updateRandNode src/TreeHelp.hs 109;" f
updateRenderSplit appDodge/Main.hs 112;" f updateRenderSplit appDodge/Main.hs 112;" f
updateRightParentSF src/Dodge/Item/Grammar.hs 181;" f updateRightParentSF src/Dodge/Item/Grammar.hs 181;" f
@@ -5438,29 +5443,29 @@ updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 258;" f updateSection src/Dodge/DisplayInventory.hs 258;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 237;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 237;" f
updateShockwave src/Dodge/Shockwave/Update.hs 8;" f updateShockwave src/Dodge/Shockwave/Update.hs 8;" f
updateShockwaves src/Dodge/Update.hs 654;" f updateShockwaves src/Dodge/Update.hs 684;" f
updateSingleNodes src/TreeHelp.hs 98;" f updateSingleNodes src/TreeHelp.hs 98;" f
updateSound src/Sound.hs 72;" f updateSound src/Sound.hs 72;" f
updateSounds src/Sound.hs 67;" f updateSounds src/Sound.hs 67;" f
updateSpark src/Dodge/Spark.hs 19;" f updateSpark src/Dodge/Spark.hs 19;" f
updateSparks src/Dodge/Update.hs 666;" f updateSparks src/Dodge/Update.hs 696;" f
updateTeslaArc src/Dodge/Update.hs 582;" f updateTeslaArc src/Dodge/Update.hs 612;" f
updateTeslaArcs src/Dodge/Update.hs 579;" f updateTeslaArcs src/Dodge/Update.hs 609;" f
updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f
updateTractorBeams src/Dodge/Update.hs 651;" f updateTractorBeams src/Dodge/Update.hs 681;" f
updateTurret src/Dodge/Machine/Update.hs 49;" f updateTurret src/Dodge/Machine/Update.hs 49;" f
updateUniverse src/Dodge/Update.hs 74;" f updateUniverse src/Dodge/Update.hs 77;" f
updateUniverseFirst src/Dodge/Update.hs 85;" f updateUniverseFirst src/Dodge/Update.hs 88;" f
updateUniverseLast src/Dodge/Update.hs 136;" f updateUniverseLast src/Dodge/Update.hs 139;" f
updateUniverseMid src/Dodge/Update.hs 156;" f updateUniverseMid src/Dodge/Update.hs 159;" f
updateUseInputInGame src/Dodge/Update/Input/InGame.hs 45;" f updateUseInputInGame src/Dodge/Update/Input/InGame.hs 45;" f
updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 23;" f updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 23;" f
updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 11;" f updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 11;" f
updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f
updateWheelEvent src/Dodge/Update/Scroll.hs 25;" f updateWheelEvent src/Dodge/Update/Scroll.hs 25;" f
updateWheelEvents src/Dodge/Update.hs 414;" f updateWheelEvents src/Dodge/Update.hs 436;" f
updateWorldEventFlag src/Dodge/Update.hs 120;" f updateWorldEventFlag src/Dodge/Update.hs 123;" f
updateWorldEventFlags src/Dodge/Update.hs 108;" f updateWorldEventFlags src/Dodge/Update.hs 111;" f
upperBody src/Dodge/Creature/Picture.hs 120;" f upperBody src/Dodge/Creature/Picture.hs 120;" f
upperBox src/Shape.hs 156;" f upperBox src/Shape.hs 156;" f
upperBoxHalf src/Shape.hs 222;" f upperBoxHalf src/Shape.hs 222;" f
@@ -5529,7 +5534,7 @@ vocalizationTest src/Dodge/Creature/Vocalization.hs 42;" f
volleyGun src/Dodge/Item/Held/Cane.hs 15;" f volleyGun src/Dodge/Item/Held/Cane.hs 15;" f
volleyGunShape src/Dodge/Item/Draw/SPic.hs 357;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 357;" f
walkNozzle src/Dodge/HeldUse.hs 809;" f walkNozzle src/Dodge/HeldUse.hs 809;" f
walkableNodeNear src/Dodge/Path.hs 79;" f walkableNodeNear src/Dodge/Path.hs 87;" f
wallBlips src/Dodge/RadarSweep.hs 99;" f wallBlips src/Dodge/RadarSweep.hs 99;" f
wallBuffer src/Dodge/WallCreatureCollisions.hs 53;" f wallBuffer src/Dodge/WallCreatureCollisions.hs 53;" f
wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f
@@ -5589,8 +5594,9 @@ wlOpaqueDraw src/Dodge/Render/Walls.hs 45;" f
wlSeeThroughDraw src/Dodge/Render/Walls.hs 48;" f wlSeeThroughDraw src/Dodge/Render/Walls.hs 48;" f
wlZoneSize src/Dodge/Zoning/Wall.hs 52;" f wlZoneSize src/Dodge/Zoning/Wall.hs 52;" f
wlsFromIXs src/Dodge/Zoning/Wall.hs 35;" f wlsFromIXs src/Dodge/Zoning/Wall.hs 35;" f
wlsHit src/Dodge/WorldEvent/ThingsHit.hs 133;" f wlsHit src/Dodge/WorldEvent/ThingsHit.hs 134;" f
wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 141;" f wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 144;" f
wlsHitUnsorted src/Dodge/WorldEvent/ThingsHit.hs 137;" f
wlsNearCirc src/Dodge/Zoning/Wall.hs 49;" f wlsNearCirc src/Dodge/Zoning/Wall.hs 49;" f
wlsNearPoint src/Dodge/Zoning/Wall.hs 39;" f wlsNearPoint src/Dodge/Zoning/Wall.hs 39;" f
wlsNearRect src/Dodge/Zoning/Wall.hs 46;" f wlsNearRect src/Dodge/Zoning/Wall.hs 46;" f
@@ -5607,11 +5613,11 @@ writeConfig src/Dodge/Menu.hs 182;" f
writeSaveSlot src/Dodge/Save.hs 36;" f writeSaveSlot src/Dodge/Save.hs 36;" f
xCylinder src/Shape.hs 137;" f xCylinder src/Shape.hs 137;" f
xCylinderST src/Shape.hs 134;" f xCylinderST src/Shape.hs 134;" f
xIntercepts src/Dodge/Zoning/Base.hs 60;" f xIntercepts src/Dodge/Zoning/Base.hs 66;" f
xV2 src/Geometry/Vector.hs 201;" f xV2 src/Geometry/Vector.hs 201;" f
xyV3 src/Geometry/Vector.hs 213;" f xyV3 src/Geometry/Vector.hs 213;" f
xyzV4 src/Geometry/Vector.hs 209;" f xyzV4 src/Geometry/Vector.hs 209;" f
yIntercepts' src/Dodge/Zoning/Base.hs 76;" f yIntercepts' src/Dodge/Zoning/Base.hs 82;" f
yV2 src/Geometry/Vector.hs 205;" f yV2 src/Geometry/Vector.hs 205;" f
yellow src/Color.hs 17;" f yellow src/Color.hs 17;" f
you src/Dodge/Base/You.hs 13;" f you src/Dodge/Base/You.hs 13;" f
@@ -5624,7 +5630,7 @@ yourInv src/Dodge/Base/You.hs 28;" f
yourRootItem src/Dodge/Base/You.hs 22;" f yourRootItem src/Dodge/Base/You.hs 22;" f
yourSelectedItem src/Dodge/Base/You.hs 16;" f yourSelectedItem src/Dodge/Base/You.hs 16;" f
yourStatsInfo src/Dodge/Creature/Info.hs 27;" f yourStatsInfo src/Dodge/Creature/Info.hs 27;" f
zChasm src/Dodge/Room/Tutorial.hs 139;" f zChasm src/Dodge/Room/Tutorial.hs 144;" f
zConnect src/Dodge/Render/Connectors.hs 17;" f zConnect src/Dodge/Render/Connectors.hs 17;" f
zConnectCol src/Dodge/Render/Connectors.hs 28;" f zConnectCol src/Dodge/Render/Connectors.hs 28;" f
zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f
@@ -5633,29 +5639,30 @@ zipArcs src/Dodge/Tesla.hs 52;" f
zipCount src/Dodge/Tree/Shift.hs 136;" f zipCount src/Dodge/Tree/Shift.hs 136;" f
zipCountDown src/Dodge/Room/Procedural.hs 121;" f zipCountDown src/Dodge/Room/Procedural.hs 121;" f
zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f
zoneClouds src/Dodge/Update.hs 476;" f zoneClouds src/Dodge/Update.hs 498;" f
zoneCreature src/Dodge/Zoning/Creature.hs 55;" f zoneCreature src/Dodge/Zoning/Creature.hs 55;" f
zoneCreatures src/Dodge/Update.hs 512;" f zoneCreatures src/Dodge/Update.hs 534;" f
zoneDust src/Dodge/Zoning/Cloud.hs 48;" f zoneDust src/Dodge/Zoning/Cloud.hs 48;" f
zoneDusts src/Dodge/Update.hs 480;" f zoneDusts src/Dodge/Update.hs 502;" f
zoneExtract src/Dodge/Zoning/Base.hs 52;" f zoneExtract src/Dodge/Zoning/Base.hs 58;" f
zoneIncPe src/Dodge/Zoning/Pathing.hs 66;" f zoneIncPe src/Dodge/Zoning/Pathing.hs 66;" f
zoneMonoid src/Dodge/Zoning/Base.hs 83;" f zoneMonoid src/Dodge/Zoning/Base.hs 89;" f
zoneOfCirc src/Dodge/Zoning/Base.hs 24;" f zoneOfCirc src/Dodge/Zoning/Base.hs 26;" f
zoneOfCl src/Dodge/Zoning/Cloud.hs 24;" f zoneOfCl src/Dodge/Zoning/Cloud.hs 24;" f
zoneOfCr src/Dodge/Zoning/Creature.hs 45;" f zoneOfCr src/Dodge/Zoning/Creature.hs 45;" f
zoneOfDs src/Dodge/Zoning/Cloud.hs 45;" f zoneOfDs src/Dodge/Zoning/Cloud.hs 45;" f
zoneOfIncPe src/Dodge/Zoning/Pathing.hs 52;" f zoneOfIncPe src/Dodge/Zoning/Pathing.hs 52;" f
zoneOfPn src/Dodge/Zoning/Pathing.hs 29;" f zoneOfPn src/Dodge/Zoning/Pathing.hs 29;" f
zoneOfPoint src/Dodge/Zoning/Base.hs 44;" f zoneOfPoint src/Dodge/Zoning/Base.hs 46;" f
zoneOfRect src/Dodge/Zoning/Base.hs 28;" f zoneOfRect src/Dodge/Zoning/Base.hs 30;" f
zoneOfSeg src/Dodge/Zoning/Base.hs 47;" f zoneOfSeg src/Dodge/Zoning/Base.hs 49;" f
zoneOfSegSet src/Dodge/Zoning/Base.hs 53;" f
zoneOfSight src/Dodge/Zoning/World.hs 9;" f zoneOfSight src/Dodge/Zoning/World.hs 9;" f
zoneOfWl src/Dodge/Zoning/Wall.hs 55;" f zoneOfWl src/Dodge/Zoning/Wall.hs 55;" f
zonePn src/Dodge/Zoning/Pathing.hs 32;" f zonePn src/Dodge/Zoning/Pathing.hs 32;" f
zoneWall src/Dodge/Zoning/Wall.hs 65;" f zoneWall src/Dodge/Zoning/Wall.hs 65;" f
zonesAroundPoint src/Dodge/Zoning/Base.hs 96;" f zonesAroundPoint src/Dodge/Zoning/Base.hs 102;" f
zonesExtract src/Dodge/Zoning/Base.hs 56;" f zonesExtract src/Dodge/Zoning/Base.hs 62;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 71;" f zoomFloatingCamera src/Dodge/Update/Camera.hs 71;" f
zoomInLongGun src/Dodge/Update/Scroll.hs 105;" f zoomInLongGun src/Dodge/Update/Scroll.hs 105;" f
zoomOutLongGun src/Dodge/Update/Scroll.hs 113;" f zoomOutLongGun src/Dodge/Update/Scroll.hs 113;" f