Work on weapon positioning, analyser terminal positioning

This commit is contained in:
2026-03-31 13:16:24 +01:00
parent ab04516279
commit 6bcf03b30d
18 changed files with 252 additions and 178 deletions
+9
View File
@@ -3,8 +3,12 @@ module Dodge.Base.You
, yourInv , yourInv
, yourSelectedItem , yourSelectedItem
, yourRootItem , yourRootItem
, yourRootItemDT
)where )where
import Dodge.Item.Grammar
import Dodge.Data.ComposedItem
import Dodge.Data.DoubleTree
import NewInt import NewInt
import Dodge.Data.World import Dodge.Data.World
--import qualified IntMapHelp as IM --import qualified IntMapHelp as IM
@@ -25,6 +29,11 @@ yourRootItem w = do
j <- _crInv (you w) ^? ix i j <- _crInv (you w) ^? ix i
w ^? cWorld . lWorld . items . ix j w ^? cWorld . lWorld . items . ix j
yourRootItemDT :: World -> Maybe (DTree OItem)
yourRootItemDT w = do
i <- you w ^? crManipulation . manObject . imRootSelectedItem . unNInt
invIMDT ((\k -> w ^?! cWorld . lWorld . items . ix k) <$> you w ^. crInv) ^? ix i
yourInv :: World -> NewIntMap InvInt Item yourInv :: World -> NewIntMap InvInt Item
yourInv w = fmap (\i -> w ^?! cWorld . lWorld . items . ix i) . _crInv . you $ w yourInv w = fmap (\i -> w ^?! cWorld . lWorld . items . ix i) . _crInv . you $ w
+1 -1
View File
@@ -99,7 +99,7 @@ startCr =
& crInv .~ mempty & crInv .~ mempty
& crFaction .~ PlayerFaction & crFaction .~ PlayerFaction
-- & crMvType .~ MvWalking yourDefaultSpeed -- & crMvType .~ MvWalking yourDefaultSpeed
& crType .~ Avatar (PulseStatus 55 0) Flesh 50 50 50 3 & crType .~ Avatar (PulseStatus 55 0) Flesh 50 50 50 3 AvPosture
-- | Items you start with. -- | Items you start with.
startInvList :: [Item] startInvList :: [Item]
+2
View File
@@ -65,6 +65,8 @@ rightHandPQ cr
| oneH cr = (V3 11 (-3) 20, Q.qID) | oneH cr = (V3 11 (-3) 20, Q.qID)
| twists cr = (V3 0 5 20, Q.qz (-1)) `Q.comp` (V3 4 (-10) 0, Q.qz 1) | twists cr = (V3 0 5 20, Q.qz (-1)) `Q.comp` (V3 4 (-10) 0, Q.qz 1)
| twoFlat cr = (V3 4 (-8) 12, Q.qID) | twoFlat cr = (V3 4 (-8) 12, Q.qID)
-- | Just dt <- yourRootItemDT w
-- , Just as <- itemAimStance
| Just p <- crRightHandWall cr = (20 & _xy .~ p, Q.qID) | Just p <- crRightHandWall cr = (20 & _xy .~ p, Q.qID)
| otherwise = (handWalkingPos LeftForward (-8) cr, Q.qID) | otherwise = (handWalkingPos LeftForward (-8) cr, Q.qID)
-1
View File
@@ -5,7 +5,6 @@ import Dodge.Data.Creature.Misc
crMass :: CreatureType -> Float crMass :: CreatureType -> Float
crMass = \case crMass = \case
Avatar {} -> 10 Avatar {} -> 10
AvatarDead -> 10
ChaseCrit {} -> 10 ChaseCrit {} -> 10
SwarmCrit -> 2 SwarmCrit -> 2
AutoCrit -> 10 AutoCrit -> 10
-1
View File
@@ -8,7 +8,6 @@ import Dodge.Data.Material
crMaterial :: CreatureType -> Material crMaterial :: CreatureType -> Material
crMaterial = \case crMaterial = \case
Avatar{_avatarMaterial = mt} -> mt Avatar{_avatarMaterial = mt} -> mt
AvatarDead -> Flesh
ChaseCrit {} -> Flesh ChaseCrit {} -> Flesh
SwarmCrit -> Flesh SwarmCrit -> Flesh
AutoCrit -> Flesh AutoCrit -> Flesh
-1
View File
@@ -6,7 +6,6 @@ import Dodge.Data.Creature.Misc
crMaxHP :: CreatureType -> Int crMaxHP :: CreatureType -> Int
crMaxHP = \case crMaxHP = \case
Avatar {} -> 15000 Avatar {} -> 15000
AvatarDead -> 0
ChaseCrit {} -> 150 ChaseCrit {} -> 150
SwarmCrit -> 50 SwarmCrit -> 50
AutoCrit -> 100 AutoCrit -> 100
-1
View File
@@ -6,7 +6,6 @@ import Dodge.Data.Creature
crMvType :: Creature -> CrMvType crMvType :: Creature -> CrMvType
crMvType cr = case _crType cr of crMvType cr = case _crType cr of
Avatar {_avMoveSpeed = s} -> MvWalking s Avatar {_avMoveSpeed = s} -> MvWalking s
AvatarDead -> defaultAimMvType
ChaseCrit {} -> defaultChaseMvType ChaseCrit {} -> defaultChaseMvType
SwarmCrit -> defaultChaseMvType SwarmCrit -> defaultChaseMvType
AutoCrit -> defaultAimMvType AutoCrit -> defaultAimMvType
-1
View File
@@ -8,7 +8,6 @@ crRad :: CreatureType -> Float
{-# INLINE crRad #-} {-# INLINE crRad #-}
crRad = \case crRad = \case
Avatar {} -> 10 Avatar {} -> 10
AvatarDead -> 10
ChaseCrit {} -> 10 ChaseCrit {} -> 10
SwarmCrit -> 2 SwarmCrit -> 2
AutoCrit -> 10 AutoCrit -> 10
-1
View File
@@ -11,6 +11,5 @@ crShape = \case
ChaseCrit {} -> Humanoid (greyN 0.9) (lightx4 green) (greyN 0.3) ChaseAI ChaseCrit {} -> Humanoid (greyN 0.9) (lightx4 green) (greyN 0.3) ChaseAI
SwarmCrit -> Humanoid (greyN 0.9) (lightx4 yellow) (greyN 0.3) SwarmAI SwarmCrit -> Humanoid (greyN 0.9) (lightx4 yellow) (greyN 0.3) SwarmAI
AutoCrit -> Humanoid (greyN 0.9) (lightx4 red) (greyN 0.3) AutoAI AutoCrit -> Humanoid (greyN 0.9) (lightx4 red) (greyN 0.3) AutoAI
AvatarDead -> Humanoid (greyN 0.9) (lightx4 black) (greyN 0.3) InanimateAI
BarrelCrit {} -> Barreloid BarrelCrit {} -> Barreloid
LampCrit {} -> NonDrawnCreature LampCrit {} -> NonDrawnCreature
-3
View File
@@ -19,7 +19,6 @@ import qualified Data.IntSet as IS
crDexterity :: Creature -> Int crDexterity :: Creature -> Int
crDexterity cr = case cr ^. crType of crDexterity cr = case cr ^. crType of
Avatar { _avDexterity = x } -> x Avatar { _avDexterity = x } -> x
AvatarDead -> 0
ChaseCrit {} -> 46 ChaseCrit {} -> 46
SwarmCrit -> 46 SwarmCrit -> 46
AutoCrit -> 46 AutoCrit -> 46
@@ -29,7 +28,6 @@ crDexterity cr = case cr ^. crType of
crStrength :: Creature -> Int crStrength :: Creature -> Int
crStrength cr = case cr ^. crType of crStrength cr = case cr ^. crType of
Avatar { _avStrength = x } -> x Avatar { _avStrength = x } -> x
AvatarDead -> 0
ChaseCrit {} -> 46 ChaseCrit {} -> 46
SwarmCrit -> 40 SwarmCrit -> 40
AutoCrit -> 46 AutoCrit -> 46
@@ -39,7 +37,6 @@ crStrength cr = case cr ^. crType of
crIntelligence :: Creature -> Int crIntelligence :: Creature -> Int
crIntelligence cr = case cr ^. crType of crIntelligence cr = case cr ^. crType of
Avatar { _avIntelligence = x } -> x Avatar { _avIntelligence = x } -> x
AvatarDead -> 0
ChaseCrit {} -> 20 ChaseCrit {} -> 20
SwarmCrit -> 20 SwarmCrit -> 20
AutoCrit -> 20 AutoCrit -> 20
-1
View File
@@ -53,7 +53,6 @@ updateLivingCreature cr =
. yourControl cr . yourControl cr
LampCrit{} -> updateLampoid cr LampCrit{} -> updateLampoid cr
BarrelCrit bt -> updateBarreloid bt cr BarrelCrit bt -> updateBarreloid bt cr
AvatarDead -> id
ChaseCrit{} -> \w -> ChaseCrit{} -> \w ->
crUpdate cid . performActions cid $ crUpdate cid . performActions cid $
over (cWorld . lWorld . creatures . ix cid) (chaseCritInternal w) w over (cWorld . lWorld . creatures . ix cid) (chaseCritInternal w) w
-3
View File
@@ -16,7 +16,6 @@ import System.Random
crVocalizationSound :: Creature -> Maybe SoundID crVocalizationSound :: Creature -> Maybe SoundID
crVocalizationSound cr = case cr ^. crType of crVocalizationSound cr = case cr ^. crType of
Avatar{} -> Nothing Avatar{} -> Nothing
AvatarDead -> Nothing
ChaseCrit{} -> Just seagullChatterS ChaseCrit{} -> Just seagullChatterS
SwarmCrit -> Nothing SwarmCrit -> Nothing
AutoCrit -> Nothing AutoCrit -> Nothing
@@ -26,7 +25,6 @@ crVocalizationSound cr = case cr ^. crType of
crWarningSounds :: Creature -> [SoundID] crWarningSounds :: Creature -> [SoundID]
crWarningSounds cr = case cr ^. crType of crWarningSounds cr = case cr ^. crType of
Avatar{} -> mempty Avatar{} -> mempty
AvatarDead -> mempty
ChaseCrit{} -> ChaseCrit{} ->
[ seagullBarkS [ seagullBarkS
, seagullChatterS , seagullChatterS
@@ -45,7 +43,6 @@ crWarningSounds cr = case cr ^. crType of
crDeathSounds :: Creature -> DeathType -> [SoundID] crDeathSounds :: Creature -> DeathType -> [SoundID]
crDeathSounds cr dt = case cr ^. crType of crDeathSounds cr dt = case cr ^. crType of
Avatar{} -> mempty Avatar{} -> mempty
AvatarDead -> mempty
ChaseCrit{} -> defaultDeathSounds dt ChaseCrit{} -> defaultDeathSounds dt
SwarmCrit -> mempty SwarmCrit -> mempty
AutoCrit -> mempty AutoCrit -> mempty
+4 -1
View File
@@ -63,14 +63,16 @@ data CreatureType
, _avDexterity :: Int , _avDexterity :: Int
, _avIntelligence :: Int , _avIntelligence :: Int
, _avMoveSpeed :: Float , _avMoveSpeed :: Float
, _avPosture :: AvatarPosture
} }
| AvatarDead
| ChaseCrit {_meleeCooldown :: Int} | ChaseCrit {_meleeCooldown :: Int}
| SwarmCrit | SwarmCrit
| AutoCrit | AutoCrit
| BarrelCrit {_barrelType :: BarrelType} | BarrelCrit {_barrelType :: BarrelType}
| LampCrit {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int} | LampCrit {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int}
data AvatarPosture = AvPosture
data CreatureShape data CreatureShape
= Humanoid = Humanoid
{ _skinHead :: Color { _skinHead :: Color
@@ -102,4 +104,5 @@ deriveJSON defaultOptions ''Vocalization
--deriveJSON defaultOptions ''CrMvType --deriveJSON defaultOptions ''CrMvType
deriveJSON defaultOptions ''HumanoidAI deriveJSON defaultOptions ''HumanoidAI
deriveJSON defaultOptions ''BarrelType deriveJSON defaultOptions ''BarrelType
deriveJSON defaultOptions ''AvatarPosture
deriveJSON defaultOptions ''CreatureType deriveJSON defaultOptions ''CreatureType
+2 -2
View File
@@ -31,8 +31,8 @@ data RoomLink = RoomLink
data RoomType data RoomType
= DefaultRoomType = DefaultRoomType
| RectRoomType | RectRoomType
{ _numLinkEW :: Int { _numLinkEW :: Int -- note this is ONE LESS than might be expected
, _numLinkNS :: Int , _numLinkNS :: Int -- note this is ONE LESS than might be expected
, _linkGapEW :: Float , _linkGapEW :: Float
, _linkGapNS :: Float , _linkGapNS :: Float
, _rmWidth :: Float , _rmWidth :: Float
+4 -1
View File
@@ -17,6 +17,7 @@ module Dodge.Room.LasTurret (
storeRoomID, storeRoomID,
) where ) where
import Dodge.Room.Warning
import Dodge.Room.Modify import Dodge.Room.Modify
import Color import Color
import Control.Monad import Control.Monad
@@ -112,13 +113,15 @@ analyserByNthLink :: Int -> ProximityRequirement -> Int -> Placement
analyserByNthLink n proxreq i = analyserByNthLink n proxreq i =
analyser analyser
(SensorWithRequirement proxreq) (SensorWithRequirement proxreq)
-- (byNthLink n)
( atNthLnkOutShiftBy ( atNthLnkOutShiftBy
n n
( \(p, a) -> ( \(p, a) ->
((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow) ((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow)
) )
) )
(atNthLnkOutShiftBy n sensorshift) (byNthLink n)
-- (atNthLnkOutShiftBy n sensorshift)
& plExternalID & plExternalID
?~ i ?~ i
where where
+106 -47
View File
@@ -2,9 +2,8 @@
module Dodge.Room.Tutorial where module Dodge.Room.Tutorial where
import Dodge.Room.Foreground
import Data.Foldable
import Control.Monad import Control.Monad
import Data.Foldable
import qualified Data.IntMap.Strict as IM import qualified Data.IntMap.Strict as IM
import qualified Data.IntSet as IS import qualified Data.IntSet as IS
import Data.Maybe import Data.Maybe
@@ -26,6 +25,7 @@ import Dodge.Room.Airlock
import Dodge.Room.Boss import Dodge.Room.Boss
import Dodge.Room.Corridor import Dodge.Room.Corridor
import Dodge.Room.Door import Dodge.Room.Door
import Dodge.Room.Foreground
import Dodge.Room.LasTurret import Dodge.Room.LasTurret
import Dodge.Room.Link import Dodge.Room.Link
import Dodge.Room.LongDoor import Dodge.Room.LongDoor
@@ -55,33 +55,35 @@ tutAnoTree = do
foldMTRS foldMTRS
[ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox [ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox
, corDoor , corDoor
, loadAmmoTut
, corDoor
, tToBTree "slowCrush" . return . cleatOnward <$> pushCaverns , tToBTree "slowCrush" . return . cleatOnward <$> pushCaverns
, corDoor , corDoor
, chasmSpitTerminal , chasmSpitTerminal
--a , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a , corDoor -- a , corDoor
--a , tToBTree "sdr" . return . cleatOnward -- a , tToBTree "sdr" . return . cleatOnward
--a <$> (shuffleLinks =<< distributerRoom BulletAmmo 100000) -- a <$> (shuffleLinks =<< distributerRoom BulletAmmo 100000)
--a , -- , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a , -- , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a -- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom -- a -- --, tToBTree "sdr" . return . cleatOnward <$> slowDoorRoom
--a ---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] [] -- a ---- , tToBTree "sr" . return . cleatOnward <$> tanksRoom [] []
--a -- , return $ tToBTree "door" $ return $ cleatOnward door -- a -- , return $ tToBTree "door" $ return $ cleatOnward door
--a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a -- , tToBTree "sdr" . return . cleatOnward <$> -- a -- , tToBTree "sdr" . return . cleatOnward <$>
--a -- (shuffleLinks =<< tanksPipesRoom) -- a -- (shuffleLinks =<< tanksPipesRoom)
--a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a -- , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a return $ tToBTree "door" $ return $ cleatOnward door -- a return $ tToBTree "door" $ return $ cleatOnward door
--a , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a , tutHub -- a , tutHub
--a , chasmSpitTerminal -- a , chasmSpitTerminal
--a , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a , tutLight -- a , tutLight
--a , tutDrop -- a , tutDrop
--a , return $ tToBTree "cor" $ return $ cleatOnward corridor -- a , return $ tToBTree "cor" $ return $ cleatOnward corridor
--a ---- , AnTree $ pickupTut -- a ---- , AnTree $ pickupTut
--a ---- , AnTree $ weaponTut -- a ---- , AnTree $ weaponTut
] ]
foldMTRS :: foldMTRS ::
@@ -240,8 +242,8 @@ sqPlatformChasm b a =
sqSpitChasm :: Float -> Float -> ([[Point2]], [[Point2]]) sqSpitChasm :: Float -> Float -> ([[Point2]], [[Point2]])
sqSpitChasm b a = sqSpitChasm b a =
( [[ibr, obr, otr, itr], [itr, otr, otl, itl], [itl, otl, obl, ibl]] ( [[ibr, obr, otr, itr], [itr, otr, otl, itl], [itl, otl, obl, ibl]]
-- ( earClip clfs , -- ( earClip clfs
, [clfs] [clfs]
) )
where where
clfs = [ibr, obr, otr, otl, obl, ibl, itl, itr] clfs = [ibr, obr, otr, otl, obl, ibl, itl, itr]
@@ -253,6 +255,7 @@ sqSpitChasm b a =
ibl = V2 (-b) (-a) ibl = V2 (-b) (-a)
itl = V2 (-b) b itl = V2 (-b) b
itr = V2 b b itr = V2 b b
-- otl---------otr -- otl---------otr
-- | itl-itr | -- | itl-itr |
-- obr-ibl ibr-obl -- obr-ibl ibr-obl
@@ -272,15 +275,19 @@ midChasmSpit = do
isMidEdgeLink r North rl isMidEdgeLink r North rl
|| isMidEdgeLink r East rl || isMidEdgeLink r East rl
|| isMidEdgeLink r West rl || isMidEdgeLink r West rl
, \rl -> OnEdge North `S.member` (rl ^. rlType) , \rl ->
OnEdge North `S.member` (rl ^. rlType)
&& not (FromEdge East 0 `S.member` (rl ^. rlType)) && not (FromEdge East 0 `S.member` (rl ^. rlType))
&& not (FromEdge West 0 `S.member` (rl ^. rlType)) && not (FromEdge West 0 `S.member` (rl ^. rlType))
] ]
shuffleLinks $ shuffleLinks $
r r
& rmLinks %~ setOutLinks foutlnks & rmLinks
& rmLinks %~ setInLinks (isMidEdgeLink r South) %~ setOutLinks foutlnks
& rmPmnts .~ cs & rmLinks
%~ setInLinks (isMidEdgeLink r South)
& rmPmnts
.~ cs
where where
censquare x y = do censquare x y = do
z <- state $ randomR (40, 60) z <- state $ randomR (40, 60)
@@ -304,21 +311,26 @@ chasmSpitTerminal = do
l2 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp North West l2 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp North West
l3 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp East North l3 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp East North
l4 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp East South l4 = mntLightLnkShape shp $ resetPLUse $ rprBool $ \rp _ -> f rp East South
ls <- takeOne [[l1,l2],[l3,l4] ls <-
-- ,[spanLightI (V2 120 0) (V2 120 300)] takeOne
-- , [spanLightI (V2 0 128) (V2 300 128)] [ [l1, l2]
-- , [spanLightI (V2 300 0) (V2 0 300), sps0 $ putShape $ thinHighBar 95 0 300] , [l3, l4]
-- ,[spanLightI (V2 120 0) (V2 120 300)]
-- , [spanLightI (V2 0 128) (V2 300 128)]
-- , [spanLightI (V2 300 0) (V2 0 300), sps0 $ putShape $ thinHighBar 95 0 300]
] ]
gh <- takeOne [55,75,97] gh <- takeOne [55, 75, 97]
gird <- takeOne [girderZ gh 30 10,girder gh 30 10,girderV gh 30 10] gird <- takeOne [girderZ gh 30 10, girder gh 30 10, girderV gh 30 10]
dec <- takeOne $ replicate 3 [] <> dec <-
[[sps0 $ putShape $ gird (V2 30 0) (V2 30 300)] takeOne $
,[sps0 $ putShape $ gird (V2 270 0) (V2 270 300)] replicate 3 []
,[sps0 $ putShape $ gird (V2 30 0) (V2 30 300),sps0 $ putShape $ gird (V2 270 0) (V2 270 300)] <> [ [sps0 $ putShape $ gird (V2 30 0) (V2 30 300)]
,[sps0 $ putShape $ gird (V2 0 20) (V2 300 20)] , [sps0 $ putShape $ gird (V2 270 0) (V2 270 300)]
,[sps0 $ putShape $ gird (V2 0 200) (V2 300 200)] , [sps0 $ putShape $ gird (V2 30 0) (V2 30 300), sps0 $ putShape $ gird (V2 270 0) (V2 270 300)]
,[sps0 $ putShape $ gird (V2 0 280) (V2 300 280)] , [sps0 $ putShape $ gird (V2 0 20) (V2 300 20)]
,[sps0 $ putShape $ gird (V2 0 20) (V2 300 20),sps0 $ putShape $ gird (V2 0 280) (V2 300 280)] , [sps0 $ putShape $ gird (V2 0 200) (V2 300 200)]
, [sps0 $ putShape $ gird (V2 0 280) (V2 300 280)]
, [sps0 $ putShape $ gird (V2 0 20) (V2 300 20), sps0 $ putShape $ gird (V2 0 280) (V2 300 280)]
] ]
let y' = y & rmPmnts <>~ ls <> dec let y' = y & rmPmnts <>~ ls <> dec
return $ return $
@@ -330,7 +342,8 @@ chasmSpitTerminal = do
, return $ cleatOnward $ triggerDoorRoom i1 , return $ cleatOnward $ triggerDoorRoom i1
] ]
where where
f rp a b = FromEdge a 2 `S.member` fold (rp ^? rpType . rplsType) f rp a b =
FromEdge a 2 `S.member` fold (rp ^? rpType . rplsType)
&& OnEdge b `S.member` fold (rp ^? rpType . rplsType) && OnEdge b `S.member` fold (rp ^? rpType . rplsType)
polyChasm :: Int -> Float -> State LayoutVars Room polyChasm :: Int -> Float -> State LayoutVars Room
@@ -409,6 +422,52 @@ tutLight = do
) )
_ -> Nothing _ -> Nothing
loadAmmoTut :: State LayoutVars (MetaTree Room String)
loadAmmoTut = do
i <- nextLayoutInt
amrm <-
putSingleLight
. analyserByDoor (RequireEquipment (AMMOMAG DRUMMAG)) i
=<< shuffleLinks
=<< roomRectAutoLights 100 100
j <- nextLayoutInt
wprm <-
putSingleLight
. addDoorAtNthLinkToggleInterrupt 0 ["DOOR LOCKDOWN ACTIVE"] j
=<< shuffleLinks
=<< roomRectAutoLights 100 100
return $
tToBTree "loadAmmoTest" $
treeFromPost
[amrm & rmPmnts .:~ sps (PS 50 0) (PutFlIt (drumMag & itConsumables ?~ 90))
, triggerDoorRoom i
, wprm & rmPmnts .:~ sps (PS 50 0) (PutFlIt burstRifle)
] (triggerDoorRoom j)
putSingleLight :: Room -> State LayoutVars Room
putSingleLight rm = do
f <- case rm ^. rmType of
DefaultRoomType -> pure id
RectRoomType{_rmWidth = x, _rmHeight = y, _numLinkEW = nx, _numLinkNS = ny} -> do
x' <-
if odd nx
then pure $ x / 2
else takeOne [x / 2 + 21, x / 2 - 21]
y' <-
if odd ny
then pure $ y / 2
else takeOne [y / 2 + 21, y / 2 - 21]
ps <-
takeOne
[ (V2 x' 0, V2 x' y)
, (V2 0 y', V2 x y')
]
return $ rmPmnts .:~ uncurry spanLightI ps
RoomNgon{_rmngonSize = x} -> do
y <- takeOne [21, -21]
return $ rmPmnts .:~ spanLightI (V2 (-x) y) (V2 x y)
return . f $ removeLights rm
tutHub :: State LayoutVars (MetaTree Room String) tutHub :: State LayoutVars (MetaTree Room String)
tutHub = do tutHub = do
(is, wbp) <- setTreeInts =<< critsRoom 1 (is, wbp) <- setTreeInts =<< critsRoom 1
+5 -1
View File
@@ -5,6 +5,7 @@ module Dodge.Room.Warning (
addDoorToggleTerminal', addDoorToggleTerminal',
addDoorAtNthLinkToggleTerminal, addDoorAtNthLinkToggleTerminal,
addDoorAtNthLinkToggleInterrupt, addDoorAtNthLinkToggleInterrupt,
byNthLink,
) where ) where
import Dodge.LevelGen.PlacementHelper import Dodge.LevelGen.PlacementHelper
@@ -40,6 +41,9 @@ warningRooms str n = do
addDoorToggleTerminal :: [TerminalLine] -> Int -> Room -> Room addDoorToggleTerminal :: [TerminalLine] -> Int -> Room -> Room
addDoorToggleTerminal = addDoorAtNthLinkToggleTerminal 0 addDoorToggleTerminal = addDoorAtNthLinkToggleTerminal 0
byNthLink :: Int -> PlacementSpot
byNthLink = rprShift . moveToSideNthOutLink (S.singleton UsedPosLow)
addDoorAtNthLinkToggleInterrupt :: Int -> [String] -> Int -> Room -> Room addDoorAtNthLinkToggleInterrupt :: Int -> [String] -> Int -> Room -> Room
addDoorAtNthLinkToggleInterrupt j x i = addDoorAtNthLinkToggleInterrupt j x i =
(rmName .++~ "doorInterrupt-") (rmName .++~ "doorInterrupt-")
@@ -47,7 +51,7 @@ addDoorAtNthLinkToggleInterrupt j x i =
where where
outplace = outplace =
extTrigLitPos extTrigLitPos
(atNthLnkOutShiftBy j (\(p, a) -> ((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow))) (atNthLnkOutShiftBy j (\(p, a) -> ((p + rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow)))
( Just . set plSpot (rprShift (moveToSideNthOutLink (S.singleton UsedPosLow) j)) ( Just . set plSpot (rprShift (moveToSideNthOutLink (S.singleton UsedPosLow) j))
. putInterrupt . putInterrupt
) )
+113 -106
View File
@@ -76,8 +76,9 @@ Audition src/Dodge/Data/Creature/Perception.hs 45;" t
AutoAI src/Dodge/Data/Creature/Misc.hs 45;" C AutoAI src/Dodge/Data/Creature/Misc.hs 45;" C
AutoCrit src/Dodge/Data/Creature/Misc.hs 70;" C AutoCrit src/Dodge/Data/Creature/Misc.hs 70;" C
AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C
AvPosture src/Dodge/Data/Creature/Misc.hs 74;" C
Avatar src/Dodge/Data/Creature/Misc.hs 59;" C Avatar src/Dodge/Data/Creature/Misc.hs 59;" C
AvatarDead src/Dodge/Data/Creature/Misc.hs 67;" C AvatarPosture src/Dodge/Data/Creature/Misc.hs 74;" t
Awareness src/Dodge/Data/Creature/Perception.hs 63;" t Awareness src/Dodge/Data/Creature/Perception.hs 63;" t
BANGCONE src/Dodge/Data/Item/Combine.hs 149;" C BANGCONE src/Dodge/Data/Item/Combine.hs 149;" C
BANGROD src/Dodge/Data/Item/Combine.hs 158;" C BANGROD src/Dodge/Data/Item/Combine.hs 158;" C
@@ -105,8 +106,8 @@ BackgroundSound src/Dodge/Data/SoundOrigin.hs 13;" C
Bark src/Dodge/Data/ActionPlan.hs 39;" C Bark src/Dodge/Data/ActionPlan.hs 39;" C
BarrelCrit src/Dodge/Data/Creature/Misc.hs 71;" C BarrelCrit src/Dodge/Data/Creature/Misc.hs 71;" C
BarrelHiss src/Dodge/Data/SoundOrigin.hs 33;" C BarrelHiss src/Dodge/Data/SoundOrigin.hs 33;" C
BarrelType src/Dodge/Data/Creature/Misc.hs 85;" t BarrelType src/Dodge/Data/Creature/Misc.hs 87;" t
Barreloid src/Dodge/Data/Creature/Misc.hs 81;" C Barreloid src/Dodge/Data/Creature/Misc.hs 83;" C
BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 41;" C BasicBulletTrajectory src/Dodge/Data/Bullet.hs 41;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 48;" C BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 48;" C
@@ -280,7 +281,7 @@ CreateFlame src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C
CreatePoisonGas src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C CreatePoisonGas src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C
Creature src/Dodge/Data/Creature.hs 35;" t Creature src/Dodge/Data/Creature.hs 35;" t
CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C
CreatureShape src/Dodge/Data/Creature/Misc.hs 74;" t CreatureShape src/Dodge/Data/Creature/Misc.hs 76;" t
CreatureType src/Dodge/Data/Creature/Misc.hs 58;" t CreatureType src/Dodge/Data/Creature/Misc.hs 58;" t
Crushing src/Dodge/Data/Damage.hs 19;" C Crushing src/Dodge/Data/Damage.hs 19;" C
CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C
@@ -399,7 +400,7 @@ Explosion src/Dodge/Data/SoundOrigin.hs 38;" C
ExplosionPayload src/Dodge/Data/Payload.hs 9;" C ExplosionPayload src/Dodge/Data/Payload.hs 9;" C
Explosive src/Dodge/Data/Damage.hs 25;" C Explosive src/Dodge/Data/Damage.hs 25;" C
ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 14;" C ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 14;" C
ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 87;" C ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 89;" C
ExplosivePutty src/Dodge/Data/AmmoType.hs 16;" C ExplosivePutty src/Dodge/Data/AmmoType.hs 16;" C
ExtraMenuOption src/Dodge/Data/Universe.hs 76;" t ExtraMenuOption src/Dodge/Data/Universe.hs 76;" t
Eyes src/Dodge/Data/Creature/Perception.hs 39;" C Eyes src/Dodge/Data/Creature/Perception.hs 39;" C
@@ -551,7 +552,7 @@ HotkeyV src/Dodge/Data/Equipment/Misc.hs 38;" C
HotkeyX src/Dodge/Data/Equipment/Misc.hs 36;" C HotkeyX src/Dodge/Data/Equipment/Misc.hs 36;" C
HotkeyZ src/Dodge/Data/Equipment/Misc.hs 35;" C HotkeyZ src/Dodge/Data/Equipment/Misc.hs 35;" C
Huge src/Shape/Data.hs 23;" C Huge src/Shape/Data.hs 23;" C
Humanoid src/Dodge/Data/Creature/Misc.hs 75;" C Humanoid src/Dodge/Data/Creature/Misc.hs 77;" C
HumanoidAI src/Dodge/Data/Creature/Misc.hs 37;" t HumanoidAI src/Dodge/Data/Creature/Misc.hs 37;" t
IMSI src/Dodge/Data/SelectionList.hs 40;" t IMSI src/Dodge/Data/SelectionList.hs 40;" t
IMSS src/Dodge/Data/SelectionList.hs 38;" t IMSS src/Dodge/Data/SelectionList.hs 38;" t
@@ -854,7 +855,7 @@ NoWorldEffect src/Dodge/Data/WorldEffect.hs 26;" C
Noclip src/Dodge/Data/Config.hs 83;" C Noclip src/Dodge/Data/Config.hs 83;" C
NodeMTree src/Dodge/Data/MetaTree.hs 17;" C NodeMTree src/Dodge/Data/MetaTree.hs 17;" C
NodeTree src/Dodge/Data/MetaTree.hs 16;" C NodeTree src/Dodge/Data/MetaTree.hs 16;" C
NonDrawnCreature src/Dodge/Data/Creature/Misc.hs 82;" C NonDrawnCreature src/Dodge/Data/Creature/Misc.hs 84;" C
NonInf src/Dodge/Data/CardinalPoint.hs 44;" C NonInf src/Dodge/Data/CardinalPoint.hs 44;" C
NormalOptions src/Dodge/Data/Universe.hs 71;" C NormalOptions src/Dodge/Data/Universe.hs 71;" C
NormalSpark src/Dodge/Data/Spark.hs 19;" C NormalSpark src/Dodge/Data/Spark.hs 19;" C
@@ -996,7 +997,7 @@ Piezoelectric src/Dodge/Data/Material.hs 23;" C
PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C
Placement src/Dodge/Data/GenWorld.hs 114;" t Placement src/Dodge/Data/GenWorld.hs 114;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 98;" t PlacementSpot src/Dodge/Data/GenWorld.hs 98;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 86;" C PlainBarrel src/Dodge/Data/Creature/Misc.hs 88;" C
PlainDeath src/Dodge/Data/Creature.hs 69;" C PlainDeath src/Dodge/Data/Creature.hs 69;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlasmaBall src/Dodge/Data/PlasmaBall.hs 13;" t PlasmaBall src/Dodge/Data/PlasmaBall.hs 13;" t
@@ -1552,6 +1553,7 @@ _auDist src/Dodge/Data/Creature/Perception.hs 46;" f
_avDexterity src/Dodge/Data/Creature/Misc.hs 63;" f _avDexterity src/Dodge/Data/Creature/Misc.hs 63;" f
_avIntelligence src/Dodge/Data/Creature/Misc.hs 64;" f _avIntelligence src/Dodge/Data/Creature/Misc.hs 64;" f
_avMoveSpeed src/Dodge/Data/Creature/Misc.hs 65;" f _avMoveSpeed src/Dodge/Data/Creature/Misc.hs 65;" f
_avPosture src/Dodge/Data/Creature/Misc.hs 66;" f
_avStrength src/Dodge/Data/Creature/Misc.hs 62;" f _avStrength src/Dodge/Data/Creature/Misc.hs 62;" f
_avatarMaterial src/Dodge/Data/Creature/Misc.hs 61;" f _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
@@ -1882,7 +1884,7 @@ _heldWorldPos src/Dodge/Data/Input.hs 45;" f
_highlightItems src/Dodge/Data/CWorld.hs 36;" f _highlightItems src/Dodge/Data/CWorld.hs 36;" f
_hotkeys src/Dodge/Data/LWorld.hs 145;" f _hotkeys src/Dodge/Data/LWorld.hs 145;" f
_hud src/Dodge/Data/World.hs 46;" f _hud src/Dodge/Data/World.hs 46;" f
_humanoidAI src/Dodge/Data/Creature/Misc.hs 79;" f _humanoidAI src/Dodge/Data/Creature/Misc.hs 81;" f
_ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f _ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f
_ibtAttach src/Dodge/Data/Item/Combine.hs 19;" f _ibtAttach src/Dodge/Data/Item/Combine.hs 19;" f
_ibtBulletMod src/Dodge/Data/Item/Combine.hs 22;" f _ibtBulletMod src/Dodge/Data/Item/Combine.hs 22;" f
@@ -2098,7 +2100,7 @@ _phTargetingID src/Dodge/Data/Projectile.hs 42;" f
_pickUpLevel src/Dodge/Layout/Generate.hs 15;" f _pickUpLevel src/Dodge/Layout/Generate.hs 15;" f
_pickUps src/Dodge/Layout/Generate.hs 16;" f _pickUps src/Dodge/Layout/Generate.hs 16;" f
_pictureShaders src/Data/Preload/Render.hs 31;" f _pictureShaders src/Data/Preload/Render.hs 31;" f
_piercedPoints src/Dodge/Data/Creature/Misc.hs 87;" f _piercedPoints src/Dodge/Data/Creature/Misc.hs 89;" f
_pjBarrelSpin src/Dodge/Data/Projectile.hs 23;" f _pjBarrelSpin src/Dodge/Data/Projectile.hs 23;" f
_pjDetonatorID src/Dodge/Data/Projectile.hs 25;" f _pjDetonatorID src/Dodge/Data/Projectile.hs 25;" f
_pjDir src/Dodge/Data/Projectile.hs 18;" f _pjDir src/Dodge/Data/Projectile.hs 18;" f
@@ -2309,9 +2311,9 @@ _skOldPos src/Dodge/Data/Spark.hs 14;" f
_skPos src/Dodge/Data/Spark.hs 13;" f _skPos src/Dodge/Data/Spark.hs 13;" f
_skType src/Dodge/Data/Spark.hs 15;" f _skType src/Dodge/Data/Spark.hs 15;" f
_skVel src/Dodge/Data/Spark.hs 12;" f _skVel src/Dodge/Data/Spark.hs 12;" f
_skinHead src/Dodge/Data/Creature/Misc.hs 76;" f _skinHead src/Dodge/Data/Creature/Misc.hs 78;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 78;" f _skinLower src/Dodge/Data/Creature/Misc.hs 80;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 77;" f _skinUpper src/Dodge/Data/Creature/Misc.hs 79;" f
_slInt src/Dodge/Data/HUD.hs 39;" f _slInt src/Dodge/Data/HUD.hs 39;" f
_slSec src/Dodge/Data/HUD.hs 39;" f _slSec src/Dodge/Data/HUD.hs 39;" f
_slSet src/Dodge/Data/HUD.hs 39;" f _slSet src/Dodge/Data/HUD.hs 39;" f
@@ -2538,10 +2540,10 @@ addBranchAt src/Dodge/Tree/GenerateStructure.hs 18;" f
addButtonSlowDoor src/Dodge/Room/LongDoor.hs 101;" f addButtonSlowDoor src/Dodge/Room/LongDoor.hs 101;" f
addCrGibs src/Dodge/Prop/Gib.hs 17;" f addCrGibs src/Dodge/Prop/Gib.hs 17;" f
addDepth src/Picture/Base.hs 125;" f addDepth src/Picture/Base.hs 125;" f
addDoorAtNthLinkToggleInterrupt src/Dodge/Room/Warning.hs 43;" f addDoorAtNthLinkToggleInterrupt src/Dodge/Room/Warning.hs 58;" f
addDoorAtNthLinkToggleTerminal src/Dodge/Room/Warning.hs 62;" f addDoorAtNthLinkToggleTerminal src/Dodge/Room/Warning.hs 77;" f
addDoorToggleTerminal src/Dodge/Room/Warning.hs 40;" f addDoorToggleTerminal src/Dodge/Room/Warning.hs 41;" f
addDoorToggleTerminal' src/Dodge/Room/Warning.hs 83;" f addDoorToggleTerminal' src/Dodge/Room/Warning.hs 98;" f
addGib4 src/Dodge/Prop/Gib.hs 52;" f addGib4 src/Dodge/Prop/Gib.hs 52;" f
addGibAt src/Dodge/Prop/Gib.hs 63;" f addGibAt src/Dodge/Prop/Gib.hs 63;" f
addGibAtDir src/Dodge/Prop/Gib.hs 69;" f addGibAtDir src/Dodge/Prop/Gib.hs 69;" f
@@ -2560,6 +2562,7 @@ addLightsNGon src/Dodge/Room/Modify.hs 41;" f
addNodesCrossing src/Dodge/Room/Path.hs 28;" f addNodesCrossing src/Dodge/Room/Path.hs 28;" f
addNodesCrossingCirc src/Dodge/Room/Path.hs 41;" f addNodesCrossingCirc src/Dodge/Room/Path.hs 41;" f
addPane src/Dodge/Placement/PlaceSpot.hs 174;" f addPane src/Dodge/Placement/PlaceSpot.hs 174;" f
addPlAtNthLinkToggleLight src/Dodge/Room/Warning.hs 44;" f
addPointPolygon src/Geometry/Polygon.hs 142;" f addPointPolygon src/Geometry/Polygon.hs 142;" f
addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f
addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f
@@ -2569,7 +2572,7 @@ addSideEffect src/Dodge/Concurrent.hs 29;" f
addSouthPillars src/Dodge/Room/LongDoor.hs 92;" f addSouthPillars src/Dodge/Room/LongDoor.hs 92;" f
addTermSignal src/Dodge/Event/Input.hs 31;" f addTermSignal src/Dodge/Event/Input.hs 31;" f
addToTrunk src/TreeHelp.hs 157;" f addToTrunk src/TreeHelp.hs 157;" f
addWarningTerminal src/Dodge/Room/Warning.hs 94;" f addWarningTerminal src/Dodge/Room/Warning.hs 109;" 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 479;" f advanceScrollAmount src/Dodge/Update.hs 479;" f
@@ -2593,7 +2596,7 @@ ammoMagSPic src/Dodge/Item/Draw/SPic.hs 129;" 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 127;" f analyserByDoor src/Dodge/Room/LasTurret.hs 128;" f
analyserByNthLink src/Dodge/Room/LasTurret.hs 111;" f analyserByNthLink src/Dodge/Room/LasTurret.hs 111;" 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
@@ -2671,7 +2674,7 @@ axisInt src/Geometry/Intersect.hs 246;" f
azure src/Color.hs 49;" f azure src/Color.hs 49;" f
bQuadToF src/Geometry/Bezier.hs 37;" f bQuadToF src/Geometry/Bezier.hs 37;" f
bQuadToLine src/Geometry/Bezier.hs 30;" f bQuadToLine src/Geometry/Bezier.hs 30;" f
backPQ src/Dodge/Creature/HandPos.hs 166;" f backPQ src/Dodge/Creature/HandPos.hs 168;" f
backgroundSpaceS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 729;" f backgroundSpaceS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 729;" f
backpackCombinations src/Dodge/Combine/Combinations.hs 27;" f backpackCombinations src/Dodge/Combine/Combinations.hs 27;" f
backpackShape src/Dodge/Item/Draw/SPic.hs 188;" f backpackShape src/Dodge/Item/Draw/SPic.hs 188;" f
@@ -2778,7 +2781,8 @@ bulletWeapons src/Dodge/Combine/Combinations.hs 247;" 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 18;" f buttonFlip src/Dodge/Button/Event.hs 18;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 593;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 593;" f
cChasm src/Dodge/Room/Tutorial.hs 133;" f byNthLink src/Dodge/Room/Warning.hs 55;" f
cChasm src/Dodge/Room/Tutorial.hs 135;" 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
@@ -2816,16 +2820,16 @@ chaseCritInternal src/Dodge/Humanoid.hs 8;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 122;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 122;" 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 178;" f chasmRotate src/Dodge/Creature/Update.hs 177;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 358;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 371;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 298;" f chasmSpitTerminal src/Dodge/Room/Tutorial.hs 305;" f
chasmTestCorpse src/Dodge/Creature/Update.hs 161;" f chasmTestCorpse src/Dodge/Creature/Update.hs 160;" f
chasmTestLiving src/Dodge/Creature/Update.hs 137;" f chasmTestLiving src/Dodge/Creature/Update.hs 136;" 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 78;" f checkDeath src/Dodge/Creature/Update.hs 77;" f
checkDeath' src/Dodge/Creature/Update.hs 81;" f checkDeath' src/Dodge/Creature/Update.hs 80;" f
checkEndGame src/Dodge/Update.hs 856;" f checkEndGame src/Dodge/Update.hs 856;" f
checkErrorGL src/Shader/Compile.hs 86;" f checkErrorGL src/Shader/Compile.hs 86;" f
checkFBO src/Framebuffer/Check.hs 6;" f checkFBO src/Framebuffer/Check.hs 6;" f
@@ -2837,7 +2841,7 @@ 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
chemFuelPouch src/Dodge/Item/Ammo.hs 81;" f chemFuelPouch src/Dodge/Item/Ammo.hs 81;" f
chestPQ src/Dodge/Creature/HandPos.hs 163;" f chestPQ src/Dodge/Creature/HandPos.hs 165;" f
chooseCursorBorders src/Dodge/Render/List.hs 141;" f chooseCursorBorders src/Dodge/Render/List.hs 141;" f
chooseEquipPosition src/Dodge/Inventory/RBList.hs 41;" f chooseEquipPosition src/Dodge/Inventory/RBList.hs 41;" f
chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 35;" f chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 35;" f
@@ -2946,7 +2950,7 @@ 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 405;" f corDoor src/Dodge/Room/Room.hs 405;" 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 97;" f
corridor src/Dodge/Room/Corridor.hs 17;" f corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 135;" f corridorBoss src/Dodge/LockAndKey.hs 135;" f
corridorN src/Dodge/Room/Corridor.hs 58;" f corridorN src/Dodge/Room/Corridor.hs 58;" f
@@ -2957,8 +2961,8 @@ 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 53;" f crCanSeeCr src/Dodge/Creature/Test.hs 53;" f
crCrSpring src/Dodge/Update.hs 978;" f crCrSpring src/Dodge/Update.hs 978;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 62;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 59;" f
crDeathSounds src/Dodge/Creature/Vocalization.hs 45;" f crDeathSounds src/Dodge/Creature/Vocalization.hs 43;" 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
crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 53;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 53;" f
@@ -2969,10 +2973,10 @@ crHit src/Dodge/WorldEvent/ThingsHit.hs 136;" 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 94;" f crInAimStance src/Dodge/Creature/Test.hs 94;" f
crIntelligence src/Dodge/Creature/Statistics.hs 39;" f crIntelligence src/Dodge/Creature/Statistics.hs 37;" f
crIsAiming src/Dodge/Creature/Test.hs 61;" f crIsAiming src/Dodge/Creature/Test.hs 61;" f
crIsArmouredFrom src/Dodge/Creature/Test.hs 109;" f crIsArmouredFrom src/Dodge/Creature/Test.hs 109;" f
crLeftHandWall src/Dodge/Creature/HandPos.hs 89;" f crLeftHandWall src/Dodge/Creature/HandPos.hs 91;" f
crMass src/Dodge/Creature/Mass.hs 5;" f crMass src/Dodge/Creature/Mass.hs 5;" f
crMaterial src/Dodge/Creature/Material.hs 8;" f crMaterial src/Dodge/Creature/Material.hs 8;" f
crMaxHP src/Dodge/Creature/MaxHP.hs 6;" f crMaxHP src/Dodge/Creature/MaxHP.hs 6;" f
@@ -2985,18 +2989,18 @@ crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 132;" f crNearPoint src/Dodge/Creature/Test.hs 132;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f
crRad src/Dodge/Creature/Radius.hs 7;" f crRad src/Dodge/Creature/Radius.hs 7;" f
crRightHandWall src/Dodge/Creature/HandPos.hs 71;" f crRightHandWall src/Dodge/Creature/HandPos.hs 73;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 75;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 75;" 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 965;" f crSpring src/Dodge/Update.hs 965;" f
crStratConMatches src/Dodge/Creature/Test.hs 81;" f crStratConMatches src/Dodge/Creature/Test.hs 81;" f
crStrength src/Dodge/Creature/Statistics.hs 29;" f crStrength src/Dodge/Creature/Statistics.hs 28;" f
crUpdate src/Dodge/Creature/Update.hs 71;" f crUpdate src/Dodge/Creature/Update.hs 70;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 66;" f 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 16;" f crVocalizationSound src/Dodge/Creature/Vocalization.hs 16;" f
crWarningSounds src/Dodge/Creature/Vocalization.hs 26;" f crWarningSounds src/Dodge/Creature/Vocalization.hs 25;" f
crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 60;" f crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 60;" f
crWlPbHitZ src/Dodge/WorldEvent/ThingsHit.hs 70;" f crWlPbHitZ src/Dodge/WorldEvent/ThingsHit.hs 70;" f
crZoneSize src/Dodge/Zoning/Creature.hs 43;" f crZoneSize src/Dodge/Zoning/Creature.hs 43;" f
@@ -3134,7 +3138,7 @@ defEquipment src/Dodge/Default.hs 24;" f
defHeldItem src/Dodge/Default/Item.hs 9;" f defHeldItem src/Dodge/Default/Item.hs 9;" f
defLSPic src/Dodge/LightSource/Draw.hs 10;" f defLSPic src/Dodge/LightSource/Draw.hs 10;" f
defSPic src/Dodge/Item/Draw/SPic.hs 310;" f defSPic src/Dodge/Item/Draw/SPic.hs 310;" f
defaultAimMvType src/Dodge/Creature/MoveType.hs 16;" f defaultAimMvType src/Dodge/Creature/MoveType.hs 15;" f
defaultAimingCrit src/Dodge/Default/Creature.hs 109;" f defaultAimingCrit src/Dodge/Default/Creature.hs 109;" f
defaultAudition src/Dodge/Default/Creature.hs 94;" f defaultAudition src/Dodge/Default/Creature.hs 94;" f
defaultAutoWall src/Dodge/Default/Wall.hs 32;" f defaultAutoWall src/Dodge/Default/Wall.hs 32;" f
@@ -3145,13 +3149,13 @@ defaultButton src/Dodge/Default.hs 44;" f
defaultCWCam src/Dodge/Default/World.hs 73;" f defaultCWCam src/Dodge/Default/World.hs 73;" f
defaultCWGen src/Dodge/Default/World.hs 63;" f defaultCWGen src/Dodge/Default/World.hs 63;" f
defaultCWorld src/Dodge/Default/World.hs 88;" f defaultCWorld src/Dodge/Default/World.hs 88;" f
defaultChaseMvType src/Dodge/Creature/MoveType.hs 25;" f defaultChaseMvType src/Dodge/Creature/MoveType.hs 24;" f
defaultClusterStatus src/Dodge/Default/Room.hs 37;" f defaultClusterStatus src/Dodge/Default/Room.hs 37;" f
defaultConfig src/Dodge/Data/Config.hs 152;" 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 67;" f defaultCreatureMemory src/Dodge/Default/Creature.hs 67;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f
defaultDeathSounds src/Dodge/Creature/Vocalization.hs 55;" f defaultDeathSounds src/Dodge/Creature/Vocalization.hs 52;" f
defaultDirtBlock src/Dodge/Default/Block.hs 17;" f defaultDirtBlock src/Dodge/Default/Block.hs 17;" f
defaultDirtWall src/Dodge/Default/Wall.hs 47;" f defaultDirtWall src/Dodge/Default/Wall.hs 47;" f
defaultDoor src/Dodge/Default/Door.hs 5;" f defaultDoor src/Dodge/Default/Door.hs 5;" f
@@ -3438,7 +3442,7 @@ 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
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 286;" f drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 286;" f
dropAll src/Dodge/Creature/Update.hs 134;" f dropAll src/Dodge/Creature/Update.hs 133;" f
dropInventoryPath src/Dodge/HeldUse.hs 1371;" f dropInventoryPath src/Dodge/HeldUse.hs 1371;" f
dropItem src/Dodge/Creature/Action.hs 155;" f dropItem src/Dodge/Creature/Action.hs 155;" f
dropper src/Dodge/Item/Scope.hs 82;" f dropper src/Dodge/Item/Scope.hs 82;" f
@@ -3499,7 +3503,7 @@ equipSiteInfo src/Dodge/Item/Info.hs 253;" f
equipSitePQ src/Dodge/Creature/HandPos.hs 32;" f equipSitePQ src/Dodge/Creature/HandPos.hs 32;" f
equipType src/Dodge/Data/EquipType.hs 10;" f equipType src/Dodge/Data/EquipType.hs 10;" f
equipmentDesignation src/Dodge/Inventory/RBList.hs 52;" f equipmentDesignation src/Dodge/Inventory/RBList.hs 52;" f
equipmentStrValue src/Dodge/Creature/Statistics.hs 56;" f equipmentStrValue src/Dodge/Creature/Statistics.hs 53;" f
errorAngleVV src/Geometry.hs 59;" f errorAngleVV src/Geometry.hs 59;" f
errorClosestPointOnLine src/Geometry.hs 71;" f errorClosestPointOnLine src/Geometry.hs 71;" f
errorClosestPointOnLineParam src/Geometry.hs 77;" f errorClosestPointOnLineParam src/Geometry.hs 77;" f
@@ -3577,7 +3581,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 87;" f foldMTRS src/Dodge/Room/Tutorial.hs 89;" 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
@@ -3638,9 +3642,9 @@ getBulletType src/Dodge/HeldUse.hs 937;" f
getCloseObj src/Dodge/Update/Input/InGame.hs 509;" f getCloseObj src/Dodge/Update/Input/InGame.hs 509;" 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 47;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 505;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 564;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 492;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 551;" f
getDebugMouseOver src/Dodge/Update.hs 449;" f getDebugMouseOver src/Dodge/Update.hs 449;" 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
@@ -3657,7 +3661,7 @@ getPJStabiliser src/Dodge/HeldUse.hs 1271;" 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
getRoomFromID src/Dodge/Room/Modify.hs 31;" f getRoomFromID src/Dodge/Room/Modify.hs 31;" f
getRoomsFromInts src/Dodge/Room/Tutorial.hs 488;" f getRoomsFromInts src/Dodge/Room/Tutorial.hs 547;" 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
@@ -3742,10 +3746,10 @@ head src/DoubleStack.hs 14;" f
headLamp src/Dodge/Item/Equipment.hs 68;" f headLamp src/Dodge/Item/Equipment.hs 68;" f
headLampShape src/Dodge/Item/Draw/SPic.hs 423;" f headLampShape src/Dodge/Item/Draw/SPic.hs 423;" f
headMap src/Dodge/DoubleTree.hs 118;" f headMap src/Dodge/DoubleTree.hs 118;" f
headPQ src/Dodge/Creature/HandPos.hs 157;" f headPQ src/Dodge/Creature/HandPos.hs 159;" f
healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f
healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 108;" f healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 108;" f
healthTest src/Dodge/Room/LasTurret.hs 130;" f healthTest src/Dodge/Room/LasTurret.hs 131;" 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 27;" f heldAimStance src/Dodge/Item/AimStance.hs 27;" f
heldAimZoom src/Dodge/Update/Camera.hs 158;" f heldAimZoom src/Dodge/Update/Camera.hs 158;" f
@@ -3760,7 +3764,7 @@ heldItemMuzVel src/Dodge/HeldUse.hs 1022;" f
heldItemMuzzles src/Dodge/HeldUse.hs 198;" f heldItemMuzzles src/Dodge/HeldUse.hs 198;" f
heldItemRifling src/Dodge/HeldUse.hs 1064;" f heldItemRifling src/Dodge/HeldUse.hs 1064;" f
heldItemSPic src/Dodge/Item/Draw/SPic.hs 235;" f heldItemSPic src/Dodge/Item/Draw/SPic.hs 235;" f
heldItemWeight src/Dodge/Creature/Statistics.hs 80;" f heldItemWeight src/Dodge/Creature/Statistics.hs 77;" f
heldPositionInfo src/Dodge/Item/Info.hs 240;" f heldPositionInfo src/Dodge/Item/Info.hs 240;" f
heldTorqueAmount src/Dodge/HeldUse.hs 611;" f heldTorqueAmount src/Dodge/HeldUse.hs 611;" f
heldTriggerType src/Dodge/BaseTriggerType.hs 28;" f heldTriggerType src/Dodge/BaseTriggerType.hs 28;" f
@@ -3946,7 +3950,7 @@ itemString src/Dodge/Item/Display.hs 56;" f
itemToFunction src/Dodge/Item/Grammar.hs 111;" f itemToFunction src/Dodge/Item/Grammar.hs 111;" f
itemTreeSPic src/Dodge/Item/Draw/SPicTree.hs 13;" f itemTreeSPic src/Dodge/Item/Draw/SPicTree.hs 13;" f
itemTriggerType src/Dodge/BaseTriggerType.hs 16;" f itemTriggerType src/Dodge/BaseTriggerType.hs 16;" f
itemWeight src/Dodge/Creature/Statistics.hs 74;" f itemWeight src/Dodge/Creature/Statistics.hs 71;" f
iterateUntil src/MonadHelp.hs 23;" f iterateUntil src/MonadHelp.hs 23;" f
iterateWhile src/MonadHelp.hs 30;" f iterateWhile src/MonadHelp.hs 30;" f
itmBaseInfo src/Dodge/Item/Info.hs 30;" f itmBaseInfo src/Dodge/Item/Info.hs 30;" f
@@ -3972,26 +3976,26 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 37;" 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 45;" 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 145;" f lChasm src/Dodge/Room/Tutorial.hs 147;" 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 61;" f lShape src/Dodge/Placement/Instance/LightSource.hs 61;" f
lamp src/Dodge/Creature/Lamp.hs 18;" f lamp src/Dodge/Creature/Lamp.hs 18;" f
lampCrSPic src/Dodge/Render/ShapePicture.hs 125;" f lampCrSPic src/Dodge/Render/ShapePicture.hs 125;" f
lasCenRunClose' src/Dodge/Room/LasTurret.hs 309;" f lasCenRunClose' src/Dodge/Room/LasTurret.hs 310;" f
lasCenRunClose1 src/Dodge/Room/LasTurret.hs 398;" f lasCenRunClose1 src/Dodge/Room/LasTurret.hs 399;" f
lasCenRunClose2 src/Dodge/Room/LasTurret.hs 471;" f lasCenRunClose2 src/Dodge/Room/LasTurret.hs 472;" f
lasCenRunCloseLongCor src/Dodge/Room/LasTurret.hs 363;" f lasCenRunCloseLongCor src/Dodge/Room/LasTurret.hs 364;" f
lasCenSensEdge src/Dodge/Room/LasTurret.hs 165;" f lasCenSensEdge src/Dodge/Room/LasTurret.hs 166;" 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
lasRunRand src/Dodge/Room/LasTurret.hs 468;" f lasRunRand src/Dodge/Room/LasTurret.hs 469;" f
lasRunYinYang src/Dodge/Room/LasTurret.hs 186;" f lasRunYinYang src/Dodge/Room/LasTurret.hs 187;" f
lasRunYinYangCenter src/Dodge/Room/LasTurret.hs 249;" f lasRunYinYangCenter src/Dodge/Room/LasTurret.hs 250;" f
lasSensorTurretTest src/Dodge/Room/LasTurret.hs 142;" f lasSensorTurretTest src/Dodge/Room/LasTurret.hs 143;" f
lasTunnel src/Dodge/Room/LasTurret.hs 509;" f lasTunnel src/Dodge/Room/LasTurret.hs 510;" f
lasTunnelRunPast src/Dodge/Room/LasTurret.hs 550;" f lasTunnelRunPast src/Dodge/Room/LasTurret.hs 551;" 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 27;" f laser src/Dodge/Item/Held/BatteryGuns.hs 27;" f
laserSpark src/Dodge/Material/Damage.hs 37;" f laserSpark src/Dodge/Material/Damage.hs 37;" f
@@ -4005,13 +4009,13 @@ leaveResetQuitTerminal src/Dodge/WorldEffect.hs 163;" f
led src/Dodge/Item/Held/Utility.hs 23;" f led src/Dodge/Item/Held/Utility.hs 23;" f
left src/DoubleStack.hs 16;" f left src/DoubleStack.hs 16;" f
leftChildList src/Dodge/Item/Grammar.hs 193;" f leftChildList src/Dodge/Item/Grammar.hs 193;" f
leftHandPQ src/Dodge/Creature/HandPos.hs 113;" f leftHandPQ src/Dodge/Creature/HandPos.hs 115;" f
leftIsParentCombine src/Dodge/Item/Grammar.hs 170;" f leftIsParentCombine src/Dodge/Item/Grammar.hs 170;" f
leftPad src/Padding.hs 15;" f leftPad src/Padding.hs 15;" f
leftRightCombine src/Dodge/Item/Grammar.hs 205;" f leftRightCombine src/Dodge/Item/Grammar.hs 205;" f
leftWristPQ src/Dodge/Creature/HandPos.hs 127;" f leftWristPQ src/Dodge/Creature/HandPos.hs 129;" f
legPQ src/Dodge/Creature/HandPos.hs 133;" f legPQ src/Dodge/Creature/HandPos.hs 135;" f
legPQ' src/Dodge/Creature/HandPos.hs 138;" f legPQ' src/Dodge/Creature/HandPos.hs 140;" f
legsSPic src/Dodge/Item/Draw/SPic.hs 448;" f 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 86;" f liShape src/Dodge/Placement/Instance/LightSource.hs 86;" f
@@ -4027,7 +4031,7 @@ lineCol src/Picture/Base.hs 234;" f
lineGeom src/Dodge/Base.hs 32;" f lineGeom src/Dodge/Base.hs 32;" f
lineOnScreenCone src/Dodge/Debug/Picture.hs 60;" f lineOnScreenCone src/Dodge/Debug/Picture.hs 60;" f
lineOrth src/Dodge/Creature/Boid.hs 128;" f lineOrth src/Dodge/Creature/Boid.hs 128;" f
lineOutputTerminal src/Dodge/Room/Warning.hs 99;" f lineOutputTerminal src/Dodge/Room/Warning.hs 114;" f
lineSplit src/Justify.hs 26;" f lineSplit src/Justify.hs 26;" f
lineUp src/Dodge/Creature/Boid.hs 150;" f lineUp src/Dodge/Creature/Boid.hs 150;" f
linksDAGToPath src/Dodge/Room/Path.hs 19;" f linksDAGToPath src/Dodge/Room/Path.hs 19;" f
@@ -4040,6 +4044,7 @@ listSelectionColorPicture src/Dodge/DisplayInventory.hs 299;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
lmt src/MatrixHelper.hs 53;" f lmt src/MatrixHelper.hs 53;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 410;" f lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 410;" f
loadAmmoTut src/Dodge/Room/Tutorial.hs 425;" f
loadDodgeConfig src/Dodge/Config.hs 30;" f loadDodgeConfig src/Dodge/Config.hs 30;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f
loadMuzzle src/Dodge/HeldUse.hs 654;" f loadMuzzle src/Dodge/HeldUse.hs 654;" f
@@ -4210,9 +4215,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 174;" f midChasm src/Dodge/Room/Tutorial.hs 176;" f
midChasmPlatform src/Dodge/Room/Tutorial.hs 196;" f midChasmPlatform src/Dodge/Room/Tutorial.hs 198;" f
midChasmSpit src/Dodge/Room/Tutorial.hs 263;" f midChasmSpit src/Dodge/Room/Tutorial.hs 266;" 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
@@ -4261,7 +4266,7 @@ moveProjectile src/Dodge/Projectile/Update.hs 249;" f
moveRoomBy src/Dodge/Room/Link.hs 53;" f moveRoomBy src/Dodge/Room/Link.hs 53;" f
moveShockwave src/Dodge/Shockwave/Update.hs 13;" f moveShockwave src/Dodge/Shockwave/Update.hs 13;" f
moveStuckGrenade src/Dodge/Projectile/Update.hs 228;" f moveStuckGrenade src/Dodge/Projectile/Update.hs 228;" f
moveToSideNthOutLink src/Dodge/Room/Warning.hs 102;" f moveToSideNthOutLink src/Dodge/Room/Warning.hs 117;" f
moveWall src/Dodge/Wall/Move.hs 23;" f moveWall src/Dodge/Wall/Move.hs 23;" f
moveWallID src/Dodge/Wall/Move.hs 18;" f moveWallID src/Dodge/Wall/Move.hs 18;" f
moveWallIDUnsafe src/Dodge/Wall/Move.hs 13;" f moveWallIDUnsafe src/Dodge/Wall/Move.hs 13;" f
@@ -4314,7 +4319,7 @@ noPic src/ShapePicture.hs 25;" f
noShape src/ShapePicture.hs 29;" f noShape src/ShapePicture.hs 29;" f
noclipCheck src/Dodge/WallCreatureCollisions.hs 22;" f noclipCheck src/Dodge/WallCreatureCollisions.hs 22;" f
nodesNear src/Dodge/Path.hs 75;" f nodesNear src/Dodge/Path.hs 75;" f
nonConvexChasm src/Dodge/Room/Tutorial.hs 260;" f nonConvexChasm src/Dodge/Room/Tutorial.hs 263;" f
nonCornerLinks src/Dodge/Room/SensorDoor.hs 53;" f nonCornerLinks src/Dodge/Room/SensorDoor.hs 53;" f
normalGait src/Dodge/Creature/State/WalkCycle.hs 30;" f normalGait src/Dodge/Creature/State/WalkCycle.hs 30;" f
normalTo8 src/Shader/Poke.hs 466;" f normalTo8 src/Shader/Poke.hs 466;" f
@@ -4389,7 +4394,7 @@ 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 570;" f passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 629;" 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
@@ -4460,7 +4465,7 @@ 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 37;" f pointsToPoly src/Geometry/ConvexPoly.hs 37;" f
poisonSPic src/Dodge/Creature/Update.hs 130;" f poisonSPic src/Dodge/Creature/Update.hs 129;" 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
pokeArrayOff src/Shader/Poke.hs 521;" f pokeArrayOff src/Shader/Poke.hs 521;" f
@@ -4494,8 +4499,8 @@ 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 336;" f polyChasm src/Dodge/Room/Tutorial.hs 349;" f
polyChasmC src/Dodge/Room/Tutorial.hs 348;" f polyChasmC src/Dodge/Room/Tutorial.hs 361;" 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
@@ -4587,6 +4592,7 @@ putLitButOnPosExtTrig src/Dodge/Placement/Instance/Button.hs 97;" f
putLitButOnPosExtTrig' src/Dodge/Placement/Instance/Button.hs 100;" f putLitButOnPosExtTrig' src/Dodge/Placement/Instance/Button.hs 100;" f
putMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 57;" f putMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 57;" f
putShape src/Dodge/Room/Foreground.hs 134;" f putShape src/Dodge/Room/Foreground.hs 134;" f
putSingleLight src/Dodge/Room/Tutorial.hs 447;" f
putSlideDr src/Dodge/Door/PutSlideDoor.hs 12;" f putSlideDr src/Dodge/Door/PutSlideDoor.hs 12;" f
putStrLnAppend src/Dodge/LevelGen.hs 84;" f putStrLnAppend src/Dodge/LevelGen.hs 84;" f
putTerminal src/Dodge/Placement/Instance/Terminal.hs 51;" f putTerminal src/Dodge/Placement/Instance/Terminal.hs 51;" f
@@ -4697,7 +4703,7 @@ renderListAt src/Dodge/Render/List.hs 177;" f
renderShadows src/Render.hs 116;" f renderShadows src/Render.hs 116;" f
replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 169;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 169;" f
replacePutID src/Dodge/Placement/Instance/Wall.hs 81;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 81;" f
resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 67;" f resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 64;" f
resetPLUse src/Dodge/PlacementSpot.hs 94;" f resetPLUse src/Dodge/PlacementSpot.hs 94;" f
resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f
resetTerminal src/Dodge/WorldEffect.hs 157;" f resetTerminal src/Dodge/WorldEffect.hs 157;" f
@@ -4735,7 +4741,7 @@ rightHandPQ src/Dodge/Creature/HandPos.hs 63;" f
rightIsParentCombine src/Dodge/Item/Grammar.hs 181;" f rightIsParentCombine src/Dodge/Item/Grammar.hs 181;" f
rightPad src/Padding.hs 19;" f rightPad src/Padding.hs 19;" f
rightPadNoSquash src/Padding.hs 23;" f rightPadNoSquash src/Padding.hs 23;" f
rightWristPQ src/Dodge/Creature/HandPos.hs 110;" f rightWristPQ src/Dodge/Creature/HandPos.hs 112;" f
rlPosDir src/Dodge/RoomLink.hs 112;" f rlPosDir src/Dodge/RoomLink.hs 112;" f
rlauncherPic src/Dodge/Item/Draw/SPic.hs 399;" f rlauncherPic src/Dodge/Item/Draw/SPic.hs 399;" f
rmInLinks src/Dodge/RoomLink.hs 153;" f rmInLinks src/Dodge/RoomLink.hs 153;" f
@@ -4824,7 +4830,7 @@ scaleSH src/Shape.hs 266;" f
scalp src/Dodge/Creature/Picture.hs 92;" f scalp src/Dodge/Creature/Picture.hs 92;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 102;" f scancodeToHotkey src/Dodge/Creature/YourControl.hs 102;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 127;" f scorchSPic src/Dodge/Creature/Update.hs 126;" f
screenBox src/Dodge/Base/Window.hs 54;" f screenBox src/Dodge/Base/Window.hs 54;" f
screenPolygon src/Dodge/Base/Window.hs 18;" f screenPolygon src/Dodge/Base/Window.hs 18;" f
screenPolygonBord src/Dodge/Base/Window.hs 28;" f screenPolygonBord src/Dodge/Base/Window.hs 28;" f
@@ -4868,7 +4874,7 @@ sensorReqToString src/Dodge/Machine/Update.hs 242;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 27;" f sensorRoom src/Dodge/Room/SensorDoor.hs 27;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 59;" f sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 59;" f
sensorSPic src/Dodge/Machine/Draw.hs 99;" f sensorSPic src/Dodge/Machine/Draw.hs 99;" f
sensorTut src/Dodge/Room/Tutorial.hs 514;" f sensorTut src/Dodge/Room/Tutorial.hs 573;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 288;" f sensorTypeDamages src/Dodge/Machine/Update.hs 288;" f
sensorTypeDamages src/Dodge/Wall/Damage.hs 92;" f sensorTypeDamages src/Dodge/Wall/Damage.hs 92;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
@@ -4903,7 +4909,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 94;" f setTreeInts src/Dodge/Room/Tutorial.hs 96;" f
setViewDistance src/Dodge/Update/Camera.hs 240;" f setViewDistance src/Dodge/Update/Camera.hs 240;" 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
@@ -5088,8 +5094,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 225;" f sqPlatformChasm src/Dodge/Room/Tutorial.hs 227;" f
sqSpitChasm src/Dodge/Room/Tutorial.hs 240;" f sqSpitChasm src/Dodge/Room/Tutorial.hs 242;" 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 129;" f squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 129;" f
@@ -5117,7 +5123,7 @@ stackedInventory src/Dodge/Creature.hs 326;" f
startCr src/Dodge/Creature.hs 90;" f startCr src/Dodge/Creature.hs 90;" f
startCrafts src/Dodge/Room/Start.hs 94;" f startCrafts src/Dodge/Room/Start.hs 94;" f
startDrag src/Dodge/Update/Input/InGame.hs 286;" f startDrag src/Dodge/Update/Input/InGame.hs 286;" f
startFalling src/Dodge/Creature/Update.hs 155;" f startFalling src/Dodge/Creature/Update.hs 154;" f
startInvList src/Dodge/Creature.hs 105;" f startInvList src/Dodge/Creature.hs 105;" f
startInventory src/Dodge/Creature.hs 108;" f startInventory src/Dodge/Creature.hs 108;" f
startNewGameInSlot src/Dodge/StartNewGame.hs 16;" f startNewGameInSlot src/Dodge/StartNewGame.hs 16;" f
@@ -5139,8 +5145,8 @@ stopPushing src/Dodge/Wall/Damage.hs 172;" f
stopSoundFrom src/Dodge/SoundLogic.hs 220;" f stopSoundFrom src/Dodge/SoundLogic.hs 220;" f
storageShape src/Dodge/Machine/Draw.hs 31;" f storageShape src/Dodge/Machine/Draw.hs 31;" f
storeRoomID src/Dodge/Room/Modify.hs 23;" f storeRoomID src/Dodge/Room/Modify.hs 23;" f
strFromEquipment src/Dodge/Creature/Statistics.hs 53;" f strFromEquipment src/Dodge/Creature/Statistics.hs 50;" f
strFromHeldItem src/Dodge/Creature/Statistics.hs 67;" f strFromHeldItem src/Dodge/Creature/Statistics.hs 64;" f
strengthFactor src/Dodge/Creature/Impulse/Movement.hs 51;" f strengthFactor src/Dodge/Creature/Impulse/Movement.hs 51;" f
strictify src/MaybeHelp.hs 35;" f strictify src/MaybeHelp.hs 35;" f
strideRot src/Dodge/Item/HeldOffset.hs 83;" f strideRot src/Dodge/Item/HeldOffset.hs 83;" f
@@ -5306,7 +5312,7 @@ translate3 src/Picture/Base.hs 112;" f
translateFloatingCamera src/Dodge/Update/Camera.hs 50;" f translateFloatingCamera src/Dodge/Update/Camera.hs 50;" f
translateFloatingCameraKeys src/Dodge/Update/Camera.hs 68;" f translateFloatingCameraKeys src/Dodge/Update/Camera.hs 68;" f
translateH src/Picture/Base.hs 104;" f translateH src/Picture/Base.hs 104;" f
translatePointToLeftHand src/Dodge/Creature/HandPos.hs 121;" f translatePointToLeftHand src/Dodge/Creature/HandPos.hs 123;" f
translatePointToRightHand src/Dodge/Creature/HandPos.hs 42;" f translatePointToRightHand src/Dodge/Creature/HandPos.hs 42;" f
translateSH src/Shape.hs 242;" f translateSH src/Shape.hs 242;" f
translateSHxy src/Shape.hs 246;" f translateSHxy src/Shape.hs 246;" f
@@ -5316,10 +5322,10 @@ translateSPxy src/ShapePicture.hs 45;" f
translateSPz src/ShapePicture.hs 49;" f translateSPz src/ShapePicture.hs 49;" f
translateScreenPos src/Dodge/ScreenPos.hs 12;" f translateScreenPos src/Dodge/ScreenPos.hs 12;" f
translateToES src/Dodge/Creature/HandPos.hs 29;" f translateToES src/Dodge/Creature/HandPos.hs 29;" f
translateToLeftHand src/Dodge/Creature/HandPos.hs 124;" f translateToLeftHand src/Dodge/Creature/HandPos.hs 126;" f
translateToLeftLeg src/Dodge/Creature/HandPos.hs 130;" f translateToLeftLeg src/Dodge/Creature/HandPos.hs 132;" f
translateToRightHand src/Dodge/Creature/HandPos.hs 107;" f translateToRightHand src/Dodge/Creature/HandPos.hs 109;" f
translateToRightLeg src/Dodge/Creature/HandPos.hs 154;" f translateToRightLeg src/Dodge/Creature/HandPos.hs 156;" f
translateXY src/Polyhedra.hs 23;" f translateXY src/Polyhedra.hs 23;" f
trapTBH src/Geometry/Polygon.hs 22;" f trapTBH src/Geometry/Polygon.hs 22;" f
trapezionBWHW src/Geometry/Polygon.hs 34;" f trapezionBWHW src/Geometry/Polygon.hs 34;" f
@@ -5358,12 +5364,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 23;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 23;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 53;" f tutAnoTree src/Dodge/Room/Tutorial.hs 53;" f
tutDrop src/Dodge/Room/Tutorial.hs 99;" f tutDrop src/Dodge/Room/Tutorial.hs 101;" f
tutHub src/Dodge/Room/Tutorial.hs 412;" f tutHub src/Dodge/Room/Tutorial.hs 471;" f
tutLight src/Dodge/Room/Tutorial.hs 380;" f tutLight src/Dodge/Room/Tutorial.hs 393;" f
tutRezBox src/Dodge/Room/Tutorial.hs 525;" f tutRezBox src/Dodge/Room/Tutorial.hs 584;" f
tutRoomTree src/Dodge/Floor.hs 20;" f tutRoomTree src/Dodge/Floor.hs 20;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 550;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 609;" f
tweenAngles src/Geometry/Vector.hs 192;" f tweenAngles src/Geometry/Vector.hs 192;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 83;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 83;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 39;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 39;" f
@@ -5477,7 +5483,7 @@ updatePlasmaBall src/Dodge/Update.hs 509;" f
updatePlasmaBalls src/Dodge/Update.hs 650;" f updatePlasmaBalls src/Dodge/Update.hs 650;" f
updatePreload src/Preload/Update.hs 21;" f updatePreload src/Preload/Update.hs 21;" f
updateProjectile src/Dodge/Projectile/Update.hs 26;" f updateProjectile src/Dodge/Projectile/Update.hs 26;" f
updatePulse src/Dodge/Creature/Update.hs 185;" f updatePulse src/Dodge/Creature/Update.hs 184;" f
updatePulseBall src/Dodge/Update.hs 529;" f updatePulseBall src/Dodge/Update.hs 529;" f
updatePulseLaser src/Dodge/Update.hs 697;" f updatePulseLaser src/Dodge/Update.hs 697;" f
updatePulseLasers src/Dodge/Update.hs 504;" f updatePulseLasers src/Dodge/Update.hs 504;" f
@@ -5583,7 +5589,7 @@ viewTarget src/Dodge/Creature/ReaderUpdate.hs 156;" f
violet src/Color.hs 48;" f violet src/Color.hs 48;" f
visibleWalls src/Dodge/Base/Collide.hs 218;" f visibleWalls src/Dodge/Base/Collide.hs 218;" f
visionCheck src/Dodge/Creature/Perception.hs 152;" f visionCheck src/Dodge/Creature/Perception.hs 152;" f
vocalizationTest src/Dodge/Creature/Vocalization.hs 62;" f vocalizationTest src/Dodge/Creature/Vocalization.hs 59;" 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 355;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 355;" f
walkNozzle src/Dodge/HeldUse.hs 826;" f walkNozzle src/Dodge/HeldUse.hs 826;" f
@@ -5596,7 +5602,7 @@ wallToSurface src/Dodge/Base/Collide.hs 182;" f
wallsFromRooms src/Dodge/Layout.hs 141;" f wallsFromRooms src/Dodge/Layout.hs 141;" f
wallsToDraw src/Dodge/Render/Walls.hs 18;" f wallsToDraw src/Dodge/Render/Walls.hs 18;" f
warmupSound src/Dodge/HeldUse.hs 1396;" f warmupSound src/Dodge/HeldUse.hs 1396;" f
warningRooms src/Dodge/Room/Warning.hs 33;" f warningRooms src/Dodge/Room/Warning.hs 34;" f
warp1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 845;" f warp1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 845;" f
wasdAim src/Dodge/Creature/YourControl.hs 133;" f wasdAim src/Dodge/Creature/YourControl.hs 133;" f
wasdDir src/Dodge/WASD.hs 17;" f wasdDir src/Dodge/WASD.hs 17;" f
@@ -5677,17 +5683,18 @@ xyzV4 src/Geometry/Vector.hs 211;" f
yIntercepts src/Dodge/Zoning/Base.hs 78;" f yIntercepts src/Dodge/Zoning/Base.hs 78;" f
yV2 src/Geometry/Vector.hs 207;" f yV2 src/Geometry/Vector.hs 207;" f
yellow src/Color.hs 44;" f yellow src/Color.hs 44;" f
you src/Dodge/Base/You.hs 13;" f you src/Dodge/Base/You.hs 17;" f
youDropItem src/Dodge/Creature/Action.hs 177;" f youDropItem src/Dodge/Creature/Action.hs 177;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 240;" f yourAugmentedItem src/Dodge/Render/HUD.hs 240;" f
yourControl src/Dodge/Creature/YourControl.hs 28;" f yourControl src/Dodge/Creature/YourControl.hs 28;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 112;" f yourDefaultStrideLength src/Dodge/Default/Creature.hs 112;" f
yourInfo src/Dodge/Creature/Info.hs 10;" f yourInfo src/Dodge/Creature/Info.hs 10;" f
yourInv src/Dodge/Base/You.hs 28;" f yourInv src/Dodge/Base/You.hs 37;" f
yourRootItem src/Dodge/Base/You.hs 22;" f yourRootItem src/Dodge/Base/You.hs 26;" f
yourSelectedItem src/Dodge/Base/You.hs 16;" f yourRootItemDT src/Dodge/Base/You.hs 32;" f
yourSelectedItem src/Dodge/Base/You.hs 20;" f
yourStatsInfo src/Dodge/Creature/Info.hs 27;" f yourStatsInfo src/Dodge/Creature/Info.hs 27;" f
zChasm src/Dodge/Room/Tutorial.hs 158;" f zChasm src/Dodge/Room/Tutorial.hs 160;" 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