Make optical scope relative to camera rotation

This commit is contained in:
2024-09-21 16:52:04 +01:00
parent 9dff2fcd7a
commit 27e07a10c4
11 changed files with 200 additions and 832 deletions
+5 -1
View File
@@ -1 +1,5 @@
All good (617 modules, at 16:01:23) /home/justin/Haskell/loop/src/Dodge/Update/Camera.hs:215:5-18: warning: [-Wunused-local-binds]
Defined but not used: rotateanyscope
|
215 | rotateanyscope = fromMaybe id $ do
| ^^^^^^^^^^^^^^
+1 -1
View File
File diff suppressed because one or more lines are too long
+6 -6
View File
@@ -1,6 +1,6 @@
module Dodge.Base.You module Dodge.Base.You
(you (you
, yourScopeInvID -- , yourScopeInvID
, yourInv , yourInv
, yourScrollAttachment , yourScrollAttachment
, yourItem , yourItem
@@ -30,11 +30,11 @@ yourScrollAttachment w = do
guard (canHeldScrollAttach itm atparams) guard (canHeldScrollAttach itm atparams)
return (i - 1, atparams) return (i - 1, atparams)
yourScopeInvID :: World -> Maybe Int --yourScopeInvID :: World -> Maybe Int
yourScopeInvID w = do --yourScopeInvID w = do
(i, params) <- yourScrollAttachment w -- (i, params) <- yourScrollAttachment w
_ <- params ^? opticPos -- _ <- params ^? opticPos
return i -- return i
yourInv :: World -> IM.IntMap Item yourInv :: World -> IM.IntMap Item
yourInv = _crInv . you yourInv = _crInv . you
+1 -1
View File
@@ -104,7 +104,7 @@ data HeldMod
| ExplodeRemoteShellMod | ExplodeRemoteShellMod
| DoNothingMod | DoNothingMod
-- | ForceFieldMod -- | ForceFieldMod
| DetectorMod Detector -- | DetectorMod Detector
deriving (Eq, Ord, Show, Read) --Generic, Flat) deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''Euse makeLenses ''Euse
+9 -1
View File
@@ -12,8 +12,16 @@ import Geometry.Data
data Scope data Scope
= NoScope = NoScope
| RemoteScope | OpticScope
{ -- | a camera offset { -- | a camera offset
_opticPos :: Point2 -- this should be relative to the camera rotation
-- this means that when the camera rotates when firing etc,
-- this doesn't need to be changed
, _opticZoom :: Float
, _opticDefaultZoom :: Float
}
| RemoteScope
{ -- | a camera offset, note unlike the optic pos this is absolute
_remotePos :: Point2 _remotePos :: Point2
, _remoteZoom :: Float , _remoteZoom :: Float
} }
+9 -9
View File
@@ -121,15 +121,15 @@ data AmmoParams = BulletParams {_ampBullet :: Bullet}
deriving (Eq, Show, Read) --Generic, Flat) deriving (Eq, Show, Read) --Generic, Flat)
data ScrollAttachParams data ScrollAttachParams
= ZoomScrollParams = -- ZoomScrollParams
{ -- | a camera offset -- { -- | a camera offset
_opticPos :: Point2 -- this should be relative to the camera rotation -- _opticPos :: Point2 -- this should be relative to the camera rotation
-- then when the camera rotates when firing etc, -- -- then when the camera rotates when firing etc,
-- this doesn't need to be changed -- -- this doesn't need to be changed
, _opticZoom :: Float -- , _opticZoom :: Float
, _opticDefaultZoom :: Float -- , _opticDefaultZoom :: Float
} -- }
| CharScrollParams CharScrollParams
{ _scrollChar :: Seq.Seq Char} { _scrollChar :: Seq.Seq Char}
deriving (Eq, Show, Read) --Generic, Flat) deriving (Eq, Show, Read) --Generic, Flat)
+5 -644
View File
@@ -10,7 +10,7 @@ import Dodge.Inventory.Lock
import Dodge.WorldEvent.Cloud import Dodge.WorldEvent.Cloud
import Dodge.LightSource import Dodge.LightSource
import qualified SDL import qualified SDL
import Dodge.Base.You --import Dodge.Base.You
import Dodge.Data.MuzzleEffect import Dodge.Data.MuzzleEffect
import ListHelp import ListHelp
import Dodge.Data.ComposedItem import Dodge.Data.ComposedItem
@@ -43,313 +43,11 @@ import Sound.Data
heldEffect :: HeldMod -> LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World heldEffect :: HeldMod -> LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World
heldEffect effecttype = case effecttype of heldEffect effecttype = case effecttype of
-- HeldModNothing -> const $ const id
-- PoisonSprayerMod -> gasEffect
-- [ useAmmoAmount 1
-- , withSoundForI foamSprayLoopS 5
-- , ammoCheckI
-- ]
-- FlameSpitterMod -> gasEffect
-- [ withSidePushAfterI 20
-- , withSidePushI 5
-- , useAmmoAmount 1
-- , withRandomItemParams f
-- , repeatOnFrames [1 .. 9] FlameSpitterRepeatMod
-- , lockInvFor 10
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- FlameSpitterRepeatMod -> gasEffect
-- [ withSidePushAfterI 20
-- , withSidePushI 5
-- , useAmmoAmount 1
-- , withRandomItemParams f
-- , ammoCheckI
-- ]
-- FlameThrowerMod -> gasEffect
-- [ withSidePushAfterI 20
-- , --, withTempLight 1 100 (V3 1 0 0)
-- withSidePushI 5
-- , useAmmoAmount 1
-- , ammoCheckI
-- ]
-- LauncherMod -> foldl' (&) usePjCreation
-- --[ useAmmoAmount 1
---- , withSoundStart tap4S
-- [ useTimeCheck
---- , ammoCheckI
-- , blCheck
-- ]
-- TeslaMod -> foldl' (&) (shootTeslaArc . _ldtValue)
-- [ useAmmoAmount 1
-- , withSoundForI elecCrackleS 1
-- , withTempLight 1 100 (V3 0 0 1)
-- , ammoCheckI
-- ]
-- LasWideMod n -> foldl' (&) (shootLaser . _ldtValue)
-- [ useAmmoAmount 1
-- , withItem $ \it ->
-- duplicateNumBarrels
---- ( min
---- (it ^?! itUse . heldConsumption . laSource . _InternalSource . iaLoaded)
-- (it ^?! itParams . lasCycle `div` lasWideRate)
---- )
-- , withItem $ \it -> withCrPos $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , withItem $ \it -> withTempLight 1 100 (xyzV4 (_lasColor $ _itParams it))
-- , withSoundForI tone440sawtoothquietS 2
-- , withItemUpdateFirst (increasecycleLasWide n)
-- , ammoCheckI
-- ]
-- DualBeamMod -> foldl' (&) (shootDualLaser . _ldtValue)
-- [ useAmmoAmount 1
-- , withSoundForI tone440sawtoothquietS 2
-- , withItem $ \it -> withCrPosShift (V2 0 (- thegapDualBeam it)) $ flareCircleAt (_lasColor2 $ _itParams it) 0.8
-- , withItem $ \it -> withCrPosShift (V2 0 (thegapDualBeam it)) $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , ammoCheckI
-- ]
-- LasMod -> foldl' (&) (shootLaser . _ldtValue)
-- [ useAmmoAmount 1
-- , withItem $ \it -> withCrPos $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , withSoundForI tone440sawtoothquietS 2
-- , withItem $ \it -> withTempLight 1 100 (xyzV4 (_lasColor $ _itParams it))
-- , duplicateLoadedBarrels
-- , ammoCheckI
-- ]
-- LauncherXMod _ -> foldl' (&) usePjCreationX
-- --[ useAmmoAmount i
-- --, withSoundStart tap4S
-- [ useTimeCheck
-- --, ammoCheckI
-- , blCheck
-- ]
-- ShatterMod -> foldl' (&) (shootShatter . _ldtValue)
-- [ useAmmoAmount 1
-- , -- , withSoundStart tap3S
-- useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- BangCaneMod -> bulletGunEffect
-- [ withFlare
-- , withSmoke 1 black 20 200 5
-- , withRecoil
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- VolleyGunMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundItemChoiceStart caneStickSoundChoice
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- MultiGunMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundItemChoiceStart caneStickSoundChoice
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- AutoRifleMod -> bulletGunEffect
-- -- note this is the same as BangCanemMod with the first changed
-- [ withFlare
-- , withSmoke 1 black 20 200 5
-- , withRecoil
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BangRodMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- ElephantGunMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- AutoAmrMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI -- cf ElephantGun
-- ]
-- MachineGunMod -> bulletGunEffect
-- [ withFlare
-- , withThinSmokeI
-- , withSoundStart bangEchoS
-- , rateIncAB (torqueBeforeAtLeast 0.1 0.1) withTorqueAfter
-- , ammoCheckI
-- ]
-- BangStickMod -> bulletGunEffect
-- [ withRecoil
-- , useAllAmmo
-- , withSoundItemChoiceStart bangStickSoundChoice
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , withFlare
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
PistolMod -> bulGunEffect PistolMod -> bulGunEffect
-- AutoPistolMod -> bulletGunEffect
-- [ withFlare
-- , withSidePushI 50
-- , withRecoil
-- , withTorqueAfter
-- , duplicateLoadedBarrels
-- , withSoundStart tap3S
-- , useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- MachinePistolMod -> bulletGunEffect
-- [ withFlare
-- , withRecoil
-- , withSidePushI 50
-- , withTorqueAfter
-- , duplicateLoadedBarrels
-- , withSoundStart tap1S
-- , useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BurstRifleMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , repeatOnFrames [3, 6] BurstRifleRepeatMod
-- , lockInvFor 7
-- , sideEffectOnFrame 7 (\_ cr -> TorqueCr 0.2 (_crID cr)) --(torqueSideEffect 0.2)
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- BurstRifleRepeatMod -> bulletGunEffect
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , sideEffectOnFrame 7 (\_ cr -> TorqueCr 0.2 (_crID cr)) --(torqueSideEffect 0.2)
-- , ammoCheckI
-- ]
-- MiniGunMod i -> bulletGunEffect
-- [ duplicateNumBarrels 1
-- , repeatTransformed
-- [ (id, modcrpos x)
-- | x <- map ((/ (fromIntegral i - 1)) . fromIntegral) [0 .. i -1]
-- ]
-- , afterRecoil (fromIntegral i * 5)
-- , torqueBefore (fromIntegral i * 0.05)
-- , withSidePushI (fromIntegral i * 25)
-- , withMuzFlare
-- , withSmoke 1 black 20 200 5
-- , useAmmoAmount i
-- , withSoundForI mini1S 2
-- , withWarmUp crankSlowS
-- , ammoCheckI
-- ]
-- SmgMod -> bulletGunEffect
-- [ withFlare
-- , withSidePushI 30
-- , withRecoil
-- , withTorqueAfter
-- , duplicateLoadedBarrels
-- , withSoundStart tap3S
-- , useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BangConeMod -> bulletGunEffect
-- [ withRandomItem coneRandItemParams
-- , withRandomItemUpdate coneRandItemUpdate
-- , withRandomOffset
-- , duplicateLoadedBarrels
-- , duplicateLoaded
-- , withMuzFlare
-- , withRecoil
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- TractorMod -> foldl' (&) (aTractorBeam . _ldtValue) [ammoCheckI]
FireRemoteShellMod -> undefined FireRemoteShellMod -> undefined
ExplodeRemoteShellMod -> undefined ExplodeRemoteShellMod -> undefined
DoNothingMod -> const $ const id DoNothingMod -> const $ const id
-- ForceFieldMod -> undefined
DetectorMod _ -> undefined
where where
-- f = do
-- nzpres <- state $ randomR (3, 4)
-- return $ sprayNozzles . ix 0 . nzPressure .~ nzpres
-- increasecycleLasWide n it = case _heldHammer (_itUse it) of
-- HammerUp -> it & itParams . lasCycle .~ 1
-- _ -> it & itParams . lasCycle %~ (min (n * lasWideRate) . (+ 1))
-- thegapDualBeam = _dbGap . _itParams
--directedTelPos _ cr w = (p, a)
-- where
-- p = fromMaybe (_crPos cr) $ cr ^? crTargeting . ctPos . _Just
-- a = argV (mouseWorldPos (w ^. input) (w ^. wCam) -.- p)
-- modcrpos x cr = fromMaybe cr $ do
-- invid <- cr ^? crManipulation . manObject . inInventory . ispItem
-- return $ cr & crDir %~ tweenAngles x (_crOldDir cr)
-- & crPos %~ alongSegBy x (_crOldPos cr)
-- & crInv . ix (invid + 1) . itUse . amagParams . ampBullet . buDelayFraction .~ x
--gasEffect :: [(LabelDoubleTree ComposeLinkType Item
-- -> Creature -> World -> World)
-- -> LabelDoubleTree ComposeLinkType Item
-- -> Creature
-- -> World
-- -> World]
-- -> LabelDoubleTree ComposeLinkType Item
-- -> Creature
-- -> World
-- -> World
--gasEffect = foldl' (&) (overNozzles useGasParams)
bulGunEffect :: LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World bulGunEffect :: LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World
bulGunEffect = hammerCheck $ useTimeCheck bulGunEffect' bulGunEffect = hammerCheck $ useTimeCheck bulGunEffect'
@@ -420,7 +118,7 @@ applyTorqueCME :: Item -> Creature -> World -> World
applyTorqueCME itm cr w applyTorqueCME itm cr w
| cid == 0 = w | cid == 0 = w
& wCam . camRot +~ rot & wCam . camRot +~ rot
& rotateScope -- & rotateScope
& randGen .~ g & randGen .~ g
| otherwise = w | otherwise = w
& cWorld . lWorld . creatures . ix cid . crDir +~ rot & cWorld . lWorld . creatures . ix cid . crDir +~ rot
@@ -429,9 +127,9 @@ applyTorqueCME itm cr w
cid = _crID cr cid = _crID cr
(rot, g) = randomR (- torque, torque) $ _randGen w (rot, g) = randomR (- torque, torque) $ _randGen w
torque = fromMaybe 0 $ itm ^? itUse . heldParams . torqueAfter torque = fromMaybe 0 $ itm ^? itUse . heldParams . torqueAfter
rotateScope = fromMaybe id $ do -- rotateScope = fromMaybe id $ do
i <- yourScopeInvID w -- i <- yourScopeInvID w
return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot -- return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot
-- (Muzzle,Int,Int) = (muzzle, amountloaded, id of mag taken from) -- (Muzzle,Int,Int) = (muzzle, amountloaded, id of mag taken from)
@@ -600,343 +298,6 @@ makeBullet thebullet itm cr mz w =
Just x | x /= 0 -> fst . randomR (-x,x) $ _randGen w Just x | x /= 0 -> fst . randomR (-x,x) $ _randGen w
_ -> 0 _ -> 0
--bulletGunEffect :: [(LabelDoubleTree ComposeLinkType Item
-- -> Creature -> World -> World)
-- -> LabelDoubleTree ComposeLinkType Item
-- -> Creature
-- -> World
-- -> World]
-- -> LabelDoubleTree ComposeLinkType Item
-- -> Creature
-- -> World
-- -> World
--bulletGunEffect = foldl' (&) shootBullet
useMod :: HeldMod ->
[(LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World)
-> LabelDoubleTree ComposeLinkType Item -> Creature -> World -> World]
useMod hm = case hm of
-- TractorMod -> undefined
FireRemoteShellMod -> undefined
ExplodeRemoteShellMod -> undefined
DoNothingMod -> undefined
-- ForceFieldMod -> undefined
DetectorMod _ -> undefined
-- HeldModNothing -> []
-- PoisonSprayerMod ->
-- [ useAmmoAmount 1
-- , withSoundForI foamSprayLoopS 5
-- , ammoCheckI
-- ]
-- FlameSpitterMod ->
-- [ withSidePushAfterI 20
-- , withSidePushI 5
-- , useAmmoAmount 1
-- , withRandomItemParams f
-- , repeatOnFrames [1 .. 9] FlameSpitterRepeatMod
-- , lockInvFor 10
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- FlameSpitterRepeatMod ->
-- [ withSidePushAfterI 20
-- , withSidePushI 5
-- , useAmmoAmount 1
-- , withRandomItemParams f
-- , ammoCheckI
-- ]
-- FlameThrowerMod ->
-- [ withSidePushAfterI 20
-- , --, withTempLight 1 100 (V3 1 0 0)
-- withSidePushI 5
-- , useAmmoAmount 1
-- , ammoCheckI
-- ]
-- LauncherMod ->
-- --[ useAmmoAmount 1
---- , withSoundStart tap4S
-- [ useTimeCheck
---- , ammoCheckI
-- , blCheck
-- ]
-- TeslaMod ->
-- [ useAmmoAmount 1
-- , withSoundForI elecCrackleS 1
-- , withTempLight 1 100 (V3 0 0 1)
-- , ammoCheckI
-- ]
-- CircleLaserMod ->
-- [ duplicateItem fLasCircle
-- , useAmmoAmount 1
-- , withSoundForI tone440sawtoothquietS 2
-- , withItem $ \it -> withCrPos $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , withItem $ \it -> withTempLight 1 100 (xyzV4 (_lasColor $ _itParams it))
-- , withItemUpdateFirst increasecycleLasCircle
-- , ammoCheckI
-- ]
-- LasWideMod n ->
-- [ useAmmoAmount 1
-- , withItem $ \it ->
-- duplicateNumBarrels
---- ( min
---- (it ^?! itUse . heldConsumption . laSource . _InternalSource . iaLoaded)
-- (it ^?! itParams . lasCycle `div` lasWideRate)
---- )
-- , withItem $ \it -> withCrPos $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , withItem $ \it -> withTempLight 1 100 (xyzV4 (_lasColor $ _itParams it))
-- , withSoundForI tone440sawtoothquietS 2
-- , withItemUpdateFirst (increasecycleLasWide n)
-- , ammoCheckI
-- ]
-- DualBeamMod ->
-- [ useAmmoAmount 1
-- , withSoundForI tone440sawtoothquietS 2
-- , withItem $ \it -> withCrPosShift (V2 0 (- thegapDualBeam it)) $ flareCircleAt (_lasColor2 $ _itParams it) 0.8
-- , withItem $ \it -> withCrPosShift (V2 0 (thegapDualBeam it)) $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , ammoCheckI
-- ]
-- LasMod ->
-- [ useAmmoAmount 1
-- , withItem $ \it -> withCrPos $ flareCircleAt (_lasColor $ _itParams it) 0.8
-- , withSoundForI tone440sawtoothquietS 2
-- , withItem $ \it -> withTempLight 1 100 (xyzV4 (_lasColor $ _itParams it))
-- , duplicateLoadedBarrels
-- , ammoCheckI
-- ]
-- LauncherXMod _ ->
-- --[ useAmmoAmount i
-- --, withSoundStart tap4S
-- [ useTimeCheck
-- --, ammoCheckI
-- , blCheck
-- ]
-- ShatterMod ->
-- [ useAmmoAmount 1
-- , -- , withSoundStart tap3S
-- useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- AmmoCheckMod -> [ammoCheckI]
-- AmmoUseCheckMod -> [useAmmoAmount 1, useTimeCheck, ammoCheckI]
-- AmmoHammerTimeUseOneMod ->
-- [ useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- BangCaneMod ->
-- [ withFlare
-- , withSmoke 1 black 20 200 5
-- , withRecoil
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- VolleyGunMod ->
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundItemChoiceStart caneStickSoundChoice
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- MultiGunMod ->
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundItemChoiceStart caneStickSoundChoice
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- AutoRifleMod ->
-- -- note this is the same as BangCanemMod with the first changed
-- [ withFlare
-- , withSmoke 1 black 20 200 5
-- , withRecoil
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BangRodMod ->
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- ElephantGunMod ->
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- AutoAmrMod ->
-- [ withRecoil
-- , withFlare
-- , withThickSmokeI
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , useAmmoAmount 1
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI -- cf ElephantGun
-- ]
-- MachineGunMod ->
-- [ withFlare
-- , withThinSmokeI
-- , withSoundStart bangEchoS
-- , rateIncAB (torqueBeforeAtLeast 0.1 0.1) withTorqueAfter
-- , ammoCheckI
-- ]
-- ModWithDirectedTeleport hm' ->
-- reverse $ withPosDirWallCheck directedTelPos : useMod hm'
-- BangStickMod ->
-- [ withRecoil
-- , useAllAmmo
-- , withSoundItemChoiceStart bangStickSoundChoice
-- , duplicateLoadedBarrels
-- , withTorqueAfter
-- , withFlare
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
PistolMod ->
[ withSidePushI 50
, withRecoil
, withFlare
, withTorqueAfter
, duplicateLoadedBarrels
, withSoundStart tap3S
, useAmmoAmount 1
, useTimeCheck
, ammoCheckI
, blCheck
]
-- MachinePistolMod ->
-- [ withFlare
-- , withRecoil
-- , withSidePushI 50
-- , withTorqueAfter
-- , duplicateLoadedBarrels
-- , withSoundStart tap1S
-- , useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BurstRifleMod ->
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , repeatOnFrames [3, 6] BurstRifleRepeatMod
-- , lockInvFor 7
-- , sideEffectOnFrame 7 (\_ cr -> TorqueCr 0.2 (_crID cr)) --(torqueSideEffect 0.2)
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
-- BurstRifleRepeatMod ->
-- [ withRecoil
-- , withFlare
-- , duplicateLoadedBarrels
-- , useAmmoAmount 1
-- , withSoundStart tap3S
-- , sideEffectOnFrame 7 (\_ cr -> TorqueCr 0.2 (_crID cr)) --(torqueSideEffect 0.2)
-- , ammoCheckI
-- ]
-- MiniGunMod i ->
-- [ duplicateNumBarrels 1
-- , repeatTransformed
-- [ (id, modcrpos x)
-- | x <- map ((/ (fromIntegral i - 1)) . fromIntegral) [0 .. i -1]
-- ]
-- , afterRecoil (fromIntegral i * 5)
-- , torqueBefore (fromIntegral i * 0.05)
-- , withSidePushI (fromIntegral i * 25)
-- , withMuzFlare
-- , withSmoke 1 black 20 200 5
-- , useAmmoAmount i
-- , withSoundForI mini1S 2
-- , withWarmUp crankSlowS
-- , ammoCheckI
-- ]
-- SmgMod ->
-- [ withFlare
-- , withSidePushI 30
-- , withRecoil
-- , withTorqueAfter
-- , duplicateLoadedBarrels
-- , withSoundStart tap3S
-- , useAmmoAmount 1
-- , useTimeCheck
-- , ammoCheckI
-- ]
-- BangConeMod ->
-- [ withRandomItem coneRandItemParams
-- , withRandomItemUpdate coneRandItemUpdate
-- , withRandomOffset
-- , duplicateLoadedBarrels
-- , duplicateLoaded
-- , withMuzFlare
-- , withRecoil
-- , withTorqueAfter
-- , useAllAmmo
-- , withSoundStart bangEchoS
-- , useTimeCheck
-- , ammoCheckI
-- , blCheck
-- ]
where
-- f = do
-- nzpres <- state $ randomR (3, 4)
-- return $ sprayNozzles . ix 0 . nzPressure .~ nzpres
--increasecycleLasCircle it = it & itParams . lasCycle %~ (flip mod 2000 . (+ 1))
----f it = [it & itParams . lasCycle +~ x | x <- [0,100 .. 1900] ]
--fLasCircle it = [it & itParams . lasCycle +~ x | x <- [0, 50 .. 1999]]
-- increasecycleLasWide n it = case _heldHammer (_itUse it) of
-- HammerUp -> it & itParams . lasCycle .~ 1
-- _ -> it & itParams . lasCycle %~ (min (n * lasWideRate) . (+ 1))
-- thegapDualBeam = _dbGap . _itParams
--directedTelPos _ cr w = (p, a)
-- where
-- p = fromMaybe (_crPos cr) $ cr ^? crTargeting . ctPos . _Just
-- a = argV (mouseWorldPos (w ^. input) (w ^. wCam) -.- p)
-- modcrpos x cr = fromMaybe cr $ do
-- invid <- cr ^? crManipulation . manObject . inInventory . ispItem
-- return $ cr & crDir %~ tweenAngles x (_crOldDir cr)
-- & crPos %~ alongSegBy x (_crOldPos cr)
-- & crInv . ix (invid + 1) . itUse . amagParams . ampBullet . buDelayFraction .~ x
lasWideRate :: Int
lasWideRate = 2
mcUseHeld :: HeldItemType -> Item -> Machine -> World -> World mcUseHeld :: HeldItemType -> Item -> Machine -> World -> World
mcUseHeld hit = case hit of mcUseHeld hit = case hit of
LASGUN -> mcShootLaser LASGUN -> mcShootLaser
+2 -1
View File
@@ -12,7 +12,8 @@ zoomScope :: Item
zoomScope = zoomScope =
defaultHeldItem defaultHeldItem
& itType . iyBase .~ ATTACH (SCROLLATTACH ZOOMSCOPE) & itType . iyBase .~ ATTACH (SCROLLATTACH ZOOMSCOPE)
& itUse .~ AttachUse (ScrollAttachParams (ZoomScrollParams{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5})) -- & itUse .~ AttachUse (ScrollAttachParams (ZoomScrollParams{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5}))
& itScope .~ OpticScope{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5}
targetingScope :: TargetType -> Item targetingScope :: TargetType -> Item
targetingScope tt = targetingScope tt =
+82 -82
View File
@@ -19,10 +19,10 @@ module Dodge.Item.Weapon.TriggerType (
withItemUpdate, withItemUpdate,
withItemUpdateFirst, withItemUpdateFirst,
-- rateIncAB, -- rateIncAB,
torqueBefore, -- torqueBefore,
torqueBeforeAtLeast, -- torqueBeforeAtLeast,
withTorqueAfter, -- withTorqueAfter,
torqueSideEffect, -- torqueSideEffect,
withRandomItemParams, withRandomItemParams,
withRandomItem, withRandomItem,
withRandomItemUpdate, withRandomItemUpdate,
@@ -582,76 +582,76 @@ withRandomOffset f item cr w = f item (cr & crPos %~ (+.+ offV)) $ set randGen g
offV = rotateV (_crDir cr) (V2 0 offsetVal) offV = rotateV (_crDir cr) (V2 0 offsetVal)
offsetAmount = fromMaybe 0 $ item ^? ldtValue . itUse . heldParams . randomOffset offsetAmount = fromMaybe 0 $ item ^? ldtValue . itUse . heldParams . randomOffset
-- | Rotates a creature ---- | Rotates a creature
torqueBefore :: --torqueBefore ::
-- | Max possible rotation -- -- | Max possible rotation
Float -> -- Float ->
ChainEffect -- ChainEffect
torqueBefore torque feff item cr w --torqueBefore torque feff item cr w
| cid == 0 = -- | cid == 0 =
feff item (cr & crDir +~ rot) $ -- feff item (cr & crDir +~ rot) $
w -- w
& randGen .~ g -- & randGen .~ g
& cWorld . lWorld . creatures . ix cid . crDir +~ rot -- & cWorld . lWorld . creatures . ix cid . crDir +~ rot
& wCam . camRot +~ rot -- & wCam . camRot +~ rot
& rotateScope -- & rotateScope
| otherwise = feff item cr $ set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) w -- | otherwise = feff item cr $ set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) w
where -- where
cid = _crID cr -- cid = _crID cr
(rot, g) = randomR (- torque, torque) $ _randGen w -- (rot, g) = randomR (- torque, torque) $ _randGen w
rotateScope = fromMaybe id $ do -- rotateScope = fromMaybe id $ do
i <- yourScopeInvID w -- i <- yourScopeInvID w
return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot -- return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot
{- | Rotates a creature with minimum rotation --{- | Rotates a creature with minimum rotation
Rotates the player creature before applying the effect, other creatures after. -- Rotates the player creature before applying the effect, other creatures after.
-} ---}
torqueBeforeAtLeast :: --torqueBeforeAtLeast ::
-- | Minimal possible rotation -- -- | Minimal possible rotation
Float -> -- Float ->
-- | Extra possible rotation -- -- | Extra possible rotation
Float -> -- Float ->
ChainEffect -- ChainEffect
torqueBeforeAtLeast minTorque exTorque feff item cr w --torqueBeforeAtLeast minTorque exTorque feff item cr w
| cid == 0 = -- | cid == 0 =
feff item (cr & crDir +~ rot') $ -- feff item (cr & crDir +~ rot') $
w -- w
& randGen .~ g -- & randGen .~ g
& cWorld . lWorld . creatures . ix cid . crDir +~ rot' -- & cWorld . lWorld . creatures . ix cid . crDir +~ rot'
& wCam . camRot +~ rot' -- & wCam . camRot +~ rot'
& rotateScope -- & rotateScope
| otherwise = feff item cr $ set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot') w -- | otherwise = feff item cr $ set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot') w
where -- where
cid = _crID cr -- cid = _crID cr
(rot, g) = randomR (- exTorque, exTorque) $ _randGen w -- (rot, g) = randomR (- exTorque, exTorque) $ _randGen w
rot' -- rot'
| rot < 0 = rot - minTorque -- | rot < 0 = rot - minTorque
| otherwise = rot + minTorque -- | otherwise = rot + minTorque
rotateScope = fromMaybe id $ do -- rotateScope = fromMaybe id $ do
i <- yourScopeInvID w -- i <- yourScopeInvID w
return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot -- return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot
-- | Rotate a randomly creature after applying an effect. ---- | Rotate a randomly creature after applying an effect.
withTorqueAfter :: ChainEffect --withTorqueAfter :: ChainEffect
withTorqueAfter feff item cr w --withTorqueAfter feff item cr w
-- | cid == 0 = rotateScope . set randGen g $ over (wCam . camRot) (+ rot) $ feff item cr w ---- | cid == 0 = rotateScope . set randGen g $ over (wCam . camRot) (+ rot) $ feff item cr w
-- | otherwise = set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) $ feff item cr w ---- | otherwise = set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) $ feff item cr w
| cid == 0 = w -- | cid == 0 = w
& feff item cr -- & feff item cr
& wCam . camRot +~ rot -- & wCam . camRot +~ rot
& rotateScope -- & rotateScope
& randGen .~ g -- & randGen .~ g
| otherwise = w -- | otherwise = w
& cWorld . lWorld . creatures . ix cid . crDir +~ rot -- & cWorld . lWorld . creatures . ix cid . crDir +~ rot
& randGen .~ g -- & randGen .~ g
where -- where
cid = _crID cr -- cid = _crID cr
(rot, g) = randomR (- torque, torque) $ _randGen w -- (rot, g) = randomR (- torque, torque) $ _randGen w
torque = fromMaybe 0 $ item ^? ldtValue . itUse . heldParams . torqueAfter -- torque = fromMaybe 0 $ item ^? ldtValue . itUse . heldParams . torqueAfter
rotateScope = fromMaybe id $ do -- rotateScope = fromMaybe id $ do
i <- yourScopeInvID w -- i <- yourScopeInvID w
return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot -- return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot
-- rotateScope = pointerYourItem . itScope . scopePos %~ rotateV rot ---- rotateScope = pointerYourItem . itScope . scopePos %~ rotateV rot
sideEffectOnFrame :: sideEffectOnFrame ::
Int -> Int ->
@@ -661,16 +661,16 @@ sideEffectOnFrame i sf f it cr w =
f it cr w f it cr w
& cWorld . lWorld . delayedEvents .:~ (i, sf (_ldtValue it) cr) & cWorld . lWorld . delayedEvents .:~ (i, sf (_ldtValue it) cr)
torqueSideEffect :: Float -> Item -> Creature -> World -> World --torqueSideEffect :: Float -> Item -> Creature -> World -> World
torqueSideEffect torque _ cr w --torqueSideEffect torque _ cr w
| cid == 0 = set randGen g . rotateScope $ over (wCam . camRot) (+ rot) w -- | cid == 0 = set randGen g . rotateScope $ over (wCam . camRot) (+ rot) w
| otherwise = set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) w -- | otherwise = set randGen g $ over (cWorld . lWorld . creatures . ix cid . crDir) (+ rot) w
where -- where
cid = _crID cr -- cid = _crID cr
(rot, g) = randomR (- torque, torque) $ _randGen w -- (rot, g) = randomR (- torque, torque) $ _randGen w
rotateScope = fromMaybe id $ do -- rotateScope = fromMaybe id $ do
i <- yourScopeInvID w -- i <- yourScopeInvID w
return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot -- return $ cWorld . lWorld . creatures . ix cid . crInv . ix i . itUse . attachParams . scrollAttachParams . opticPos %~ rotateV rot
-- pump the updated creature into the chain in later frames -- pump the updated creature into the chain in later frames
repeatOnFrames :: [Int] -> HeldMod -> ChainEffect repeatOnFrames :: [Int] -> HeldMod -> ChainEffect
+17 -15
View File
@@ -94,19 +94,21 @@ moveZoomCamera cfig theinput cr campos =
mscopeoffset = do mscopeoffset = do
guard (SDL.ButtonRight `M.member` _mouseButtons theinput) guard (SDL.ButtonRight `M.member` _mouseButtons theinput)
i <- cr ^? crManipulation . manObject . inInventory . ispItem i <- cr ^? crManipulation . manObject . inInventory . ispItem
(cr ^? crInv . ix (i - 1) . itUse . attachParams . scrollAttachParams . opticPos) --(cr ^? crInv . ix (i - 1) . itUse . attachParams . scrollAttachParams . opticPos)
(fmap (rotateV camrot) (cr ^? crInv . ix i . itScope . opticPos))
<|> (cr ^? crInv . ix i . itScope . remotePos) <|> (cr ^? crInv . ix i . itScope . remotePos)
camrot = campos ^. camRot
newcen = _crPos cr +.+ fromMaybe (V2 0 0) mscopeoffset +.+ offset newcen = _crPos cr +.+ fromMaybe (V2 0 0) mscopeoffset +.+ offset
offset = offset =
rotateV (campos ^. camRot) $ rotateV (campos ^. camRot) $
((newzoom - newDefaultZoom) / (newDefaultZoom * newzoom)) *.* _mousePos theinput ((newzoom - newDefaultZoom) / (newDefaultZoom * newzoom)) *.* _mousePos theinput
newzoom = fromMaybe (newDefaultZoom * newItemZoom) $ do newzoom = fromMaybe (newDefaultZoom * newItemZoom) $ do
i <- cr ^? crManipulation . manObject . inInventory . ispItem i <- cr ^? crManipulation . manObject . inInventory . ispItem
(cr ^? crInv . ix (i - 1) . itUse . attachParams . scrollAttachParams . opticZoom) (cr ^? crInv . ix i . itScope . opticZoom)
idealDefaultZoom = clipZoom wallZoom idealDefaultZoom = clipZoom wallZoom
newDefaultZoom = fromMaybe (changeZoom (campos ^. camDefaultZoom) idealDefaultZoom) $ do newDefaultZoom = fromMaybe (changeZoom (campos ^. camDefaultZoom) idealDefaultZoom) $ do
i <- cr ^? crManipulation . manObject . inInventory . ispItem i <- cr ^? crManipulation . manObject . inInventory . ispItem
(cr ^? crInv . ix (i - 1) . itUse . attachParams . scrollAttachParams . opticZoom) (cr ^? crInv . ix i . itScope . opticZoom)
idealItemZoom = fromMaybe 1 $ do idealItemZoom = fromMaybe 1 $ do
guard $ crIsAiming cr guard $ crIsAiming cr
i <- cr ^? crManipulation . manObject . inInventory . ispItem i <- cr ^? crManipulation . manObject . inInventory . ispItem
@@ -130,7 +132,8 @@ moveZoomCamera cfig theinput cr campos =
-- is wanted -- is wanted
updateScopeZoom :: World -> World updateScopeZoom :: World -> World
updateScopeZoom w = fromMaybe w $ do updateScopeZoom w = fromMaybe w $ do
i <- yourScopeInvID w --i <- yourScopeInvID w
i <- you w ^? crManipulation . manObject . inInventory . ispItem
return $ updateScopeZoom' i w return $ updateScopeZoom' i w
updateScopeZoom' :: Int -> World -> World updateScopeZoom' :: Int -> World -> World
@@ -139,12 +142,13 @@ updateScopeZoom' i w
w & wppointer %~ doScopeZoom (w ^. input . smoothScrollAmount) mp w & wppointer %~ doScopeZoom (w ^. input . smoothScrollAmount) mp
| otherwise = w & wppointer %~ resetscope | otherwise = w & wppointer %~ resetscope
where where
wppointer = cWorld . lWorld . creatures . ix 0 . crInv . ix i . itUse . attachParams . scrollAttachParams wppointer = cWorld . lWorld . creatures . ix 0 . crInv . ix i . itScope
resetscope (ZoomScrollParams _ _ defz) = ZoomScrollParams (V2 0 0) defz defz resetscope (OpticScope _ _ defz) = OpticScope (V2 0 0) defz defz
resetscope otherAtt = otherAtt resetscope otherAtt = otherAtt
mp = rotateV (w ^. wCam . camRot) $ _mousePos (_input w) --mp = rotateV (w ^. wCam . camRot) $ _mousePos (_input w)
mp = _mousePos (_input w)
doScopeZoom :: Int -> Point2 -> ScrollAttachParams -> ScrollAttachParams doScopeZoom :: Int -> Point2 -> Scope -> Scope
doScopeZoom scrollamount mp sc = case scrollamount of doScopeZoom scrollamount mp sc = case scrollamount of
x x
| x > 10 -> (zoomInLongGun mp . zoomInLongGun mp . zoomInLongGun mp) sc | x > 10 -> (zoomInLongGun mp . zoomInLongGun mp . zoomInLongGun mp) sc
@@ -158,7 +162,7 @@ doScopeZoom scrollamount mp sc = case scrollamount of
zoomSpeed :: Float zoomSpeed :: Float
zoomSpeed = 39 / 40 zoomSpeed = 39 / 40
zoomInLongGun :: Point2 -> ScrollAttachParams -> ScrollAttachParams zoomInLongGun :: Point2 -> Scope -> Scope
zoomInLongGun mousep sc = fromMaybe sc $ do zoomInLongGun mousep sc = fromMaybe sc $ do
curzoom <- sc ^? opticZoom curzoom <- sc ^? opticZoom
guard $ curzoom < 8 guard $ curzoom < 8
@@ -166,7 +170,7 @@ zoomInLongGun mousep sc = fromMaybe sc $ do
sc & opticPos .+.+~ (1 - zoomSpeed) * zoomSpeed / curzoom *.* mousep sc & opticPos .+.+~ (1 - zoomSpeed) * zoomSpeed / curzoom *.* mousep
& opticZoom %~ (/ zoomSpeed) & opticZoom %~ (/ zoomSpeed)
zoomOutLongGun :: ScrollAttachParams -> ScrollAttachParams zoomOutLongGun :: Scope -> Scope
zoomOutLongGun sc = fromMaybe sc $ do zoomOutLongGun sc = fromMaybe sc $ do
curzoom <- sc ^? opticZoom curzoom <- sc ^? opticZoom
guard $ curzoom > 0.5 guard $ curzoom > 0.5
@@ -206,15 +210,13 @@ rotateCameraBy :: Float -> World -> World
rotateCameraBy x w = rotateCameraBy x w =
w w
& wCam . camRot +~ x & wCam . camRot +~ x
& cWorld %~ rotateanyscope -- & cWorld %~ rotateanyscope
where where
rotateanyscope = fromMaybe id $ do rotateanyscope = fromMaybe id $ do
i <- w ^? cWorld . lWorld . creatures . ix 0 . crManipulation . manObject . inInventory . ispItem i <- w ^? cWorld . lWorld . creatures . ix 0 . crManipulation . manObject . inInventory . ispItem
return $ return $
lWorld . creatures . ix 0 . crInv . ix (i - 1) lWorld . creatures . ix 0 . crInv . ix i
. itUse . itScope
. attachParams
. scrollAttachParams
. opticPos . opticPos
%~ rotateV x %~ rotateV x
+63 -71
View File
@@ -686,7 +686,6 @@ DestroyItem src/Dodge/Data/Scenario.hs 7;" C
DestroyTLS src/Dodge/Data/LightSource.hs 22;" C DestroyTLS src/Dodge/Data/LightSource.hs 22;" C
Detector src/Dodge/Combine/Data.hs 224;" t Detector src/Dodge/Combine/Data.hs 224;" t
Detector src/Dodge/Data/Item/Combine.hs 224;" t Detector src/Dodge/Data/Item/Combine.hs 224;" t
DetectorMod src/Dodge/Data/Item/HeldUse.hs 107;" C
Dirt src/Dodge/Data/Material.hs 11;" C Dirt src/Dodge/Data/Material.hs 11;" C
DisasterType src/Dodge/Data/Scenario.hs 24;" t DisasterType src/Dodge/Data/Scenario.hs 24;" t
Display src/Dodge/Item/Display.hs 1;" m Display src/Dodge/Item/Display.hs 1;" m
@@ -1837,6 +1836,7 @@ OnwardCluster src/Dodge/RoomCluster/Data.hs 12;" C
OnwardList src/Dodge/Annotation/Data.hs 15;" C OnwardList src/Dodge/Annotation/Data.hs 15;" C
Opacity src/Dodge/Data/Wall.hs 38;" t Opacity src/Dodge/Data/Wall.hs 38;" t
Opaque src/Dodge/Data/Wall.hs 42;" C Opaque src/Dodge/Data/Wall.hs 42;" C
OpticScope src/Dodge/Data/Item/Scope.hs 15;" C
Option src/Dodge/Menu/Option.hs 1;" m Option src/Dodge/Menu/Option.hs 1;" m
OptionScreen src/Dodge/Data/Universe.hs 78;" C OptionScreen src/Dodge/Data/Universe.hs 78;" C
OptionScreenFlag src/Dodge/Data/Universe.hs 68;" t OptionScreenFlag src/Dodge/Data/Universe.hs 68;" t
@@ -2152,7 +2152,7 @@ ReloadStatus src/Dodge/Data/Item/Use/Consumption.hs 20;" t
Reloading src/Dodge/Reloading.hs 1;" m Reloading src/Dodge/Reloading.hs 1;" m
Remote src/Dodge/Item/Weapon/Remote.hs 1;" m Remote src/Dodge/Item/Weapon/Remote.hs 1;" m
RemoteScope src/Dodge/Data/Item/Attachment.hs 23;" C RemoteScope src/Dodge/Data/Item/Attachment.hs 23;" C
RemoteScope src/Dodge/Data/Item/Scope.hs 15;" C RemoteScope src/Dodge/Data/Item/Scope.hs 23;" C
RemoteScope src/Dodge/Item/Attachment/Data.hs 26;" C RemoteScope src/Dodge/Item/Attachment/Data.hs 26;" C
RemoveCreatureEndo src/Dodge/RemoveCreatureEndo.hs 3;" m RemoveCreatureEndo src/Dodge/RemoveCreatureEndo.hs 3;" m
RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 36;" C RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 36;" C
@@ -2937,7 +2937,6 @@ Zoning src/Dodge/Zoning.hs 1;" m
ZoomScope src/Dodge/Data/Item/Attachment.hs 30;" C ZoomScope src/Dodge/Data/Item/Attachment.hs 30;" C
ZoomScope src/Dodge/Item/Attachment/Data.hs 31;" C ZoomScope src/Dodge/Item/Attachment/Data.hs 31;" C
ZoomScope src/Dodge/Item/Weapon/ZoomScope.hs 1;" m ZoomScope src/Dodge/Item/Weapon/ZoomScope.hs 1;" m
ZoomScrollParams src/Dodge/Data/Item/Use.hs 124;" C
__Just' src/MaybeHelp.hs 13;" f __Just' src/MaybeHelp.hs 13;" f
_actAction src/Dodge/Data/ActionPlan.hs 81;" f _actAction src/Dodge/Data/ActionPlan.hs 81;" f
_actLabel src/Dodge/Data/ActionPlan.hs 80;" f _actLabel src/Dodge/Data/ActionPlan.hs 80;" f
@@ -3707,9 +3706,9 @@ _opPlacement src/Dodge/Data/GenWorld.hs 129;" f
_opPlacementID src/Dodge/Data/GenWorld.hs 130;" f _opPlacementID src/Dodge/Data/GenWorld.hs 130;" f
_opSel src/Dodge/Data/RightButtonOptions.hs 15;" f _opSel src/Dodge/Data/RightButtonOptions.hs 15;" f
_opTexture src/Dodge/Data/Wall.hs 42;" f _opTexture src/Dodge/Data/Wall.hs 42;" f
_opticDefaultZoom src/Dodge/Data/Item/Use.hs 130;" f _opticDefaultZoom src/Dodge/Data/Item/Scope.hs 21;" f
_opticPos src/Dodge/Data/Item/Use.hs 126;" f _opticPos src/Dodge/Data/Item/Scope.hs 17;" f
_opticZoom src/Dodge/Data/Item/Use.hs 129;" f _opticZoom src/Dodge/Data/Item/Scope.hs 20;" f
_paramMID src/Dodge/Data/Item/Params.hs 59;" f _paramMID src/Dodge/Data/Item/Params.hs 59;" f
_partialAction src/Dodge/Data/ActionPlan.hs 145;" f _partialAction src/Dodge/Data/ActionPlan.hs 145;" f
_pastWorlds src/Dodge/Data/World.hs 38;" f _pastWorlds src/Dodge/Data/World.hs 38;" f
@@ -3884,8 +3883,8 @@ _rboBaseBloom src/Data/Preload/Render.hs 38;" f
_recoil src/Dodge/Data/Item/Use.hs 79;" f _recoil src/Dodge/Data/Item/Use.hs 79;" f
_recoil src/Dodge/Data/Item/Use.hs 96;" f _recoil src/Dodge/Data/Item/Use.hs 96;" f
_reloadAction src/Dodge/Data/LoadAction.hs 26;" f _reloadAction src/Dodge/Data/LoadAction.hs 26;" f
_remotePos src/Dodge/Data/Item/Scope.hs 17;" f _remotePos src/Dodge/Data/Item/Scope.hs 25;" f
_remoteZoom src/Dodge/Data/Item/Scope.hs 18;" f _remoteZoom src/Dodge/Data/Item/Scope.hs 26;" f
_renderData src/Data/Preload.hs 11;" f _renderData src/Data/Preload.hs 11;" f
_reverseAmount src/Dodge/Data/World.hs 63;" f _reverseAmount src/Dodge/Data/World.hs 63;" f
_reverseAmount src/Dodge/Data/World.hs 69;" f _reverseAmount src/Dodge/Data/World.hs 69;" f
@@ -4434,24 +4433,24 @@ anyTargeting src/Dodge/Render/ShapePicture.hs 70;" f
anyUnusedSpot src/Dodge/PlacementSpot.hs 66;" f anyUnusedSpot src/Dodge/PlacementSpot.hs 66;" f
anythingHitCirc src/Dodge/Base/Collide.hs 242;" f anythingHitCirc src/Dodge/Base/Collide.hs 242;" f
appendEitherTree src/Dodge/Layout/Tree/Either.hs 29;" f appendEitherTree src/Dodge/Layout/Tree/Either.hs 29;" f
applyCME src/Dodge/HeldUse.hs 375;" f applyCME src/Dodge/HeldUse.hs 73;" f
applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f
applyDamageEffect src/Dodge/Creature/Damage.hs 31;" f applyDamageEffect src/Dodge/Creature/Damage.hs 31;" f
applyEventIO src/Loop.hs 89;" f applyEventIO src/Loop.hs 89;" f
applyIndividualDamage src/Dodge/Creature/Damage.hs 49;" f applyIndividualDamage src/Dodge/Creature/Damage.hs 49;" f
applyIndividualDamage' src/Dodge/Creature/Damage.hs 52;" f applyIndividualDamage' src/Dodge/Creature/Damage.hs 52;" f
applyInvLock src/Dodge/HeldUse.hs 385;" f applyInvLock src/Dodge/HeldUse.hs 83;" f
applyMagnetsToBul src/Dodge/Bullet.hs 46;" f applyMagnetsToBul src/Dodge/Bullet.hs 46;" f
applyModules src/Dodge/Combine/Module.hs 52;" f applyModules src/Dodge/Combine/Module.hs 52;" f
applyNoDamage src/Dodge/Creature/Damage.hs 11;" f applyNoDamage src/Dodge/Creature/Damage.hs 11;" f
applyPastDamages src/Dodge/Creature/State.hs 173;" f applyPastDamages src/Dodge/Creature/State.hs 173;" f
applyPiercingDamage src/Dodge/Creature/Damage.hs 57;" f applyPiercingDamage src/Dodge/Creature/Damage.hs 57;" f
applyPosition src/Sound.hs 110;" f applyPosition src/Sound.hs 110;" f
applyRecoil src/Dodge/HeldUse.hs 402;" f applyRecoil src/Dodge/HeldUse.hs 100;" f
applyResFactor src/Dodge/Data/Config.hs 108;" f applyResFactor src/Dodge/Data/Config.hs 108;" f
applySetTerminalString src/Dodge/Debug/Terminal.hs 78;" f applySetTerminalString src/Dodge/Debug/Terminal.hs 78;" f
applySidePush src/Dodge/HeldUse.hs 409;" f applySidePush src/Dodge/HeldUse.hs 107;" f
applySoundCME src/Dodge/HeldUse.hs 393;" f applySoundCME src/Dodge/HeldUse.hs 91;" f
applyTerminalCommand src/Dodge/Debug/Terminal.hs 27;" f applyTerminalCommand src/Dodge/Debug/Terminal.hs 27;" f
applyTerminalCommandArguments src/Dodge/Debug/Terminal.hs 39;" f applyTerminalCommandArguments src/Dodge/Debug/Terminal.hs 39;" f
applyTerminalString src/Dodge/Debug/Terminal.hs 21;" f applyTerminalString src/Dodge/Debug/Terminal.hs 21;" f
@@ -4466,7 +4465,7 @@ applyToSubforest src/Dodge/Tree/Polymorphic.hs 66;" f
applyToSubforest src/TreeHelp.hs 77;" f applyToSubforest src/TreeHelp.hs 77;" f
applyToSubtree src/Dodge/Tree/Polymorphic.hs 60;" f applyToSubtree src/Dodge/Tree/Polymorphic.hs 60;" f
applyToSubtree src/TreeHelp.hs 70;" f applyToSubtree src/TreeHelp.hs 70;" f
applyTorqueCME src/Dodge/HeldUse.hs 419;" f applyTorqueCME src/Dodge/HeldUse.hs 117;" f
applyWorldConfig src/Dodge/Config/Update.hs 38;" f applyWorldConfig src/Dodge/Config/Update.hs 38;" f
aquamarine src/Color.hs 23;" f aquamarine src/Color.hs 23;" f
arc src/Picture/Base.hs 287;" f arc src/Picture/Base.hs 287;" f
@@ -4537,7 +4536,7 @@ bangRod src/Dodge/Item/Weapon/BulletGun/Rod.hs 18;" f
bangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 478;" f bangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 478;" f
bangStick src/Dodge/Item/Held/Stick.hs 17;" f bangStick src/Dodge/Item/Held/Stick.hs 17;" f
bangStick src/Dodge/Item/Weapon/BulletGun/Stick.hs 17;" f bangStick src/Dodge/Item/Weapon/BulletGun/Stick.hs 17;" f
bangStickSoundChoice src/Dodge/HeldUse.hs 1093;" f bangStickSoundChoice src/Dodge/HeldUse.hs 454;" f
bangStickSoundChoice src/Dodge/HeldUse/BulletWeapon.hs 226;" f bangStickSoundChoice src/Dodge/HeldUse/BulletWeapon.hs 226;" f
barPP src/Dodge/Room/Foreground.hs 236;" f barPP src/Dodge/Room/Foreground.hs 236;" f
barrel src/Dodge/Creature/Inanimate.hs 17;" f barrel src/Dodge/Creature/Inanimate.hs 17;" f
@@ -4574,7 +4573,7 @@ basicDrawBeam src/Dodge/Beam/Draw.hs 11;" f
basicItemDisplay src/Dodge/Item/Display.hs 50;" f basicItemDisplay src/Dodge/Item/Display.hs 50;" f
basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f
basicMachineUpdate src/Dodge/Machine.hs 13;" f basicMachineUpdate src/Dodge/Machine.hs 13;" f
basicMuzFlare src/Dodge/HeldUse.hs 466;" f basicMuzFlare src/Dodge/HeldUse.hs 164;" f
basicPerceptionUpdateR src/Dodge/Creature/AlertLevel.hs 17;" f basicPerceptionUpdateR src/Dodge/Creature/AlertLevel.hs 17;" f
basicTerminal src/Dodge/Terminal.hs 32;" f basicTerminal src/Dodge/Terminal.hs 32;" f
battery src/Dodge/Item/Ammo.hs 76;" f battery src/Dodge/Item/Ammo.hs 76;" f
@@ -4651,8 +4650,8 @@ bufferPokedVBO src/Shader/Bind.hs 18;" f
bufferShaderLayers src/Shader/Bind.hs 35;" f bufferShaderLayers src/Shader/Bind.hs 35;" f
bulDamageCr src/Dodge/Particle/Bullet/DestroyDamage.hs 21;" f bulDamageCr src/Dodge/Particle/Bullet/DestroyDamage.hs 21;" f
bulDamageWall src/Dodge/Particle/Bullet/DestroyDamage.hs 30;" f bulDamageWall src/Dodge/Particle/Bullet/DestroyDamage.hs 30;" f
bulGunEffect src/Dodge/HeldUse.hs 354;" f bulGunEffect src/Dodge/HeldUse.hs 52;" f
bulGunEffect' src/Dodge/HeldUse.hs 357;" f bulGunEffect' src/Dodge/HeldUse.hs 55;" f
bulSelTweak src/Dodge/TweakBullet.hs 15;" f bulSelTweak src/Dodge/TweakBullet.hs 15;" f
bulletBeltBracer src/Dodge/Item/Equipment.hs 83;" f bulletBeltBracer src/Dodge/Item/Equipment.hs 83;" f
bulletBeltPack src/Dodge/Item/Equipment.hs 74;" f bulletBeltPack src/Dodge/Item/Equipment.hs 74;" f
@@ -4673,7 +4672,7 @@ canAttachTargeting src/Dodge/Item/Display.hs 19;" f
canHeldScrollAttach src/Dodge/HeldScroll.hs 75;" f canHeldScrollAttach src/Dodge/HeldScroll.hs 75;" f
canSee src/Dodge/Base/Collide.hs 228;" f canSee src/Dodge/Base/Collide.hs 228;" f
canSeeIndirect src/Dodge/Base/Collide.hs 235;" f canSeeIndirect src/Dodge/Base/Collide.hs 235;" f
caneStickSoundChoice src/Dodge/HeldUse.hs 1088;" f caneStickSoundChoice src/Dodge/HeldUse.hs 449;" f
cardList src/Dodge/Base/CardinalPoint.hs 6;" f cardList src/Dodge/Base/CardinalPoint.hs 6;" f
cardVec src/Dodge/Base/CardinalPoint.hs 9;" f cardVec src/Dodge/Base/CardinalPoint.hs 9;" f
cardinalVectors src/Dodge/FloorItem.hs 39;" f cardinalVectors src/Dodge/FloorItem.hs 39;" f
@@ -4756,7 +4755,7 @@ clickDetector src/Dodge/Item/Held/Utility.hs 53;" f
clickGetCreature src/Dodge/Debug.hs 82;" f clickGetCreature src/Dodge/Debug.hs 82;" f
clickSound src/Dodge/SoundLogic/Synonyms.hs 4;" f clickSound src/Dodge/SoundLogic/Synonyms.hs 4;" f
clipV src/Geometry/Vector.hs 47;" f clipV src/Geometry/Vector.hs 47;" f
clipZoom src/Dodge/Update/Camera.hs 236;" f clipZoom src/Dodge/Update/Camera.hs 238;" f
clockCycle src/Dodge/Clock.hs 9;" f clockCycle src/Dodge/Clock.hs 9;" f
closeObjEq src/Dodge/Inventory/CloseObject.hs 12;" f closeObjEq src/Dodge/Inventory/CloseObject.hs 12;" f
closeObjPos src/Dodge/Inventory/CloseObject.hs 7;" f closeObjPos src/Dodge/Inventory/CloseObject.hs 7;" f
@@ -5217,7 +5216,7 @@ doDrawing src/Dodge/Render.hs 35;" f
doDrawing' src/Dodge/Render.hs 46;" f doDrawing' src/Dodge/Render.hs 46;" f
doFloatFloat src/Dodge/FloatFunction.hs 5;" f doFloatFloat src/Dodge/FloatFunction.hs 5;" f
doFloorEffect src/Dodge/ItEffect.hs 21;" f doFloorEffect src/Dodge/ItEffect.hs 21;" f
doGenFloat src/Dodge/HeldUse.hs 1056;" f doGenFloat src/Dodge/HeldUse.hs 417;" f
doHeldScroll src/Dodge/HeldScroll.hs 17;" f doHeldScroll src/Dodge/HeldScroll.hs 17;" f
doInPlacements src/Dodge/Layout.hs 92;" f doInPlacements src/Dodge/Layout.hs 92;" f
doIndividualPlacements src/Dodge/Layout.hs 117;" f doIndividualPlacements src/Dodge/Layout.hs 117;" f
@@ -5248,7 +5247,7 @@ doRoomInPlacements src/Dodge/Layout.hs 97;" f
doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f
doRoomPlacements src/Dodge/Layout.hs 122;" f doRoomPlacements src/Dodge/Layout.hs 122;" f
doRoomShift src/Dodge/Room/Link.hs 33;" f doRoomShift src/Dodge/Room/Link.hs 33;" f
doScopeZoom src/Dodge/Update/Camera.hs 147;" f doScopeZoom src/Dodge/Update/Camera.hs 151;" f
doSideEffects appDodge/Main.hs 117;" f doSideEffects appDodge/Main.hs 117;" f
doStep src/Dodge/ArcStep.hs 9;" f doStep src/Dodge/ArcStep.hs 9;" f
doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f
@@ -5263,13 +5262,13 @@ doTimeScroll src/Dodge/Update.hs 185;" f
doTmTm src/Dodge/TmTm.hs 6;" f doTmTm src/Dodge/TmTm.hs 6;" f
doTmWdWd src/Dodge/WorldEffect.hs 109;" f doTmWdWd src/Dodge/WorldEffect.hs 109;" f
doTweak src/Dodge/Tweak.hs 6;" f doTweak src/Dodge/Tweak.hs 6;" f
doWallRotate src/Dodge/Update/Camera.hs 194;" f doWallRotate src/Dodge/Update/Camera.hs 198;" f
doWdBl src/Dodge/WorldBool.hs 10;" f doWdBl src/Dodge/WorldBool.hs 10;" f
doWdCrBl src/Dodge/CreatureEffect.hs 37;" f doWdCrBl src/Dodge/CreatureEffect.hs 37;" f
doWdCrCr src/Dodge/CreatureEffect.hs 12;" f doWdCrCr src/Dodge/CreatureEffect.hs 12;" f
doWdP2f src/Dodge/WdP2f.hs 8;" f doWdP2f src/Dodge/WdP2f.hs 8;" f
doWdWd src/Dodge/WorldEffect.hs 26;" f doWdWd src/Dodge/WorldEffect.hs 26;" f
doWeaponRepetitions src/Dodge/HeldUse.hs 367;" f doWeaponRepetitions src/Dodge/HeldUse.hs 65;" f
doWindowScale src/Dodge/Base/WinScale.hs 11;" f doWindowScale src/Dodge/Base/WinScale.hs 11;" f
doWindowScale src/Dodge/WinScale.hs 10;" f doWindowScale src/Dodge/WinScale.hs 10;" f
doWorldEvents src/Dodge/Update.hs 307;" f doWorldEvents src/Dodge/Update.hs 307;" f
@@ -5488,12 +5487,12 @@ fadeTLS src/Dodge/LightSource/Update.hs 14;" f
fallSmallBounce src/Dodge/Prop/Moving.hs 28;" f fallSmallBounce src/Dodge/Prop/Moving.hs 28;" f
fallSmallBounce' src/Dodge/Prop/Moving.hs 33;" f fallSmallBounce' src/Dodge/Prop/Moving.hs 33;" f
fallSmallBounceDamage src/Dodge/Prop/Moving.hs 11;" f fallSmallBounceDamage src/Dodge/Prop/Moving.hs 11;" f
farWallDistDirection src/Dodge/Update/Camera.hs 247;" f farWallDistDirection src/Dodge/Update/Camera.hs 249;" f
feet src/Dodge/Creature/Picture.hs 51;" f feet src/Dodge/Creature/Picture.hs 51;" f
ffoldM src/Framebuffer/Update.hs 79;" f ffoldM src/Framebuffer/Update.hs 79;" f
filter3 src/FoldableHelp.hs 76;" f filter3 src/FoldableHelp.hs 76;" f
findBlips src/Dodge/RadarSweep.hs 43;" f findBlips src/Dodge/RadarSweep.hs 43;" f
findBoundDists src/Dodge/Update/Camera.hs 256;" f findBoundDists src/Dodge/Update/Camera.hs 258;" f
findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f
findClosePoint src/Dodge/LevelGen/StaticWalls/Deprecated.hs 74;" f findClosePoint src/Dodge/LevelGen/StaticWalls/Deprecated.hs 74;" f
findIndex src/IntMapHelp.hs 84;" f findIndex src/IntMapHelp.hs 84;" f
@@ -5504,7 +5503,7 @@ findWallFreeDropPoint src/Dodge/FloorItem.hs 47;" f
findWallsInPolygon src/Dodge/LevelGen/StaticWalls/Deprecated.hs 78;" f findWallsInPolygon src/Dodge/LevelGen/StaticWalls/Deprecated.hs 78;" f
findWithIx src/ListHelp.hs 123;" f findWithIx src/ListHelp.hs 123;" f
fireLoudS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f fireLoudS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f
fireRemoteShell src/Dodge/HeldUse.hs 1060;" f fireRemoteShell src/Dodge/HeldUse.hs 421;" f
fireS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 332;" f fireS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 332;" f
fireShell src/Dodge/Projectile/Create.hs 58;" f fireShell src/Dodge/Projectile/Create.hs 58;" f
fireSound src/Dodge/SoundLogic/Synonyms.hs 4;" f fireSound src/Dodge/SoundLogic/Synonyms.hs 4;" f
@@ -5607,7 +5606,7 @@ gameRoomViewpoints src/Dodge/Viewpoints.hs 35;" f
gameRoomsFromRooms src/Dodge/Layout.hs 158;" f gameRoomsFromRooms src/Dodge/Layout.hs 158;" f
gameplayMenu src/Dodge/Menu.hs 131;" f gameplayMenu src/Dodge/Menu.hs 131;" f
gameplayMenuOptions src/Dodge/Menu.hs 134;" f gameplayMenuOptions src/Dodge/Menu.hs 134;" f
gasCreate src/Dodge/HeldUse.hs 1052;" f gasCreate src/Dodge/HeldUse.hs 413;" f
generateGenParams src/Dodge/LevelGen/LevelStructure.hs 22;" f generateGenParams src/Dodge/LevelGen/LevelStructure.hs 22;" f
generateGraphs src/Dodge/LevelGen.hs 39;" f generateGraphs src/Dodge/LevelGen.hs 39;" f
generateLayout src/Dodge/Layout/Generate.hs 10;" f generateLayout src/Dodge/Layout/Generate.hs 10;" f
@@ -5618,7 +5617,7 @@ geometryQuickCheckTests test/Spec.hs 55;" f
geometryTests test/Spec.hs 17;" f geometryTests test/Spec.hs 17;" f
geometryUnitTests test/Spec.hs 22;" f geometryUnitTests test/Spec.hs 22;" f
geqConstr src/SameConstr.hs 21;" f geqConstr src/SameConstr.hs 21;" f
getAmmoMagazine src/Dodge/HeldUse.hs 1022;" f getAmmoMagazine src/Dodge/HeldUse.hs 383;" f
getArguments src/Dodge/Update/Scroll.hs 147;" f getArguments src/Dodge/Update/Scroll.hs 147;" f
getArguments' src/Dodge/Update/Scroll.hs 135;" f getArguments' src/Dodge/Update/Scroll.hs 135;" f
getAvailableListLines src/Dodge/SelectionList.hs 11;" f getAvailableListLines src/Dodge/SelectionList.hs 11;" f
@@ -5768,7 +5767,7 @@ iShape src/Dodge/Placement/Instance/LightSource.hs 74;" f
iShape src/Dodge/Placements/LightSource.hs 32;" f iShape src/Dodge/Placements/LightSource.hs 32;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 11;" f icosahedronPoints src/Polyhedra/Geodesic.hs 11;" f
icosohedronFaces src/Polyhedra/Geodesic.hs 18;" f icosohedronFaces src/Polyhedra/Geodesic.hs 18;" f
ifConfigWallRotate src/Dodge/Update/Camera.hs 177;" f ifConfigWallRotate src/Dodge/Update/Camera.hs 181;" f
impulsiveAIBefore src/Dodge/Creature/Impulse.hs 22;" f impulsiveAIBefore src/Dodge/Creature/Impulse.hs 22;" f
impulsiveAIR src/Dodge/Creature/Rationality.hs 24;" f impulsiveAIR src/Dodge/Creature/Rationality.hs 24;" f
inCloseRegex src/Dodge/InputFocus.hs 99;" f inCloseRegex src/Dodge/InputFocus.hs 99;" f
@@ -5871,7 +5870,7 @@ invertIntMap src/Multiset.hs 61;" f
invertInventoryToMap src/Dodge/Combine.hs 25;" f invertInventoryToMap src/Dodge/Combine.hs 25;" f
invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 25;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 25;" f
invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f
isAmmoIntLink src/Dodge/HeldUse.hs 487;" f isAmmoIntLink src/Dodge/HeldUse.hs 185;" f
isAnimate src/Dodge/Creature/Test.hs 138;" f isAnimate src/Dodge/Creature/Test.hs 138;" f
isCognizant src/Dodge/Creature/Perception.hs 105;" f isCognizant src/Dodge/Creature/Perception.hs 105;" f
isElectrical src/Dodge/Data/Damage.hs 42;" f isElectrical src/Dodge/Data/Damage.hs 42;" f
@@ -5909,7 +5908,7 @@ itemBlips src/Dodge/Item/Weapon/UseEffect.hs 38;" f
itemBlips src/Dodge/RadarSweep.hs 74;" f itemBlips src/Dodge/RadarSweep.hs 74;" f
itemCombinations src/Dodge/Combine/Combinations.hs 54;" f itemCombinations src/Dodge/Combine/Combinations.hs 54;" f
itemCombinationsEdges src/Dodge/Combine/Graph.hs 55;" f itemCombinationsEdges src/Dodge/Combine/Graph.hs 55;" f
itemDetectorEffect src/Dodge/HeldUse.hs 506;" f itemDetectorEffect src/Dodge/HeldUse.hs 204;" f
itemDisplay src/Dodge/Item/Display.hs 33;" f itemDisplay src/Dodge/Item/Display.hs 33;" f
itemDisplayPad src/Dodge/Item/Display.hs 45;" f itemDisplayPad src/Dodge/Item/Display.hs 45;" f
itemEffect src/Dodge/Creature/Action/UseItem.hs 28;" f itemEffect src/Dodge/Creature/Action/UseItem.hs 28;" f
@@ -5991,7 +5990,6 @@ lasTunnel src/Dodge/Room/LasTurret.hs 124;" f
lasTunnelRunPast src/Dodge/Room/LasTurret.hs 165;" f lasTunnelRunPast src/Dodge/Room/LasTurret.hs 165;" f
lasTurret src/Dodge/Placement/Instance/Turret.hs 23;" f lasTurret src/Dodge/Placement/Instance/Turret.hs 23;" f
lasTurret src/Dodge/Placements/Turret.hs 29;" f lasTurret src/Dodge/Placements/Turret.hs 29;" f
lasWideRate src/Dodge/HeldUse.hs 937;" f
lastMap src/Dodge/DoubleTree.hs 65;" f lastMap src/Dodge/DoubleTree.hs 65;" f
latchkey src/Dodge/Item/Held/Utility.hs 23;" f latchkey src/Dodge/Item/Held/Utility.hs 23;" f
latchkey src/Dodge/Item/PassKey.hs 14;" f latchkey src/Dodge/Item/PassKey.hs 14;" f
@@ -6057,7 +6055,7 @@ loadEject src/Dodge/Reloading/Action.hs 12;" f
loadInsert src/Dodge/Reloading/Action.hs 6;" f loadInsert src/Dodge/Reloading/Action.hs 6;" f
loadKeyConfig src/Dodge/Config/KeyConfig.hs 60;" f loadKeyConfig src/Dodge/Config/KeyConfig.hs 60;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f
loadMuzzle src/Dodge/HeldUse.hs 438;" f loadMuzzle src/Dodge/HeldUse.hs 136;" f
loadPartialInsert src/Dodge/Reloading/Action.hs 9;" f loadPartialInsert src/Dodge/Reloading/Action.hs 9;" f
loadPrime src/Dodge/Reloading/Action.hs 15;" f loadPrime src/Dodge/Reloading/Action.hs 15;" f
loadSaveSlot src/Dodge/Save.hs 74;" f loadSaveSlot src/Dodge/Save.hs 74;" f
@@ -6114,7 +6112,7 @@ makeArc src/Picture/Base.hs 157;" f
makeBlip src/Dodge/RadarSweep.hs 50;" f makeBlip src/Dodge/RadarSweep.hs 50;" f
makeBlockDebris src/Dodge/Block/Debris.hs 28;" f makeBlockDebris src/Dodge/Block/Debris.hs 28;" f
makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f
makeBullet src/Dodge/HeldUse.hs 578;" f makeBullet src/Dodge/HeldUse.hs 276;" f
makeButton src/Dodge/LevelGen/Switch.hs 16;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f
makeByteStringShaderUsingVAO src/Shader/Compile.hs 137;" f makeByteStringShaderUsingVAO src/Shader/Compile.hs 137;" f
makeCloudAt src/Dodge/WorldEvent/Cloud.hs 18;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 18;" f
@@ -6144,8 +6142,8 @@ makeGrid src/Grid.hs 46;" f
makeIntInterval src/Dodge/Zoning/Base.hs 33;" f makeIntInterval src/Dodge/Zoning/Base.hs 33;" f
makeLaserAt src/Dodge/Item/Weapon/Laser.hs 42;" f makeLaserAt src/Dodge/Item/Weapon/Laser.hs 42;" f
makeLaserScope src/Dodge/Item/Weapon/Decoration.hs 12;" f makeLaserScope src/Dodge/Item/Weapon/Decoration.hs 12;" f
makeMuzzleFlare src/Dodge/HeldUse.hs 450;" f makeMuzzleFlare src/Dodge/HeldUse.hs 148;" f
makeMuzzleSmoke src/Dodge/HeldUse.hs 473;" f makeMuzzleSmoke src/Dodge/HeldUse.hs 171;" f
makeOptionsSelectionList src/Dodge/Menu/Option.hs 46;" f makeOptionsSelectionList src/Dodge/Menu/Option.hs 46;" f
makeParagraph src/Justify.hs 6;" f makeParagraph src/Justify.hs 6;" f
makePathBetween src/Dodge/Path.hs 35;" f makePathBetween src/Dodge/Path.hs 35;" f
@@ -6208,10 +6206,10 @@ mcProximitySensorUpdate src/Dodge/Machine/Update.hs 104;" f
mcSPic src/Dodge/Render/ShapePicture.hs 169;" f mcSPic src/Dodge/Render/ShapePicture.hs 169;" f
mcSensorTriggerUpdate src/Dodge/Machine/Update.hs 69;" f mcSensorTriggerUpdate src/Dodge/Machine/Update.hs 69;" f
mcSensorUpdate src/Dodge/Machine/Update.hs 99;" f mcSensorUpdate src/Dodge/Machine/Update.hs 99;" f
mcShootLaser src/Dodge/HeldUse.hs 1108;" f mcShootLaser src/Dodge/HeldUse.hs 469;" f
mcTriggerVal src/Dodge/Machine/Update.hs 75;" f mcTriggerVal src/Dodge/Machine/Update.hs 75;" f
mcTypeUpdate src/Dodge/Machine/Update.hs 24;" f mcTypeUpdate src/Dodge/Machine/Update.hs 24;" f
mcUseHeld src/Dodge/HeldUse.hs 940;" f mcUseHeld src/Dodge/HeldUse.hs 301;" f
mcUseItem src/Dodge/Machine/Update.hs 61;" f mcUseItem src/Dodge/Machine/Update.hs 61;" f
medkit src/Dodge/Item/Consumable.hs 8;" f medkit src/Dodge/Item/Consumable.hs 8;" f
megaBattery src/Dodge/Item/Ammo.hs 71;" f megaBattery src/Dodge/Item/Ammo.hs 71;" f
@@ -6851,7 +6849,7 @@ remoteBombUnarmedPic src/Dodge/Item/Weapon/Grenade.hs 268;" f
remoteLauncher src/Dodge/Item/Held/Launcher.hs 66;" f remoteLauncher src/Dodge/Item/Held/Launcher.hs 66;" f
remoteShellCollisionCheck src/Dodge/Projectile/Update.hs 42;" f remoteShellCollisionCheck src/Dodge/Projectile/Update.hs 42;" f
remoteShellShape src/Dodge/Projectile/Draw.hs 39;" f remoteShellShape src/Dodge/Projectile/Draw.hs 39;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 561;" f removeAmmoFromMag src/Dodge/HeldUse.hs 259;" f
removeEither src/Dodge/Layout/Tree/Either.hs 41;" f removeEither src/Dodge/Layout/Tree/Either.hs 41;" f
removeHotkey src/Dodge/Hotkey.hs 41;" f removeHotkey src/Dodge/Hotkey.hs 41;" f
removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f
@@ -6919,7 +6917,7 @@ rmLinksOfType src/Dodge/RoomLink.hs 135;" f
rmOutLinks src/Dodge/RoomLink.hs 138;" f rmOutLinks src/Dodge/RoomLink.hs 138;" f
rmSelectedInvItem src/Dodge/Inventory.hs 160;" f rmSelectedInvItem src/Dodge/Inventory.hs 160;" f
rocketHomer src/Dodge/Item/Ammo.hs 109;" f rocketHomer src/Dodge/Item/Ammo.hs 109;" f
rocketRemoteScreen src/Dodge/Item/Scope.hs 23;" f rocketRemoteScreen src/Dodge/Item/Scope.hs 24;" f
roomC src/Dodge/Room/Room.hs 39;" f roomC src/Dodge/Room/Room.hs 39;" f
roomCCrits src/Dodge/Room/Room.hs 262;" f roomCCrits src/Dodge/Room/Room.hs 262;" f
roomCenterPillar src/Dodge/Room/Room.hs 121;" f roomCenterPillar src/Dodge/Room/Room.hs 121;" f
@@ -6954,8 +6952,8 @@ rotate3x src/Geometry/Vector3D.hs 60;" f
rotate3y src/Geometry/Vector3D.hs 66;" f rotate3y src/Geometry/Vector3D.hs 66;" f
rotate3z src/Geometry/Vector3D.hs 54;" f rotate3z src/Geometry/Vector3D.hs 54;" f
rotateActionProgress src/Dodge/Reloading.hs 87;" f rotateActionProgress src/Dodge/Reloading.hs 87;" f
rotateCamera src/Dodge/Update/Camera.hs 221;" f rotateCamera src/Dodge/Update/Camera.hs 223;" f
rotateCameraBy src/Dodge/Update/Camera.hs 205;" f rotateCameraBy src/Dodge/Update/Camera.hs 209;" f
rotateCameraMinusKey src/Dodge/Config/KeyConfig.hs 30;" f rotateCameraMinusKey src/Dodge/Config/KeyConfig.hs 30;" f
rotateCameraPlusKey src/Dodge/Config/KeyConfig.hs 29;" f rotateCameraPlusKey src/Dodge/Config/KeyConfig.hs 29;" f
rotateProp src/Dodge/LightSources/Lamp.hs 111;" f rotateProp src/Dodge/LightSources/Lamp.hs 111;" f
@@ -6965,7 +6963,7 @@ rotateSHq src/Shape.hs 162;" f
rotateSHx src/Shape.hs 261;" f rotateSHx src/Shape.hs 261;" f
rotateSP src/ShapePicture.hs 57;" f rotateSP src/ShapePicture.hs 57;" f
rotateTo src/Polyhedra/Geodesic.hs 63;" f rotateTo src/Polyhedra/Geodesic.hs 63;" f
rotateToOverlappingWall src/Dodge/Update/Camera.hs 183;" f rotateToOverlappingWall src/Dodge/Update/Camera.hs 187;" f
rotateToZ src/Quaternion.hs 31;" f rotateToZ src/Quaternion.hs 31;" f
rotateV src/Geometry/Vector.hs 105;" f rotateV src/Geometry/Vector.hs 105;" f
rotateVAround src/Geometry/Vector.hs 112;" f rotateVAround src/Geometry/Vector.hs 112;" f
@@ -7101,7 +7099,7 @@ setTile src/Dodge/Layout.hs 68;" f
setTiles src/Dodge/Layout.hs 65;" f setTiles src/Dodge/Layout.hs 65;" f
setToggle src/Dodge/LightSources/Lamp.hs 115;" f setToggle src/Dodge/LightSources/Lamp.hs 115;" f
setToggle src/Dodge/Prop/Update.hs 46;" f setToggle src/Dodge/Prop/Update.hs 46;" f
setViewDistance src/Dodge/Update/Camera.hs 242;" f setViewDistance src/Dodge/Update/Camera.hs 244;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 61;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 61;" f
setViewport src/Dodge/Render.hs 385;" f setViewport src/Dodge/Render.hs 385;" f
setVol src/Dodge/Config/Update.hs 30;" f setVol src/Dodge/Config/Update.hs 30;" f
@@ -7165,7 +7163,7 @@ shootBangCone src/Dodge/HeldUse/BulletWeapon.hs 98;" f
shootBangRod src/Dodge/HeldUse/BulletWeapon.hs 185;" f shootBangRod src/Dodge/HeldUse/BulletWeapon.hs 185;" f
shootBangstick src/Dodge/HeldUse/BulletWeapon.hs 9;" f shootBangstick src/Dodge/HeldUse/BulletWeapon.hs 9;" f
shootBezier src/Dodge/Item/Weapon/Bezier.hs 51;" f shootBezier src/Dodge/Item/Weapon/Bezier.hs 51;" f
shootBullet src/Dodge/HeldUse.hs 566;" f shootBullet src/Dodge/HeldUse.hs 264;" f
shootBurstRifle src/Dodge/HeldUse/BulletWeapon.hs 164;" f shootBurstRifle src/Dodge/HeldUse/BulletWeapon.hs 164;" f
shootBurstRifleRepeat src/Dodge/HeldUse/BulletWeapon.hs 176;" f shootBurstRifleRepeat src/Dodge/HeldUse/BulletWeapon.hs 176;" f
shootDualLaser src/Dodge/Item/Weapon/BatteryGuns.hs 103;" f shootDualLaser src/Dodge/Item/Weapon/BatteryGuns.hs 103;" f
@@ -7176,7 +7174,7 @@ shootFlameSpitterRepeat src/Dodge/HeldUse/SprayWeapon.hs 19;" f
shootFlameThrower src/Dodge/HeldUse/SprayWeapon.hs 26;" f shootFlameThrower src/Dodge/HeldUse/SprayWeapon.hs 26;" f
shootL src/Dodge/Item/Weapon/TriggerType.hs 428;" f shootL src/Dodge/Item/Weapon/TriggerType.hs 428;" f
shootLaser src/Dodge/Item/Weapon/BatteryGuns.hs 77;" f shootLaser src/Dodge/Item/Weapon/BatteryGuns.hs 77;" f
shootLaser' src/Dodge/HeldUse.hs 544;" f shootLaser' src/Dodge/HeldUse.hs 242;" f
shootMachineGun src/Dodge/HeldUse/BulletWeapon.hs 218;" f shootMachineGun src/Dodge/HeldUse/BulletWeapon.hs 218;" f
shootMachinePistol src/Dodge/HeldUse/BulletWeapon.hs 62;" f shootMachinePistol src/Dodge/HeldUse/BulletWeapon.hs 62;" f
shootMiniGun src/Dodge/HeldUse/BulletWeapon.hs 113;" f shootMiniGun src/Dodge/HeldUse/BulletWeapon.hs 113;" f
@@ -7187,9 +7185,9 @@ shootRevolverXRepeat src/Dodge/HeldUse/BulletWeapon.hs 49;" f
shootRifle src/Dodge/HeldUse/BulletWeapon.hs 140;" f shootRifle src/Dodge/HeldUse/BulletWeapon.hs 140;" f
shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f
shootSmgMod src/Dodge/HeldUse/BulletWeapon.hs 86;" f shootSmgMod src/Dodge/HeldUse/BulletWeapon.hs 86;" f
shootTeslaArc src/Dodge/HeldUse.hs 1117;" f shootTeslaArc src/Dodge/HeldUse.hs 478;" f
shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f
shootTractorBeam src/Dodge/HeldUse.hs 522;" f shootTractorBeam src/Dodge/HeldUse.hs 220;" f
shootVolleyGun src/Dodge/HeldUse/BulletWeapon.hs 128;" f shootVolleyGun src/Dodge/HeldUse/BulletWeapon.hs 128;" f
shootersRoom src/Dodge/Room/Room.hs 317;" f shootersRoom src/Dodge/Room/Room.hs 317;" f
shootersRoom' src/Dodge/Room/Room.hs 282;" f shootersRoom' src/Dodge/Room/Room.hs 282;" f
@@ -7446,7 +7444,7 @@ targetYouWhenCognizant src/Dodge/Creature/ReaderUpdate.hs 194;" f
targetYouWhenCognizant src/Dodge/Creature/SetTarget.hs 9;" f targetYouWhenCognizant src/Dodge/Creature/SetTarget.hs 9;" f
targetingHat src/Dodge/Item/Equipment.hs 111;" f targetingHat src/Dodge/Item/Equipment.hs 111;" f
targetingInfo src/Dodge/Item/Info.hs 141;" f targetingInfo src/Dodge/Item/Info.hs 141;" f
targetingScope src/Dodge/Item/Scope.hs 17;" f targetingScope src/Dodge/Item/Scope.hs 18;" f
telRoomLev src/Dodge/Room/Teleport.hs 14;" f telRoomLev src/Dodge/Room/Teleport.hs 14;" f
teleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 378;" f teleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 378;" f
teleSound src/Dodge/SoundLogic/Synonyms.hs 4;" f teleSound src/Dodge/SoundLogic/Synonyms.hs 4;" f
@@ -7540,15 +7538,12 @@ topPrismEdgeIndices src/Shader/Poke.hs 327;" f
topPrismIndices src/Shader/Poke.hs 402;" f topPrismIndices src/Shader/Poke.hs 402;" f
torch src/Dodge/Item/Held/Utility.hs 26;" f torch src/Dodge/Item/Held/Utility.hs 26;" f
torchShape src/Dodge/Item/Draw/SPic.hs 203;" f torchShape src/Dodge/Item/Draw/SPic.hs 203;" f
torqueBefore src/Dodge/Item/Weapon/TriggerType.hs 586;" f
torqueBeforeAtLeast src/Dodge/Item/Weapon/TriggerType.hs 609;" f
torqueCr src/Dodge/WorldEffect.hs 70;" f torqueCr src/Dodge/WorldEffect.hs 70;" f
torqueSideEffect src/Dodge/Item/Weapon/TriggerType.hs 664;" f
torso src/Dodge/Creature/Picture.hs 132;" f torso src/Dodge/Creature/Picture.hs 132;" f
tractCr src/Dodge/TractorBeam/Update.hs 27;" f tractCr src/Dodge/TractorBeam/Update.hs 27;" f
tractFlIt src/Dodge/TractorBeam/Update.hs 22;" f tractFlIt src/Dodge/TractorBeam/Update.hs 22;" f
tractorBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 160;" f tractorBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 160;" f
tractorBeamAt' src/Dodge/HeldUse.hs 533;" f tractorBeamAt' src/Dodge/HeldUse.hs 231;" f
tractorGun src/Dodge/Item/Held/BatteryGuns.hs 80;" f tractorGun src/Dodge/Item/Held/BatteryGuns.hs 80;" f
tractorGunPic src/Dodge/Item/Draw/SPic.hs 485;" f tractorGunPic src/Dodge/Item/Draw/SPic.hs 485;" f
tractorGunTweak src/Dodge/Item/Held/BatteryGuns.hs 98;" f tractorGunTweak src/Dodge/Item/Held/BatteryGuns.hs 98;" f
@@ -7686,7 +7681,7 @@ updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 159;" f
updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarrel src/Dodge/Barreloid.hs 45;" f
updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f
updateBeams src/Dodge/Update.hs 457;" f updateBeams src/Dodge/Update.hs 457;" f
updateBounds src/Dodge/Update/Camera.hs 264;" f updateBounds src/Dodge/Update/Camera.hs 266;" f
updateBulVel src/Dodge/Bullet.hs 50;" f updateBulVel src/Dodge/Bullet.hs 50;" f
updateBullet src/Dodge/Bullet.hs 28;" f updateBullet src/Dodge/Bullet.hs 28;" f
updateBullets src/Dodge/Update.hs 425;" f updateBullets src/Dodge/Update.hs 425;" f
@@ -7758,8 +7753,8 @@ updateRadarSweep src/Dodge/RadarSweep.hs 24;" f
updateRadarSweeps src/Dodge/Update.hs 445;" f updateRadarSweeps src/Dodge/Update.hs 445;" f
updateRandNode src/TreeHelp.hs 108;" f updateRandNode src/TreeHelp.hs 108;" f
updateRenderSplit appDodge/Main.hs 105;" f updateRenderSplit appDodge/Main.hs 105;" f
updateScopeZoom src/Dodge/Update/Camera.hs 131;" f updateScopeZoom src/Dodge/Update/Camera.hs 133;" f
updateScopeZoom' src/Dodge/Update/Camera.hs 136;" f updateScopeZoom' src/Dodge/Update/Camera.hs 139;" f
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 186;" f updateSection src/Dodge/DisplayInventory.hs 186;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 165;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 165;" f
@@ -7820,9 +7815,9 @@ useAmmoParams src/Dodge/Item/Weapon/AmmoParams.hs 17;" f
useC src/Dodge/Cuse.hs 6;" f useC src/Dodge/Cuse.hs 6;" f
useE src/Dodge/Euse.hs 24;" f useE src/Dodge/Euse.hs 24;" f
useEquipment src/Dodge/Creature/State.hs 222;" f useEquipment src/Dodge/Creature/State.hs 222;" f
useForceFieldGun src/Dodge/HeldUse.hs 1130;" f useForceFieldGun src/Dodge/HeldUse.hs 491;" f
useGasParams src/Dodge/HeldUse.hs 1031;" f useGasParams src/Dodge/HeldUse.hs 392;" f
useHeld src/Dodge/HeldUse.hs 945;" f useHeld src/Dodge/HeldUse.hs 306;" f
useHotKey src/Dodge/Creature/YourControl.hs 49;" f useHotKey src/Dodge/Creature/YourControl.hs 49;" f
useItem src/Dodge/Creature/Action/UseItem.hs 14;" f useItem src/Dodge/Creature/Action/UseItem.hs 14;" f
useItemHotkey src/Dodge/Creature/Impulse/UseItem.hs 124;" f useItemHotkey src/Dodge/Creature/Impulse/UseItem.hs 124;" f
@@ -7831,13 +7826,12 @@ useItemRightClick src/Dodge/Creature/Impulse/UseItem.hs 25;" f
useL src/Dodge/Luse.hs 13;" f useL src/Dodge/Luse.hs 13;" f
useLeftItem src/Dodge/Creature/Action/UseItem.hs 38;" f useLeftItem src/Dodge/Creature/Action/UseItem.hs 38;" f
useLnkRoomPos src/Dodge/PlacementSpot.hs 244;" f useLnkRoomPos src/Dodge/PlacementSpot.hs 244;" f
useLoadedAmmo src/Dodge/HeldUse.hs 491;" f useLoadedAmmo src/Dodge/HeldUse.hs 189;" f
useMagShield src/Dodge/Euse.hs 69;" f useMagShield src/Dodge/Euse.hs 69;" f
useMod src/Dodge/HeldUse.hs 615;" f
useNormalCamera src/Dodge/Camera.hs 6;" f useNormalCamera src/Dodge/Camera.hs 6;" f
usePayload src/Dodge/Payload.hs 7;" f usePayload src/Dodge/Payload.hs 7;" f
usePjCreation src/Dodge/HeldUse.hs 964;" f usePjCreation src/Dodge/HeldUse.hs 325;" f
usePjCreationX src/Dodge/HeldUse.hs 973;" f usePjCreationX src/Dodge/HeldUse.hs 334;" f
useRewindGun src/Dodge/Luse.hs 41;" f useRewindGun src/Dodge/Luse.hs 41;" f
useRoomPosCond src/Dodge/PlacementSpot.hs 178;" f useRoomPosCond src/Dodge/PlacementSpot.hs 178;" f
useRoomPosRoomCond src/Dodge/PlacementSpot.hs 181;" f useRoomPosRoomCond src/Dodge/PlacementSpot.hs 181;" f
@@ -7882,7 +7876,7 @@ volleyGun src/Dodge/Item/Held/Cane.hs 32;" f
volleyGun src/Dodge/Item/Weapon/BulletGun/Cane.hs 43;" f volleyGun src/Dodge/Item/Weapon/BulletGun/Cane.hs 43;" f
volleyGunShape src/Dodge/Item/Draw/SPic.hs 373;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 373;" f
waistSP src/Dodge/Creature/HandPos.hs 199;" f waistSP src/Dodge/Creature/HandPos.hs 199;" f
walkNozzle src/Dodge/HeldUse.hs 511;" f walkNozzle src/Dodge/HeldUse.hs 209;" f
walkableNodeNear src/Dodge/Path.hs 48;" f walkableNodeNear src/Dodge/Path.hs 48;" f
wallBlips src/Dodge/Item/Weapon/UseEffect.hs 43;" f wallBlips src/Dodge/Item/Weapon/UseEffect.hs 43;" f
wallBlips src/Dodge/RadarSweep.hs 79;" f wallBlips src/Dodge/RadarSweep.hs 79;" f
@@ -7969,7 +7963,6 @@ withSoundStart src/Dodge/Item/Weapon/TriggerType.hs 243;" f
withTempLight src/Dodge/Item/Weapon/TriggerType.hs 465;" f withTempLight src/Dodge/Item/Weapon/TriggerType.hs 465;" f
withThickSmokeI src/Dodge/Item/Weapon/TriggerType.hs 134;" f withThickSmokeI src/Dodge/Item/Weapon/TriggerType.hs 134;" f
withThinSmokeI src/Dodge/Item/Weapon/TriggerType.hs 125;" f withThinSmokeI src/Dodge/Item/Weapon/TriggerType.hs 125;" f
withTorqueAfter src/Dodge/Item/Weapon/TriggerType.hs 635;" f
withWarmUp src/Dodge/Item/Weapon/TriggerType.hs 206;" f withWarmUp src/Dodge/Item/Weapon/TriggerType.hs 206;" f
wlDustAt src/Dodge/Wall/Dust.hs 10;" f wlDustAt src/Dodge/Wall/Dust.hs 10;" f
wlIXsNearCirc src/Dodge/Zoning/Wall.hs 32;" f wlIXsNearCirc src/Dodge/Zoning/Wall.hs 32;" f
@@ -8020,7 +8013,6 @@ yourDefaultStrideLength src/Dodge/Default/Creature.hs 137;" f
yourInfo src/Dodge/Creature/Info.hs 8;" f yourInfo src/Dodge/Creature/Info.hs 8;" f
yourInv src/Dodge/Base/You.hs 39;" f yourInv src/Dodge/Base/You.hs 39;" f
yourItem src/Dodge/Base/You.hs 20;" f yourItem src/Dodge/Base/You.hs 20;" f
yourScopeInvID src/Dodge/Base/You.hs 33;" f
yourScrollAttachment src/Dodge/Base/You.hs 25;" f yourScrollAttachment src/Dodge/Base/You.hs 25;" f
yourStatsInfo src/Dodge/Creature/Info.hs 25;" f yourStatsInfo src/Dodge/Creature/Info.hs 25;" f
zConnect src/Dodge/Render/Connectors.hs 13;" f zConnect src/Dodge/Render/Connectors.hs 13;" f
@@ -8069,10 +8061,10 @@ zoneps src/Dodge/LevelGen/MoveDoor.hs 26;" f
zonesAroundPoint src/Dodge/Zoning/Base.hs 89;" f zonesAroundPoint src/Dodge/Zoning/Base.hs 89;" f
zonesExtract src/Dodge/Zoning/Base.hs 54;" f zonesExtract src/Dodge/Zoning/Base.hs 54;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 65;" f zoomFloatingCamera src/Dodge/Update/Camera.hs 65;" f
zoomFromItem src/Dodge/Update/Camera.hs 230;" f zoomFromItem src/Dodge/Update/Camera.hs 232;" f
zoomInKey src/Dodge/Config/KeyConfig.hs 31;" f zoomInKey src/Dodge/Config/KeyConfig.hs 31;" f
zoomInLongGun src/Dodge/Update/Camera.hs 161;" f zoomInLongGun src/Dodge/Update/Camera.hs 165;" f
zoomOutKey src/Dodge/Config/KeyConfig.hs 32;" f zoomOutKey src/Dodge/Config/KeyConfig.hs 32;" f
zoomOutLongGun src/Dodge/Update/Camera.hs 169;" f zoomOutLongGun src/Dodge/Update/Camera.hs 173;" f
zoomScope src/Dodge/Item/Scope.hs 11;" f zoomScope src/Dodge/Item/Scope.hs 11;" f
zoomSpeed src/Dodge/Update/Camera.hs 158;" f zoomSpeed src/Dodge/Update/Camera.hs 162;" f