From e9b69be7de5b3efd57af7148272a4d3cc558eb9d Mon Sep 17 00:00:00 2001 From: justin Date: Fri, 6 Jun 2025 15:01:20 +0100 Subject: [PATCH] Remove some creature vocalization records --- src/Dodge/Creature/ChaseCrit.hs | 11 --- src/Dodge/Creature/Perception.hs | 2 +- src/Dodge/Creature/ReaderUpdate.hs | 3 +- src/Dodge/Creature/Vocalization.hs | 42 ++++++++- src/Dodge/Data/Creature.hs | 2 - src/Dodge/Data/Creature/Misc.hs | 7 +- tags | 142 ++++++++++++++--------------- 7 files changed, 115 insertions(+), 94 deletions(-) diff --git a/src/Dodge/Creature/ChaseCrit.hs b/src/Dodge/Creature/ChaseCrit.hs index d124ca6ce..3ba24b4c4 100644 --- a/src/Dodge/Creature/ChaseCrit.hs +++ b/src/Dodge/Creature/ChaseCrit.hs @@ -9,7 +9,6 @@ import Control.Lens import Dodge.Data.Creature import Dodge.Default import Dodge.Item.Equipment -import Dodge.SoundLogic import Picture smallChaseCrit :: Creature @@ -42,15 +41,5 @@ chaseCrit = chaseCritVocalization :: Vocalization chaseCritVocalization = Vocalization - seagullChatterS - [ seagullBarkS - , seagullChatterS - , seagullChatter1S - , seagullWhistleS - , seagullWhistle1S - , seagullCryS - , seagullCry1S - , seagullCry2S - ] (50, 200) 0 diff --git a/src/Dodge/Creature/Perception.hs b/src/Dodge/Creature/Perception.hs index e8e3f3532..37222ea28 100644 --- a/src/Dodge/Creature/Perception.hs +++ b/src/Dodge/Creature/Perception.hs @@ -85,7 +85,7 @@ chaseCritAwarenessUpdate w cr = case _cpAttention $ _crPerception cr of maybeBark | becomesCognizant -- && randBool && cr ^? crVocalization . vcCoolDown == Just 0 = - let soundid = evalState (takeOne (_vcWarnings (_crVocalization cr))) (_randGen w) + let soundid = evalState (takeOne (crWarningSounds cr)) (_randGen w) numjits = fst $ randomR (15, 25) (_randGen w) in crActionPlan . apStrategy .~ StrategyActions diff --git a/src/Dodge/Creature/ReaderUpdate.hs b/src/Dodge/Creature/ReaderUpdate.hs index 39b0ac553..8589bf108 100644 --- a/src/Dodge/Creature/ReaderUpdate.hs +++ b/src/Dodge/Creature/ReaderUpdate.hs @@ -13,6 +13,7 @@ module Dodge.Creature.ReaderUpdate ( setViewPos, ) where +import Dodge.Creature.Vocalization import Dodge.Creature.Radius import RandomHelp import Dodge.Creature.Perception @@ -123,7 +124,7 @@ chaseCritMv w cr = case _apStrategy (_crActionPlan cr) of & crActionPlan . apStrategy .~ WarningCry where thejitter = RandImpulseCircMove 3 - soundid = evalState (takeOne (_vcWarnings (_crVocalization cr))) (_randGen w) + soundid = evalState (takeOne (crWarningSounds cr)) (_randGen w) numjits = fst $ randomR (15, 25) (_randGen w) _ -> case cr ^? crIntention . mvToPoint . _Just of Just p diff --git a/src/Dodge/Creature/Vocalization.hs b/src/Dodge/Creature/Vocalization.hs index 5c36a49f6..4e53eeb50 100644 --- a/src/Dodge/Creature/Vocalization.hs +++ b/src/Dodge/Creature/Vocalization.hs @@ -1,18 +1,52 @@ -module Dodge.Creature.Vocalization where +module Dodge.Creature.Vocalization ( + crWarningSounds, + vocalizationTest, + resetCrVocCoolDown, +) where import Control.Lens import Dodge.Data.World +import Dodge.SoundLogic.ExternallyGeneratedSounds import Sound.Data import System.Random +crVocalizationSound :: Creature -> Maybe SoundID +crVocalizationSound cr = case cr ^. crType of + Avatar{} -> Nothing + AvatarDead -> Nothing + ChaseCrit{} -> Just seagullChatterS + SwarmCrit -> Nothing + AutoCrit -> Nothing + BarrelCrit{} -> Nothing + LampCrit{} -> Nothing + +crWarningSounds :: Creature -> [SoundID] +crWarningSounds cr = case cr ^. crType of + Avatar{} -> mempty + AvatarDead -> mempty + ChaseCrit{} -> + [ seagullBarkS + , seagullChatterS + , seagullChatter1S + , seagullWhistleS + , seagullWhistle1S + , seagullCryS + , seagullCry1S + , seagullCry2S + ] + SwarmCrit -> mempty + AutoCrit -> mempty + BarrelCrit{} -> mempty + LampCrit{} -> mempty + vocalizationTest :: Creature -> Maybe SoundID vocalizationTest cr = case cr ^? crVocalization . vcCoolDown of - Just 0 -> Just $ _vcSound $ _crVocalization cr + Just 0 -> crVocalizationSound cr _ -> Nothing resetCrVocCoolDown :: World -> Creature -> Creature resetCrVocCoolDown w cr = case cr ^? crVocalization . vcMaxCoolDown of - Just (i,j) -> cr & crVocalization . vcCoolDown .~ x + Just (i, j) -> cr & crVocalization . vcCoolDown .~ x where - x = fst $ randomR (i,j) (_randGen w) + x = fst $ randomR (i, j) (_randGen w) Nothing -> cr diff --git a/src/Dodge/Data/Creature.hs b/src/Dodge/Data/Creature.hs index 8d031504a..a3311e33a 100644 --- a/src/Dodge/Data/Creature.hs +++ b/src/Dodge/Data/Creature.hs @@ -43,13 +43,11 @@ data Creature = Creature , _crHP :: Int , _crInv :: IM.IntMap Item , _crManipulation :: Manipulation --- , _crInvLock :: Bool , _crEquipment :: M.Map EquipSite Int , _crState :: CreatureState , _crPastDamage :: Int , _crStance :: Stance , _crActionPlan :: ActionPlan --- , _crMeleeCooldown :: Int , _crPerception :: Perception , _crMemory :: Memory , _crVocalization :: Vocalization diff --git a/src/Dodge/Data/Creature/Misc.hs b/src/Dodge/Data/Creature/Misc.hs index 77c1946a1..81615168a 100644 --- a/src/Dodge/Data/Creature/Misc.hs +++ b/src/Dodge/Data/Creature/Misc.hs @@ -16,7 +16,6 @@ import Data.Aeson.TH import Dodge.Data.CamouflageStatus import Dodge.Data.FloatFunction import Geometry.Data -import Sound.Data data CreatureStatistics = CreatureStatistics { _strength :: Int @@ -28,9 +27,9 @@ data CreatureStatistics = CreatureStatistics data Vocalization = Mute | Vocalization - { _vcSound :: SoundID - , _vcWarnings :: [SoundID] - , _vcMaxCoolDown :: (Int, Int) +-- { _vcSound :: SoundID +-- , _vcWarnings :: [SoundID] + { _vcMaxCoolDown :: (Int, Int) , _vcCoolDown :: Int } deriving (Eq, Ord, Show, Read) --Generic, Flat) diff --git a/tags b/tags index 08641ed02..efb5e5d5e 100644 --- a/tags +++ b/tags @@ -16,8 +16,8 @@ <$> src/Dodge/Data/ActionPlan.hs 203;" o <$> src/Dodge/Data/CWorld.hs 45;" o <$> src/Dodge/Data/Camera.hs 39;" o -<$> src/Dodge/Data/Creature.hs 80;" o -<$> src/Dodge/Data/LWorld.hs 181;" o +<$> src/Dodge/Data/Creature.hs 77;" o +<$> src/Dodge/Data/LWorld.hs 182;" o <$> src/Dodge/Data/Terminal.hs 127;" o ABSOLUTE src/Dodge/Data/Item/Combine.hs 39;" C AIUNIT src/Dodge/Data/Item/Combine.hs 74;" C @@ -88,7 +88,7 @@ ArbitraryImpulseEffect src/Dodge/Data/ActionPlan.hs 48;" C ArbitraryImpulseFunction src/Dodge/Data/ActionPlan.hs 46;" C Arc src/Dodge/Tesla/Arc.hs 1;" m Arc src/Picture/Arc.hs 1;" m -ArcNodeType src/Dodge/Data/LWorld.hs 161;" t +ArcNodeType src/Dodge/Data/LWorld.hs 162;" t ArcShad src/Picture/Data.hs 38;" C ArcStep src/Dodge/Data/ArcStep.hs 14;" t ArcStep src/Dodge/ArcStep.hs 1;" m @@ -387,7 +387,7 @@ Corridor src/Dodge/Room/Corridor.hs 3;" m Cosmic src/Dodge/Data/Scenario.hs 74;" C Cover src/Dodge/Placement/Instance/LightSource/Cover.hs 1;" m CrAc src/Dodge/Data/CreatureEffect.hs 48;" t -CrArcNode src/Dodge/Data/LWorld.hs 166;" C +CrArcNode src/Dodge/Data/LWorld.hs 167;" C CrBl src/Dodge/Data/CreatureEffect.hs 39;" t CrCanShoot src/Dodge/Data/CreatureEffect.hs 40;" C CrFleeFromTarget src/Dodge/Data/CreatureEffect.hs 50;" C @@ -923,7 +923,7 @@ IntAnno src/Dodge/Annotation/Data.hs 17;" C IntID src/Dodge/Data/Universe.hs 113;" t IntImp src/Dodge/Data/CreatureEffect.hs 20;" t IntMapHelp src/IntMapHelp.hs 8;" m -Intention src/Dodge/Data/Creature.hs 68;" t +Intention src/Dodge/Data/Creature.hs 65;" t Intention src/Dodge/Creature/Intention.hs 1;" m Intersect src/Geometry/Intersect.hs 5;" m IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 107;" C @@ -2157,7 +2157,7 @@ Wall src/Dodge/Default/Wall.hs 1;" m Wall src/Dodge/Placement/Instance/Wall.hs 1;" m Wall src/Dodge/Wall.hs 1;" m Wall src/Dodge/Zoning/Wall.hs 1;" m -WallArcNode src/Dodge/Data/LWorld.hs 162;" C +WallArcNode src/Dodge/Data/LWorld.hs 163;" C WallCreatureCollisions src/Dodge/WallCreatureCollisions.hs 2;" m WallDamage src/Dodge/Update/WallDamage.hs 1;" m WallDraw src/Dodge/Data/Wall.hs 47;" t @@ -2348,7 +2348,7 @@ _camRot src/Dodge/Data/Camera.hs 25;" f _camViewDistance src/Dodge/Data/Camera.hs 30;" f _camViewFrom src/Dodge/Data/Camera.hs 29;" f _camZoom src/Dodge/Data/Camera.hs 26;" f -_canID src/Dodge/Data/LWorld.hs 167;" f +_canID src/Dodge/Data/LWorld.hs 168;" f _carriage src/Dodge/Data/Creature/Stance.hs 14;" f _carteCenter src/Dodge/Data/HUD.hs 46;" f _carteRot src/Dodge/Data/HUD.hs 48;" f @@ -2409,12 +2409,12 @@ _cpRes src/Dodge/Data/Corpse.hs 22;" f _cpSPic src/Dodge/Data/Corpse.hs 21;" f _cpVigilance src/Dodge/Data/Creature/Perception.hs 33;" f _cpVision src/Dodge/Data/Creature/Perception.hs 36;" f -_crActionPlan src/Dodge/Data/Creature.hs 52;" f -_crDeathTimer src/Dodge/Data/Creature.hs 63;" f +_crActionPlan src/Dodge/Data/Creature.hs 50;" f +_crDeathTimer src/Dodge/Data/Creature.hs 60;" f _crDir src/Dodge/Data/Creature.hs 38;" f -_crEquipment src/Dodge/Data/Creature.hs 48;" f -_crFaction src/Dodge/Data/Creature.hs 57;" f -_crGroup src/Dodge/Data/Creature.hs 58;" f +_crEquipment src/Dodge/Data/Creature.hs 46;" f +_crFaction src/Dodge/Data/Creature.hs 54;" f +_crGroup src/Dodge/Data/Creature.hs 55;" f _crGroupCenter src/Dodge/Data/CrGroupParams.hs 17;" f _crGroupID src/Dodge/Data/Creature/State.hs 49;" f _crGroupIDs src/Dodge/Data/CrGroupParams.hs 16;" f @@ -2422,24 +2422,23 @@ _crGroupParamID src/Dodge/Data/CrGroupParams.hs 15;" f _crGroupUpdate src/Dodge/Data/CrGroupParams.hs 18;" f _crHP src/Dodge/Data/Creature.hs 43;" f _crID src/Dodge/Data/Creature.hs 42;" f -_crIntention src/Dodge/Data/Creature.hs 59;" f +_crIntention src/Dodge/Data/Creature.hs 56;" f _crInv src/Dodge/Data/Creature.hs 44;" f -_crInvLock src/Dodge/Data/Creature.hs 47;" f _crManipulation src/Dodge/Data/Creature.hs 45;" f -_crMemory src/Dodge/Data/Creature.hs 55;" f +_crMemory src/Dodge/Data/Creature.hs 52;" f _crMvAim src/Dodge/Data/Creature.hs 40;" f _crMvDir src/Dodge/Data/Creature.hs 39;" f -_crMvType src/Dodge/Data/Creature.hs 60;" f -_crName src/Dodge/Data/Creature.hs 61;" f +_crMvType src/Dodge/Data/Creature.hs 57;" f +_crName src/Dodge/Data/Creature.hs 58;" f _crOldPos src/Dodge/Data/Creature.hs 37;" f -_crPastDamage src/Dodge/Data/Creature.hs 50;" f -_crPerception src/Dodge/Data/Creature.hs 54;" f +_crPastDamage src/Dodge/Data/Creature.hs 48;" f +_crPerception src/Dodge/Data/Creature.hs 51;" f _crPos src/Dodge/Data/Creature.hs 36;" f -_crStance src/Dodge/Data/Creature.hs 51;" f -_crState src/Dodge/Data/Creature.hs 49;" f -_crStatistics src/Dodge/Data/Creature.hs 62;" f +_crStance src/Dodge/Data/Creature.hs 49;" f +_crState src/Dodge/Data/Creature.hs 47;" f +_crStatistics src/Dodge/Data/Creature.hs 59;" f _crType src/Dodge/Data/Creature.hs 41;" f -_crVocalization src/Dodge/Data/Creature.hs 56;" f +_crVocalization src/Dodge/Data/Creature.hs 53;" f _crZoning src/Dodge/Data/World.hs 47;" f _creatureGroups src/Dodge/Data/LWorld.hs 101;" f _creatures src/Dodge/Data/LWorld.hs 100;" f @@ -2679,6 +2678,7 @@ _itsRangeInt src/Dodge/Data/Item.hs 54;" f _killTarget src/Dodge/Data/ActionPlan.hs 198;" f _lAimPos src/Dodge/Data/LWorld.hs 151;" f _lClock src/Dodge/Data/LWorld.hs 146;" f +_lInvLock src/Dodge/Data/LWorld.hs 152;" f _lTestInt src/Dodge/Data/LWorld.hs 148;" f _lTestString src/Dodge/Data/LWorld.hs 147;" f _lWorld src/Dodge/Data/CWorld.hs 24;" f @@ -2800,7 +2800,7 @@ _mtTree src/Dodge/Tree/Compose/Data.hs 8;" f _musicData src/Data/Preload.hs 13;" f _mvAimSpeed src/Dodge/Data/Creature/Misc.hs 45;" f _mvSpeed src/Dodge/Data/Creature/Misc.hs 40;" f -_mvToPoint src/Dodge/Data/Creature.hs 70;" f +_mvToPoint src/Dodge/Data/Creature.hs 67;" f _mvTurnJit src/Dodge/Data/Creature/Misc.hs 44;" f _mvTurnRad src/Dodge/Data/Creature/Misc.hs 43;" f _mzAmmoPerShot src/Dodge/Data/Muzzle.hs 16;" f @@ -3122,7 +3122,7 @@ _swarm src/Dodge/Data/Creature/State.hs 48;" f _taArcSteps src/Dodge/Data/TeslaArc.hs 19;" f _taColor src/Dodge/Data/TeslaArc.hs 20;" f _taTimer src/Dodge/Data/TeslaArc.hs 18;" f -_targetCr src/Dodge/Data/Creature.hs 69;" f +_targetCr src/Dodge/Data/Creature.hs 66;" f _targetID src/Dodge/Data/ActionPlan.hs 85;" f _targetSeenAt src/Dodge/Data/ActionPlan.hs 86;" f _tbPos src/Dodge/Data/TractorBeam.hs 14;" f @@ -3249,12 +3249,10 @@ _vboVertexBytes src/Shader/Data.hs 84;" f _vboWindows src/Data/Preload/Render.hs 41;" f _vcCoolDown src/Dodge/Data/Creature/Misc.hs 34;" f _vcMaxCoolDown src/Dodge/Data/Creature/Misc.hs 33;" f -_vcSound src/Dodge/Data/Creature/Misc.hs 31;" f -_vcWarnings src/Dodge/Data/Creature/Misc.hs 32;" f _vertices src/Polyhedra/Data.hs 22;" f _viDist src/Dodge/Data/Creature/Perception.hs 43;" f _viFOV src/Dodge/Data/Creature/Perception.hs 42;" f -_viewPoint src/Dodge/Data/Creature.hs 71;" f +_viewPoint src/Dodge/Data/Creature.hs 68;" f _volume_master src/Dodge/Data/Config.hs 39;" f _volume_music src/Dodge/Data/Config.hs 41;" f _volume_sound src/Dodge/Data/Config.hs 40;" f @@ -3271,8 +3269,8 @@ _wallDamages src/Dodge/Data/LWorld.hs 124;" f _wallShader src/Data/Preload/Render.hs 46;" f _wallVBO src/Data/Preload/Render.hs 45;" f _walls src/Dodge/Data/LWorld.hs 123;" f -_wanID src/Dodge/Data/LWorld.hs 164;" f -_wanPos src/Dodge/Data/LWorld.hs 163;" f +_wanID src/Dodge/Data/LWorld.hs 165;" f +_wanPos src/Dodge/Data/LWorld.hs 164;" f _warmMax src/Dodge/Data/Item/HeldDelay.hs 19;" f _warmMax src/Dodge/Data/UseDelay.hs 17;" f _warmSound src/Dodge/Data/Item/HeldDelay.hs 20;" f @@ -3610,7 +3608,7 @@ checkEndGame src/Dodge/Update.hs 713;" f checkErrorGL src/Shader/Compile.hs 255;" f checkFBO src/Framebuffer/Check.hs 6;" f checkGLError src/GLHelp.hs 17;" f -checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 16;" f +checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 17;" f checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f checkTermDist src/Dodge/Update.hs 315;" f checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f @@ -3755,7 +3753,7 @@ crMvAbsolute src/Dodge/Creature/Impulse/Movement.hs 27;" f crMvBy src/Dodge/Creature/Impulse/Movement.hs 20;" f crMvForward src/Dodge/Creature/Impulse/Movement.hs 41;" f crNearPoint src/Dodge/Creature/Test.hs 139;" f -crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 22;" f +crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 23;" f crOnWall src/Dodge/WallCreatureCollisions.hs 86;" f crRad src/Dodge/Creature/Radius.hs 7;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 71;" f @@ -3766,6 +3764,8 @@ crStratConMatches src/Dodge/Creature/Test.hs 76;" f crUpdate src/Dodge/Creature/State.hs 63;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 42;" f +crVocalizationSound src/Dodge/Creature/Vocalization.hs 9;" f +crWarningSounds src/Dodge/Creature/Vocalization.hs 19;" f crZoneSize src/Dodge/Zoning/Creature.hs 41;" f craftInfo src/Dodge/Item/Info.hs 168;" f craftItemSPic src/Dodge/Item/Draw/SPic.hs 57;" f @@ -3891,12 +3891,12 @@ dedumS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 340;" f defDamageMaterial src/Dodge/Material/Damage.hs 17;" f defLSPic src/Dodge/LightSource/Draw.hs 10;" f defSPic src/Dodge/Item/Draw/SPic.hs 299;" f -defaultAimMvType src/Dodge/Default/Creature.hs 114;" f -defaultAimingCrit src/Dodge/Default/Creature.hs 123;" f +defaultAimMvType src/Dodge/Default/Creature.hs 113;" f +defaultAimingCrit src/Dodge/Default/Creature.hs 122;" f defaultApplyDamage src/Dodge/Creature/Damage.hs 22;" f defaultArcStep src/Dodge/Tesla/Arc.hs 140;" f defaultArcStep src/Dodge/Tesla/Arc/Default.hs 15;" f -defaultAudition src/Dodge/Default/Creature.hs 91;" f +defaultAudition src/Dodge/Default/Creature.hs 90;" f defaultAutoWall src/Dodge/Default/Door.hs 15;" f defaultBlock src/Dodge/Default/Block.hs 5;" f defaultBounds src/Dodge/Data/Bounds.hs 20;" f @@ -3905,17 +3905,17 @@ defaultButton src/Dodge/Default.hs 49;" f defaultCWCam src/Dodge/Default/World.hs 68;" f defaultCWGen src/Dodge/Default/World.hs 58;" f defaultCWorld src/Dodge/Default/World.hs 83;" f -defaultChaseMvType src/Dodge/Default/Creature.hs 105;" f +defaultChaseMvType src/Dodge/Default/Creature.hs 104;" f defaultClusterStatus src/Dodge/Default/Room.hs 38;" f defaultConfig src/Dodge/Data/Config.hs 127;" f defaultCorpse src/Dodge/Corpse/Make.hs 35;" f defaultCraftItem src/Dodge/Default/Item.hs 25;" f defaultCreature src/Dodge/Default/Creature.hs 12;" f -defaultCreatureMemory src/Dodge/Default/Creature.hs 64;" f +defaultCreatureMemory src/Dodge/Default/Creature.hs 63;" f defaultCrystalWall src/Dodge/Default/Wall.hs 40;" f defaultDirtBlock src/Dodge/Default/Block.hs 19;" f defaultDirtWall src/Dodge/Default/Wall.hs 61;" f -defaultDisplayInventory src/Dodge/Default/World.hs 165;" f +defaultDisplayInventory src/Dodge/Default/World.hs 166;" f defaultDoor src/Dodge/Default/Door.hs 29;" f defaultDoorWall src/Dodge/Default/Wall.hs 32;" f defaultDrawButton src/Dodge/Button/Draw.hs 28;" f @@ -3924,13 +3924,13 @@ defaultEquipUse src/Dodge/Default/Item/Use.hs 7;" f defaultEquipment src/Dodge/Default.hs 25;" f defaultFlIt src/Dodge/Default.hs 28;" f defaultForeground src/Dodge/Default/ForegroundShape.hs 5;" f -defaultHUD src/Dodge/Default/World.hs 154;" f +defaultHUD src/Dodge/Default/World.hs 155;" f defaultHeldItem src/Dodge/Default/Item.hs 9;" f defaultImpulsive src/Dodge/Humanoid.hs 191;" f -defaultInanimate src/Dodge/Default/Creature.hs 61;" f +defaultInanimate src/Dodge/Default/Creature.hs 60;" f defaultInput src/Dodge/Default/World.hs 14;" f -defaultIntention src/Dodge/Default/Creature.hs 97;" f -defaultInvSize src/Dodge/Default/Creature.hs 71;" f +defaultIntention src/Dodge/Default/Creature.hs 96;" f +defaultInvSize src/Dodge/Default/Creature.hs 70;" f defaultLS src/Dodge/Default/LightSource.hs 8;" f defaultLWorld src/Dodge/Default/World.hs 95;" f defaultLeftLoadable src/Dodge/Default/Item/Use/Consumption.hs 8;" f @@ -3939,16 +3939,16 @@ defaultMachine src/Dodge/Default.hs 31;" f defaultMachineWall src/Dodge/Default/Wall.hs 48;" f defaultMuzzles src/Dodge/Default/Item/Use/AimParams.hs 8;" f defaultPP src/Dodge/Default.hs 64;" f -defaultPerceptionState src/Dodge/Default/Creature.hs 74;" f +defaultPerceptionState src/Dodge/Default/Creature.hs 73;" f defaultProp src/Dodge/Default/Prop.hs 6;" f defaultProximitySensor src/Dodge/Default.hs 75;" f defaultRoom src/Dodge/Default/Room.hs 9;" f defaultSensorWall src/Dodge/Default/Wall.hs 58;" f -defaultState src/Dodge/Default/Creature.hs 132;" f +defaultState src/Dodge/Default/Creature.hs 131;" f defaultSwitchWall src/Dodge/Default/Door.hs 22;" f defaultTerminal src/Dodge/Default/Terminal.hs 9;" f defaultTerminalInput src/Dodge/Default/Terminal.hs 32;" f -defaultVision src/Dodge/Default/Creature.hs 84;" f +defaultVision src/Dodge/Default/Creature.hs 83;" f defaultWall src/Dodge/Default/Wall.hs 10;" f defaultWindow src/Dodge/Default/Wall.hs 74;" f defaultWorld src/Dodge/Default/World.hs 34;" f @@ -4071,7 +4071,7 @@ doRoomInPlacements src/Dodge/Layout.hs 97;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomPlacements src/Dodge/Layout.hs 122;" f doRoomShift src/Dodge/Room/Link.hs 33;" f -doScopeZoom src/Dodge/Update/Scroll.hs 84;" f +doScopeZoom src/Dodge/Update/Scroll.hs 85;" f doSectionSize src/Dodge/DisplayInventory.hs 217;" f doSideEffects appDodge/Main.hs 120;" f doStep src/Dodge/ArcStep.hs 9;" f @@ -4426,8 +4426,8 @@ geometryUnitTests test/Spec.hs 22;" f geqConstr src/SameConstr.hs 21;" f getAimZoom src/Dodge/Update/Camera.hs 135;" f getAmmoLinks src/Dodge/Item/Grammar.hs 142;" f -getArguments src/Dodge/Update/Scroll.hs 178;" f -getArguments' src/Dodge/Update/Scroll.hs 166;" f +getArguments src/Dodge/Update/Scroll.hs 179;" f +getArguments' src/Dodge/Update/Scroll.hs 167;" f getAttachedSFLink src/Dodge/HeldUse.hs 761;" f getAutoSpringLinks src/Dodge/Item/Grammar.hs 121;" f getAvailableListLines src/Dodge/SelectionList.hs 10;" f @@ -4662,7 +4662,7 @@ invSetSelection src/Dodge/Inventory.hs 185;" f invSetSelectionPos src/Dodge/Inventory.hs 193;" f invShiftPointBy src/Dodge/ShiftPoint.hs 8;" f invSideEff src/Dodge/Creature/State.hs 167;" f -invSize src/Dodge/Inventory/CheckSlots.hs 29;" f +invSize src/Dodge/Inventory/CheckSlots.hs 30;" f inventoryX src/Dodge/Creature.hs 113;" f inverseSelNumPos src/Dodge/SelectionSections.hs 228;" f inverseSelSecYint src/Dodge/SelectionSections.hs 201;" f @@ -4732,7 +4732,7 @@ itemRooms src/Dodge/LockAndKey.hs 39;" f itemRotTreeSPic src/Dodge/Item/Draw/SPic.hs 28;" f itemSPic src/Dodge/Item/Draw/SPic.hs 35;" f itemScan src/Dodge/Item/Scope.hs 63;" f -itemScroll src/Dodge/Update/Scroll.hs 51;" f +itemScroll src/Dodge/Update/Scroll.hs 52;" f itemScrollDisplay src/Dodge/Inventory/SelectionList.hs 120;" f itemScrollValue src/Dodge/Inventory/SelectionList.hs 147;" f itemSidePush src/Dodge/HeldUse.hs 381;" f @@ -4955,7 +4955,7 @@ makeTypeCraftNum src/Dodge/Item/Craftable.hs 12;" f mapper src/Dodge/Item/Scope.hs 70;" f maxAmmo src/Dodge/Item/MaxAmmo.hs 6;" f maxDamageType src/Dodge/Damage.hs 37;" f -maxInvSlots src/Dodge/Inventory/CheckSlots.hs 26;" f +maxInvSlots src/Dodge/Inventory/CheckSlots.hs 27;" f maxShowX src/Dodge/Combine/Graph.hs 49;" f maxViewDistance src/Dodge/Viewpoints.hs 26;" f maybeBlockedPassage src/Dodge/Room/RezBox.hs 69;" f @@ -5053,7 +5053,7 @@ mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 60;" f mouseCursorType src/Dodge/Render/Picture.hs 86;" f mouseWorldPos' src/Dodge/Base/Coordinate.hs 48;" f moveBullet src/Dodge/Bullet.hs 187;" f -moveCombineSel src/Dodge/Update/Scroll.hs 114;" f +moveCombineSel src/Dodge/Update/Scroll.hs 115;" f moveHammerUp src/Dodge/Hammer.hs 5;" f moveInverseShockwave src/Dodge/Shockwave/Update.hs 54;" f moveLSThen src/Dodge/Placement/Instance/LightSource.hs 30;" f @@ -5119,7 +5119,7 @@ normalizeColor src/Color.hs 76;" f normalizeV src/Geometry/Vector.hs 43;" f normalizeV3 src/Geometry/Vector3D.hs 84;" f nulgate src/Dodge/Item/Scope.hs 95;" f -nullCommand src/Dodge/Update/Scroll.hs 169;" f +nullCommand src/Dodge/Update/Scroll.hs 170;" f numColor src/Color.hs 128;" f numDrawableVertices src/Shader/Parameters.hs 34;" f numGLushort src/Shader/Parameters.hs 29;" f @@ -5507,7 +5507,7 @@ renderListAt src/Dodge/Render/List.hs 192;" f renderShadows src/Render.hs 117;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 161;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f -resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 13;" f +resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 44;" f resetPLUse src/Dodge/PlacementSpot.hs 96;" f resizeFBOTO src/Framebuffer/Update.hs 203;" f resizeFBOTO3 src/Framebuffer/Update.hs 175;" f @@ -5637,10 +5637,10 @@ screenPosAbs src/Dodge/ScreenPos.hs 15;" f screenToWorldPos src/Dodge/Base/Coordinate.hs 54;" f scrollAugInvSel src/Dodge/Inventory.hs 204;" f scrollAugNextInSection src/Dodge/Inventory.hs 217;" f -scrollCommandStrings src/Dodge/Update/Scroll.hs 161;" f -scrollCommands src/Dodge/Update/Scroll.hs 158;" f +scrollCommandStrings src/Dodge/Update/Scroll.hs 162;" f +scrollCommands src/Dodge/Update/Scroll.hs 159;" f scrollDebugInfoInt src/Dodge/Debug.hs 71;" f -scrollRBOption src/Dodge/Update/Scroll.hs 152;" f +scrollRBOption src/Dodge/Update/Scroll.hs 153;" f scrollSelectionSections src/Dodge/SelectionSections.hs 26;" f scrollTimeBack src/Dodge/Update.hs 212;" f scrollTimeForward src/Dodge/Update.hs 235;" f @@ -5669,7 +5669,7 @@ selSecSelSize src/Dodge/SelectionSections.hs 180;" f selSecYint src/Dodge/SelectionSections.hs 189;" f selectCreatureDebugItem src/Dodge/Debug.hs 55;" f selectUse src/Dodge/SelectUse.hs 11;" f -selectedItemScroll src/Dodge/Update/Scroll.hs 45;" f +selectedItemScroll src/Dodge/Update/Scroll.hs 46;" f sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f senseDamage src/Dodge/Machine/Update.hs 154;" f @@ -5921,7 +5921,7 @@ startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f startRoom src/Dodge/Room/Start.hs 52;" f startSeedGame src/Dodge/StartNewGame.hs 20;" f startSeedGameConc src/Dodge/StartNewGame.hs 27;" f -statsModifier src/Dodge/Creature/Info.hs 14;" f +statsModifier src/Dodge/Creature/Info.hs 15;" f stickyMod src/Dodge/Item/Scope.hs 51;" f stone1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 410;" f stone2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 506;" f @@ -5995,7 +5995,7 @@ terminalReturnEffect src/Dodge/Terminal.hs 276;" f terminalSPic src/Dodge/Machine/Draw.hs 29;" f terminalScreenGlow src/Dodge/Machine/Update.hs 34;" f terminalShape src/Dodge/Machine/Draw.hs 32;" f -terminalWheelEvent src/Dodge/Update/Scroll.hs 124;" f +terminalWheelEvent src/Dodge/Update/Scroll.hs 125;" f teslaGun src/Dodge/Item/Held/BatteryGuns.hs 19;" f teslaGunPic src/Dodge/Item/Draw/SPic.hs 410;" f teslaParams src/Dodge/Item/Held/BatteryGuns.hs 32;" f @@ -6028,7 +6028,7 @@ thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 53;" f thingsHit src/Dodge/WorldEvent/ThingsHit.hs 29;" f thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 73;" f threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f -throwItem src/Dodge/Creature/Action.hs 203;" f +throwItem src/Dodge/Creature/Action.hs 204;" f tileTexCoords src/Tile.hs 11;" f tilesFromRooms src/Dodge/Layout.hs 205;" f tilesToLine src/Shader/AuxAddition.hs 66;" f @@ -6171,7 +6171,7 @@ underBarrelSlot src/Dodge/Item/Scope.hs 159;" f unfoldrMID src/MonadHelp.hs 33;" f unigate src/Dodge/Item/Scope.hs 102;" f unitVectorAtAngle src/Geometry/Vector.hs 100;" f -unlockInv src/Dodge/Inventory/Lock.hs 12;" f +unlockInv src/Dodge/Inventory/Lock.hs 14;" f unpause src/Dodge/Menu.hs 195;" f unsafeBlinkAction src/Dodge/Creature/Action/Blink.hs 56;" f unsafeBlinker src/Dodge/Item/Held/Utility.hs 33;" f @@ -6266,7 +6266,7 @@ updateRadarSweeps src/Dodge/Update.hs 605;" f updateRandNode src/TreeHelp.hs 108;" f updateRenderSplit appDodge/Main.hs 108;" f updateRootItemID src/Dodge/Inventory/Location.hs 35;" f -updateScopeZoom src/Dodge/Update/Scroll.hs 72;" f +updateScopeZoom src/Dodge/Update/Scroll.hs 73;" f updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateSection src/Dodge/DisplayInventory.hs 264;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 243;" f @@ -6371,7 +6371,7 @@ viewTarget src/Dodge/Creature/ReaderUpdate.hs 145;" f violet src/Color.hs 21;" f visibleWalls src/Dodge/Base/Collide.hs 124;" f visionCheck src/Dodge/Creature/Perception.hs 153;" f -vocalizationTest src/Dodge/Creature/Vocalization.hs 8;" f +vocalizationTest src/Dodge/Creature/Vocalization.hs 39;" f volleyGun src/Dodge/Item/Held/Cane.hs 15;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 347;" f waistSP src/Dodge/Creature/HandPos.hs 173;" f @@ -6451,13 +6451,13 @@ you src/Dodge/Base/You.hs 12;" f youDropItem src/Dodge/Creature/Action.hs 189;" f yourAugmentedItem src/Dodge/Render/HUD.hs 236;" f yourControl src/Dodge/Creature/YourControl.hs 27;" f -yourDefaultSpeed src/Dodge/Default/Creature.hs 126;" f -yourDefaultStrideLength src/Dodge/Default/Creature.hs 129;" f -yourInfo src/Dodge/Creature/Info.hs 8;" f +yourDefaultSpeed src/Dodge/Default/Creature.hs 125;" f +yourDefaultStrideLength src/Dodge/Default/Creature.hs 128;" f +yourInfo src/Dodge/Creature/Info.hs 9;" f yourInv src/Dodge/Base/You.hs 25;" f yourRootItem src/Dodge/Base/You.hs 20;" f yourSelectedItem src/Dodge/Base/You.hs 15;" f -yourStatsInfo src/Dodge/Creature/Info.hs 25;" f +yourStatsInfo src/Dodge/Creature/Info.hs 26;" f zConnect src/Dodge/Render/Connectors.hs 17;" f zConnectCol src/Dodge/Render/Connectors.hs 28;" f zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f @@ -6488,7 +6488,7 @@ zoneWall src/Dodge/Zoning/Wall.hs 65;" f zonesAroundPoint src/Dodge/Zoning/Base.hs 90;" f zonesExtract src/Dodge/Zoning/Base.hs 55;" f zoomFloatingCamera src/Dodge/Update/Camera.hs 70;" f -zoomInLongGun src/Dodge/Update/Scroll.hs 98;" f -zoomOutLongGun src/Dodge/Update/Scroll.hs 106;" f +zoomInLongGun src/Dodge/Update/Scroll.hs 99;" f +zoomOutLongGun src/Dodge/Update/Scroll.hs 107;" f zoomScope src/Dodge/Item/Scope.hs 33;" f -zoomSpeed src/Dodge/Update/Scroll.hs 95;" f +zoomSpeed src/Dodge/Update/Scroll.hs 96;" f