Tweak posture

This commit is contained in:
2026-03-31 22:50:53 +01:00
parent 074d354970
commit ecdc19fb5e
13 changed files with 134 additions and 143 deletions
-1
View File
@@ -83,7 +83,6 @@ makeDebrisDirectedZ arcrad dir z dt bm p w =
f = do f = do
v <- rotateV (dir - arcrad / 2) <$> randInArcStrip 1 2 arcrad v <- rotateV (dir - arcrad / 2) <$> randInArcStrip 1 2 arcrad
spinspeed <- randomR (-0.2, -0.1) & state spinspeed <- randomR (-0.2, -0.1) & state
-- basedebris <- baseDebris bm
return $ return $
DebrisChunk DebrisChunk
{ _dbPos = p `v2z` z { _dbPos = p `v2z` z
+1 -2
View File
@@ -18,7 +18,6 @@ import Dodge.SoundLogic
import Geometry import Geometry
import LensHelp import LensHelp
import Linear import Linear
import NewInt
import System.Random import System.Random
-- note SwitchToItem doesn't necessarily update the root item correctly -- note SwitchToItem doesn't necessarily update the root item correctly
@@ -39,7 +38,7 @@ followImpulse cid w = \case
TurnTo p -> crup $ creatureTurnTo p TurnTo p -> crup $ creatureTurnTo p
ChangePosture post -> crup $ crStance . posture .~ post ChangePosture post -> crup $ crStance . posture .~ post
UseItem -> undefined UseItem -> undefined
SwitchToItem i -> crup $ crManipulation . manObject .~ SelectedItem (NInt i) (NInt i) mempty -- SwitchToItem i -> crup $ crManipulation . manObject .~ SelectedItem (NInt i) (NInt i) mempty
Melee cid' -> Melee cid' ->
hitCr cid' $ hitCr cid' $
crup crup
+2 -1
View File
@@ -92,7 +92,8 @@ crAwayFromPost cr = case find sentinelGoal . _apGoal $ _crActionPlan cr of
sentinelGoal _ = False sentinelGoal _ = False
crInAimStance :: AimStance -> Creature -> Bool crInAimStance :: AimStance -> Creature -> Bool
crInAimStance as cr = cr ^? crStance . posture . aimStance == Just as crInAimStance as cr = cr ^? crStance . posture == Just Aiming
&& cr ^? crManipulation . manObject . imAimStance == Just as
oneH :: Creature -> Bool oneH :: Creature -> Bool
oneH = crInAimStance OneHand oneH = crInAimStance OneHand
+1 -2
View File
@@ -6,7 +6,6 @@ module Dodge.Creature.Volition (
shootFirstMiss, shootFirstMiss,
) where ) where
import Dodge.Data.AimStance
import Dodge.Data.Creature import Dodge.Data.Creature
import Dodge.Data.CreatureEffect import Dodge.Data.CreatureEffect
import Dodge.SoundLogic.LoadSound import Dodge.SoundLogic.LoadSound
@@ -14,7 +13,7 @@ import Geometry
holsterWeapon, drawWeapon :: Action holsterWeapon, drawWeapon :: Action
holsterWeapon = DoImpulses [ChangePosture AtEase, MakeSound whiteNoiseFadeOutS] holsterWeapon = DoImpulses [ChangePosture AtEase, MakeSound whiteNoiseFadeOutS]
drawWeapon = DoImpulses [ChangePosture $ Aiming OneHand, MakeSound whiteNoiseFadeInS] drawWeapon = DoImpulses [ChangePosture $ Aiming, MakeSound whiteNoiseFadeInS]
shootTillEmpty :: Action shootTillEmpty :: Action
--shootTillEmpty = (crCanShoot `DoActionWhile` DoImpulses [UseItem]) --shootTillEmpty = (crCanShoot `DoActionWhile` DoImpulses [UseItem])
+42 -56
View File
@@ -2,9 +2,7 @@
module Dodge.Creature.YourControl (yourControl) where module Dodge.Creature.YourControl (yourControl) where
import Linear
import Control.Monad import Control.Monad
import qualified Data.IntMap.Strict as IM
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
import Data.Maybe import Data.Maybe
import Dodge.AssignHotkey import Dodge.AssignHotkey
@@ -16,11 +14,11 @@ import Dodge.Data.Equipment.Misc
import Dodge.Data.World import Dodge.Data.World
import Dodge.InputFocus import Dodge.InputFocus
import Dodge.Inventory import Dodge.Inventory
import Dodge.Item.AimStance
import Dodge.SelectedClose import Dodge.SelectedClose
import Dodge.WASD import Dodge.WASD
import Geometry import Geometry
import LensHelp import LensHelp
import Linear
import NewInt import NewInt
import qualified SDL import qualified SDL
@@ -28,51 +26,37 @@ import qualified SDL
yourControl :: Creature -> World -> World yourControl :: Creature -> World -> World
yourControl _ w yourControl _ w
| inTextInputFocus w = w | inTextInputFocus w = w
| Just x <- w ^? hud . subInventory | NoSubInventory <- w ^. hud . subInventory =
, f x =
w w
& cWorld . lWorld . creatures . ix 0 %~ wasdWithAiming w & cWorld
& tryClickUse pkeys . lWorld
. creatures
. ix 0
%~ wasdWithAiming w
& tryClickUse (w ^. input . mouseButtons)
& handleHotkeys & handleHotkeys
| otherwise = w & cWorld . lWorld . creatures . ix 0 %~ wasdWithAiming w | otherwise = w & cWorld . lWorld . creatures . ix 0 %~ wasdWithAiming w
where
f = \case
NoSubInventory -> True
ExamineInventory -> True
_ -> False
pkeys = w ^. input . mouseButtons
-- the following only works because modifier keys are ordered after scancode "hotkeys" -- the following only works because modifier keys are ordered after scancode "hotkeys"
handleHotkeys :: World -> World handleHotkeys :: World -> World
handleHotkeys w handleHotkeys w
| ispressed SDL.ScancodeLShift || ispressed SDL.ScancodeRShift | ispressed SDL.ScancodeLShift || ispressed SDL.ScancodeRShift
, (hk:_) <- mapMaybe scancodeToHotkey . M.keys $ pkeys , (hk : _) <- mapMaybe scancodeToHotkey . M.keys $ pkeys
, Just invid <- lw ^? creatures . ix 0 . crManipulation . manObject . imSelectedItem , Just invid <- lw ^? creatures . ix 0 . crManipulation . manObject . imSelectedItem
, Just itid <- lw ^? creatures . ix 0 . crInv . ix invid = , Just itid <- lw ^? creatures . ix 0 . crInv . ix invid =
w & cWorld . lWorld %~ assignHotkey (NInt itid) hk w & cWorld . lWorld %~ assignHotkey (NInt itid) hk
| ispressed SDL.ScancodeLCtrl || ispressed SDL.ScancodeRCtrl | ispressed SDL.ScancodeLCtrl || ispressed SDL.ScancodeRCtrl
, (hk:_) <- mapMaybe scancodeToHotkey . M.keys $ pkeys , (hk : _) <- mapMaybe scancodeToHotkey . M.keys $ pkeys
, Just itid <- lw ^? hotkeys . ix hk . unNInt , Just itid <- lw ^? hotkeys . ix hk . unNInt
, Just invid <- lw ^? items . ix itid . itLocation . ilInvID = , Just invid <- lw ^? items . ix itid . itLocation . ilInvID =
w & invSetSelectionPos 0 (_unNInt invid) w & invSetSelectionPos 0 (_unNInt invid)
| otherwise = | otherwise = M.foldl' useHotkey w pressedhotkeys
M.foldl'
useHotkey
w
(M.intersectionWith (,) thehotkeys (w ^. input . pressedKeys))
where where
pkeys = w ^. input . pressedKeys pkeys = w ^. input . pressedKeys
ispressed k = k `M.member` _pressedKeys (_input w) ispressed k = k `M.member` _pressedKeys (_input w)
thehotkeys = M.mapKeys hotkeyToScancode $ w ^. cWorld . lWorld . hotkeys thehotkeys = M.mapKeys hotkeyToScancode $ w ^. cWorld . lWorld . hotkeys
lw = w ^. cWorld . lWorld lw = w ^. cWorld . lWorld
pressedhotkeys = M.intersectionWith (,) thehotkeys (w ^. input . pressedKeys)
--modifierKeys :: S.Set SDL.Scancode
--modifierKeys = S.fromList
-- [ SDL.ScancodeLShift
-- , SDL.ScancodeRShift
-- , SDL.ScancodeRCtrl
-- , SDL.ScancodeLCtrl
-- ]
useHotkey :: World -> (NewInt ItmInt, Int) -> World useHotkey :: World -> (NewInt ItmInt, Int) -> World
useHotkey w (NInt itid, pt) = fromMaybe w $ do useHotkey w (NInt itid, pt) = fromMaybe w $ do
@@ -132,36 +116,35 @@ wasdWithAiming w cr = wasdAim inp w $ wasdMovement (w ^. cWorld . lWorld) inp ca
wasdAim :: Input -> World -> Creature -> Creature wasdAim :: Input -> World -> Creature -> Creature
wasdAim inp w cr wasdAim inp w cr
| Just 0 <- inp ^? mouseButtons . ix SDL.ButtonRight -- | Just 0 <- inp ^? mouseButtons . ix SDL.ButtonRight
, Nothing <- inp ^? mouseButtons . ix SDL.ButtonLeft = -- , Nothing <- inp ^? mouseButtons . ix SDL.ButtonLeft =
setAimPosture (w ^. cWorld . lWorld . items) cr -- setAimPosture cr
| SDL.ButtonRight `M.member` _mouseButtons inp
, AtEase <- cr ^. crStance . posture =
setAimPosture cr
| SDL.ButtonRight `M.member` _mouseButtons inp = | SDL.ButtonRight `M.member` _mouseButtons inp =
aimTurn (w ^. cWorld . lWorld) mousedir cr aimTurn (w ^. cWorld . lWorld) mousedir cr
| Aiming {} <- cr ^. crStance . posture = removeAimPosture cr | Aiming{} <- cr ^. crStance . posture = removeAimPosture cr
| otherwise = creatureTurnTowardDir (_crMvAim cr) 0.2 cr | otherwise = creatureTurnTowardDir (_crMvAim cr) 0.2 cr
where where
mousedir = argV $ w ^. cWorld . lWorld . lAimPos - (cr ^. crPos . _xy) mousedir = argV $ w ^. cWorld . lWorld . lAimPos - (cr ^. crPos . _xy)
setAimPosture :: IM.IntMap Item -> Creature -> Creature setAimPosture :: Creature -> Creature
setAimPosture m cr = fromMaybe cr $ do setAimPosture cr =
invid <- cr ^? crManipulation . manObject . imRootSelectedItem cr
itid <- cr ^? crInv . ix invid & crStance . posture .~ Aiming
as <- fmap itemBaseStance $ m ^? ix itid & doAimTwist (cr ^? crManipulation . manObject . imAimStance) (-twoHandTwistAmount)
return $ cr
& crStance . posture .~ Aiming as
& doAimTwist as (- twoHandTwistAmount)
doAimTwist :: AimStance -> Float -> Creature -> Creature doAimTwist :: Maybe AimStance -> Float -> Creature -> Creature
doAimTwist as x doAimTwist as x
| as == TwoHandOver || as == TwoHandUnder = crDir +~ x | as == Just TwoHandOver || as == Just TwoHandUnder = crDir +~ x
| otherwise = id | otherwise = id
removeAimPosture :: Creature -> Creature removeAimPosture :: Creature -> Creature
removeAimPosture cr = fromMaybe cr $ do removeAimPosture cr =
as <- cr ^? crStance . posture . aimStance cr
return $ cr & crStance . posture .~ AtEase
& crStance . posture .~ AtEase & doAimTwist (cr ^? crManipulation . manObject . imAimStance) twoHandTwistAmount
& doAimTwist as twoHandTwistAmount
twoHandTwistAmount :: Float twoHandTwistAmount :: Float
twoHandTwistAmount = 1.6 * pi twoHandTwistAmount = 1.6 * pi
@@ -239,10 +222,13 @@ tryClickUse pkeys w = fromMaybe w $ do
rtime <- pkeys ^? ix SDL.ButtonRight rtime <- pkeys ^? ix SDL.ButtonRight
guard $ ltime <= rtime guard $ ltime <= rtime
case w case w
^? cWorld . lWorld . creatures . ix 0 ^? cWorld
. crManipulation . lWorld
. manObject . creatures
. imSelectedItem . ix 0
. unNInt of . crManipulation
. manObject
. imSelectedItem
. unNInt of
Just invid -> useItem invid ltime w Just invid -> useItem invid ltime w
Nothing -> interactWithCloseObj <$> getSelectedCloseObj w ?? w Nothing -> interactWithCloseObj <$> getSelectedCloseObj w ?? w
+1 -1
View File
@@ -34,7 +34,7 @@ data Impulse
| MvForward | MvForward
| TurnTo Point2 | TurnTo Point2
| UseItem | UseItem
| SwitchToItem Int -- | SwitchToItem Int
| DropItem | DropItem
| Bark SoundID -- placeholder for various communication types | Bark SoundID -- placeholder for various communication types
| Melee Int | Melee Int
+1 -3
View File
@@ -30,9 +30,7 @@ data Carriage
data FootForward = LeftForward | RightForward data FootForward = LeftForward | RightForward
deriving (Eq, Ord, Show, Read) --Generic, Flat) deriving (Eq, Ord, Show, Read) --Generic, Flat)
data Posture data Posture = Aiming | AtEase
= Aiming {_aimStance :: AimStance}
| AtEase
deriving (Eq, Ord, Show, Read) --Generic, Flat) deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''Stance makeLenses ''Stance
@@ -3,6 +3,7 @@
module Dodge.Data.Item.Use.Consumption.LoadAction where module Dodge.Data.Item.Use.Consumption.LoadAction where
import Dodge.Data.AimStance
import Dodge.Data.Item.Location import Dodge.Data.Item.Location
import NewInt import NewInt
import qualified Data.IntSet as IS import qualified Data.IntSet as IS
@@ -21,6 +22,7 @@ data ManipulatedObject
| SelectedItem | SelectedItem
{ _imSelectedItem :: NewInt InvInt { _imSelectedItem :: NewInt InvInt
, _imRootSelectedItem :: NewInt InvInt , _imRootSelectedItem :: NewInt InvInt
, _imAimStance :: AimStance
, _imAttachedItems :: IS.IntSet -- this should probably be NewIntSet InvInt also , _imAttachedItems :: IS.IntSet -- this should probably be NewIntSet InvInt also
} }
| SelNothing | SelNothing
+4
View File
@@ -4,6 +4,7 @@ module Dodge.Inventory.Location (
setInvPosFromSS, setInvPosFromSS,
) where ) where
import Dodge.Item.AimStance
import Control.Lens import Control.Lens
import Data.Foldable import Data.Foldable
--import Data.IntMap.Merge.Strict --import Data.IntMap.Merge.Strict
@@ -104,10 +105,13 @@ setInvPosFromSS w = w
( fmap (\k -> w ^?! cWorld . lWorld . items . ix k) $ ( fmap (\k -> w ^?! cWorld . lWorld . items . ix k) $
you w ^. crInv you w ^. crInv
) )
dt <- invIMDT ((\k -> w ^?! cWorld . lWorld . items . ix k) <$> you w ^. crInv) ^? ix rootid
-- there is redundancy above
return return
SelectedItem SelectedItem
{ _imSelectedItem = NInt j { _imSelectedItem = NInt j
, _imRootSelectedItem = NInt rootid , _imRootSelectedItem = NInt rootid
, _imAimStance = itemAimStance ((\(x,y,_) -> (x,y)) <$> dt)
, _imAttachedItems = aset , _imAttachedItems = aset
} }
1 -> Just SelNothing 1 -> Just SelNothing
+1
View File
@@ -1,5 +1,6 @@
{-# LANGUAGE LambdaCase #-} {-# LANGUAGE LambdaCase #-}
module Dodge.Item.AimStance (itemAimStance,itemBaseStance) where module Dodge.Item.AimStance (itemAimStance,itemBaseStance) where
--module Dodge.Item.AimStance (itemAimStance) where
import Dodge.Data.Item import Dodge.Data.Item
import Dodge.Data.ComposedItem import Dodge.Data.ComposedItem
+1 -1
View File
@@ -239,7 +239,7 @@ floorItemPickupInfo n itm
-- it is probably desirable for this to crash hard for now -- it is probably desirable for this to crash hard for now
yourAugmentedItem :: (Item -> a) -> a -> (Either Item Button -> a) -> World -> a yourAugmentedItem :: (Item -> a) -> a -> (Either Item Button -> a) -> World -> a
yourAugmentedItem f x g w = case you w ^? crManipulation . manObject of yourAugmentedItem f x g w = case you w ^? crManipulation . manObject of
Just (SelectedItem i _ _) -> f $ yourInv w ^?! ix i Just (SelectedItem i _ _ _) -> f $ yourInv w ^?! ix i
Just (SelCloseItem i) -> fromMaybe x $ do Just (SelCloseItem i) -> fromMaybe x $ do
j <- w ^? hud . closeItems . ix i . unNInt j <- w ^? hud . closeItems . ix i . unNInt
flit <- w ^? cWorld . lWorld . items . ix j flit <- w ^? cWorld . lWorld . items . ix j
+2 -1
View File
@@ -74,7 +74,8 @@ topTestPart u = [maybe "" showManObj $ u ^? uvWorld . cWorld . lWorld . creature
showManObj :: ManipulatedObject -> String showManObj :: ManipulatedObject -> String
showManObj SortInventory = "SortInventory" showManObj SortInventory = "SortInventory"
showManObj (SelectedItem x y z) = "SelItem: "++ show x++ " Root: "++show y++" Attached: "++show z showManObj (SelectedItem x y as z) = "SelItem: "++ show x++ " Root: "++show y++" Attached: "++show z
++ " AimStance: " ++ show as
showManObj SelNothing = "SelNothing" showManObj SelNothing = "SelNothing"
showManObj SortCloseItem = "SortCloseItem" showManObj SortCloseItem = "SortCloseItem"
showManObj (SelCloseItem x) = "CloseItem " ++ show x showManObj (SelCloseItem x) = "CloseItem " ++ show x
+76 -75
View File
@@ -42,7 +42,7 @@ ActionUpdate src/Dodge/Creature/Action.hs 49;" t
AddGoal src/Dodge/Data/ActionPlan.hs 44;" C AddGoal src/Dodge/Data/ActionPlan.hs 44;" C
AimAt src/Dodge/Data/ActionPlan.hs 66;" C AimAt src/Dodge/Data/ActionPlan.hs 66;" C
AimStance src/Dodge/Data/AimStance.hs 10;" t AimStance src/Dodge/Data/AimStance.hs 10;" t
Aiming src/Dodge/Data/Creature/Stance.hs 34;" C Aiming src/Dodge/Data/Creature/Stance.hs 33;" C
AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C
AlienContact src/Dodge/Data/Scenario.hs 30;" C AlienContact src/Dodge/Data/Scenario.hs 30;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C AllRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
@@ -66,7 +66,7 @@ Arcing src/Dodge/Data/Item/Params.hs 15;" C
ArmourySS src/Dodge/Data/Scenario.hs 112;" C ArmourySS src/Dodge/Data/Scenario.hs 112;" C
Asleep src/Dodge/Data/Creature/Perception.hs 52;" C Asleep src/Dodge/Data/Creature/Perception.hs 52;" C
AsteroidStrike src/Dodge/Data/Scenario.hs 33;" C AsteroidStrike src/Dodge/Data/Scenario.hs 33;" C
AtEase src/Dodge/Data/Creature/Stance.hs 35;" C AtEase src/Dodge/Data/Creature/Stance.hs 33;" C
AtomicWaste src/Dodge/Data/Scenario.hs 26;" C AtomicWaste src/Dodge/Data/Scenario.hs 26;" C
AttachParams src/Dodge/Data/Item/Use.hs 43;" t AttachParams src/Dodge/Data/Item/Use.hs 43;" t
AttachType src/Dodge/Data/Item/Combine.hs 91;" t AttachType src/Dodge/Data/Item/Combine.hs 91;" t
@@ -144,7 +144,7 @@ BoundCurs src/Dodge/Data/SelectionList.hs 21;" C
Bound_box_screen src/Dodge/Data/Config.hs 95;" C Bound_box_screen src/Dodge/Data/Config.hs 95;" C
Bounds src/Dodge/Data/Bounds.hs 10;" t Bounds src/Dodge/Data/Bounds.hs 10;" t
BrigSS src/Dodge/Data/Scenario.hs 102;" C BrigSS src/Dodge/Data/Scenario.hs 102;" C
Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 17;" C
BulBall src/Dodge/Data/Bullet.hs 33;" C BulBall src/Dodge/Data/Bullet.hs 33;" C
BulFlak src/Dodge/Data/Bullet.hs 35;" C BulFlak src/Dodge/Data/Bullet.hs 35;" C
BulFrag src/Dodge/Data/Bullet.hs 36;" C BulFrag src/Dodge/Data/Bullet.hs 36;" C
@@ -726,9 +726,9 @@ MakeSound src/Dodge/Data/ActionPlan.hs 42;" C
MakeStartCloudAt src/Dodge/Data/WorldEffect.hs 33;" C MakeStartCloudAt src/Dodge/Data/WorldEffect.hs 33;" C
MakeTempLight src/Dodge/Data/WorldEffect.hs 36;" C MakeTempLight src/Dodge/Data/WorldEffect.hs 36;" C
MakeTempLightFade src/Dodge/Data/WorldEffect.hs 37;" C MakeTempLightFade src/Dodge/Data/WorldEffect.hs 37;" C
ManipulatedObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 19;" t ManipulatedObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 20;" t
Manipulation src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 14;" t Manipulation src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" t
Manipulator src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" C Manipulator src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C
MapperInventory src/Dodge/Data/HUD.hs 17;" C MapperInventory src/Dodge/Data/HUD.hs 17;" C
MapperSF src/Dodge/Data/ComposedItem.hs 39;" C MapperSF src/Dodge/Data/ComposedItem.hs 39;" C
Material src/Dodge/Data/Material.hs 10;" t Material src/Dodge/Data/Material.hs 10;" t
@@ -1172,12 +1172,12 @@ SectionCursor src/Dodge/Data/SelectionList.hs 24;" t
SeeAbove src/Dodge/Data/Wall.hs 32;" C SeeAbove src/Dodge/Data/Wall.hs 32;" C
SeeThrough src/Dodge/Data/Wall.hs 31;" C SeeThrough src/Dodge/Data/Wall.hs 31;" C
Sel src/Dodge/Data/HUD.hs 39;" C Sel src/Dodge/Data/HUD.hs 39;" C
SelCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" C SelCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 32;" C
SelCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" C SelCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" C
SelItem src/Dodge/Data/SelectionList.hs 44;" C SelItem src/Dodge/Data/SelectionList.hs 44;" C
SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 26;" C SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" C
SelSection src/Dodge/Data/SelectionList.hs 30;" t SelSection src/Dodge/Data/SelectionList.hs 30;" t
SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 21;" C SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 22;" C
Selection src/Dodge/Data/HUD.hs 39;" t Selection src/Dodge/Data/HUD.hs 39;" t
SelectionItem src/Dodge/Data/SelectionList.hs 44;" t SelectionItem src/Dodge/Data/SelectionList.hs 44;" t
SelectionWidth src/Dodge/Data/SelectionList.hs 42;" t SelectionWidth src/Dodge/Data/SelectionList.hs 42;" t
@@ -1235,9 +1235,9 @@ Smoke src/Dodge/Data/Cloud.hs 21;" C
SmokeReducerSF src/Dodge/Data/ComposedItem.hs 28;" C SmokeReducerSF src/Dodge/Data/ComposedItem.hs 28;" C
SocialUpheaval src/Dodge/Data/Scenario.hs 27;" C SocialUpheaval src/Dodge/Data/Scenario.hs 27;" C
SolarGovernment src/Dodge/Data/Scenario.hs 53;" C SolarGovernment src/Dodge/Data/Scenario.hs 53;" C
SortCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" C SortCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 31;" C
SortCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 27;" C SortCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" C
SortInventory src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 20;" C SortInventory src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 21;" C
Sound src/Sound/Data.hs 43;" t Sound src/Sound/Data.hs 43;" t
SoundFilter src/Dodge/Data/WorldEffect.hs 21;" t SoundFilter src/Dodge/Data/WorldEffect.hs 21;" t
SoundID src/Sound/Data.hs 30;" t SoundID src/Sound/Data.hs 30;" t
@@ -1284,7 +1284,6 @@ SwapEquipment src/Dodge/Data/RightButtonOptions.hs 24;" C
Swarm src/Dodge/Data/Creature/State.hs 25;" C Swarm src/Dodge/Data/Creature/State.hs 25;" C
SwarmAI src/Dodge/Data/Creature/Misc.hs 44;" C SwarmAI src/Dodge/Data/Creature/Misc.hs 44;" C
SwarmCrit src/Dodge/Data/Creature/Misc.hs 69;" C SwarmCrit src/Dodge/Data/Creature/Misc.hs 69;" C
SwitchToItem src/Dodge/Data/ActionPlan.hs 37;" C
TAPE src/Dodge/Data/Item/Combine.hs 55;" C TAPE src/Dodge/Data/Item/Combine.hs 55;" C
TARGETING src/Dodge/Data/Item/Combine.hs 21;" C TARGETING src/Dodge/Data/Item/Combine.hs 21;" C
TCBase src/Dodge/Data/Terminal.hs 49;" C TCBase src/Dodge/Data/Terminal.hs 49;" C
@@ -1521,7 +1520,6 @@ YELLOW src/Color/Data.hs 15;" C
ZOOMSCOPE src/Dodge/Data/Item/Combine.hs 92;" C ZOOMSCOPE src/Dodge/Data/Item/Combine.hs 92;" C
ZombieFaction src/Dodge/Data/Creature/State.hs 14;" C ZombieFaction src/Dodge/Data/Creature/State.hs 14;" C
__Just' src/MaybeHelp.hs 11;" f __Just' src/MaybeHelp.hs 11;" f
_aimStance src/Dodge/Data/Creature/Stance.hs 34;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 19;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 19;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 25;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 25;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 30;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 30;" f
@@ -1902,10 +1900,11 @@ _ilIsAttached src/Dodge/Data/Item/Location.hs 34;" f
_ilIsRoot src/Dodge/Data/Item/Location.hs 32;" f _ilIsRoot src/Dodge/Data/Item/Location.hs 32;" f
_ilIsSelected src/Dodge/Data/Item/Location.hs 33;" f _ilIsSelected src/Dodge/Data/Item/Location.hs 33;" f
_ilTuID src/Dodge/Data/Item/Location.hs 37;" f _ilTuID src/Dodge/Data/Item/Location.hs 37;" f
_imAttachedItems src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 24;" f _imAimStance src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 25;" f
_imAttachedItems src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 26;" f
_imHotkeys src/Dodge/Data/LWorld.hs 146;" f _imHotkeys src/Dodge/Data/LWorld.hs 146;" f
_imRootSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" f _imRootSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 24;" f
_imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 22;" f _imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" f
_immediateEffect src/Loop/Data.hs 9;" f _immediateEffect src/Loop/Data.hs 9;" f
_immediateUpdate src/Loop/Data.hs 12;" f _immediateUpdate src/Loop/Data.hs 12;" f
_impulseUseTarget src/Dodge/Data/ActionPlan.hs 45;" f _impulseUseTarget src/Dodge/Data/ActionPlan.hs 45;" f
@@ -1918,8 +1917,8 @@ _incNodeZoning src/Dodge/Data/World.hs 55;" f
_input src/Dodge/Data/World.hs 43;" f _input src/Dodge/Data/World.hs 43;" f
_inputMemory src/Dodge/Data/Input.hs 49;" f _inputMemory src/Dodge/Data/Input.hs 49;" f
_isWarming src/Dodge/Data/Item/Params.hs 21;" f _isWarming src/Dodge/Data/Item/Params.hs 21;" f
_ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" f _ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 32;" f
_ispCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" f _ispCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" f
_itConsumables src/Dodge/Data/Item.hs 28;" f _itConsumables src/Dodge/Data/Item.hs 28;" f
_itID src/Dodge/Data/Item.hs 30;" f _itID src/Dodge/Data/Item.hs 30;" f
_itLocation src/Dodge/Data/Item.hs 31;" f _itLocation src/Dodge/Data/Item.hs 31;" f
@@ -1987,7 +1986,7 @@ _machines src/Dodge/Data/LWorld.hs 125;" f
_magBelowID src/Dodge/Data/Muzzle.hs 22;" f _magBelowID src/Dodge/Data/Muzzle.hs 22;" f
_magnets src/Dodge/Data/LWorld.hs 128;" f _magnets src/Dodge/Data/LWorld.hs 128;" f
_mainAction src/Dodge/Data/ActionPlan.hs 123;" f _mainAction src/Dodge/Data/ActionPlan.hs 123;" f
_manObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" f _manObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" f
_mapInvItmID src/Dodge/Data/HUD.hs 20;" f _mapInvItmID src/Dodge/Data/HUD.hs 20;" f
_mapInvOffset src/Dodge/Data/HUD.hs 18;" f _mapInvOffset src/Dodge/Data/HUD.hs 18;" f
_mapInvZoom src/Dodge/Data/HUD.hs 19;" f _mapInvZoom src/Dodge/Data/HUD.hs 19;" f
@@ -2578,7 +2577,7 @@ advanceScrollAmount src/Dodge/Update.hs 479;" f
advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f
aimDelaySweep src/Dodge/Render/Picture.hs 285;" f aimDelaySweep src/Dodge/Render/Picture.hs 285;" 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 169;" f
airlock src/Dodge/Room/Airlock.hs 28;" f airlock src/Dodge/Room/Airlock.hs 28;" f
airlock0 src/Dodge/Room/Airlock.hs 78;" f airlock0 src/Dodge/Room/Airlock.hs 78;" f
airlock90 src/Dodge/Room/Airlock.hs 201;" f airlock90 src/Dodge/Room/Airlock.hs 201;" f
@@ -2713,7 +2712,7 @@ bfsThenReturn src/Dodge/Creature/ReaderUpdate.hs 227;" f
bgateCalc src/Dodge/Inventory/SelectionList.hs 115;" f bgateCalc src/Dodge/Inventory/SelectionList.hs 115;" f
bgunSound src/Dodge/HeldUse.hs 540;" f bgunSound src/Dodge/HeldUse.hs 540;" f
bingate src/Dodge/Item/Scope.hs 115;" f bingate src/Dodge/Item/Scope.hs 115;" f
blColor src/Dodge/Block/Debris.hs 53;" f blColor src/Dodge/Block/Debris.hs 54;" f
black src/Color.hs 54;" f black src/Color.hs 54;" f
blinkAcrossChallenge src/Dodge/Room/BlinkAcross.hs 15;" f blinkAcrossChallenge src/Dodge/Room/BlinkAcross.hs 15;" f
blinkActionFail src/Dodge/Creature/Action/Blink.hs 88;" f blinkActionFail src/Dodge/Creature/Action/Blink.hs 88;" f
@@ -2975,7 +2974,7 @@ 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 37;" 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 110;" f
crLeftHandWall src/Dodge/Creature/HandPos.hs 91;" 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
@@ -2986,19 +2985,19 @@ crMvBy src/Dodge/Creature/Impulse/Movement.hs 22;" f
crMvByNoStride src/Dodge/Creature/Impulse/Movement.hs 30;" f crMvByNoStride src/Dodge/Creature/Impulse/Movement.hs 30;" f
crMvForward src/Dodge/Creature/Impulse/Movement.hs 57;" f crMvForward src/Dodge/Creature/Impulse/Movement.hs 57;" f
crMvType src/Dodge/Creature/MoveType.hs 6;" f crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 132;" f crNearPoint src/Dodge/Creature/Test.hs 133;" 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 73;" 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 56;" 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 28;" f crStrength src/Dodge/Creature/Statistics.hs 28;" f
crUpdate src/Dodge/Creature/Update.hs 70;" f crUpdate src/Dodge/Creature/Update.hs 70;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 66;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 67;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 48;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 49;" f
crVocalizationSound src/Dodge/Creature/Vocalization.hs 16;" f crVocalizationSound src/Dodge/Creature/Vocalization.hs 16;" f
crWarningSounds src/Dodge/Creature/Vocalization.hs 25;" 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
@@ -3040,7 +3039,7 @@ crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f
crsNearRect src/Dodge/Zoning/Creature.hs 40;" f crsNearRect src/Dodge/Zoning/Creature.hs 40;" f
crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f
crystalLine src/Dodge/Placement/Instance/Wall.hs 58;" f crystalLine src/Dodge/Placement/Instance/Wall.hs 58;" f
cubeShape src/Dodge/Block/Debris.hs 133;" f cubeShape src/Dodge/Block/Debris.hs 156;" f
cullPoint src/Dodge/Render/ShapePicture.hs 136;" f cullPoint src/Dodge/Render/ShapePicture.hs 136;" f
cullPretty src/AesonHelp.hs 14;" f cullPretty src/AesonHelp.hs 14;" f
cutPoly src/Dodge/LevelGen/StaticWalls.hs 77;" f cutPoly src/Dodge/LevelGen/StaticWalls.hs 77;" f
@@ -3104,8 +3103,8 @@ deadRot src/Dodge/Creature/Picture.hs 83;" f
deadScalp src/Dodge/Creature/Picture.hs 78;" f deadScalp src/Dodge/Creature/Picture.hs 78;" f
deadUpperBody src/Dodge/Creature/Picture.hs 104;" f deadUpperBody src/Dodge/Creature/Picture.hs 104;" f
debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 725;" f debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 725;" f
debrisSPic src/Dodge/Prop/Draw.hs 16;" f debrisSPic src/Dodge/Prop/Draw.hs 17;" f
debrisSize src/Dodge/Block/Debris.hs 102;" f debrisSize src/Dodge/Block/Debris.hs 125;" f
debugEvent src/Dodge/Debug.hs 43;" f debugEvent src/Dodge/Debug.hs 43;" f
debugEvent' src/Dodge/Debug.hs 49;" f debugEvent' src/Dodge/Debug.hs 49;" f
debugEvents src/Dodge/Debug.hs 28;" f debugEvents src/Dodge/Debug.hs 28;" f
@@ -3192,10 +3191,10 @@ destroyDoor src/Dodge/Wall/Damage.hs 146;" f
destroyInvItem src/Dodge/Inventory.hs 49;" f destroyInvItem src/Dodge/Inventory.hs 49;" f
destroyItem src/Dodge/Inventory.hs 71;" f destroyItem src/Dodge/Inventory.hs 71;" f
destroyLSFlashAt src/Dodge/LightSource.hs 44;" f destroyLSFlashAt src/Dodge/LightSource.hs 44;" f
destroyMachine src/Dodge/Machine/Destroy.hs 13;" f destroyMachine src/Dodge/Machine/Destroy.hs 14;" f
destroyMachine' src/Dodge/Wall/Damage.hs 112;" f destroyMachine' src/Dodge/Wall/Damage.hs 112;" f
destroyMatS src/Dodge/Material/Sound.hs 7;" f destroyMatS src/Dodge/Material/Sound.hs 7;" f
destroyMcType src/Dodge/Machine/Destroy.hs 26;" f destroyMcType src/Dodge/Machine/Destroy.hs 27;" f
destroyMount src/Dodge/Wall/Damage.hs 167;" f destroyMount src/Dodge/Wall/Damage.hs 167;" f
destroyMounts src/Dodge/Wall/Damage.hs 164;" f destroyMounts src/Dodge/Wall/Damage.hs 164;" f
destroyProjectile src/Dodge/Projectile/Update.hs 112;" f destroyProjectile src/Dodge/Projectile/Update.hs 112;" f
@@ -3232,7 +3231,7 @@ divideLine src/Geometry.hs 248;" f
divideLineExact src/Geometry.hs 276;" f divideLineExact src/Geometry.hs 276;" f
divideLineOddNumPoints src/Geometry.hs 261;" f divideLineOddNumPoints src/Geometry.hs 261;" f
dmType src/Dodge/Damage.hs 38;" f dmType src/Dodge/Damage.hs 38;" f
doAimTwist src/Dodge/Creature/YourControl.hs 154;" f doAimTwist src/Dodge/Creature/YourControl.hs 139;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 141;" f doAnyEquipmentEffect src/Dodge/Creature/State.hs 141;" f
doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBackspace src/Dodge/Update/Input/Text.hs 31;" f
doBarrelSpin src/Dodge/Projectile/Update.hs 168;" f doBarrelSpin src/Dodge/Projectile/Update.hs 168;" f
@@ -3361,7 +3360,7 @@ drawFlame src/Dodge/Flame/Draw.hs 8;" f
drawFlamelet src/Dodge/EnergyBall/Draw.hs 34;" f drawFlamelet src/Dodge/EnergyBall/Draw.hs 34;" f
drawForceField src/Dodge/Wall/Draw.hs 15;" f drawForceField src/Dodge/Wall/Draw.hs 15;" f
drawGapPlus src/Dodge/Render/Picture.hs 278;" f drawGapPlus src/Dodge/Render/Picture.hs 278;" f
drawGib src/Dodge/Prop/Draw.hs 27;" f drawGib src/Dodge/Prop/Draw.hs 30;" f
drawHUD src/Dodge/Render/HUD.hs 53;" f drawHUD src/Dodge/Render/HUD.hs 53;" f
drawInputMenu src/Dodge/Render/MenuScreen.hs 33;" f drawInputMenu src/Dodge/Render/MenuScreen.hs 33;" f
drawInspectWall src/Dodge/Debug/Picture.hs 256;" f drawInspectWall src/Dodge/Debug/Picture.hs 256;" f
@@ -3436,7 +3435,7 @@ drawWallSearchRays src/Dodge/Debug/Picture.hs 323;" f
drawWallsNearCursor src/Dodge/Debug/Picture.hs 233;" f drawWallsNearCursor src/Dodge/Debug/Picture.hs 233;" f
drawWallsNearSegment src/Dodge/Debug/Picture.hs 130;" f drawWallsNearSegment src/Dodge/Debug/Picture.hs 130;" f
drawWallsNearYou src/Dodge/Debug/Picture.hs 223;" f drawWallsNearYou src/Dodge/Debug/Picture.hs 223;" f
drawWeapon src/Dodge/Creature/Volition.hs 15;" f drawWeapon src/Dodge/Creature/Volition.hs 14;" f
drawWlIDs src/Dodge/Debug/Picture.hs 404;" f drawWlIDs src/Dodge/Debug/Picture.hs 404;" f
drawZone src/Dodge/Debug/Picture.hs 152;" f drawZone src/Dodge/Debug/Picture.hs 152;" f
drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f
@@ -3584,7 +3583,7 @@ foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 823;" f
foldMTRS src/Dodge/Room/Tutorial.hs 89;" 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 24;" f
foot1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 819;" f foot1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 819;" f
foot2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 705;" f foot2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 705;" f
foot3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 831;" f foot3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 831;" f
@@ -3663,7 +3662,7 @@ 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 547;" 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 36;" f
getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f
getSmoothScrollValue src/Dodge/SmoothScroll.hs 21;" f getSmoothScrollValue src/Dodge/SmoothScroll.hs 21;" f
getSplitString src/Dodge/Debug/Terminal.hs 129;" f getSplitString src/Dodge/Debug/Terminal.hs 129;" f
@@ -3725,7 +3724,7 @@ handHandleOrient src/Dodge/Item/HeldOffset.hs 74;" f
handOrient src/Dodge/Item/HeldOffset.hs 52;" f handOrient src/Dodge/Item/HeldOffset.hs 52;" f
handWalkingPos src/Dodge/Creature/HandPos.hs 45;" f handWalkingPos src/Dodge/Creature/HandPos.hs 45;" f
handleEvent src/Dodge/Event.hs 27;" f handleEvent src/Dodge/Event.hs 27;" f
handleHotkeys src/Dodge/Creature/YourControl.hs 46;" f handleHotkeys src/Dodge/Creature/YourControl.hs 41;" f
handleKeyboardEvent src/Dodge/Event/Input.hs 23;" f handleKeyboardEvent src/Dodge/Event/Input.hs 23;" f
handleMouseButtonEvent src/Dodge/Event/Input.hs 59;" f handleMouseButtonEvent src/Dodge/Event/Input.hs 59;" f
handleMouseMotionEvent src/Dodge/Event/Input.hs 47;" f handleMouseMotionEvent src/Dodge/Event/Input.hs 47;" f
@@ -3736,7 +3735,7 @@ handleResizeEvent src/Dodge/Event.hs 53;" f
handleTextInput src/Dodge/Event/Input.hs 19;" f handleTextInput src/Dodge/Event/Input.hs 19;" f
handleWindowMoveEvent src/Dodge/Event.hs 44;" f handleWindowMoveEvent src/Dodge/Event.hs 44;" f
hardQuit src/Dodge/Concurrent.hs 32;" f hardQuit src/Dodge/Concurrent.hs 32;" f
hasAutoDoorBody src/Dodge/Creature/Test.hs 141;" f hasAutoDoorBody src/Dodge/Creature/Test.hs 142;" f
hasButtonLOS src/Dodge/Base/Collide.hs 304;" f hasButtonLOS src/Dodge/Base/Collide.hs 304;" f
hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f
hasLOS src/Dodge/Base/Collide.hs 297;" f hasLOS src/Dodge/Base/Collide.hs 297;" f
@@ -3751,14 +3750,14 @@ healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f
healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 109;" f healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 109;" f
healthTest src/Dodge/Room/LasTurret.hs 129;" f healthTest src/Dodge/Room/LasTurret.hs 129;" 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 28;" f
heldAimZoom src/Dodge/Update/Camera.hs 158;" f heldAimZoom src/Dodge/Update/Camera.hs 158;" f
heldEffect src/Dodge/HeldUse.hs 64;" f heldEffect src/Dodge/HeldUse.hs 64;" f
heldEffectMuzzles src/Dodge/HeldUse.hs 135;" f heldEffectMuzzles src/Dodge/HeldUse.hs 135;" f
heldHandlePos src/Dodge/Item/HeldOffset.hs 103;" f heldHandlePos src/Dodge/Item/HeldOffset.hs 103;" f
heldInfo src/Dodge/Item/Info.hs 92;" f heldInfo src/Dodge/Item/Info.hs 92;" f
heldItemAmmoSlots src/Dodge/Item/AmmoSlots.hs 20;" f heldItemAmmoSlots src/Dodge/Item/AmmoSlots.hs 20;" f
heldItemBulkiness src/Dodge/Creature/YourControl.hs 194;" f heldItemBulkiness src/Dodge/Creature/YourControl.hs 182;" f
heldItemInvLock src/Dodge/HeldUse.hs 469;" f heldItemInvLock src/Dodge/HeldUse.hs 469;" f
heldItemMuzVel src/Dodge/HeldUse.hs 1022;" f heldItemMuzVel src/Dodge/HeldUse.hs 1022;" f
heldItemMuzzles src/Dodge/HeldUse.hs 198;" f heldItemMuzzles src/Dodge/HeldUse.hs 198;" f
@@ -3777,11 +3776,11 @@ hit1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 613;" f
hitEffFromBul src/Dodge/Bullet.hs 156;" f hitEffFromBul src/Dodge/Bullet.hs 156;" f
hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 753;" f hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 753;" f
holdForm src/Dodge/Creature/Boid.hs 139;" f holdForm src/Dodge/Creature/Boid.hs 139;" f
holsterWeapon src/Dodge/Creature/Volition.hs 15;" f holsterWeapon src/Dodge/Creature/Volition.hs 14;" f
homingModule src/Dodge/Item/Scope.hs 50;" f homingModule src/Dodge/Item/Scope.hs 50;" f
horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f
hotkeyToChar src/Dodge/Inventory/SelectionList.hs 185;" f hotkeyToChar src/Dodge/Inventory/SelectionList.hs 185;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 82;" f hotkeyToScancode src/Dodge/Creature/YourControl.hs 66;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 182;" f hotkeyToString src/Dodge/Inventory/SelectionList.hs 182;" f
iShape src/Dodge/Placement/Instance/LightSource.hs 58;" f iShape src/Dodge/Placement/Instance/LightSource.hs 58;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f
@@ -3876,7 +3875,7 @@ invertInventoryToMap src/Dodge/Combine.hs 57;" f
invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 21;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 21;" f
invisibleWall src/Dodge/Placement/Instance/Wall.hs 27;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 27;" f
isAmmoIntLink src/Dodge/HeldUse.hs 738;" f isAmmoIntLink src/Dodge/HeldUse.hs 738;" f
isAnimate src/Dodge/Creature/Test.hs 135;" f isAnimate src/Dodge/Creature/Test.hs 136;" f
isCognizant src/Dodge/Creature/Perception.hs 105;" f isCognizant src/Dodge/Creature/Perception.hs 105;" f
isConnected src/Dodge/Inventory/Swap.hs 77;" f isConnected src/Dodge/Inventory/Swap.hs 77;" f
isCornerLink src/Dodge/RoomLink.hs 66;" f isCornerLink src/Dodge/RoomLink.hs 66;" f
@@ -3911,13 +3910,13 @@ itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 78;" f
itInvHeight src/Dodge/Item/InvSize.hs 11;" f itInvHeight src/Dodge/Item/InvSize.hs 11;" f
itUseCondition src/Dodge/ItemUseCondition.hs 6;" f itUseCondition src/Dodge/ItemUseCondition.hs 6;" f
itemAboveAttachables src/Dodge/Item/Grammar.hs 37;" f itemAboveAttachables src/Dodge/Item/Grammar.hs 37;" f
itemAimStance src/Dodge/Item/AimStance.hs 10;" f itemAimStance src/Dodge/Item/AimStance.hs 11;" f
itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 13;" f itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 13;" f
itemBaseName src/Dodge/Item/Display.hs 60;" f itemBaseName src/Dodge/Item/Display.hs 60;" f
itemBaseStance src/Dodge/Item/AimStance.hs 21;" f itemBaseStance src/Dodge/Item/AimStance.hs 22;" f
itemBelowAttachables src/Dodge/Item/Grammar.hs 53;" f itemBelowAttachables src/Dodge/Item/Grammar.hs 53;" f
itemBlips src/Dodge/RadarSweep.hs 94;" f itemBlips src/Dodge/RadarSweep.hs 94;" f
itemBulkiness src/Dodge/Creature/YourControl.hs 188;" f itemBulkiness src/Dodge/Creature/YourControl.hs 176;" f
itemCombinations src/Dodge/Combine/Combinations.hs 56;" f itemCombinations src/Dodge/Combine/Combinations.hs 56;" f
itemDetectorEffect src/Dodge/HeldUse.hs 811;" f itemDetectorEffect src/Dodge/HeldUse.hs 811;" f
itemDisplay src/Dodge/Inventory/SelectionList.hs 53;" f itemDisplay src/Dodge/Inventory/SelectionList.hs 53;" f
@@ -4105,16 +4104,18 @@ main bench/Bench.hs 15;" f
main test/Spec.hs 12;" f main test/Spec.hs 12;" f
makeArc src/Picture/Base.hs 149;" f makeArc src/Picture/Base.hs 149;" f
makeBlip src/Dodge/RadarSweep.hs 70;" f makeBlip src/Dodge/RadarSweep.hs 70;" f
makeBlockDebris src/Dodge/Block/Debris.hs 56;" f makeBlockDebris src/Dodge/Block/Debris.hs 57;" f
makeBullet src/Dodge/HeldUse.hs 1001;" f makeBullet src/Dodge/HeldUse.hs 1001;" f
makeButton src/Dodge/LevelGen/Switch.hs 16;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f
makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 124;" f makeColorTermLine src/Dodge/Terminal.hs 124;" f
makeColorTermPara src/Dodge/Terminal.hs 121;" f makeColorTermPara src/Dodge/Terminal.hs 121;" f
makeCorpse src/Dodge/Corpse/Make.hs 13;" f makeCorpse src/Dodge/Corpse/Make.hs 13;" f
makeDebris src/Dodge/Block/Debris.hs 68;" f makeDebris src/Dodge/Block/Debris.hs 69;" f
makeDebrisDirected src/Dodge/Block/Debris.hs 71;" f makeDebrisDirected src/Dodge/Block/Debris.hs 95;" f
makeDoorDebris src/Dodge/Block/Debris.hs 40;" f makeDebrisDirectedZ src/Dodge/Block/Debris.hs 75;" f
makeDebrisZ src/Dodge/Block/Debris.hs 72;" f
makeDoorDebris src/Dodge/Block/Debris.hs 41;" f
makeDumbSwitch src/Dodge/Room/LongDoor.hs 145;" f makeDumbSwitch src/Dodge/Room/LongDoor.hs 145;" f
makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f
makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 69;" f makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 69;" f
@@ -4125,7 +4126,7 @@ makeFlamelet src/Dodge/EnergyBall.hs 21;" f
makeFragBullets src/Dodge/Bullet.hs 132;" f makeFragBullets src/Dodge/Bullet.hs 132;" f
makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 11;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 11;" f
makeIntInterval src/Dodge/Zoning/Base.hs 37;" f makeIntInterval src/Dodge/Zoning/Base.hs 37;" f
makeMachineDebris src/Dodge/Block/Debris.hs 28;" f makeMachineDebris src/Dodge/Block/Debris.hs 29;" f
makeMovingEB src/Dodge/EnergyBall.hs 60;" f makeMovingEB src/Dodge/EnergyBall.hs 60;" f
makeMuzzleFlare src/Dodge/HeldUse.hs 680;" f makeMuzzleFlare src/Dodge/HeldUse.hs 680;" f
makeParagraph src/Justify.hs 6;" f makeParagraph src/Justify.hs 6;" f
@@ -4175,8 +4176,8 @@ mcColor src/Dodge/Machine/Draw.hs 82;" f
mcDamSensorTriggerUpdate src/Dodge/Machine/Update.hs 116;" f mcDamSensorTriggerUpdate src/Dodge/Machine/Update.hs 116;" f
mcDamSensorUpdate src/Dodge/Machine/Update.hs 162;" f mcDamSensorUpdate src/Dodge/Machine/Update.hs 162;" f
mcDamSensorUpdate' src/Dodge/Wall/Damage.hs 58;" f mcDamSensorUpdate' src/Dodge/Wall/Damage.hs 58;" f
mcKillBut src/Dodge/Machine/Destroy.hs 42;" f mcKillBut src/Dodge/Machine/Destroy.hs 43;" f
mcKillTerm src/Dodge/Machine/Destroy.hs 34;" f mcKillTerm src/Dodge/Machine/Destroy.hs 35;" f
mcNoItemsTest src/Dodge/Machine/Update.hs 170;" f mcNoItemsTest src/Dodge/Machine/Update.hs 170;" f
mcPlaySound src/Dodge/Machine/Update.hs 136;" f mcPlaySound src/Dodge/Machine/Update.hs 136;" f
mcProxSensorTriggerUpdate src/Dodge/Machine/Update.hs 122;" f mcProxSensorTriggerUpdate src/Dodge/Machine/Update.hs 122;" f
@@ -4347,7 +4348,7 @@ obstructPathsCrossing src/Dodge/Path.hs 120;" f
oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 635;" f oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 635;" f
onEquipWristShield src/Dodge/Euse.hs 89;" f onEquipWristShield src/Dodge/Euse.hs 89;" f
onRemoveWristShield src/Dodge/Euse.hs 79;" f onRemoveWristShield src/Dodge/Euse.hs 79;" f
oneH src/Dodge/Creature/Test.hs 97;" f oneH src/Dodge/Creature/Test.hs 98;" f
openConsole src/Dodge/Update.hs 138;" f openConsole src/Dodge/Update.hs 138;" f
optionMenu src/Dodge/Menu.hs 110;" f optionMenu src/Dodge/Menu.hs 110;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 62;" f optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 62;" f
@@ -4552,7 +4553,7 @@ printRotPoint src/Dodge/Debug/Picture.hs 38;" f
prismBox src/Shape.hs 74;" f prismBox src/Shape.hs 74;" f
prismPoly src/Shape.hs 60;" f prismPoly src/Shape.hs 60;" f
projV src/Geometry/Vector.hs 179;" f projV src/Geometry/Vector.hs 179;" f
propSPic src/Dodge/Prop/Draw.hs 23;" f propSPic src/Dodge/Prop/Draw.hs 26;" f
propagateOrientation src/Dodge/Item/Orientation.hs 92;" f propagateOrientation src/Dodge/Item/Orientation.hs 92;" f
ps0 src/Dodge/LevelGen/PlacementHelper.hs 52;" f ps0 src/Dodge/LevelGen/PlacementHelper.hs 52;" f
ps0PushPS src/Dodge/LevelGen/PlacementHelper.hs 76;" f ps0PushPS src/Dodge/LevelGen/PlacementHelper.hs 76;" f
@@ -4687,7 +4688,7 @@ reloadS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 531;" f
rememberSounds src/Dodge/Creature/Perception.hs 176;" f rememberSounds src/Dodge/Creature/Perception.hs 176;" f
remoteDetonator src/Dodge/Item/Scope.hs 152;" f remoteDetonator src/Dodge/Item/Scope.hs 152;" f
remoteScreen src/Dodge/Item/Scope.hs 146;" f remoteScreen src/Dodge/Item/Scope.hs 146;" f
removeAimPosture src/Dodge/Creature/YourControl.hs 159;" f removeAimPosture src/Dodge/Creature/YourControl.hs 144;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 933;" f removeAmmoFromMag src/Dodge/HeldUse.hs 933;" 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
@@ -4829,7 +4830,7 @@ scaleMat src/MatrixHelper.hs 71;" f
scaleMatrix src/MatrixHelper.hs 68;" f scaleMatrix src/MatrixHelper.hs 68;" f
scaleSH src/Shape.hs 266;" f 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 86;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 126;" 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
@@ -4881,7 +4882,7 @@ sensorTypeDamages src/Dodge/Wall/Damage.hs 92;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 82;" f sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 82;" 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 129;" f
setChannelPos src/Sound.hs 152;" f setChannelPos src/Sound.hs 152;" f
setClickWorldPos src/Dodge/Update.hs 108;" f setClickWorldPos src/Dodge/Update.hs 108;" f
setClip src/Dodge/Debug.hs 239;" f setClip src/Dodge/Debug.hs 239;" f
@@ -4891,7 +4892,7 @@ setFallback src/Dodge/PlacementSpot.hs 127;" f
setInLinks src/Dodge/RoomLink.hs 52;" f setInLinks src/Dodge/RoomLink.hs 52;" f
setInLinksByType src/Dodge/RoomLink.hs 73;" f setInLinksByType src/Dodge/RoomLink.hs 73;" f
setInLinksPD src/Dodge/RoomLink.hs 93;" f setInLinksPD src/Dodge/RoomLink.hs 93;" f
setInvPosFromSS src/Dodge/Inventory/Location.hs 92;" f setInvPosFromSS src/Dodge/Inventory/Location.hs 93;" f
setLayer src/Picture/Base.hs 131;" f setLayer src/Picture/Base.hs 131;" f
setLinkType src/Dodge/RoomLink.hs 79;" f setLinkType src/Dodge/RoomLink.hs 79;" f
setLinkTypePD src/Dodge/RoomLink.hs 86;" f setLinkTypePD src/Dodge/RoomLink.hs 86;" f
@@ -4965,14 +4966,14 @@ shineTargetLaser src/Dodge/Creature/State.hs 201;" f
shineTorch src/Dodge/Creature/State.hs 237;" f shineTorch src/Dodge/Creature/State.hs 237;" f
shootBullet src/Dodge/HeldUse.hs 995;" f shootBullet src/Dodge/HeldUse.hs 995;" f
shootBullets src/Dodge/HeldUse.hs 989;" f shootBullets src/Dodge/HeldUse.hs 989;" f
shootFirstMiss src/Dodge/Creature/Volition.hs 34;" f shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f
shootLaser src/Dodge/HeldUse.hs 868;" f shootLaser src/Dodge/HeldUse.hs 868;" f
shootPlasmaBall src/Dodge/HeldUse.hs 907;" f shootPlasmaBall src/Dodge/HeldUse.hs 907;" f
shootPulseBall src/Dodge/HeldUse.hs 919;" f shootPulseBall src/Dodge/HeldUse.hs 919;" f
shootPulseLaser src/Dodge/HeldUse.hs 894;" f shootPulseLaser src/Dodge/HeldUse.hs 894;" f
shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f
shootTeslaArc src/Dodge/HeldUse.hs 1206;" f shootTeslaArc src/Dodge/HeldUse.hs 1206;" f
shootTillEmpty src/Dodge/Creature/Volition.hs 19;" f shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f
shootTractorBeam src/Dodge/HeldUse.hs 838;" f shootTractorBeam src/Dodge/HeldUse.hs 838;" f
shootersRoom src/Dodge/Room/Room.hs 340;" f shootersRoom src/Dodge/Room/Room.hs 340;" f
shootersRoom' src/Dodge/Room/Room.hs 307;" f shootersRoom' src/Dodge/Room/Room.hs 307;" f
@@ -4990,7 +4991,7 @@ showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 75;" f showManObj src/Dodge/TestString.hs 75;" f
showMuzzlePositions src/Dodge/Debug.hs 292;" f showMuzzlePositions src/Dodge/Debug.hs 292;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 84;" f showTimeFlow src/Dodge/TestString.hs 85;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f
shrinkVert src/Geometry/Polygon.hs 202;" f shrinkVert src/Geometry/Polygon.hs 202;" f
shuffle src/RandomHelp.hs 68;" f shuffle src/RandomHelp.hs 68;" f
@@ -5346,12 +5347,12 @@ truncFaces src/Polyhedra/Geodesic.hs 54;" f
truncate src/Polyhedra/Geodesic.hs 39;" f truncate src/Polyhedra/Geodesic.hs 39;" f
trunkDepth src/TreeHelp.hs 162;" f trunkDepth src/TreeHelp.hs 162;" f
tryAttachItems src/Dodge/Item/Grammar.hs 34;" f tryAttachItems src/Dodge/Item/Grammar.hs 34;" f
tryClickUse src/Dodge/Creature/YourControl.hs 236;" f tryClickUse src/Dodge/Creature/YourControl.hs 224;" f
tryCombine src/Dodge/Update/Input/InGame.hs 521;" f tryCombine src/Dodge/Update/Input/InGame.hs 521;" f
tryDrawToCapacitor src/Dodge/Creature/State.hs 151;" f tryDrawToCapacitor src/Dodge/Creature/State.hs 151;" f
tryDropSelected src/Dodge/Update/Input/InGame.hs 140;" f tryDropSelected src/Dodge/Update/Input/InGame.hs 140;" f
tryGetChannel src/Sound.hs 99;" f tryGetChannel src/Sound.hs 99;" f
tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 22;" f tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 23;" f
tryMeleeAttack src/Dodge/Creature/ReaderUpdate.hs 40;" f tryMeleeAttack src/Dodge/Creature/ReaderUpdate.hs 40;" f
tryPickupSelected src/Dodge/Update/Input/InGame.hs 147;" f tryPickupSelected src/Dodge/Update/Input/InGame.hs 147;" f
tryPlay src/Sound.hs 85;" f tryPlay src/Sound.hs 85;" f
@@ -5374,10 +5375,10 @@ 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
twists src/Dodge/Creature/Test.hs 103;" f twists src/Dodge/Creature/Test.hs 104;" f
twoFlat src/Dodge/Creature/Test.hs 100;" f twoFlat src/Dodge/Creature/Test.hs 101;" f
twoFlatHRot src/Dodge/Item/HeldOffset.hs 94;" f twoFlatHRot src/Dodge/Item/HeldOffset.hs 94;" f
twoHandTwistAmount src/Dodge/Creature/YourControl.hs 166;" f twoHandTwistAmount src/Dodge/Creature/YourControl.hs 154;" f
twoRoomPoss src/Dodge/PlacementSpot.hs 148;" f twoRoomPoss src/Dodge/PlacementSpot.hs 148;" f
twoStep1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 519;" f twoStep1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 519;" f
twoStepS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 567;" f twoStepS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 567;" f
@@ -5496,7 +5497,7 @@ updateRadarSweeps src/Dodge/Update.hs 748;" f
updateRandNode src/TreeHelp.hs 109;" f updateRandNode src/TreeHelp.hs 109;" f
updateRenderSplit appDodge/Main.hs 104;" f updateRenderSplit appDodge/Main.hs 104;" f
updateRightParentSF src/Dodge/Item/Grammar.hs 188;" f updateRightParentSF src/Dodge/Item/Grammar.hs 188;" f
updateRootItemID src/Dodge/Inventory/Location.hs 41;" f updateRootItemID src/Dodge/Inventory/Location.hs 42;" f
updateScopeZoom src/Dodge/Update/Scroll.hs 77;" f updateScopeZoom src/Dodge/Update/Scroll.hs 77;" f
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 262;" f updateSection src/Dodge/DisplayInventory.hs 262;" f
@@ -5546,7 +5547,7 @@ upperPrismPolyTS src/Shape.hs 116;" f
upperRounded src/Shape.hs 182;" f upperRounded src/Shape.hs 182;" f
useBulletPayload src/Dodge/Bullet.hs 117;" f useBulletPayload src/Dodge/Bullet.hs 117;" f
useGasParams src/Dodge/HeldUse.hs 1111;" f useGasParams src/Dodge/HeldUse.hs 1111;" f
useHotkey src/Dodge/Creature/YourControl.hs 77;" f useHotkey src/Dodge/Creature/YourControl.hs 61;" f
useInventoryPath src/Dodge/HeldUse.hs 1402;" f useInventoryPath src/Dodge/HeldUse.hs 1402;" f
useItem src/Dodge/Creature/Impulse/UseItem.hs 19;" f useItem src/Dodge/Creature/Impulse/UseItem.hs 19;" f
useItemLoc src/Dodge/Creature/Impulse/UseItem.hs 26;" f useItemLoc src/Dodge/Creature/Impulse/UseItem.hs 26;" f
@@ -5605,11 +5606,11 @@ 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 34;" 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 117;" f
wasdDir src/Dodge/WASD.hs 17;" f wasdDir src/Dodge/WASD.hs 17;" f
wasdM src/Dodge/WASD.hs 9;" f wasdM src/Dodge/WASD.hs 9;" f
wasdMovement src/Dodge/Creature/YourControl.hs 169;" f wasdMovement src/Dodge/Creature/YourControl.hs 157;" f
wasdWithAiming src/Dodge/Creature/YourControl.hs 126;" f wasdWithAiming src/Dodge/Creature/YourControl.hs 110;" f
watchCombinations src/Dodge/Combine/Combinations.hs 16;" f watchCombinations src/Dodge/Combine/Combinations.hs 16;" f
watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 186;" f watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 186;" f
weaponBehindPillar src/Dodge/Room/Room.hs 198;" f weaponBehindPillar src/Dodge/Room/Room.hs 198;" f
@@ -5687,7 +5688,7 @@ yellow src/Color.hs 44;" f
you src/Dodge/Base/You.hs 17;" 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 26;" 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 37;" f yourInv src/Dodge/Base/You.hs 37;" f