From b920a2ec72211cb6c40bf47fcc41255c0c919dcf Mon Sep 17 00:00:00 2001 From: justin Date: Fri, 20 Jun 2025 17:41:32 +0100 Subject: [PATCH] Unify item inventory effects somewhat --- src/Dodge/Creature/State.hs | 24 +- src/Dodge/HeldUse.hs | 2 - src/Dodge/Item/BackgroundEffect.hs | 47 +-- tags | 469 ++++++++++++++--------------- 4 files changed, 262 insertions(+), 280 deletions(-) diff --git a/src/Dodge/Creature/State.hs b/src/Dodge/Creature/State.hs index 78b0046ef..517c3bd07 100644 --- a/src/Dodge/Creature/State.hs +++ b/src/Dodge/Creature/State.hs @@ -3,6 +3,9 @@ module Dodge.Creature.State ( doDamage, ) where +import Dodge.Item.BackgroundEffect +import Dodge.Item.Location +import Dodge.Inventory.SelectionList import Control.Applicative import Control.Monad import qualified Data.Map.Strict as M @@ -23,7 +26,6 @@ import Dodge.Data.World import Dodge.DoubleTree import Dodge.Euse import Dodge.HeldUse -import Dodge.Item.BackgroundEffect import Dodge.Item.Grammar import Dodge.Item.HeldOffset import Dodge.Item.MaxAmmo @@ -145,9 +147,7 @@ applyPastDamages cr w -- a loop going over all inventory items invSideEff :: Creature -> World -> World -invSideEff cr = alaf Endo foldMap f (_crInv cr) . updateHeldRootItem cr - where - f it = itBackgroundEffect it cr +invSideEff cr = updateHeldRootItem cr -- a loop going over all root inventory items invRootItemEffs :: Creature -> World -> World @@ -161,6 +161,11 @@ invItemLocUpdate :: Creature -> LocationLDT ItemLink ComposedItem -> World -> Wo invItemLocUpdate cr loc w = doAnyEquipmentEffect loc cr $ case itm ^. itType of ATTACH BULLETSYNTH -> trySynthBullet loc w EQUIP WRIST_ECG | haspulse -> tryUseParent loc w + COPIER _ -> copierItemUpdate itm cr w + HELD FLATSHIELD -> rootNotrootEff createShieldWall removeShieldWall itm cr w + HELD MINIGUNX{} -> + w & pointerToItem itm . itParams . wTime + %~ (max 0 . subtract 1) _ -> w where haspulse = @@ -168,6 +173,17 @@ invItemLocUpdate cr loc w = doAnyEquipmentEffect loc cr $ case itm ^. itType of == Just 0 itm = loc ^. locLDT . ldtValue . _1 +copierItemUpdate :: Item -> Creature -> World -> World +copierItemUpdate itm cr w = fromMaybe w $ do + x <- itm ^? itScroll . itsInt + invid <- itm ^? itLocation . ilInvID + ip <- itm ^? itType . ibtPathing + i <- getInventoryPath x ip invid cr + itm' <- cr ^? crInv . ix i + v <- getItemValue itm' w cr + return $ w & pointerToItem itm . itUse . uValue .~ v + + doAnyEquipmentEffect :: LocationLDT ItemLink ComposedItem -> Creature -> World -> World doAnyEquipmentEffect loc cr = case itm ^? itLocation . ilEquipSite . _Just of Just _ -> equipBackgroundEffect loc cr diff --git a/src/Dodge/HeldUse.hs b/src/Dodge/HeldUse.hs index c1f58c518..ae36e9a27 100644 --- a/src/Dodge/HeldUse.hs +++ b/src/Dodge/HeldUse.hs @@ -119,9 +119,7 @@ useTimeCheck f item cr w = case useDelay $ item ^. ldtValue of FixedRate rate | w ^. cWorld . lWorld . lClock - rate > lastused -> f item cr $ setUseRate w FixedRate{} -> w - --Just (WarmUpNoDelay wt wm ws) WarmUpNoDelay wm ws --- | wt < wm -> | _wTime (_itParams $ _ldtValue item) < wm -> w & soundContinue (CrWeaponSound cid 0) (_crPos cr) ws (Just 2) diff --git a/src/Dodge/Item/BackgroundEffect.hs b/src/Dodge/Item/BackgroundEffect.hs index 3cca6e8bf..ba040d704 100644 --- a/src/Dodge/Item/BackgroundEffect.hs +++ b/src/Dodge/Item/BackgroundEffect.hs @@ -1,13 +1,12 @@ module Dodge.Item.BackgroundEffect ( - itBackgroundEffect, itEffectOnPickup, itEffectOnDrop, + rootNotrootEff, + createShieldWall, + removeShieldWall, ) where import Dodge.Creature.Radius -import Dodge.Inventory.SelectionList ---import Dodge.Inventory.Path -import Data.Maybe import Color import Dodge.Default.Wall import Dodge.Wall.Delete @@ -20,45 +19,25 @@ import Dodge.Item.Location import Dodge.Data.World import Control.Lens -itBackgroundEffect :: Item -> Creature -> World -> World -itBackgroundEffect itm cr w = case itm ^. itType of - COPIER _ -> copierItemUpdate' itm cr w - ITEMSCAN -> cancelExamineInventory' w - HELD FLATSHIELD -> rootNotrootEff' createShieldWall' removeShieldWall' itm cr w - HELD MINIGUNX{} -> - w & pointerToItem itm . itParams . wTime - %~ (max 0 . subtract 1) - _ -> w - -copierItemUpdate' :: Item -> Creature -> World -> World -copierItemUpdate' itm cr w = fromMaybe w $ do - x <- itm ^? itScroll . itsInt - invid <- itm ^? itLocation . ilInvID - ip <- itm ^? itType . ibtPathing - i <- getInventoryPath x ip invid cr - itm' <- cr ^? crInv . ix i - v <- getItemValue itm' w cr - return $ w & pointerToItem itm . itUse . uValue .~ v - -cancelExamineInventory' :: World -> World -cancelExamineInventory' = hud . hudElement . subInventory %~ f +cancelExamineInventory :: World -> World +cancelExamineInventory = hud . hudElement . subInventory %~ f where f ExamineInventory = NoSubInventory f x = x -rootNotrootEff' :: +rootNotrootEff :: (Item -> Creature -> World -> World) -> (Item -> Creature -> World -> World) -> Item -> Creature -> World -> World -rootNotrootEff' f g it +rootNotrootEff f g it | it ^? itLocation . ilIsRoot == Just True = f it | otherwise = g it -createShieldWall' :: Item -> Creature -> World -> World -createShieldWall' it cr w = case it ^? itParams . flatShieldWlMIX . _Just of +createShieldWall :: Item -> Creature -> World -> World +createShieldWall it cr w = case it ^? itParams . flatShieldWlMIX . _Just of Nothing -> let (wlid, w') = createWall ((shieldWall' crid){_wlLine = wlline, _wlID = wlid}) w in w' & pointerToItem it . itParams .~ FlatShieldParams (Just wlid) @@ -75,8 +54,8 @@ createShieldWall' it cr w = case it ^? itParams . flatShieldWlMIX . _Just of | crIsAiming cr = vNormal | otherwise = rotateV (twoFlatHRot cr) . vNormal -removeShieldWall' :: Item -> Creature -> World -> World -removeShieldWall' it _ w = case it ^? itParams . flatShieldWlMIX . _Just of +removeShieldWall :: Item -> Creature -> World -> World +removeShieldWall it _ w = case it ^? itParams . flatShieldWlMIX . _Just of Nothing -> w Just wid -> w & deleteWallID wid @@ -86,8 +65,10 @@ itEffectOnPickup :: Item -> Creature -> World -> World itEffectOnPickup _ _ = id itEffectOnDrop :: Item -> Creature -> World -> World -itEffectOnDrop itm _ w = case itm ^. itType of +itEffectOnDrop itm cr w = case itm ^. itType of HELD MINIGUNX{} -> w & pointerToItemID (_itID itm) . itParams . wTime .~ 0 + ITEMSCAN -> cancelExamineInventory w + HELD FLATSHIELD -> removeShieldWall itm cr w _ -> w shieldWall' :: Int -> Wall diff --git a/tags b/tags index 642c68da9..7ad04373b 100644 --- a/tags +++ b/tags @@ -141,7 +141,6 @@ BackgroundEffect src/Dodge/Item/BackgroundEffect.hs 1;" m BackgroundSound src/Dodge/Data/SoundOrigin.hs 15;" C Ball src/Dodge/Tesla/Ball.hs 1;" m Bark src/Dodge/Data/ActionPlan.hs 40;" C -Barrel src/Dodge/Data/Creature/State.hs 23;" C BarrelCrit src/Dodge/Data/Creature/Misc.hs 73;" C BarrelHiss src/Dodge/Data/SoundOrigin.hs 32;" C BarrelType src/Dodge/Data/Creature/Misc.hs 87;" t @@ -298,7 +297,7 @@ ChargeableAmmo src/Dodge/Data/Item/Use/Consumption.hs 32;" C ChaseAI src/Dodge/Data/Creature/Misc.hs 40;" C ChaseCrit src/Dodge/Data/Creature/Misc.hs 70;" C ChaseCrit src/Dodge/Creature/ChaseCrit.hs 1;" m -ChaseCritters src/Dodge/Data/Creature/State.hs 31;" C +ChaseCritters src/Dodge/Data/Creature/State.hs 18;" C Check src/Framebuffer/Check.hs 1;" m CheckConsistency src/Dodge/Room/CheckConsistency.hs 1;" m CheckSlots src/Dodge/Inventory/CheckSlots.hs 1;" m @@ -332,7 +331,7 @@ Color src/Color/Data.hs 33;" t Color src/Color.hs 1;" m Color src/Dodge/Terminal/Color.hs 1;" m Color8 src/Color/Data.hs 35;" t -ColorFaction src/Dodge/Data/Creature/State.hs 34;" C +ColorFaction src/Dodge/Data/Creature/State.hs 21;" C Comatose src/Dodge/Data/Creature/Perception.hs 53;" C CombAmount src/Dodge/Data/CombAmount.hs 12;" t CombAmount src/Dodge/Data/CombAmount.hs 8;" m @@ -386,8 +385,8 @@ CrArcNode src/Dodge/Data/LWorld.hs 162;" 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 -CrGroup src/Dodge/Data/Creature/State.hs 38;" t -CrGroupID src/Dodge/Data/Creature/State.hs 44;" C +CrGroup src/Dodge/Data/Creature/State.hs 25;" t +CrGroupID src/Dodge/Data/Creature/State.hs 31;" C CrGroupParams src/Dodge/Data/CrGroupParams.hs 14;" t CrGroupParams src/Dodge/Data/CrGroupParams.hs 6;" m CrGroupUpdate src/Dodge/Data/CrGroupParams.hs 22;" t @@ -402,8 +401,6 @@ CrMouth src/Dodge/Data/SoundOrigin.hs 18;" C CrMvType src/Dodge/Data/Creature/Misc.hs 28;" t CrMvType src/Dodge/Data/Creature/Misc.hs 31;" C CrSound src/Dodge/Data/SoundOrigin.hs 17;" C -CrSpState src/Dodge/Data/Creature/State.hs 22;" t -CrSt src/Dodge/Data/Creature/State.hs 16;" C CrTurnAround src/Dodge/Data/CreatureEffect.hs 49;" C CrWdAc src/Dodge/Data/CreatureEffect.hs 59;" t CrWdBFSThenReturn src/Dodge/Data/CreatureEffect.hs 60;" C @@ -435,7 +432,6 @@ CreatureEffect src/Dodge/CreatureEffect.hs 1;" m CreatureEffect src/Dodge/Data/CreatureEffect.hs 6;" m CreaturePart src/Dodge/Data/Wall/Structure.hs 17;" C CreatureShape src/Dodge/Data/Creature/Misc.hs 76;" t -CreatureState src/Dodge/Data/Creature/State.hs 16;" t CreatureType src/Dodge/Data/Creature/Misc.hs 60;" t Crushing src/Dodge/Data/Damage.hs 23;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 33;" C @@ -621,7 +617,7 @@ ElectricalBall src/Dodge/Data/EnergyBall/Type.hs 15;" C Electronics src/Dodge/Data/Material.hs 11;" C EllShad src/Picture/Data.hs 39;" C Enable_debug src/Dodge/Data/Config.hs 68;" C -EncircleFlock src/Dodge/Data/Creature/State.hs 30;" C +EncircleFlock src/Dodge/Data/Creature/State.hs 17;" C EnergyBall src/Dodge/Data/EnergyBall.hs 17;" t EnergyBall src/Dodge/Data/EnergyBall.hs 6;" m EnergyBall src/Dodge/EnergyBall.hs 3;" m @@ -657,7 +653,7 @@ Explosion src/Dodge/WorldEvent/Explosion.hs 4;" m ExplosionPayload src/Dodge/Data/Payload.hs 11;" C Explosive src/Dodge/Data/Damage.hs 29;" C ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 16;" C -ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 87;" C +ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 89;" C ExplosivePutty src/Dodge/Data/AmmoType.hs 13;" C ExternallyGeneratedSounds src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 2;" m ExtraEffect src/Dodge/Item/Weapon/ExtraEffect.hs 6;" m @@ -673,7 +669,7 @@ FRONTARMOUR src/Dodge/Data/Item/Combine.hs 122;" C FUELCELL src/Dodge/Data/Item/Combine.hs 87;" C FUELPACK src/Dodge/Data/Item/Combine.hs 131;" C FacilityType src/Dodge/Data/Scenario.hs 55;" t -Faction src/Dodge/Data/Creature/State.hs 27;" t +Faction src/Dodge/Data/Creature/State.hs 14;" t Factory src/Dodge/Data/Scenario.hs 56;" C FailedResource src/Dodge/Data/Scenario.hs 37;" t FetchItem src/Dodge/Data/Scenario.hs 11;" C @@ -766,7 +762,6 @@ GasCloud src/Dodge/Data/Cloud.hs 34;" C GasCreate src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" t GasFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" t GasParams src/Dodge/Data/Item/Use.hs 56;" C -GenCr src/Dodge/Data/Creature/State.hs 24;" C GenFloat src/Dodge/Data/GenFloat.hs 11;" t GenFloat src/Dodge/Data/GenFloat.hs 5;" m GenParams src/Dodge/Data/GenParams.hs 15;" t @@ -775,7 +770,7 @@ GenWorld src/Dodge/Data/GenWorld.hs 23;" t GenWorld src/Dodge/Data/GenWorld.hs 4;" m Generate src/Dodge/Layout/Generate.hs 4;" m GenerateStructure src/Dodge/Tree/GenerateStructure.hs 6;" m -GenericFaction src/Dodge/Data/Creature/State.hs 28;" C +GenericFaction src/Dodge/Data/Creature/State.hs 15;" C GeoObjShads src/Dodge/Data/Config.hs 101;" C Geodesic src/Polyhedra/Geodesic.hs 3;" m Geometry src/Geometry.hs 12;" m @@ -1088,7 +1083,7 @@ Location src/Dodge/Item/Location.hs 1;" m LocationLDT src/Dodge/Data/DoubleTree.hs 67;" t Lock src/Dodge/Inventory/Lock.hs 1;" m LockAndKey src/Dodge/LockAndKey.hs 1;" m -LoneWolf src/Dodge/Data/Creature/State.hs 39;" C +LoneWolf src/Dodge/Data/Creature/State.hs 26;" C LongAI src/Dodge/Data/Creature/Misc.hs 50;" C LongDoor src/Dodge/Room/LongDoor.hs 2;" m LongPress src/Dodge/Data/Input.hs 18;" C @@ -1288,7 +1283,7 @@ NoDelay src/Dodge/Data/Item/HeldDelay.hs 14;" C NoDelay src/Dodge/Data/UseDelay.hs 12;" C NoDropEffect src/Dodge/Data/Item/Effect.hs 37;" C NoEscapeMenuOption src/Dodge/Data/Universe.hs 79;" C -NoFaction src/Dodge/Data/Creature/State.hs 33;" C +NoFaction src/Dodge/Data/Creature/State.hs 20;" C NoFlare src/Dodge/Data/Muzzle.hs 22;" C NoHammer src/Dodge/Data/Hammer.hs 13;" C NoHoming src/Dodge/Data/Projectile.hs 51;" C @@ -1475,10 +1470,10 @@ PlacementHelper src/Dodge/LevelGen/PlacementHelper.hs 1;" m PlacementSpot src/Dodge/Data/GenWorld.hs 61;" t PlacementSpot src/Dodge/PlacementSpot.hs 2;" m PlacementUsingPos src/Dodge/Data/GenWorld.hs 83;" C -PlainBarrel src/Dodge/Data/Creature/Misc.hs 87;" C +PlainBarrel src/Dodge/Data/Creature/Misc.hs 88;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlayStatus src/Sound/Data.hs 23;" t -PlayerFaction src/Dodge/Data/Creature/State.hs 35;" C +PlayerFaction src/Dodge/Data/Creature/State.hs 22;" C PlayerGoal src/Dodge/Data/Scenario.hs 3;" t Playing src/Sound/Data.hs 25;" C Point2 src/Geometry/Data.hs 19;" t @@ -1779,7 +1774,7 @@ Shatter src/Dodge/Item/Weapon/Shatter.hs 1;" m Shattering src/Dodge/Data/Damage.hs 24;" C Shell src/Dodge/Data/Projectile.hs 17;" C ShellSound src/Dodge/Data/SoundOrigin.hs 26;" C -ShieldGroup src/Dodge/Data/Creature/State.hs 45;" C +ShieldGroup src/Dodge/Data/Creature/State.hs 32;" C Shift src/Dodge/Placement/Shift.hs 1;" m Shift src/Dodge/Tree/Shift.hs 8;" m ShiftPoint src/Dodge/ShiftPoint.hs 2;" m @@ -1857,7 +1852,7 @@ Spatial src/Dodge/Data/Scenario.hs 73;" C SpatialInfluence src/Dodge/Data/Scenario.hs 81;" t Spawn src/Dodge/Item/Weapon/Spawn.hs 1;" m SpawnParticle src/Dodge/WorldEvent/SpawnParticle.hs 2;" m -SpawnedBy src/Dodge/Data/Creature/State.hs 32;" C +SpawnedBy src/Dodge/Data/Creature/State.hs 19;" C SplashOptions src/Dodge/Data/Universe.hs 72;" C SplitBeamCombine src/Dodge/Data/Beam.hs 42;" C SprayGuns src/Dodge/Item/Held/SprayGuns.hs 1;" m @@ -1896,7 +1891,7 @@ Survive src/Dodge/Data/Scenario.hs 5;" C Suspicious src/Dodge/Data/Creature/Perception.hs 66;" C Swap src/Dodge/Inventory/Swap.hs 1;" m SwapEquipment src/Dodge/Data/RightButtonOptions.hs 27;" C -Swarm src/Dodge/Data/Creature/State.hs 40;" C +Swarm src/Dodge/Data/Creature/State.hs 27;" C SwarmAI src/Dodge/Data/Creature/Misc.hs 46;" C SwarmCrit src/Dodge/Data/Creature/Misc.hs 71;" C SwarmCrit src/Dodge/Creature/SwarmCrit.hs 1;" m @@ -2156,7 +2151,7 @@ WIRE src/Dodge/Data/Item/Combine.hs 86;" C WRISTARMOUR src/Dodge/Data/Item/Combine.hs 123;" C WRIST_ECG src/Dodge/Data/Item/Combine.hs 135;" C WaitThen src/Dodge/Data/ActionPlan.hs 103;" C -WalkCycle src/Dodge/Creature/State/WalkCycle.hs 1;" m +WalkCycle src/Dodge/Creature/State/WalkCycle.hs 3;" m Walking src/Dodge/Data/Creature/Stance.hs 21;" C Wall src/Dodge/Data/Wall.hs 20;" t Wall src/Dodge/Base/Wall.hs 1;" m @@ -2242,7 +2237,7 @@ YELLOW src/Color/Data.hs 18;" C You src/Dodge/Base/You.hs 1;" m YourControl src/Dodge/Creature/YourControl.hs 3;" m ZOOMSCOPE src/Dodge/Data/Item/Combine.hs 92;" C -ZombieFaction src/Dodge/Data/Creature/State.hs 29;" C +ZombieFaction src/Dodge/Data/Creature/State.hs 16;" C Zone src/Dodge/Wall/Zone.hs 1;" m Zone src/Geometry/Zone.hs 1;" m Zoning src/Dodge/Zoning.hs 1;" m @@ -2422,13 +2417,14 @@ _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 +_crDamage src/Dodge/Data/Creature.hs 49;" f _crDeathTimer src/Dodge/Data/Creature.hs 61;" f _crDir src/Dodge/Data/Creature.hs 40;" f _crEquipment src/Dodge/Data/Creature.hs 48;" f _crFaction src/Dodge/Data/Creature.hs 56;" f _crGroup src/Dodge/Data/Creature.hs 57;" f _crGroupCenter src/Dodge/Data/CrGroupParams.hs 17;" f -_crGroupID src/Dodge/Data/Creature/State.hs 42;" f +_crGroupID src/Dodge/Data/Creature/State.hs 29;" f _crGroupIDs src/Dodge/Data/CrGroupParams.hs 16;" f _crGroupParamID src/Dodge/Data/CrGroupParams.hs 15;" f _crGroupUpdate src/Dodge/Data/CrGroupParams.hs 18;" f @@ -2446,16 +2442,13 @@ _crPastDamage src/Dodge/Data/Creature.hs 50;" f _crPerception src/Dodge/Data/Creature.hs 53;" f _crPos src/Dodge/Data/Creature.hs 38;" f _crStance src/Dodge/Data/Creature.hs 51;" f -_crState src/Dodge/Data/Creature.hs 49;" f _crType src/Dodge/Data/Creature.hs 43;" f _crVocalization src/Dodge/Data/Creature.hs 55;" f _crZoning src/Dodge/Data/World.hs 47;" f _creatureGroups src/Dodge/Data/LWorld.hs 99;" f _creatures src/Dodge/Data/LWorld.hs 98;" f -_csDamage src/Dodge/Data/Creature/State.hs 17;" f _csLinks src/Dodge/Data/RoomCluster.hs 11;" f _csName src/Dodge/Data/RoomCluster.hs 10;" f -_csSpState src/Dodge/Data/Creature/State.hs 18;" f _currentArc src/Dodge/Data/Item/Params.hs 16;" f _currentFoot src/Dodge/Data/Creature/Stance.hs 23;" f _cursSides src/Dodge/Data/SelectionList.hs 20;" f @@ -2855,7 +2848,7 @@ _phTargetingID src/Dodge/Data/Projectile.hs 53;" f _pickUpLevel src/Dodge/Layout/Generate.hs 14;" f _pickUps src/Dodge/Layout/Generate.hs 15;" f _pictureShaders src/Data/Preload/Render.hs 28;" f -_piercedPoints src/Dodge/Data/Creature/State.hs 23;" f +_piercedPoints src/Dodge/Data/Creature/Misc.hs 89;" f _pjDetonatorID src/Dodge/Data/Projectile.hs 30;" f _pjDir src/Dodge/Data/Projectile.hs 20;" f _pjID src/Dodge/Data/Projectile.hs 23;" f @@ -3118,7 +3111,7 @@ _swPos src/Dodge/Data/Shockwave.hs 21;" f _swPush src/Dodge/Data/Shockwave.hs 24;" f _swRad src/Dodge/Data/Shockwave.hs 22;" f _swTimer src/Dodge/Data/Shockwave.hs 26;" f -_swarm src/Dodge/Data/Creature/State.hs 41;" f +_swarm src/Dodge/Data/Creature/State.hs 28;" 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 @@ -3357,7 +3350,7 @@ addToTrunk src/TreeHelp.hs 156;" f addWarningTerminal src/Dodge/Room/Warning.hs 36;" f addZ src/Geometry/Vector3D.hs 89;" f adjustIMZone src/Dodge/Base.hs 81;" f -advanceScrollAmount src/Dodge/Update.hs 415;" f +advanceScrollAmount src/Dodge/Update.hs 416;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 44;" f aimDelaySweep src/Dodge/Render/Picture.hs 264;" f @@ -3389,21 +3382,21 @@ angleVV3 src/Geometry/Vector3D.hs 122;" f annoToRoomTree src/Dodge/Annotation.hs 17;" f anyUnusedSpot src/Dodge/PlacementSpot.hs 66;" f anythingHitCirc src/Dodge/Base/Collide.hs 247;" f -applyCME src/Dodge/HeldUse.hs 366;" f +applyCME src/Dodge/HeldUse.hs 364;" f applyCreatureDamage src/Dodge/Creature/Damage.hs 12;" f applyEventIO src/Loop.hs 89;" f applyGravityPU src/Dodge/Projectile/Update.hs 56;" f applyIndividualDamage src/Dodge/Creature/Damage.hs 47;" f -applyInvLock src/Dodge/HeldUse.hs 425;" f +applyInvLock src/Dodge/HeldUse.hs 423;" f applyMagnetsToBul src/Dodge/Bullet.hs 30;" f -applyPastDamages src/Dodge/Creature/State.hs 140;" f +applyPastDamages src/Dodge/Creature/State.hs 135;" f applyPiercingDamage src/Dodge/Creature/Damage.hs 52;" f applyPosition src/Sound.hs 111;" f -applyRecoil src/Dodge/HeldUse.hs 457;" f +applyRecoil src/Dodge/HeldUse.hs 455;" f applyResFactor src/Dodge/Data/Config.hs 110;" f applySetTerminalString src/Dodge/Debug/Terminal.hs 81;" f -applySidePush src/Dodge/HeldUse.hs 556;" f -applySoundCME src/Dodge/HeldUse.hs 447;" f +applySidePush src/Dodge/HeldUse.hs 554;" f +applySoundCME src/Dodge/HeldUse.hs 445;" f applyTerminalCommand src/Dodge/Debug/Terminal.hs 28;" f applyTerminalCommandArguments src/Dodge/Debug/Terminal.hs 42;" f applyTerminalString src/Dodge/Debug/Terminal.hs 22;" f @@ -3411,7 +3404,7 @@ applyToNode src/TreeHelp.hs 64;" f applyToRandomNode src/TreeHelp.hs 150;" f applyToSubforest src/TreeHelp.hs 77;" f applyToSubtree src/TreeHelp.hs 70;" f -applyTorqueCME src/Dodge/HeldUse.hs 567;" f +applyTorqueCME src/Dodge/HeldUse.hs 565;" f applyWorldConfig src/Dodge/Config/Update.hs 38;" f aquamarine src/Color.hs 23;" f arHUD src/Dodge/Item/Scope.hs 134;" f @@ -3428,7 +3421,7 @@ argumentHelp src/Dodge/Terminal.hs 151;" f armourChaseCrit src/Dodge/Creature/ArmourChase.hs 35;" f armouredChasers src/Dodge/Room/Boss.hs 63;" f armouredCorridor src/Dodge/Room/RoadBlock.hs 20;" f -arms src/Dodge/Creature/Picture.hs 77;" f +arms src/Dodge/Creature/Picture.hs 69;" f arrow src/Picture/Composite.hs 19;" f arrowPath src/Picture/Composite.hs 8;" f assignHotkey src/Dodge/AssignHotkey.hs 13;" f @@ -3471,6 +3464,7 @@ bangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 517;" f bangStick src/Dodge/Item/Held/Stick.hs 15;" f barPP src/Dodge/Room/Foreground.hs 236;" f barrel src/Dodge/Creature/Inanimate.hs 17;" f +barrelShape src/Dodge/Render/ShapePicture.hs 46;" f baseAMRShape src/Dodge/Item/Draw/SPic.hs 407;" f baseBlockPane src/Dodge/Placement/Instance/Wall.hs 86;" f baseCI src/Dodge/Item/Grammar.hs 193;" f @@ -3480,21 +3474,21 @@ baseFloorTileSize src/Tile.hs 45;" f baseRifleShape src/Dodge/Item/Draw/SPic.hs 316;" f baseRodShape src/Dodge/Item/Draw/SPic.hs 404;" f baseSMGShape src/Dodge/Item/Draw/SPic.hs 384;" f -baseShoulder src/Dodge/Creature/Picture.hs 133;" f +baseShoulder src/Dodge/Creature/Picture.hs 125;" f baseStickShape src/Dodge/Item/Draw/SPic.hs 290;" f baseStickShapeX src/Dodge/Item/Draw/SPic.hs 283;" f -baseStickSpread src/Dodge/HeldUse.hs 284;" f +baseStickSpread src/Dodge/HeldUse.hs 282;" f baseTriggerType src/Dodge/BaseTriggerType.hs 12;" f baseTriggerType src/Dodge/Item/TriggerType.hs 5;" f basicAttentionUpdate src/Dodge/Creature/Perception.hs 128;" f basicAwarenessUpdate src/Dodge/Creature/Perception.hs 38;" f basicCrPict src/Dodge/Creature/Picture.hs 28;" f -basicCrShape src/Dodge/Creature/Picture.hs 36;" f +basicCrShape src/Dodge/Creature/Picture.hs 34;" f basicDrawBeam src/Dodge/Beam/Draw.hs 11;" f basicItemDisplay src/Dodge/Item/Display.hs 22;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineUpdate src/Dodge/Machine.hs 13;" f -basicMuzFlare src/Dodge/HeldUse.hs 710;" f +basicMuzFlare src/Dodge/HeldUse.hs 708;" f basicTerminal src/Dodge/Terminal.hs 35;" f battery src/Dodge/Item/Ammo.hs 62;" f batteryPack src/Dodge/Item/Equipment.hs 46;" f @@ -3503,16 +3497,16 @@ beltMag src/Dodge/Item/Ammo.hs 38;" f bfsNodePoints src/Dodge/Path.hs 58;" f bfsThenReturn src/Dodge/Creature/ReaderUpdate.hs 218;" f bgateCalc src/Dodge/Inventory/SelectionList.hs 114;" f -bgunSound src/Dodge/HeldUse.hs 510;" f +bgunSound src/Dodge/HeldUse.hs 508;" f bindFBO src/Render.hs 244;" f bingate src/Dodge/Item/Scope.hs 109;" f black src/Color.hs 27;" f blank src/Picture/Base.hs 59;" f blinkAcrossChallenge src/Dodge/Room/BlinkAcross.hs 14;" f -blinkActionFail src/Dodge/Creature/Action/Blink.hs 89;" f +blinkActionFail src/Dodge/Creature/Action/Blink.hs 88;" f blinkActionMousePos src/Dodge/Creature/Action/Blink.hs 23;" f blinkDistortions src/Dodge/Creature/Action/Blink.hs 44;" f -blinkShockwave src/Dodge/Creature/Action/Blink.hs 80;" f +blinkShockwave src/Dodge/Creature/Action/Blink.hs 79;" f blinker src/Dodge/Item/Held/Utility.hs 30;" f blinker src/Dodge/Item/Weapon/Utility.hs 14;" f blipAt src/Dodge/RadarSweep.hs 77;" f @@ -3550,7 +3544,7 @@ branchRectWith src/Dodge/Room/Branch.hs 15;" f branchWith src/Dodge/Room/Room.hs 67;" f bright src/Color.hs 120;" f brightX src/Color.hs 116;" f -btSPic src/Dodge/Render/ShapePicture.hs 114;" f +btSPic src/Dodge/Render/ShapePicture.hs 106;" f bufferEBO src/Shader/Bind.hs 28;" f bufferPokedVBO src/Shader/Bind.hs 19;" f bufferShaderLayers src/Shader/Bind.hs 36;" f @@ -3570,7 +3564,7 @@ calcTexCoord src/Tile.hs 19;" f canSee src/Dodge/Base/Collide.hs 233;" f canSeeIndirect src/Dodge/Base/Collide.hs 240;" f cancelExamineInventory src/Dodge/ItEffect.hs 47;" f -cancelExamineInventory' src/Dodge/Item/BackgroundEffect.hs 43;" f +cancelExamineInventory src/Dodge/Item/BackgroundEffect.hs 22;" f cardEightVec src/Dodge/Base/CardinalPoint.hs 16;" f cardList src/Dodge/Base/CardinalPoint.hs 6;" f cardVec src/Dodge/Base/CardinalPoint.hs 9;" f @@ -3583,7 +3577,7 @@ centerVaultRoom src/Dodge/Room/Procedural.hs 289;" f centroid src/Geometry/Polygon.hs 130;" f centroidNum src/Geometry/Polygon.hs 133;" f chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f -chainLinkOrientation src/Dodge/Creature/State.hs 271;" f +chainLinkOrientation src/Dodge/Creature/State.hs 270;" f chainPairs src/Geometry.hs 359;" f changeSwapOther src/Dodge/Inventory.hs 144;" f changeSwapSel src/Dodge/Inventory.hs 137;" f @@ -3598,21 +3592,21 @@ chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 31;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 37;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkConnection src/Dodge/Inventory/Swap.hs 64;" f -checkDeath src/Dodge/Creature/State.hs 76;" f -checkEndGame src/Dodge/Update.hs 704;" f +checkDeath src/Dodge/Creature/State.hs 78;" f +checkEndGame src/Dodge/Update.hs 705;" 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 17;" f checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f -checkTermDist src/Dodge/Update.hs 313;" f +checkTermDist src/Dodge/Update.hs 314;" f checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f chemFuelPouch src/Dodge/Item/Ammo.hs 68;" f chooseCursorBorders src/Dodge/Render/List.hs 156;" f chooseEquipPosition src/Dodge/Inventory/RBList.hs 36;" f -chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 39;" f +chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 36;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 42;" f chooseMovementLtAuto src/Dodge/CreatureEffect.hs 105;" f chooseMovementPistol src/Dodge/Humanoid.hs 203;" f @@ -3628,7 +3622,7 @@ circle src/Picture/Base.hs 180;" f circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f circleSolid src/Picture/Base.hs 164;" f circleSolidCol src/Picture/Base.hs 168;" f -clClSpringVel src/Dodge/Update.hs 758;" f +clClSpringVel src/Dodge/Update.hs 759;" f clZoneSize src/Dodge/Zone/Size.hs 3;" f clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f clampPath src/Dodge/Room/Procedural.hs 166;" f @@ -3654,7 +3648,7 @@ closestCreatureID src/Dodge/Debug.hs 116;" f closestPointOnLine src/Geometry/Intersect.hs 251;" f closestPointOnLineParam src/Geometry/Intersect.hs 267;" f closestPointOnSeg src/Geometry/Intersect.hs 282;" f -cloudEffect src/Dodge/Update.hs 725;" f +cloudEffect src/Dodge/Update.hs 726;" f cloudPoisonDamage src/Dodge/Update/Cloud.hs 10;" f clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f @@ -3674,7 +3668,7 @@ collidePointWallsFilter src/Dodge/Base/Collide.hs 108;" f collisionDebugItem src/Dodge/Debug.hs 47;" f color src/Picture/Base.hs 108;" f colorLamp src/Dodge/Creature/Lamp.hs 10;" f -colorSH src/Shape.hs 236;" f +colorSH src/Shape.hs 237;" f combinationsDotGraph src/Dodge/Combine/Graph.hs 95;" f combinationsGraph src/Dodge/Combine/Graph.hs 74;" f combinationsOf src/Multiset.hs 46;" f @@ -3710,13 +3704,13 @@ convexHull src/Geometry/Polygon.hs 104;" f convexHullSafe src/Geometry/Polygon.hs 111;" f convexPolysOverlap src/Geometry/ConvexPoly.hs 50;" f copier src/Dodge/Item/Scope.hs 88;" f +copierItemUpdate src/Dodge/Creature/State.hs 176;" f copierItemUpdate src/Dodge/ItEffect.hs 37;" f -copierItemUpdate' src/Dodge/Item/BackgroundEffect.hs 33;" f copyItemToFloor src/Dodge/FloorItem.hs 18;" f copyItemToFloorID src/Dodge/FloorItem.hs 22;" f corDoor src/Dodge/Room/Room.hs 376;" f cornerList src/Preload/Render.hs 195;" f -corpseOrGib src/Dodge/Creature/State.hs 106;" f +corpseOrGib src/Dodge/Creature/State.hs 107;" f corridor src/Dodge/Room/Corridor.hs 17;" f corridorBoss src/Dodge/LockAndKey.hs 133;" f corridorN src/Dodge/Room/Corridor.hs 52;" f @@ -3724,9 +3718,9 @@ corridorWallN src/Dodge/Room/Corridor.hs 71;" f crAdd src/Dodge/Room/RezBox.hs 104;" f crAwayFromPost src/Dodge/Creature/Test.hs 81;" f crBlips src/Dodge/RadarSweep.hs 87;" f -crCamouflage src/Dodge/Creature/Picture.hs 33;" f +crCamouflage src/Dodge/Creature/Picture.hs 31;" f crCanSeeCr src/Dodge/Creature/Test.hs 50;" f -crCrSpring src/Dodge/Update.hs 776;" f +crCrSpring src/Dodge/Update.hs 777;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 57;" f crDexterity src/Dodge/Creature/Statistics.hs 14;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 38;" f @@ -3754,10 +3748,10 @@ crRad src/Dodge/Creature/Radius.hs 7;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 71;" f crSetRoots src/Dodge/Inventory/Location.hs 48;" f crShape src/Dodge/Creature/Shape.hs 8;" f -crSpring src/Dodge/Update.hs 771;" f +crSpring src/Dodge/Update.hs 772;" f crStratConMatches src/Dodge/Creature/Test.hs 76;" f crStrength src/Dodge/Creature/Statistics.hs 24;" f -crUpdate src/Dodge/Creature/State.hs 60;" f +crUpdate src/Dodge/Creature/State.hs 62;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 42;" f crVocalizationSound src/Dodge/Creature/Vocalization.hs 13;" f @@ -3775,14 +3769,14 @@ createItemYou src/Dodge/Inventory/Add.hs 95;" f createLightMap src/Render.hs 26;" f createNewArc src/Dodge/Tesla/Arc.hs 90;" f createPathGrid src/Dodge/Room/Path.hs 21;" f -createProjectile src/Dodge/HeldUse.hs 1277;" f -createProjectileR src/Dodge/HeldUse.hs 1242;" f +createProjectile src/Dodge/HeldUse.hs 1275;" f +createProjectileR src/Dodge/HeldUse.hs 1240;" f createShell src/Dodge/Projectile/Create.hs 23;" f -createShieldWall' src/Dodge/Item/BackgroundEffect.hs 60;" f +createShieldWall src/Dodge/Item/BackgroundEffect.hs 39;" f createUnusedLinkPos src/Dodge/Tree/Shift.hs 117;" f createWall src/Dodge/Wall/Create.hs 8;" f creatureDisplayText src/Dodge/Creature/Picture/Awareness.hs 11;" f -creatureShootLaser src/Dodge/HeldUse.hs 823;" f +creatureShootLaser src/Dodge/HeldUse.hs 821;" f creatureTurnTo src/Dodge/Creature/Impulse/Movement.hs 52;" f creatureTurnToward src/Dodge/Creature/Impulse/Movement.hs 73;" f creatureTurnTowardDir src/Dodge/Creature/Impulse/Movement.hs 62;" f @@ -3802,7 +3796,7 @@ crystalDebris src/Dodge/Block/Debris.hs 176;" f crystalLine src/Dodge/Placement/Instance/Wall.hs 55;" f crystalWallDamage src/Dodge/Wall/DamageEffect.hs 74;" f cubeShape src/Dodge/Block/Debris.hs 196;" f -cullPoint src/Dodge/Render/ShapePicture.hs 76;" f +cullPoint src/Dodge/Render/ShapePicture.hs 68;" f cullPretty src/AesonHelp.hs 14;" f curveAroundField src/Dodge/Magnet.hs 18;" f curveLeftField src/Dodge/Magnet.hs 13;" f @@ -3823,11 +3817,11 @@ cycleOptions src/Dodge/Menu/Option.hs 77;" f cycleR src/DoubleStack.hs 32;" f cylinderIndices src/Shader/Poke.hs 382;" f cylinderOnSeg src/Geometry.hs 122;" f -cylinderPoly src/Shape.hs 86;" f +cylinderPoly src/Shape.hs 87;" f cylinderRoundIndices src/Shader/Poke.hs 389;" f dShadCol src/Dodge/Render/List.hs 215;" f damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f -damToExpBarrel src/Dodge/Barreloid.hs 56;" f +damToExpBarrel src/Dodge/Barreloid.hs 52;" f damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f damageCircle src/Dodge/DamageCircle.hs 12;" f damageCircle src/Dodge/EnergyBall.hs 104;" f @@ -3853,14 +3847,14 @@ dark src/Color.hs 108;" f darkenBackground src/Dodge/Render/MenuScreen.hs 52;" f dbArg src/Dodge/Base.hs 165;" f dbArgChain src/Dodge/Base.hs 170;" f -dbwMuzzles src/Dodge/HeldUse.hs 287;" f +dbwMuzzles src/Dodge/HeldUse.hs 285;" f deZoneIX src/Dodge/Zoning/Base.hs 89;" f deZoneWall src/Dodge/Zoning/Wall.hs 70;" f deadEndRoom src/Dodge/Room/Room.hs 235;" f -deadFeet src/Dodge/Creature/Picture.hs 73;" f -deadRot src/Dodge/Creature/Picture.hs 89;" f -deadScalp src/Dodge/Creature/Picture.hs 86;" f -deadUpperBody src/Dodge/Creature/Picture.hs 130;" f +deadFeet src/Dodge/Creature/Picture.hs 65;" f +deadRot src/Dodge/Creature/Picture.hs 81;" f +deadScalp src/Dodge/Creature/Picture.hs 78;" f +deadUpperBody src/Dodge/Creature/Picture.hs 122;" f debrisSize src/Dodge/Block/Debris.hs 111;" f debugDraw src/Dodge/Debug/Picture.hs 149;" f debugDraw' src/Dodge/Debug/Picture.hs 160;" f @@ -3942,7 +3936,6 @@ 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 111;" 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 @@ -3973,7 +3966,7 @@ detector src/Dodge/Item/Held/Utility.hs 27;" f detectorColor src/Dodge/Item/Draw/SPic.hs 453;" f detectorEffect src/Dodge/Item/Weapon/Radar.hs 20;" f detectorInfo src/Dodge/Item/Info.hs 224;" f -determineProjectileTracking src/Dodge/HeldUse.hs 1225;" f +determineProjectileTracking src/Dodge/HeldUse.hs 1223;" f diagonalLinesRect src/Dodge/Room/Foreground.hs 52;" f did src/Dodge/Item/InvSize.hs 54;" f diffAngles src/Geometry.hs 204;" f @@ -3993,7 +3986,7 @@ displayFrameTicks src/Dodge/Render/Picture.hs 45;" f displayFreeSlots src/Dodge/DisplayInventory.hs 198;" f displayIndents src/Dodge/DisplayInventory.hs 110;" f displayPulse src/Dodge/Inventory/SelectionList.hs 175;" f -displayTerminalLineString src/Dodge/Update.hs 442;" f +displayTerminalLineString src/Dodge/Update.hs 443;" f dist src/Geometry/Vector.hs 190;" f dist3 src/Geometry/Vector3D.hs 101;" f divTo src/Geometry/Zone.hs 6;" f @@ -4006,7 +3999,7 @@ dmType src/Dodge/Damage.hs 34;" f doAfterPlacement src/Dodge/Layout.hs 86;" f doAfterPlacements src/Dodge/Layout.hs 83;" f doAimTwist src/Dodge/Creature/YourControl.hs 140;" f -doAnyEquipmentEffect src/Dodge/Creature/State.hs 188;" f +doAnyEquipmentEffect src/Dodge/Creature/State.hs 187;" f doArcStep src/Dodge/Tesla/Arc.hs 135;" f doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBlBl src/Dodge/BlBl.hs 5;" f @@ -4022,7 +4015,7 @@ doCrImp src/Dodge/CreatureEffect.hs 28;" f doCrWdAc src/Dodge/CreatureEffect.hs 77;" f doCrWdImp src/Dodge/CreatureEffect.hs 16;" f doCrWdWd src/Dodge/CreatureEffect.hs 20;" f -doDamage src/Dodge/Creature/State.hs 134;" f +doDamage src/Dodge/Creature/State.hs 129;" f doDeathToggle src/Dodge/WorldEffect.hs 98;" f doDeathTriggers src/Dodge/WorldEffect.hs 93;" f doDebugTest src/Dodge/Update/Input/DebugTest.hs 22;" f @@ -4038,9 +4031,9 @@ doDrag src/Dodge/Update/Input/InGame.hs 107;" f doDrawing src/Dodge/Render.hs 35;" f doDrawing' src/Dodge/Render.hs 46;" f doFloatFloat src/Dodge/FloatFunction.hs 5;" f -doGenFloat src/Dodge/HeldUse.hs 1183;" f +doGenFloat src/Dodge/HeldUse.hs 1181;" f doGravityPU src/Dodge/Projectile/Update.hs 50;" f -doHeldUseEffect src/Dodge/HeldUse.hs 312;" f +doHeldUseEffect src/Dodge/HeldUse.hs 310;" f doInPlacements src/Dodge/Layout.hs 92;" f doIndividualPlacements src/Dodge/Layout.hs 117;" f doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 28;" f @@ -4089,7 +4082,7 @@ doWdCrBl src/Dodge/CreatureEffect.hs 37;" f doWdCrCr src/Dodge/CreatureEffect.hs 12;" f doWdP2f src/Dodge/WdP2f.hs 12;" f doWdWd src/Dodge/WorldEffect.hs 29;" f -doWorldEvents src/Dodge/Update.hs 425;" f +doWorldEvents src/Dodge/Update.hs 426;" f doWorldPos src/Dodge/WorldPos.hs 7;" f door src/Dodge/Room/Door.hs 13;" f doorBetween src/Dodge/Placement/Instance/Door.hs 39;" f @@ -4103,7 +4096,7 @@ doublePair src/Geometry.hs 161;" f doublePairSet src/Geometry.hs 165;" f doubleTreeToIndentList src/Dodge/DoubleTree.hs 72;" f doubleV2 src/Geometry.hs 168;" f -drawARHUD src/Dodge/Creature/State.hs 298;" f +drawARHUD src/Dodge/Creature/State.hs 297;" f drawAimSweep src/Dodge/Render/Picture.hs 271;" f drawAllShadows src/Dodge/Shadows.hs 5;" f drawBaseMachine src/Dodge/Machine/Draw.hs 57;" f @@ -4138,7 +4131,7 @@ drawDragSelected src/Dodge/Render/HUD.hs 133;" f drawDragSelecting src/Dodge/Render/HUD.hs 150;" f drawEmptySet src/Dodge/Render/Picture.hs 124;" f drawEnergyBall src/Dodge/EnergyBall/Draw.hs 7;" f -drawEquipment src/Dodge/Creature/Picture.hs 144;" f +drawEquipment src/Dodge/Creature/Picture.hs 136;" f drawExamineInventory src/Dodge/Render/HUD.hs 196;" f drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f drawFarWallDetect src/Dodge/Debug/Picture.hs 264;" f @@ -4230,9 +4223,9 @@ drawWlIDs src/Dodge/Debug/Picture.hs 367;" f drawZoneCol src/Dodge/Debug/Picture.hs 142;" f drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 279;" f droneLauncher src/Dodge/Item/Weapon/Drone.hs 11;" f -dropByState src/Dodge/Creature/State.hs 127;" f +dropAll src/Dodge/Creature/State.hs 126;" f dropExcept src/Dodge/Creature/Action.hs 166;" f -dropInventoryPath src/Dodge/HeldUse.hs 1356;" f +dropInventoryPath src/Dodge/HeldUse.hs 1354;" f dropItem src/Dodge/Creature/Action.hs 172;" f dropper src/Dodge/Item/Scope.hs 76;" f drumMag src/Dodge/Item/Ammo.hs 33;" f @@ -4301,11 +4294,11 @@ expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f expireAndDamage src/Dodge/Bullet.hs 185;" f explodeShell src/Dodge/Projectile/Update.hs 245;" f explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 427;" f -explosiveBarrel src/Dodge/Creature/Inanimate.hs 29;" f +explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f extTrigLitPos src/Dodge/Placement/Instance/Button.hs 84;" f extendAway src/Dodge/Placement/Instance/LightSource.hs 200;" f extendConeToScreenEdge src/Dodge/Debug/Picture.hs 82;" f -extraPics src/Dodge/Render/ShapePicture.hs 81;" f +extraPics src/Dodge/Render/ShapePicture.hs 73;" f extraWeaponLinks src/Dodge/Item/Grammar.hs 126;" f extraWeaponLinksBelow src/Dodge/Item/Grammar.hs 135;" f extractRoomPos src/Dodge/RoomPos.hs 6;" f @@ -4317,7 +4310,7 @@ fallSmallBounce' src/Dodge/Prop/Moving.hs 35;" f fallSmallBounceDamage src/Dodge/Prop/Moving.hs 12;" f farWallDistDirection src/Dodge/Update/Camera.hs 233;" f fdiv src/ShortShow.hs 26;" f -feet src/Dodge/Creature/Picture.hs 55;" f +feet src/Dodge/Creature/Picture.hs 49;" f ffoldM src/Framebuffer/Update.hs 79;" f filter3 src/FoldableHelp.hs 76;" f filterSectionsPair src/Dodge/DisplayInventory.hs 167;" f @@ -4339,7 +4332,7 @@ firstWorldLoad appDodge/Main.hs 77;" f fixedCoordPictures src/Dodge/Render/Picture.hs 17;" f fixedSizePicClampArrow src/Dodge/Picture/SizeInvariant.hs 57;" f flFlicker src/Dodge/Flame.hs 50;" f -flameMuzzles src/Dodge/HeldUse.hs 290;" f +flameMuzzles src/Dodge/HeldUse.hs 288;" f flameShield src/Dodge/Item/Equipment.hs 33;" f flameSize src/Dodge/Flame/Size.hs 5;" f flameSpitter src/Dodge/Item/Held/SprayGuns.hs 23;" f @@ -4347,7 +4340,7 @@ flameThrower src/Dodge/Item/Held/SprayGuns.hs 64;" f flameTorrent src/Dodge/Item/Held/SprayGuns.hs 32;" f flameWall src/Dodge/Item/Held/SprayGuns.hs 48;" f flamerPic src/Dodge/Item/Draw/SPic.hs 387;" f -flareCircleAt src/Dodge/HeldUse.hs 691;" f +flareCircleAt src/Dodge/HeldUse.hs 689;" f flatItemCombinations src/Dodge/Combine/Combinations.hs 51;" f flatLookupItems src/Dodge/Combine.hs 39;" f flatShield src/Dodge/Item/Held/Utility.hs 17;" f @@ -4368,11 +4361,11 @@ flockPointTargetR src/Dodge/Creature/Boid.hs 267;" f flockToPointUsing src/Dodge/Creature/Boid.hs 215;" f flockToPointUsing' src/Dodge/Creature/Boid.hs 228;" f floorItemPickupInfo src/Dodge/Render/HUD.hs 229;" f -floorItemSPic src/Dodge/Render/ShapePicture.hs 107;" f +floorItemSPic src/Dodge/Render/ShapePicture.hs 99;" f floorWire src/Dodge/Wire.hs 13;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 429;" f foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 425;" f -foldCr src/Dodge/Creature/State.hs 46;" f +foldCr src/Dodge/Creature/State.hs 48;" f foldPairs src/ListHelp.hs 37;" f foldrWhileArb src/ListHelp.hs 110;" f followImpulse src/Dodge/Creature/Impulse.hs 38;" f @@ -4380,7 +4373,6 @@ followImpulses src/Dodge/Creature/Impulse.hs 32;" f foot1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 375;" f foot2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 391;" f foot3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 475;" f -footstepSideEffect src/Dodge/Creature/State/WalkCycle.hs 25;" f forbidFlee src/Dodge/Creature/Boid.hs 43;" f forceElements src/StrictHelp.hs 10;" f forceField src/Dodge/Wall/ForceField.hs 7;" f @@ -4416,7 +4408,7 @@ gameRoomViewpoints src/Dodge/Viewpoints.hs 35;" f gameRoomsFromRooms src/Dodge/Layout.hs 158;" f gameplayMenu src/Dodge/Menu.hs 134;" f gameplayMenuOptions src/Dodge/Menu.hs 137;" f -gasType src/Dodge/HeldUse.hs 1139;" f +gasType src/Dodge/HeldUse.hs 1137;" f generateGenParams src/Dodge/LevelGen/LevelStructure.hs 22;" f generateGraphs src/Dodge/LevelGen.hs 39;" f generateLayout src/Dodge/Layout/Generate.hs 10;" f @@ -4431,10 +4423,10 @@ getAimZoom src/Dodge/Update/Camera.hs 135;" f getAmmoLinks src/Dodge/Item/Grammar.hs 142;" f getArguments src/Dodge/Update/Scroll.hs 179;" f getArguments' src/Dodge/Update/Scroll.hs 167;" f -getAttachedSFLink src/Dodge/HeldUse.hs 761;" f +getAttachedSFLink src/Dodge/HeldUse.hs 759;" f getAutoSpringLinks src/Dodge/Item/Grammar.hs 121;" f getAvailableListLines src/Dodge/SelectionList.hs 10;" f -getBulletType src/Dodge/HeldUse.hs 880;" f +getBulletType src/Dodge/HeldUse.hs 878;" f getCloseObj src/Dodge/Update/Input/InGame.hs 515;" f getCommands src/Dodge/Terminal.hs 117;" f getCommandsHelp src/Dodge/Terminal.hs 75;" f @@ -4442,17 +4434,17 @@ getCrMoveSpeed src/Dodge/Creature/Statistics.hs 45;" f getDamageCoding src/Dodge/Terminal.hs 177;" f getDistortions src/Dodge/Render.hs 383;" f getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f -getGrenadeHitEffect src/Dodge/HeldUse.hs 1270;" f +getGrenadeHitEffect src/Dodge/HeldUse.hs 1268;" f getInventoryPath src/Dodge/Inventory/Path.hs 8;" f getItemValue src/Dodge/Inventory/SelectionList.hs 143;" f -getLaserColor src/Dodge/HeldUse.hs 707;" f -getLaserDamage src/Dodge/HeldUse.hs 704;" f -getLaserPhaseV src/Dodge/HeldUse.hs 701;" f +getLaserColor src/Dodge/HeldUse.hs 705;" f +getLaserDamage src/Dodge/HeldUse.hs 702;" f +getLaserPhaseV src/Dodge/HeldUse.hs 699;" f getLinksOfType src/Dodge/RoomLink.hs 39;" f getMaxLinesTM src/Dodge/Terminal/Type.hs 11;" f -getMenuMouseContext src/Dodge/Update.hs 385;" f +getMenuMouseContext src/Dodge/Update.hs 386;" f getNodePos src/Dodge/Path.hs 31;" f -getPJStabiliser src/Dodge/HeldUse.hs 1262;" f +getPJStabiliser src/Dodge/HeldUse.hs 1260;" f getPretty src/AesonHelp.hs 8;" f getPromptTM src/Dodge/Terminal/Type.hs 8;" f getRootItemBounds src/Dodge/Render/HUD.hs 95;" f @@ -4542,23 +4534,23 @@ heightWallPS src/Dodge/Placement/Instance/Wall.hs 13;" f heldAimStance src/Dodge/Item/AimStance.hs 17;" f heldAimZoom src/Dodge/Update/Camera.hs 140;" f heldEffect src/Dodge/HeldUse.hs 68;" f -heldEffectMuzzles src/Dodge/HeldUse.hs 147;" f +heldEffectMuzzles src/Dodge/HeldUse.hs 145;" f heldEffectNoHammerCheck src/Dodge/HeldUse.hs 76;" f heldHandlePos src/Dodge/Item/HeldOffset.hs 95;" f heldInfo src/Dodge/Item/Info.hs 90;" f heldItemAmmoSlots src/Dodge/Item/AmmoSlots.hs 18;" f heldItemBulkiness src/Dodge/Creature/YourControl.hs 177;" f -heldItemInvLock src/Dodge/HeldUse.hs 440;" f -heldItemMuzVel src/Dodge/HeldUse.hs 1025;" f -heldItemMuzzles src/Dodge/HeldUse.hs 170;" f +heldItemInvLock src/Dodge/HeldUse.hs 438;" f +heldItemMuzVel src/Dodge/HeldUse.hs 1023;" f +heldItemMuzzles src/Dodge/HeldUse.hs 168;" f heldItemOffset src/Dodge/Item/HeldOffset.hs 72;" f heldItemOrient2D src/Dodge/Item/HeldOffset.hs 29;" f heldItemRelativeOrient src/Dodge/Item/HeldOffset.hs 34;" f -heldItemRifling src/Dodge/HeldUse.hs 1069;" f +heldItemRifling src/Dodge/HeldUse.hs 1067;" f heldItemSPic src/Dodge/Item/Draw/SPic.hs 225;" f heldItemWeight src/Dodge/Creature/Statistics.hs 71;" f heldPositionInfo src/Dodge/Item/Info.hs 240;" f -heldTorqueAmount src/Dodge/HeldUse.hs 583;" f +heldTorqueAmount src/Dodge/HeldUse.hs 581;" f heldTriggerType src/Dodge/BaseTriggerType.hs 17;" f heldUseDelay src/Dodge/Item/UseDelay.hs 19;" f helpCommand src/Dodge/Terminal.hs 66;" f @@ -4625,7 +4617,6 @@ insertWallInZones src/Dodge/Wall/Zone.hs 20;" f insertWalls src/Dodge/Placement/PlaceSpot/Block.hs 117;" f insertWithNewKeys src/IntMapHelp.hs 70;" f interactWithCloseObj src/Dodge/SelectedClose.hs 9;" f -internalCreatureUpdate src/Dodge/Creature/State.hs 121;" f interpWith src/Dodge/Creature/Boid.hs 11;" f intersectCircSeg src/Geometry/Intersect.hs 305;" f intersectCircSegFirst src/Geometry/Intersect.hs 323;" f @@ -4653,16 +4644,16 @@ invCursorParams src/Dodge/ListDisplayParams.hs 36;" f invDP src/Dodge/ListDisplayParams.hs 30;" f invDimColor src/Dodge/DisplayInventory.hs 192;" f invHead src/Dodge/Render/HUD.hs 405;" f -invItemLocUpdate src/Dodge/Creature/State.hs 177;" f +invItemLocUpdate src/Dodge/Creature/State.hs 160;" f invLDT src/Dodge/Item/Grammar.hs 279;" f -invRootItemEffs src/Dodge/Creature/State.hs 170;" f +invRootItemEffs src/Dodge/Creature/State.hs 153;" f invRootMap src/Dodge/Item/Grammar.hs 288;" f invRootTrees src/Dodge/Item/Grammar.hs 309;" f invSelectionItem src/Dodge/Inventory/SelectionList.hs 32;" f 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 163;" f +invSideEff src/Dodge/Creature/State.hs 149;" f invSize src/Dodge/Inventory/CheckSlots.hs 30;" f inventoryX src/Dodge/Creature.hs 114;" f inverseSelNumPos src/Dodge/SelectionSections.hs 228;" f @@ -4675,12 +4666,11 @@ invertIntMap src/Multiset.hs 67;" f invertInventoryToMap src/Dodge/Combine.hs 57;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 21;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f -isAmmoIntLink src/Dodge/HeldUse.hs 717;" f +isAmmoIntLink src/Dodge/HeldUse.hs 715;" f isAnimate src/Dodge/Creature/Test.hs 142;" f isCognizant src/Dodge/Creature/Perception.hs 106;" f isConnected src/Dodge/Inventory/Swap.hs 74;" f isElectrical src/Dodge/Machine/Update.hs 80;" f -isFrictionless src/Dodge/Creature/State.hs 433;" f isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 191;" f isInLnk src/Dodge/PlacementSpot.hs 160;" f isJust' src/MaybeHelp.hs 29;" f @@ -4690,7 +4680,7 @@ isLeftOfA src/Geometry.hs 192;" f isNothing' src/MaybeHelp.hs 33;" f isOnSeg src/Geometry.hs 236;" f isOutLnk src/Dodge/PlacementSpot.hs 164;" f -isOverTerminalScreen src/Dodge/Update.hs 396;" f +isOverTerminalScreen src/Dodge/Update.hs 397;" f isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f isRHS src/Geometry/LHS.hs 24;" f isUnusedLnk src/Dodge/PlacementSpot.hs 61;" f @@ -4701,10 +4691,9 @@ isVowel src/StringHelp.hs 8;" f isWalkable src/Dodge/Base/Collide.hs 226;" f isoMatrix src/MatrixHelper.hs 30;" f isotriBWH src/Geometry/Polygon.hs 20;" f -itBackgroundEffect src/Dodge/Item/BackgroundEffect.hs 23;" f itDim src/Dodge/Item/InvSize.hs 21;" f -itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 88;" f -itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 85;" f +itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 67;" f +itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 64;" f itInvHeight src/Dodge/Item/InvSize.hs 11;" f itUseCondition src/Dodge/ItemUseCondition.hs 6;" f itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 12;" f @@ -4714,7 +4703,7 @@ itemBlips src/Dodge/RadarSweep.hs 93;" f itemBulkiness src/Dodge/Creature/YourControl.hs 172;" f itemCombinations src/Dodge/Combine/Combinations.hs 56;" f itemCombinationsEdges src/Dodge/Combine/Graph.hs 61;" f -itemDetectorEffect src/Dodge/HeldUse.hs 767;" f +itemDetectorEffect src/Dodge/HeldUse.hs 765;" f itemDisplay src/Dodge/Inventory/SelectionList.hs 49;" f itemEquipPict src/Dodge/Item/Draw.hs 18;" f itemExternalValue src/Dodge/Inventory/SelectionList.hs 84;" f @@ -4726,9 +4715,9 @@ itemFromHeldType src/Dodge/Item/Held.hs 25;" f itemInfo src/Dodge/Item/Info.hs 20;" f itemInternalValue src/Dodge/Item/Display.hs 33;" f itemInvColor src/Dodge/Item/InventoryColor.hs 9;" f -itemInvLock src/Dodge/HeldUse.hs 435;" f -itemMuzzles src/Dodge/HeldUse.hs 161;" f -itemRandomOffset src/Dodge/HeldUse.hs 962;" f +itemInvLock src/Dodge/HeldUse.hs 433;" f +itemMuzzles src/Dodge/HeldUse.hs 159;" f +itemRandomOffset src/Dodge/HeldUse.hs 960;" f 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 @@ -4736,7 +4725,7 @@ itemScan src/Dodge/Item/Scope.hs 63;" 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 +itemSidePush src/Dodge/HeldUse.hs 379;" f itemString src/Dodge/Item/Display.hs 55;" f itemToBreakLists src/Dodge/Item/Grammar.hs 68;" f itemToFunction src/Dodge/Item/Grammar.hs 148;" f @@ -4775,7 +4764,7 @@ lShape src/Dodge/Placement/Instance/LightSource.hs 76;" f lamp src/Dodge/Creature/Lamp.hs 21;" f lampCover src/Dodge/Placement/Instance/LightSource/Cover.hs 8;" f lampCoverWhen src/Dodge/Placement/Instance/LightSource/Cover.hs 19;" f -lampCrSPic src/Dodge/Render/ShapePicture.hs 55;" f +lampCrSPic src/Dodge/Render/ShapePicture.hs 51;" f lasCenSensEdge src/Dodge/Room/LasTurret.hs 114;" f lasDronesPic src/Dodge/Item/Weapon/Drone.hs 22;" f lasGunPic src/Dodge/Item/Draw/SPic.hs 413;" f @@ -4837,7 +4826,7 @@ lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 394;" f lnkPosDir src/Dodge/RoomLink.hs 97;" f loadDodgeConfig src/Dodge/Config/Load.hs 9;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 27;" f -loadMuzzle src/Dodge/HeldUse.hs 628;" f +loadMuzzle src/Dodge/HeldUse.hs 626;" f loadSaveSlot src/Dodge/Save.hs 74;" f loadSeed src/Dodge/LoadSeed.hs 7;" f loadSound src/Dodge/SoundLogic/LoadSound.hs 11;" f @@ -4880,7 +4869,7 @@ machineAddSound src/Dodge/Machine.hs 49;" f machinePistol src/Dodge/Item/Held/Stick.hs 52;" f machineUpdateDeathEff src/Dodge/Machine.hs 34;" f machineUpdateLiveDieEff src/Dodge/Machine.hs 16;" f -magAmmoParams src/Dodge/HeldUse.hs 901;" f +magAmmoParams src/Dodge/HeldUse.hs 899;" f magAmmoType src/Dodge/Item/MagAmmoType.hs 11;" f magShield src/Dodge/Item/Equipment.hs 27;" f magV src/Geometry/Vector.hs 171;" f @@ -4895,8 +4884,8 @@ makeAttach src/Dodge/Item/Attach.hs 10;" f makeBlip src/Dodge/RadarSweep.hs 69;" f makeBlockDebris src/Dodge/Block/Debris.hs 28;" f makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f -makeBullet src/Dodge/HeldUse.hs 1006;" f -makeBullet' src/Dodge/HeldUse.hs 948;" f +makeBullet src/Dodge/HeldUse.hs 1004;" f +makeBullet' src/Dodge/HeldUse.hs 946;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 18;" f @@ -4917,13 +4906,12 @@ makeFlameExplosionAt src/Dodge/WorldEvent/Explosion.hs 54;" f makeFlamelet src/Dodge/EnergyBall.hs 23;" f makeFlamerSmokeAt src/Dodge/WorldEvent/Cloud.hs 68;" f makeFlashBall src/Dodge/EnergyBall.hs 86;" f -makeFootstepSound src/Dodge/Creature/State/WalkCycle.hs 32;" f makeFragBullets src/Dodge/Bullet.hs 126;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 13;" f makeGrid src/Grid.hs 46;" f makeIntInterval src/Dodge/Zoning/Base.hs 35;" f makeMovingEB src/Dodge/EnergyBall.hs 76;" f -makeMuzzleFlare src/Dodge/HeldUse.hs 649;" f +makeMuzzleFlare src/Dodge/HeldUse.hs 647;" f makeParagraph src/Justify.hs 6;" f makePathBetween src/Dodge/Path.hs 35;" f makePathBetweenPs src/Dodge/Path.hs 54;" f @@ -4978,14 +4966,14 @@ mcKillTerm src/Dodge/Machine/Destroy.hs 26;" f mcPlaySound src/Dodge/Machine/Update.hs 104;" f mcProxTest src/Dodge/Machine/Update.hs 152;" f mcProximitySensorUpdate src/Dodge/Machine/Update.hs 130;" f -mcSPic src/Dodge/Render/ShapePicture.hs 119;" f +mcSPic src/Dodge/Render/ShapePicture.hs 111;" f mcSensorTriggerUpdate src/Dodge/Machine/Update.hs 93;" f mcSensorUpdate src/Dodge/Machine/Update.hs 125;" f -mcShootAuto src/Dodge/HeldUse.hs 1194;" f -mcShootLaser src/Dodge/HeldUse.hs 1187;" f +mcShootAuto src/Dodge/HeldUse.hs 1192;" f +mcShootLaser src/Dodge/HeldUse.hs 1185;" f mcTriggerVal src/Dodge/Machine/Update.hs 99;" f mcTypeUpdate src/Dodge/Machine/Update.hs 28;" f -mcUseHeld src/Dodge/HeldUse.hs 1113;" f +mcUseHeld src/Dodge/HeldUse.hs 1111;" f mcUseItem src/Dodge/Machine/Update.hs 85;" f medkit src/Dodge/Item/Consumable.hs 8;" f megaBattery src/Dodge/Item/Ammo.hs 54;" f @@ -5057,7 +5045,7 @@ mouseWorldPos' src/Dodge/Base/Coordinate.hs 48;" f moveBullet src/Dodge/Bullet.hs 194;" f moveCombineSel src/Dodge/Update/Scroll.hs 115;" f moveHammerUp src/Dodge/Hammer.hs 5;" f -moveInverseShockwave src/Dodge/Shockwave/Update.hs 48;" f +moveInverseShockwave src/Dodge/Shockwave/Update.hs 46;" f moveLSThen src/Dodge/Placement/Instance/LightSource.hs 30;" f movePenBullet src/Dodge/Bullet.hs 204;" f moveProjectile src/Dodge/Projectile/Update.hs 221;" f @@ -5078,11 +5066,11 @@ multiArrow src/Picture/Composite.hs 11;" f multiLookupTrie src/SimpleTrie.hs 34;" f multiLookupTrieI src/SimpleTrie.hs 43;" f muout src/Dodge/RoomLink.hs 129;" f -muzFlareAt src/Dodge/HeldUse.hs 677;" f +muzFlareAt src/Dodge/HeldUse.hs 675;" f mvButton src/Dodge/Placement/PlaceSpot.hs 176;" f mvCr src/Dodge/Placement/PlaceSpot.hs 186;" f mvFS src/Dodge/Placement/PlaceSpot.hs 189;" f -mvGust src/Dodge/Update.hs 716;" f +mvGust src/Dodge/Update.hs 717;" f mvLS src/Dodge/Placement/PlaceSpot.hs 217;" f mvP src/Dodge/Wall/Move.hs 54;" f mvPP src/Dodge/Placement/PlaceSpot.hs 183;" f @@ -5114,7 +5102,7 @@ noPic src/ShapePicture.hs 25;" f noShape src/ShapePicture.hs 29;" f noclipCheck src/Dodge/WallCreatureCollisions.hs 22;" f nodeFormatting src/Dodge/Combine/Graph.hs 147;" f -normalGait src/Dodge/Creature/State/WalkCycle.hs 19;" f +normalGait src/Dodge/Creature/State/WalkCycle.hs 29;" f normalizeAngle src/Geometry/Vector.hs 127;" f normalizeAnglePi src/Dodge/Base.hs 154;" f normalizeColor src/Color.hs 76;" f @@ -5162,13 +5150,13 @@ outLink src/Dodge/RoomLink.hs 105;" f outsideScreenPolygon src/Dodge/Debug/Picture.hs 44;" f outwardIntegers src/Dodge/Base.hs 181;" f overCol src/Picture/Base.hs 308;" f -overColObj src/Shape.hs 272;" f -overColSH src/Shape.hs 240;" f +overColObj src/Shape.hs 273;" f +overColSH src/Shape.hs 241;" f overLnkPosDir src/Dodge/RoomLink.hs 100;" f overLnkType src/Dodge/RoomLink.hs 87;" f overPos src/Picture/Base.hs 303;" f -overPosObj src/Shape.hs 276;" f -overPosSH src/Shape.hs 260;" f +overPosObj src/Shape.hs 277;" f +overPosSH src/Shape.hs 261;" f overPosSP src/ShapePicture.hs 41;" f overlapCircWalls src/Dodge/Base/Collide.hs 138;" f overlapCircWallsClosest src/Dodge/Base/Collide.hs 177;" f @@ -5210,7 +5198,6 @@ pesNearCirc src/Dodge/Zoning/Pathing.hs 43;" f pesNearPoint src/Dodge/Zoning/Pathing.hs 33;" f pesNearRect src/Dodge/Zoning/Pathing.hs 40;" f pesNearSeg src/Dodge/Zoning/Pathing.hs 37;" f -picAtCrPos1 src/Dodge/Render/ShapePicture.hs 60;" f picFormat src/Polyhedra.hs 23;" f picMap src/Picture/Base.hs 67;" f pickUpItem src/Dodge/Inventory/Add.hs 107;" f @@ -5283,7 +5270,7 @@ pointerToItemLocation src/Dodge/Item/Location.hs 14;" f pointerYourRootItem src/Dodge/Item/Location.hs 31;" f pointerYourSelectedItem src/Dodge/Item/Location.hs 25;" f pointsToPoly src/Geometry/ConvexPoly.hs 39;" f -poisonSPic src/Dodge/Creature/State.hs 118;" f +poisonSPic src/Dodge/Creature/State.hs 120;" f poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f poke34 src/Shader/Poke.hs 506;" f pokeArrayOff src/Shader/Poke.hs 517;" f @@ -5345,8 +5332,8 @@ powlist src/Multiset.hs 61;" f powlistUpToN src/Multiset.hs 23;" f powlistUpToN' src/Multiset.hs 12;" f powlistUpToN'' src/Multiset.hs 31;" f -ppDraw src/Dodge/Render/ShapePicture.hs 104;" f -ppEvents src/Dodge/Update.hs 683;" f +ppDraw src/Dodge/Render/ShapePicture.hs 96;" f +ppEvents src/Dodge/Update.hs 684;" f ppLevelReset src/Dodge/PressPlate.hs 13;" f preCritStart src/Dodge/Room/Start.hs 82;" f preloadRender src/Preload/Render.hs 30;" f @@ -5450,7 +5437,7 @@ randProb src/RandomHelp.hs 68;" f randSpark src/Dodge/Spark.hs 69;" f randSparkExtraVel src/Dodge/Spark.hs 92;" f randWallReflect src/Dodge/Tesla/Arc.hs 57;" f -randWallReflect src/Dodge/Update.hs 578;" f +randWallReflect src/Dodge/Update.hs 579;" f randomChallenges src/Dodge/Room/Start.hs 62;" f randomCompass src/Dodge/Layout.hs 59;" f randomFourCornerRoom src/Dodge/Room/Procedural.hs 266;" f @@ -5467,7 +5454,7 @@ randsOnCirc src/RandomHelp.hs 127;" f randsSpread src/RandomHelp.hs 120;" f ratIntersectLineLine src/Geometry/Intersect.hs 195;" f readSaveSlot src/Dodge/Save.hs 45;" f -recoilAmount src/Dodge/HeldUse.hs 462;" f +recoilAmount src/Dodge/HeldUse.hs 460;" f rectNSWE src/Geometry/Polygon.hs 13;" f rectVV src/Geometry/Polygon.hs 38;" f rectWH src/Geometry/Polygon.hs 17;" f @@ -5494,10 +5481,10 @@ rememberSounds src/Dodge/Creature/Perception.hs 178;" f remoteDetonator src/Dodge/Item/Scope.hs 144;" f remoteScreen src/Dodge/Item/Scope.hs 139;" f removeAimPosture src/Dodge/Creature/YourControl.hs 147;" f -removeAmmoFromMag src/Dodge/HeldUse.hs 868;" f +removeAmmoFromMag src/Dodge/HeldUse.hs 866;" f removeDot src/ShortShow.hs 29;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f -removeShieldWall' src/Dodge/Item/BackgroundEffect.hs 78;" f +removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f renderFlatLighting src/Render.hs 104;" f @@ -5511,6 +5498,7 @@ replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 162;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 47;" f resetPLUse src/Dodge/PlacementSpot.hs 96;" f +resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f resizeFBOTO src/Framebuffer/Update.hs 203;" f resizeFBOTO3 src/Framebuffer/Update.hs 175;" f resizeRBO src/Framebuffer/Update.hs 87;" f @@ -5567,7 +5555,7 @@ roomTwistCross src/Dodge/Room/Boss.hs 153;" f roomsContaining src/Dodge/Room/Containing.hs 20;" f roomsContaining' src/Dodge/Room/Containing.hs 25;" f rootNotrootEff src/Dodge/ItEffect.hs 53;" f -rootNotrootEff' src/Dodge/Item/BackgroundEffect.hs 49;" f +rootNotrootEff src/Dodge/Item/BackgroundEffect.hs 28;" f rose src/Color.hs 20;" f rotD src/Padding.hs 44;" f rotMatr src/MatrixHelper.hs 66;" f @@ -5580,9 +5568,9 @@ rotate3z src/Geometry/Vector3D.hs 54;" f rotateCamera src/Dodge/Update/Camera.hs 189;" f rotateList src/Padding.hs 49;" f rotateProp src/Dodge/Prop/Update.hs 49;" f -rotateSH src/Shape.hs 256;" f -rotateSHq src/Shape.hs 165;" f -rotateSHx src/Shape.hs 264;" f +rotateSH src/Shape.hs 257;" f +rotateSHq src/Shape.hs 166;" f +rotateSHx src/Shape.hs 265;" f rotateSP src/ShapePicture.hs 57;" f rotateTo src/Polyhedra/Geodesic.hs 64;" f rotateToOverlappingWall src/Dodge/Update/Camera.hs 201;" f @@ -5627,11 +5615,11 @@ scale src/Picture/Base.hs 149;" f scale3 src/Picture/Base.hs 145;" f scaleMat src/MatrixHelper.hs 59;" f scaleMatrix src/MatrixHelper.hs 56;" f -scaleSH src/Shape.hs 268;" f -scalp src/Dodge/Creature/Picture.hs 98;" f +scaleSH src/Shape.hs 269;" f +scalp src/Dodge/Creature/Picture.hs 90;" f scancodeToHotkey src/Dodge/Creature/YourControl.hs 95;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f -scorchSPic src/Dodge/Creature/State.hs 115;" f +scorchSPic src/Dodge/Creature/State.hs 117;" f screenBox src/Dodge/Base/Window.hs 53;" f screenPolygon src/Dodge/Base/Window.hs 17;" f screenPolygonBord src/Dodge/Base/Window.hs 27;" f @@ -5701,11 +5689,11 @@ setLinkType src/Dodge/RoomLink.hs 60;" f setLinkTypePD src/Dodge/RoomLink.hs 67;" f setMusicVolume src/Sound.hs 162;" f setMvPos src/Dodge/Creature/ReaderUpdate.hs 53;" f -setOldPos src/Dodge/Update.hs 465;" f +setOldPos src/Dodge/Update.hs 466;" f setOutLinks src/Dodge/RoomLink.hs 48;" f setOutLinksByType src/Dodge/RoomLink.hs 57;" f setOutLinksPD src/Dodge/RoomLink.hs 77;" f -setRBCreatureTargeting src/Dodge/Creature/State.hs 402;" f +setRBCreatureTargeting src/Dodge/Creature/State.hs 403;" f setSelWhileDragging src/Dodge/Update/Input/InGame.hs 334;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f setShaderSource src/Shader/Compile.hs 290;" f @@ -5752,11 +5740,11 @@ shellMag src/Dodge/Item/Ammo.hs 48;" f shellModule src/Dodge/Item/Scope.hs 123;" f shellShape src/Dodge/Projectile/Draw.hs 34;" f shellTrailCloud src/Dodge/WorldEvent/Cloud.hs 65;" f -shieldWall' src/Dodge/Item/BackgroundEffect.hs 93;" f +shieldWall' src/Dodge/Item/BackgroundEffect.hs 74;" f shiftByV2 src/Dodge/PlacementSpot.hs 239;" f shiftChildren src/Dodge/Tree/Compose.hs 43;" f -shiftDraw src/Dodge/Render/ShapePicture.hs 64;" f -shiftDraw' src/Dodge/Render/ShapePicture.hs 70;" f +shiftDraw src/Dodge/Render/ShapePicture.hs 56;" f +shiftDraw' src/Dodge/Render/ShapePicture.hs 62;" f shiftInBy src/Dodge/PlacementSpot.hs 236;" f shiftInvItems src/Dodge/Update/Input/InGame.hs 308;" f shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 347;" f @@ -5773,16 +5761,16 @@ shiftRoomBy src/Dodge/Room/Link.hs 37;" f shiftRoomShiftBy src/Dodge/Room/Link.hs 81;" f shiftRoomShiftToLink src/Dodge/Room/Link.hs 70;" f shiftedGrid src/Grid.hs 25;" f -shineTargetLaser src/Dodge/Creature/State.hs 304;" f -shineTorch src/Dodge/Creature/State.hs 345;" f -shootBullet src/Dodge/HeldUse.hs 938;" f +shineTargetLaser src/Dodge/Creature/State.hs 305;" f +shineTorch src/Dodge/Creature/State.hs 346;" f +shootBullet src/Dodge/HeldUse.hs 936;" f shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f -shootLaser src/Dodge/HeldUse.hs 847;" f +shootLaser src/Dodge/HeldUse.hs 845;" f shootOutPassage src/Dodge/Room/RezBox.hs 74;" f shootShatter src/Dodge/Item/Weapon/Shatter.hs 11;" f -shootTeslaArc src/Dodge/HeldUse.hs 1213;" f +shootTeslaArc src/Dodge/HeldUse.hs 1211;" f shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f -shootTractorBeam src/Dodge/HeldUse.hs 800;" f +shootTractorBeam src/Dodge/HeldUse.hs 798;" f shootersRoom src/Dodge/Room/Room.hs 315;" f shootersRoom' src/Dodge/Room/Room.hs 280;" f shootersRoom1 src/Dodge/Room/Room.hs 305;" f @@ -5791,7 +5779,7 @@ shortPoint2 src/Dodge/ShortShow.hs 4;" f shortShow src/ShortShow.hs 9;" f shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 549;" f shoulderHeight src/Dodge/Item/HeldOffset.hs 75;" f -shoulderSH src/Dodge/Creature/Picture.hs 141;" f +shoulderSH src/Dodge/Creature/Picture.hs 133;" f shoulderSP src/Dodge/Creature/HandPos.hs 170;" f showAttachItem src/Dodge/Item/Display.hs 90;" f showEquipItem src/Dodge/Item/Display.hs 104;" f @@ -5808,7 +5796,7 @@ shuffleLinks src/Dodge/Room/Link.hs 30;" f shuffleRoomPos src/Dodge/Layout.hs 78;" f shuffleTail src/RandomHelp.hs 59;" f sigmoid src/Dodge/Base.hs 151;" f -simpleCrSprings src/Dodge/Update.hs 767;" f +simpleCrSprings src/Dodge/Update.hs 768;" f simpleTermMessage src/Dodge/Terminal.hs 253;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 527;" f sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 367;" f @@ -6047,7 +6035,7 @@ tinMag src/Dodge/Item/Ammo.hs 27;" f tinitusS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 433;" f titleOptionsMenu src/Dodge/Menu.hs 102;" f titleOptionsNoWrite src/Dodge/Menu.hs 105;" f -tmUpdate src/Dodge/Update.hs 445;" f +tmUpdate src/Dodge/Update.hs 446;" f toBinary src/Dodge/Inventory/SelectionList.hs 137;" f toBothLnk src/Dodge/RoomLink.hs 121;" f toClosestMultiple src/HelpNum.hs 3;" f @@ -6079,12 +6067,12 @@ topPrismIndices src/Shader/Poke.hs 410;" f topTestPart src/Dodge/TestString.hs 62;" f torch src/Dodge/Item/Held/Utility.hs 23;" f torchShape src/Dodge/Item/Draw/SPic.hs 269;" f -torqueAmount src/Dodge/HeldUse.hs 578;" f +torqueAmount src/Dodge/HeldUse.hs 576;" f torqueCr src/Dodge/WorldEffect.hs 74;" f -torso src/Dodge/Creature/Picture.hs 107;" f +torso src/Dodge/Creature/Picture.hs 99;" f tractCr src/Dodge/TractorBeam/Update.hs 28;" f tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f -tractorBeamAt src/Dodge/HeldUse.hs 812;" f +tractorBeamAt src/Dodge/HeldUse.hs 810;" f tractorGun src/Dodge/Item/Held/BatteryGuns.hs 60;" f tractorGunPic src/Dodge/Item/Draw/SPic.hs 437;" f tractorPullPos src/Dodge/TractorBeam/Update.hs 33;" f @@ -6101,9 +6089,9 @@ translatePointToHead src/Dodge/Creature/HandPos.hs 147;" f translatePointToLeftHand src/Dodge/Creature/HandPos.hs 75;" f translatePointToRightHand src/Dodge/Creature/HandPos.hs 23;" f translatePointToRightHand' src/Dodge/Creature/HandPos.hs 29;" f -translateSH src/Shape.hs 244;" f -translateSHxy src/Shape.hs 248;" f -translateSHz src/Shape.hs 252;" f +translateSH src/Shape.hs 245;" f +translateSHxy src/Shape.hs 249;" f +translateSHz src/Shape.hs 253;" f translateSP src/ShapePicture.hs 53;" f translateSPxy src/ShapePicture.hs 45;" f translateSPz src/ShapePicture.hs 49;" f @@ -6153,8 +6141,8 @@ tryPutItemInInvAt src/Dodge/Inventory/Add.hs 32;" f trySeedFromClipboard src/Dodge/Menu.hs 91;" f tryShellBounce src/Dodge/Projectile/Update.hs 103;" f trySpinByCID src/Dodge/Projectile/Update.hs 178;" f -trySynthBullet src/Dodge/Creature/State.hs 202;" f -tryUseParent src/Dodge/Creature/State.hs 195;" f +trySynthBullet src/Dodge/Creature/State.hs 201;" f +tryUseParent src/Dodge/Creature/State.hs 194;" f turnTo src/Dodge/Movement/Turn.hs 8;" f turret src/Dodge/Placement/Instance/Turret.hs 35;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 19;" f @@ -6190,11 +6178,11 @@ unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 139;" f unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 122;" f unusedSpotNearInLink src/Dodge/PlacementSpot.hs 191;" f upProjectile src/Dodge/Projectile/Update.hs 35;" f -updateAimPos src/Dodge/Update.hs 304;" f +updateAimPos src/Dodge/Update.hs 305;" f updateAllNodes src/TreeHelp.hs 85;" f updateArc src/Dodge/Tesla.hs 44;" f updateArc src/Dodge/Tesla/Arc.hs 100;" f -updateAttachedItems src/Dodge/Creature/State.hs 261;" f +updateAttachedItems src/Dodge/Creature/State.hs 260;" f updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 453;" f updateBarrel src/Dodge/Barreloid.hs 44;" f updateBarreloid src/Dodge/Barreloid.hs 14;" f @@ -6202,62 +6190,61 @@ updateBaseWheelEvent src/Dodge/Update/Scroll.hs 29;" f updateBounds src/Dodge/Update/Camera.hs 250;" f updateBulVel src/Dodge/Bullet.hs 55;" f updateBullet src/Dodge/Bullet.hs 21;" f -updateBullets src/Dodge/Update.hs 538;" f +updateBullets src/Dodge/Update.hs 539;" f updateCamera src/Dodge/Update/Camera.hs 29;" f updateCloseObjects src/Dodge/Inventory.hs 116;" f -updateCloud src/Dodge/Update.hs 733;" f -updateClouds src/Dodge/Update.hs 605;" f +updateCloud src/Dodge/Update.hs 734;" f +updateClouds src/Dodge/Update.hs 606;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 37;" f updateCombineSections src/Dodge/DisplayInventory.hs 44;" f updateCreature src/Dodge/Creature/Update.hs 13;" f -updateCreatureGroups src/Dodge/Update.hs 510;" f -updateCreatureSoundPositions src/Dodge/Update.hs 486;" f +updateCreatureGroups src/Dodge/Update.hs 511;" f +updateCreatureSoundPositions src/Dodge/Update.hs 487;" f updateDebugMessageOffset src/Dodge/Update.hs 94;" f -updateDelayedEvents src/Dodge/Update.hs 796;" f +updateDelayedEvents src/Dodge/Update.hs 797;" f updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f updateDistortion src/Dodge/Distortion.hs 5;" f -updateDistortions src/Dodge/Update.hs 531;" f +updateDistortions src/Dodge/Update.hs 532;" f updateEnergyBall src/Dodge/EnergyBall.hs 37;" f -updateEnergyBalls src/Dodge/Update.hs 596;" f +updateEnergyBalls src/Dodge/Update.hs 597;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 480;" f updateExpBarrel src/Dodge/Barreloid.hs 20;" f updateFBOTO src/Framebuffer/Update.hs 97;" f updateFBOTO3 src/Framebuffer/Update.hs 131;" f updateFlame src/Dodge/Flame.hs 19;" f -updateFlames src/Dodge/Update.hs 593;" f +updateFlames src/Dodge/Update.hs 594;" f updateFloatingCamera src/Dodge/Update/Camera.hs 34;" f updateFunctionKey src/Dodge/Update/Input/InGame.hs 364;" f updateFunctionKeys src/Dodge/Update/Input/InGame.hs 357;" f -updateGusts src/Dodge/Update.hs 713;" f -updateHeldRootItem src/Dodge/Creature/State.hs 255;" f +updateGusts src/Dodge/Update.hs 714;" f +updateHeldRootItem src/Dodge/Creature/State.hs 254;" f updateHumanoid src/Dodge/Humanoid.hs 13;" f -updateIMl src/Dodge/Update.hs 500;" f -updateIMl' src/Dodge/Update.hs 505;" f +updateIMl src/Dodge/Update.hs 501;" f +updateIMl' src/Dodge/Update.hs 506;" f updateInGameCamera src/Dodge/Update/Camera.hs 78;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 400;" f updateInt2Map src/Dodge/Zoning/Base.hs 92;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f -updateItemTargeting src/Dodge/Creature/State.hs 371;" f -updateItemWithOrientation src/Dodge/Creature/State.hs 281;" f +updateItemTargeting src/Dodge/Creature/State.hs 372;" f +updateItemWithOrientation src/Dodge/Creature/State.hs 280;" f updateKeyInGame src/Dodge/Update/Input/InGame.hs 394;" f updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 382;" f updateLampoid src/Dodge/Lampoid.hs 12;" f updateLaser src/Dodge/Laser/Update.hs 14;" f -updateLasers src/Dodge/Update.hs 432;" f +updateLasers src/Dodge/Update.hs 433;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 413;" f updateMachine src/Dodge/Machine/Update.hs 20;" f -updateMagnets src/Dodge/Update.hs 308;" f +updateMagnets src/Dodge/Update.hs 309;" f updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 197;" f -updateMouseContext src/Dodge/Update.hs 321;" f -updateMouseContextGame src/Dodge/Update.hs 326;" f +updateMouseContext src/Dodge/Update.hs 322;" f +updateMouseContextGame src/Dodge/Update.hs 327;" f updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 95;" f updateMouseInGame src/Dodge/Update/Input/InGame.hs 85;" f updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 158;" f -updateMovement src/Dodge/Creature/State.hs 423;" f -updateObjCatMaybes src/Dodge/Update.hs 522;" f -updateObjMapMaybe src/Dodge/Update.hs 515;" f -updatePastWorlds src/Dodge/Update.hs 420;" f +updateObjCatMaybes src/Dodge/Update.hs 523;" f +updateObjMapMaybe src/Dodge/Update.hs 516;" f +updatePastWorlds src/Dodge/Update.hs 421;" f updatePosEvent src/Dodge/PosEvent.hs 10;" f updatePreload src/Preload/Update.hs 20;" f updateProjectile src/Dodge/Projectile/Update.hs 27;" f @@ -6265,9 +6252,9 @@ updateProp src/Dodge/Prop/Update.hs 11;" f updatePulse src/Dodge/Creature/Update.hs 22;" f updateRBList src/Dodge/Inventory/RBList.hs 18;" f updateRadarBlip src/Dodge/RadarBlip.hs 11;" f -updateRadarBlips src/Dodge/Update.hs 534;" f +updateRadarBlips src/Dodge/Update.hs 535;" f updateRadarSweep src/Dodge/RadarSweep.hs 39;" f -updateRadarSweeps src/Dodge/Update.hs 599;" f +updateRadarSweeps src/Dodge/Update.hs 600;" f updateRandNode src/TreeHelp.hs 108;" f updateRenderSplit appDodge/Main.hs 108;" f updateRootItemID src/Dodge/Inventory/Location.hs 35;" f @@ -6276,18 +6263,18 @@ updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateSection src/Dodge/DisplayInventory.hs 264;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 243;" f updateShockwave src/Dodge/Shockwave/Update.hs 13;" f -updateShockwaves src/Dodge/Update.hs 590;" f +updateShockwaves src/Dodge/Update.hs 591;" f updateSingleNodes src/TreeHelp.hs 97;" f updateSound src/Sound.hs 72;" f updateSounds src/Sound.hs 67;" f updateSpark src/Dodge/Spark.hs 19;" f -updateSparks src/Dodge/Update.hs 602;" f +updateSparks src/Dodge/Update.hs 603;" f updateTempLightSource src/Dodge/LightSource/Update.hs 7;" f updateTeslaArc src/Dodge/Tesla/Arc.hs 23;" f -updateTeslaArc src/Dodge/Update.hs 548;" f -updateTeslaArcs src/Dodge/Update.hs 545;" f +updateTeslaArc src/Dodge/Update.hs 549;" f +updateTeslaArcs src/Dodge/Update.hs 546;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f -updateTractorBeams src/Dodge/Update.hs 587;" f +updateTractorBeams src/Dodge/Update.hs 588;" f updateTurret src/Dodge/Machine/Update.hs 50;" f updateUniverse src/Dodge/Update.hs 73;" f updateUniverseFirst src/Dodge/Update.hs 84;" f @@ -6298,53 +6285,53 @@ updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 23;" f updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 12;" f updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f updateWheelEvent src/Dodge/Update/Scroll.hs 20;" f -updateWheelEvents src/Dodge/Update.hs 410;" f +updateWheelEvents src/Dodge/Update.hs 411;" f updateWorldEventFlag src/Dodge/Update.hs 119;" f updateWorldEventFlags src/Dodge/Update.hs 107;" f -upperBody src/Dodge/Creature/Picture.hs 137;" f -upperBox src/Shape.hs 155;" f -upperBoxHalf src/Shape.hs 221;" f -upperBoxMT src/Shape.hs 146;" f -upperBoxST src/Shape.hs 149;" f -upperBoxSU src/Shape.hs 152;" f -upperCylinder src/Shape.hs 168;" f -upperPrismPoly src/Shape.hs 122;" f -upperPrismPolyHalf src/Shape.hs 206;" f -upperPrismPolyHalfMI src/Shape.hs 200;" f -upperPrismPolyHalfST src/Shape.hs 203;" f -upperPrismPolyMT src/Shape.hs 101;" f -upperPrismPolySE src/Shape.hs 104;" f -upperPrismPolySI src/Shape.hs 110;" f -upperPrismPolyST src/Shape.hs 107;" f -upperPrismPolySU src/Shape.hs 113;" f -upperPrismPolyTS src/Shape.hs 119;" f -upperRounded src/Shape.hs 184;" f +upperBody src/Dodge/Creature/Picture.hs 129;" f +upperBox src/Shape.hs 156;" f +upperBoxHalf src/Shape.hs 222;" f +upperBoxMT src/Shape.hs 147;" f +upperBoxST src/Shape.hs 150;" f +upperBoxSU src/Shape.hs 153;" f +upperCylinder src/Shape.hs 169;" f +upperPrismPoly src/Shape.hs 123;" f +upperPrismPolyHalf src/Shape.hs 207;" f +upperPrismPolyHalfMI src/Shape.hs 201;" f +upperPrismPolyHalfST src/Shape.hs 204;" f +upperPrismPolyMT src/Shape.hs 102;" f +upperPrismPolySE src/Shape.hs 105;" f +upperPrismPolySI src/Shape.hs 111;" f +upperPrismPolyST src/Shape.hs 108;" f +upperPrismPolySU src/Shape.hs 114;" f +upperPrismPolyTS src/Shape.hs 120;" f +upperRounded src/Shape.hs 185;" f useBreakL src/Dodge/Item/Grammar.hs 37;" f useBreakListsLinkTest src/Dodge/Item/Grammar.hs 45;" f useBulletPayload src/Dodge/Bullet.hs 113;" f useC src/Dodge/Cuse.hs 8;" f useC' src/Dodge/Cuse.hs 13;" f useDelay src/Dodge/Item/UseDelay.hs 13;" f -useGasParams src/Dodge/HeldUse.hs 1118;" f +useGasParams src/Dodge/HeldUse.hs 1116;" f useHotkey src/Dodge/Creature/YourControl.hs 70;" f -useInventoryPath src/Dodge/HeldUse.hs 1381;" f +useInventoryPath src/Dodge/HeldUse.hs 1379;" f useItem src/Dodge/Creature/Impulse/UseItem.hs 20;" f useItemLoc src/Dodge/Creature/Impulse/UseItem.hs 27;" f useLnkRoomPos src/Dodge/PlacementSpot.hs 244;" f -useLoadedAmmo src/Dodge/HeldUse.hs 721;" f +useLoadedAmmo src/Dodge/HeldUse.hs 719;" f useLocation src/Dodge/Creature/Impulse/UseItem.hs 66;" f useMagShield src/Dodge/Euse.hs 26;" f useNormalCamera src/Dodge/Camera.hs 6;" f usePayload src/Dodge/Payload.hs 18;" f -useRewindGun src/Dodge/HeldUse.hs 1347;" f +useRewindGun src/Dodge/HeldUse.hs 1345;" f useRewindGun src/Dodge/Luse.hs 40;" f useRoomPosCond src/Dodge/PlacementSpot.hs 178;" f useRoomPosRoomCond src/Dodge/PlacementSpot.hs 181;" f -useStopWatch src/Dodge/HeldUse.hs 1328;" f +useStopWatch src/Dodge/HeldUse.hs 1326;" f useStopWatch src/Dodge/Luse.hs 21;" f useTimeCheck src/Dodge/HeldUse.hs 117;" f useTimeCheck src/Dodge/Item/Weapon/TriggerType.hs 127;" f -useTimeScrollGun src/Dodge/HeldUse.hs 1336;" f +useTimeScrollGun src/Dodge/HeldUse.hs 1334;" f useTimeScrollGun src/Dodge/Luse.hs 29;" f useUnusedLnk src/Dodge/PlacementSpot.hs 169;" f usedRoomInLinkPoss src/Dodge/PlacementSpot.hs 196;" f @@ -6368,7 +6355,7 @@ verticalLampCover src/Dodge/Placement/Instance/LightSource/Cover.hs 38;" f verticalPipe src/Dodge/Picture.hs 19;" f verticalPipe src/Dodge/Placement/Instance/Pipe.hs 6;" f verticalWire src/Dodge/Wire.hs 24;" f -vgunMuzzles src/Dodge/HeldUse.hs 301;" f +vgunMuzzles src/Dodge/HeldUse.hs 299;" f viewBoundaries src/Dodge/Debug/Picture.hs 304;" f viewClipBounds src/Dodge/Debug/Picture.hs 313;" f viewDistanceFromItems src/Dodge/Update/Camera.hs 186;" f @@ -6380,7 +6367,7 @@ vocalizationTest src/Dodge/Creature/Vocalization.hs 42;" 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 -walkNozzle src/Dodge/HeldUse.hs 782;" f +walkNozzle src/Dodge/HeldUse.hs 780;" f walkableNodeNear src/Dodge/Path.hs 48;" f wallBlips src/Dodge/RadarSweep.hs 98;" f wallBuffer src/Dodge/WallCreatureCollisions.hs 52;" f @@ -6443,8 +6430,8 @@ wristArmour src/Dodge/Item/Equipment.hs 43;" f wristInvisibility src/Dodge/Item/Equipment.hs 96;" f writeConfig src/Dodge/Menu.hs 162;" f writeSaveSlot src/Dodge/Save.hs 34;" f -xCylinder src/Shape.hs 136;" f -xCylinderST src/Shape.hs 133;" f +xCylinder src/Shape.hs 137;" f +xCylinderST src/Shape.hs 134;" f xIntercepts src/Dodge/Zoning/Base.hs 60;" f xV2 src/Geometry/Vector.hs 206;" f xyV3 src/Geometry/Vector.hs 218;" f @@ -6471,9 +6458,9 @@ zipArcs src/Dodge/Tesla/Arc.hs 110;" f zipCount src/Dodge/Tree/Shift.hs 129;" f zipCountDown src/Dodge/Room/Procedural.hs 118;" f zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f -zoneClouds src/Dodge/Update.hs 439;" f +zoneClouds src/Dodge/Update.hs 440;" f zoneCreature src/Dodge/Zoning/Creature.hs 54;" f -zoneCreatures src/Dodge/Update.hs 481;" f +zoneCreatures src/Dodge/Update.hs 482;" f zoneExtract src/Dodge/Zoning/Base.hs 52;" f zoneMonoid src/Dodge/Zoning/Base.hs 83;" f zoneOfCirc src/Dodge/Zoning/Base.hs 24;" f