diff --git a/src/Dodge/Creature/Perception.hs b/src/Dodge/Creature/Perception.hs index aae963ac0..5d5732041 100644 --- a/src/Dodge/Creature/Perception.hs +++ b/src/Dodge/Creature/Perception.hs @@ -62,9 +62,9 @@ basicAwarenessUpdate w cr = case _cpAttention $ _crPerception cr of crImpulsesOnCognizant :: World -> Creature -> [[Impulse]] crImpulsesOnCognizant w cr = case cr ^. crType of ChaseCrit {} | Just sid <- cognizantVoc w cr -> [Bark sid]: replicate 5 [RandomImpulse $ RandImpulseCircMove 3] - ++ [[ChangeStrategy $ CloseToMelee 0]] - HoverCrit {} | Just sid <- cognizantVoc w cr -> [[Bark sid]] - ++ [[ChangeStrategy $ CloseToMelee 0]] + <> [[ChangeStrategy $ CloseToMelee 0]] + HoverCrit {} | Just sid <- cognizantVoc w cr -> [Bark sid]: + [[ChangeStrategy $ CloseToMelee 0]] _ | Just sid <- cognizantVoc w cr -> [Bark sid]: replicate 5 [RandomImpulse $ RandImpulseCircMove 1] _ -> replicate 5 [RandomImpulse $ RandImpulseCircMove 3] diff --git a/src/Dodge/Creature/State/WalkCycle.hs b/src/Dodge/Creature/State/WalkCycle.hs index 3be6f1d29..f5d249a3c 100644 --- a/src/Dodge/Creature/State/WalkCycle.hs +++ b/src/Dodge/Creature/State/WalkCycle.hs @@ -2,6 +2,7 @@ module Dodge.Creature.State.WalkCycle (updateCarriage) where +import Dodge.WorldEvent.ThingsHit import Geometry.Polygon import Data.Maybe import Dodge.Creature.HandPos @@ -38,7 +39,9 @@ updateCarriage' cid cr w = \case Falling {} -> let v = 0.95 *^ (cr ^. crOldPos - oop & _z -~ 0.5) ep = cr ^. crPos + v - in if ep ^. _z < 0 && not (any (pointInPoly (ep ^. _xy)) (w ^. cWorld . chasms)) + in if ep ^. _z < 0 && + (not (any (pointInPoly (ep ^. _xy)) (w ^. cWorld . chasms)) + || any (uncurry $ crOnSeg cr) (w ^. cWorld . cliffs)) then w & tocr . crPos .~ (ep & _z .~ 0) & cWorld . lWorld . creatures . ix cid . crStance . carriage .~ OnGround else w & cWorld . lWorld . creatures . ix cid . crPos .~ ep diff --git a/src/Dodge/Creature/Update.hs b/src/Dodge/Creature/Update.hs index e212e2235..ee4bf14a1 100644 --- a/src/Dodge/Creature/Update.hs +++ b/src/Dodge/Creature/Update.hs @@ -1,6 +1,7 @@ {-# LANGUAGE LambdaCase #-} module Dodge.Creature.Update (updateCreature) where +import Dodge.WorldEvent.ThingsHit import Dodge.Base.You import Control.Monad import Color @@ -174,10 +175,7 @@ dropAll cr w = foldl' (flip (dropItem cr)) w . reverse . IM.keys . _unNIntMap $ chasmTestLiving :: Creature -> World -> World chasmTestLiving cr w | Flying {} <- cr ^. crStance . carriage = w - | Falling {} <- cr ^. crStance . carriage = - w --- & tocr . crZVel -~ 0.5 --- & tocr . crPos . _z +~ _crZVel cr + | Falling {} <- cr ^. crStance . carriage = w | Just (x, y) <- List.find g (w ^. cWorld . cliffs) = w & soundContinue (CrChasm (_crID cr)) (cr ^. crPos . _xy) debrisS (Just 100) @@ -187,7 +185,7 @@ chasmTestLiving cr w | otherwise = w where tocr = cWorld . lWorld . creatures . ix (_crID cr) - g = uncurry $ circOnSeg (cr ^. crPos . _xy) (crRad $ cr ^. crType) + g = uncurry $ crOnSeg cr f = pointInPoly (cr ^. crPos . _xy) startFalling :: Creature -> Creature @@ -197,16 +195,10 @@ startFalling cr = case cr ^. crStance . carriage of chasmTestCorpse :: Creature -> World -> World chasmTestCorpse cr w --- | _crZVel cr < 0 = --- w --- & tocr . crZVel -~ 0.5 --- & tocr . crPos . _z +~ _crZVel cr - -- only look for TWO cliffs to push along | (xy:xys) <- filter g (w ^. cWorld . cliffs) = w & soundContinue (CrChasm (_crID cr)) (cr ^. crPos . _xy) debrisS (Just 100) & tocr . crPos . _xy +~ h xy xys --- | any f (w ^. cWorld . chasms) = w & tocr . crZVel -~ 0.5 | any f (w ^. cWorld . chasms) = w & tocr %~ startFalling | otherwise = w where diff --git a/src/Dodge/Update.hs b/src/Dodge/Update.hs index 85a603a19..233d470ff 100644 --- a/src/Dodge/Update.hs +++ b/src/Dodge/Update.hs @@ -991,7 +991,7 @@ crCrSpring c1 c2 diffheight = fromMaybe True $ do h1 <- h c1 h2 <- h c2 - return $ (z c1 > h2 || z c2 > h1) + return $ z c1 > h2 || z c2 > h1 olap a b = ix (a ^. crID) . crPos . _xy +~ overlap b olap' a b = ix (a ^. crID) . crPos . _xy -~ overlap b id1 = _crID c1 diff --git a/src/Dodge/WorldEvent/ThingsHit.hs b/src/Dodge/WorldEvent/ThingsHit.hs index f4fd7fba7..b3f76a422 100644 --- a/src/Dodge/WorldEvent/ThingsHit.hs +++ b/src/Dodge/WorldEvent/ThingsHit.hs @@ -18,6 +18,7 @@ module Dodge.WorldEvent.ThingsHit ( wlsHitUnsorted, isWalkable, isFlyable, + crOnSeg, ) where import ListHelp @@ -201,3 +202,7 @@ isWalkable :: Point2 -> Point2 -> World -> Bool isWalkable p1 p2 w = isFlyable p1 p2 w && not (any f (w ^. cWorld . cliffs)) where f = isJust . uncurry (intersectSegSeg p1 p2) + +crOnSeg :: Creature -> Point2 -> Point2 -> Bool +{-# INLINE crOnSeg #-} +crOnSeg cr = circOnSeg (cr ^. crPos . _xy) (cr ^. crType . to crRad) diff --git a/tags b/tags index 976157b8b..b5339d81b 100644 --- a/tags +++ b/tags @@ -76,7 +76,7 @@ Audition src/Dodge/Data/Creature/Perception.hs 45;" t AutoCrit src/Dodge/Data/Creature/Misc.hs 63;" C AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C AvPosture src/Dodge/Data/Creature/Misc.hs 67;" C -Avatar src/Dodge/Data/Creature/Misc.hs 46;" C +Avatar src/Dodge/Data/Creature/Misc.hs 47;" C AvatarPosture src/Dodge/Data/Creature/Misc.hs 67;" t Awareness src/Dodge/Data/Creature/Perception.hs 63;" t BANGCONE src/Dodge/Data/Item/Combine.hs 149;" C @@ -246,23 +246,23 @@ CrArcNode src/Dodge/Data/LWorld.hs 164;" C CrBl src/Dodge/Data/CreatureEffect.hs 20;" t CrCanShoot src/Dodge/Data/CreatureEffect.hs 20;" C CrChasm src/Dodge/Data/SoundOrigin.hs 17;" C +CrDestroyed src/Dodge/Data/Creature.hs 66;" C +CrDestructionType src/Dodge/Data/Creature.hs 68;" t CrGroup src/Dodge/Data/Creature/State.hs 23;" t CrGroupID src/Dodge/Data/Creature/State.hs 29;" C CrGroupParams src/Dodge/Data/CrGroupParams.hs 12;" t CrGroupUpdate src/Dodge/Data/CrGroupParams.hs 20;" t -CrHP src/Dodge/Data/Creature.hs 64;" t +CrHP src/Dodge/Data/Creature.hs 63;" t CrHitSound src/Dodge/Data/SoundOrigin.hs 32;" C CrID src/Dodge/Data/CrWlID.hs 10;" C CrImp src/Dodge/Data/CreatureEffect.hs 9;" t CrInt src/Dodge/Data/Item/Location.hs 22;" t CrIsAiming src/Dodge/Data/CreatureEffect.hs 20;" C CrIsAnimate src/Dodge/Data/CreatureEffect.hs 20;" C -CrIsCorpse src/Dodge/Data/Creature.hs 66;" C -CrIsGibs src/Dodge/Data/Creature.hs 67;" C -CrIsPitted src/Dodge/Data/Creature.hs 68;" C +CrIsCorpse src/Dodge/Data/Creature.hs 65;" C CrMouth src/Dodge/Data/SoundOrigin.hs 16;" C CrMvType src/Dodge/Data/Creature/Misc.hs 24;" t -CrMvType src/Dodge/Data/Creature/Misc.hs 27;" C +CrMvType src/Dodge/Data/Creature/Misc.hs 28;" C CrOpenAutoDoor src/Dodge/Data/CreatureEffect.hs 21;" C CrSound src/Dodge/Data/SoundOrigin.hs 15;" C CrTurnAround src/Dodge/Data/CreatureEffect.hs 24;" C @@ -279,7 +279,7 @@ CreatePoisonGas src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C Creature src/Dodge/Data/Creature.hs 35;" t CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C CreatureShape src/Dodge/Data/Creature/Misc.hs 69;" t -CreatureType src/Dodge/Data/Creature/Misc.hs 45;" t +CreatureType src/Dodge/Data/Creature/Misc.hs 46;" t Crushing src/Dodge/Data/Damage.hs 19;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C CryostatisSS src/Dodge/Data/Scenario.hs 91;" C @@ -491,6 +491,7 @@ GeoObjShads src/Dodge/Data/Config.hs 117;" C GetTo src/Dodge/Data/ActionPlan.hs 142;" C GetToPoint src/Dodge/Data/Scenario.hs 12;" C Gib src/Dodge/Data/Prop.hs 22;" C +Gibbed src/Dodge/Data/Creature.hs 68;" C GibsDeath src/Dodge/Data/Creature.hs 70;" C Glass src/Dodge/Data/Material.hs 14;" C GlassBreakSound src/Dodge/Data/SoundOrigin.hs 34;" C @@ -517,7 +518,7 @@ HEATSENSOR src/Dodge/Data/Item/Combine.hs 82;" C HELD src/Dodge/Data/Item/Combine.hs 16;" C HOMINGMODULE src/Dodge/Data/Item/Combine.hs 101;" C HOSE src/Dodge/Data/Item/Combine.hs 54;" C -HP src/Dodge/Data/Creature.hs 65;" C +HP src/Dodge/Data/Creature.hs 64;" C HUD src/Dodge/Data/HUD.hs 29;" t HalfRes src/Dodge/Data/Config.hs 113;" C HammerTrigger src/Dodge/Data/TriggerType.hs 10;" C @@ -695,7 +696,7 @@ MODBlockedString src/Dodge/Data/Universe.hs 106;" C MODString src/Dodge/Data/Universe.hs 105;" C MODStringOption src/Dodge/Data/Universe.hs 107;" C MOTOR src/Dodge/Data/Item/Combine.hs 63;" C -MPO src/Dodge/Base/Collide.hs 97;" t +MPO src/Dodge/Base/Collide.hs 98;" t MTRS src/Dodge/Data/MTRS.hs 6;" t MTree src/Dodge/Data/MetaTree.hs 12;" C Machine src/Dodge/Data/Machine.hs 30;" t @@ -986,6 +987,7 @@ PhysicalSensor src/Dodge/Data/Machine/Sensor.hs 16;" C Picture src/Picture/Data.hs 41;" t Piercing src/Dodge/Data/Damage.hs 16;" C Piezoelectric src/Dodge/Data/Material.hs 23;" C +Pitted src/Dodge/Data/Creature.hs 68;" C Placement src/Dodge/Data/GenWorld.hs 113;" t PlacementSpot src/Dodge/Data/GenWorld.hs 97;" t PlainBarrel src/Dodge/Data/Creature/Misc.hs 80;" C @@ -1026,12 +1028,12 @@ ProxSensor src/Dodge/Data/Machine/Sensor.hs 24;" C ProximityRequirement src/Dodge/Data/Machine/Sensor.hs 33;" t ProximitySensor src/Dodge/Data/Machine/Sensor.hs 24;" t ProximitySensorType src/Dodge/Data/Machine/Sensor.hs 29;" t -Pulse src/Dodge/Data/Creature/Misc.hs 39;" t +Pulse src/Dodge/Data/Creature/Misc.hs 40;" t PulseBall src/Dodge/Data/PulseLaser.hs 20;" t PulseBallSF src/Dodge/Data/ComposedItem.hs 45;" C PulseLaser src/Dodge/Data/PulseLaser.hs 11;" t PulseLaserSF src/Dodge/Data/ComposedItem.hs 42;" C -PulseStatus src/Dodge/Data/Creature/Misc.hs 39;" C +PulseStatus src/Dodge/Data/Creature/Misc.hs 40;" C PumpSF src/Dodge/Data/ComposedItem.hs 48;" C PushSource src/Dodge/Data/Door.hs 23;" t PushedBy src/Dodge/Data/Door.hs 25;" C @@ -1539,13 +1541,12 @@ _asDir src/Dodge/Data/ArcStep.hs 14;" f _asObject src/Dodge/Data/ArcStep.hs 15;" f _asPos src/Dodge/Data/ArcStep.hs 13;" f _auDist src/Dodge/Data/Creature/Perception.hs 46;" f -_avDexterity src/Dodge/Data/Creature/Misc.hs 50;" f -_avIntelligence src/Dodge/Data/Creature/Misc.hs 51;" f -_avMoveSpeed src/Dodge/Data/Creature/Misc.hs 52;" f +_avDexterity src/Dodge/Data/Creature/Misc.hs 51;" f +_avIntelligence src/Dodge/Data/Creature/Misc.hs 52;" f _avPosture src/Dodge/Data/Creature/Misc.hs 53;" f -_avStrength src/Dodge/Data/Creature/Misc.hs 49;" f -_avatarMaterial src/Dodge/Data/Creature/Misc.hs 48;" f -_avatarPulse src/Dodge/Data/Creature/Misc.hs 47;" f +_avStrength src/Dodge/Data/Creature/Misc.hs 50;" f +_avatarMaterial src/Dodge/Data/Creature/Misc.hs 49;" f +_avatarPulse src/Dodge/Data/Creature/Misc.hs 48;" f _barrelShader src/Data/Preload/Render.hs 27;" f _barrelType src/Dodge/Data/Creature/Misc.hs 64;" f _bdColor src/Dodge/Data/Prop.hs 23;" f @@ -1665,37 +1666,35 @@ _cpPoints src/Geometry/ConvexPoly.hs 26;" f _cpRad src/Geometry/ConvexPoly.hs 28;" f _cpVigilance src/Dodge/Data/Creature/Perception.hs 31;" f _cpVision src/Dodge/Data/Creature/Perception.hs 34;" f -_crActionPlan src/Dodge/Data/Creature.hs 52;" f -_crDamage src/Dodge/Data/Creature.hs 49;" f -_crDeathTimer src/Dodge/Data/Creature.hs 60;" 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 +_crActionPlan src/Dodge/Data/Creature.hs 50;" f +_crDamage src/Dodge/Data/Creature.hs 47;" f +_crDeathTimer src/Dodge/Data/Creature.hs 58;" f +_crDir src/Dodge/Data/Creature.hs 39;" 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 15;" f _crGroupID src/Dodge/Data/Creature/State.hs 27;" f _crGroupIDs src/Dodge/Data/CrGroupParams.hs 14;" f _crGroupParamID src/Dodge/Data/CrGroupParams.hs 13;" f _crGroupUpdate src/Dodge/Data/CrGroupParams.hs 16;" f -_crHP src/Dodge/Data/Creature.hs 45;" f -_crID src/Dodge/Data/Creature.hs 44;" f -_crIntention src/Dodge/Data/Creature.hs 58;" f -_crInv src/Dodge/Data/Creature.hs 46;" f -_crManipulation src/Dodge/Data/Creature.hs 47;" f -_crMemory src/Dodge/Data/Creature.hs 54;" f -_crMvAim src/Dodge/Data/Creature.hs 42;" f -_crMvDir src/Dodge/Data/Creature.hs 41;" f -_crName src/Dodge/Data/Creature.hs 59;" f +_crHP src/Dodge/Data/Creature.hs 43;" f +_crID src/Dodge/Data/Creature.hs 42;" f +_crIntention src/Dodge/Data/Creature.hs 56;" f +_crInv src/Dodge/Data/Creature.hs 44;" f +_crManipulation src/Dodge/Data/Creature.hs 45;" f +_crMemory src/Dodge/Data/Creature.hs 52;" f +_crMvDir src/Dodge/Data/Creature.hs 40;" f +_crName src/Dodge/Data/Creature.hs 57;" f _crOldOldPos src/Dodge/Data/Creature.hs 38;" f _crOldPos src/Dodge/Data/Creature.hs 37;" f -_crPain src/Dodge/Data/Creature.hs 50;" f -_crPerception src/Dodge/Data/Creature.hs 53;" f +_crPain 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 -_crType src/Dodge/Data/Creature.hs 43;" f -_crVocalization src/Dodge/Data/Creature.hs 55;" f -_crWallTouch src/Dodge/Data/Creature.hs 61;" f -_crZVel src/Dodge/Data/Creature.hs 39;" f +_crStance src/Dodge/Data/Creature.hs 49;" f +_crType src/Dodge/Data/Creature.hs 41;" f +_crVocalization src/Dodge/Data/Creature.hs 53;" f +_crWallTouch src/Dodge/Data/Creature.hs 59;" f _crZoning src/Dodge/Data/World.hs 48;" f _creatureGroups src/Dodge/Data/LWorld.hs 96;" f _creatures src/Dodge/Data/LWorld.hs 95;" f @@ -2049,11 +2048,12 @@ _mtBranches src/Dodge/Data/MetaTree.hs 13;" f _mtLabel src/Dodge/Data/MetaTree.hs 13;" f _mtTree src/Dodge/Data/MetaTree.hs 13;" f _musicData src/Data/Preload.hs 13;" f -_mvAimSpeed src/Dodge/Data/Creature/Misc.hs 31;" f +_mvAimSpeed src/Dodge/Data/Creature/Misc.hs 32;" f _mvSpeed src/Dodge/Data/Creature/Misc.hs 26;" f +_mvSpeed src/Dodge/Data/Creature/Misc.hs 29;" f _mvToPoint src/Dodge/Data/Creature.hs 74;" f -_mvTurnJit src/Dodge/Data/Creature/Misc.hs 30;" f -_mvTurnRad src/Dodge/Data/Creature/Misc.hs 29;" f +_mvTurnJit src/Dodge/Data/Creature/Misc.hs 31;" f +_mvTurnRad src/Dodge/Data/Creature/Misc.hs 30;" f _mzAmmoSlot src/Dodge/Data/Muzzle.hs 13;" f _mzEffect src/Dodge/Data/Muzzle.hs 15;" f _mzFlareType src/Dodge/Data/Muzzle.hs 14;" f @@ -2142,8 +2142,8 @@ _psSelect src/Dodge/Data/GenWorld.hs 101;" f _pullWallShader src/Data/Preload/Render.hs 22;" f _pulseBalls src/Dodge/Data/LWorld.hs 119;" f _pulseLasers src/Dodge/Data/LWorld.hs 118;" f -_pulseProgress src/Dodge/Data/Creature/Misc.hs 41;" f -_pulseRate src/Dodge/Data/Creature/Misc.hs 40;" f +_pulseProgress src/Dodge/Data/Creature/Misc.hs 42;" f +_pulseRate src/Dodge/Data/Creature/Misc.hs 41;" f _putBlock src/Dodge/Data/GenWorld.hs 43;" f _putButton src/Dodge/Data/GenWorld.hs 39;" f _putChasmChasms src/Dodge/Data/GenWorld.hs 60;" f @@ -2570,7 +2570,7 @@ addToTrunk src/TreeHelp.hs 159;" f addWarningTerminal src/Dodge/Room/Warning.hs 98;" f addZ src/Geometry/Vector3D.hs 89;" f adjustIMZone src/Dodge/Base.hs 81;" f -advanceScrollAmount src/Dodge/Update.hs 479;" f +advanceScrollAmount src/Dodge/Update.hs 481;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f aimDelaySweep src/Dodge/Render/Picture.hs 285;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f @@ -2582,7 +2582,7 @@ airlockCrystal src/Dodge/Room/Airlock.hs 251;" f airlockDoubleDoor src/Dodge/Room/Airlock.hs 104;" f airlockSimple src/Dodge/Room/Airlock.hs 129;" f airlockZ src/Dodge/Room/Airlock.hs 166;" f -allVisibleWalls src/Dodge/Base/Collide.hs 227;" f +allVisibleWalls src/Dodge/Base/Collide.hs 231;" f alongSegBy src/Geometry.hs 40;" f alteRifle src/Dodge/Item/Held/Cane.hs 22;" f alteRifleAmmoOrient src/Dodge/Item/Orientation.hs 51;" f @@ -2599,7 +2599,7 @@ angleVV src/Geometry/Vector.hs 58;" f angleVV3 src/Geometry/Vector3D.hs 122;" f angleVVTests test/Spec.hs 67;" f anyUnusedSpot src/Dodge/PlacementSpot.hs 68;" f -anythingHitCirc src/Dodge/Base/Collide.hs 335;" f +anythingHitCirc src/Dodge/Base/Collide.hs 339;" f apply src/Quaternion.hs 78;" f applyCME src/Dodge/HeldUse.hs 397;" f applyClip src/Dodge/Debug.hs 176;" f @@ -2749,7 +2749,7 @@ boolOption src/Dodge/Menu/OptionType.hs 12;" f bossKeyItems src/Dodge/LockAndKey.hs 13;" f bossRoom src/Dodge/Room/Boss.hs 55;" f bounceDir src/Dodge/Bullet.hs 111;" f -bouncePoint src/Dodge/Base/Collide.hs 87;" f +bouncePoint src/Dodge/Base/Collide.hs 88;" f bounceSound src/Dodge/Projectile/Update.hs 74;" f boundPoints src/Bound.hs 9;" f boundPointsRect src/Bound.hs 23;" f @@ -2787,9 +2787,9 @@ cFilledRect src/Dodge/CharacterEnums.hs 6;" f cWireRect src/Dodge/CharacterEnums.hs 10;" f calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f calcTexCoord src/Tile.hs 19;" f -canSee src/Dodge/Base/Collide.hs 321;" f -canSeeIndirect src/Dodge/Base/Collide.hs 328;" f -canSpring src/Dodge/Update.hs 971;" f +canSee src/Dodge/Base/Collide.hs 325;" f +canSeeIndirect src/Dodge/Base/Collide.hs 332;" f +canSpring src/Dodge/Update.hs 973;" f cancelExamineInventory src/Dodge/Item/BackgroundEffect.hs 23;" f capacitor src/Dodge/Item/Ammo.hs 67;" f card8Vec src/Dodge/Base/CardinalPoint.hs 24;" f @@ -2821,20 +2821,20 @@ chaseUpperBody src/Dodge/Creature/Picture.hs 77;" f chasmRotate src/Dodge/Creature/Update.hs 221;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 375;" f chasmSpitTerminal src/Dodge/Room/Tutorial.hs 307;" f -chasmTestCorpse src/Dodge/Creature/Update.hs 189;" f -chasmTestLiving src/Dodge/Creature/Update.hs 165;" f -chasmWallToSurface src/Dodge/Base/Collide.hs 120;" f +chasmTestCorpse src/Dodge/Creature/Update.hs 195;" f +chasmTestLiving src/Dodge/Creature/Update.hs 174;" f +chasmWallToSurface src/Dodge/Base/Collide.hs 121;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkConnection src/Dodge/Inventory/Swap.hs 66;" f -checkDeath src/Dodge/Creature/Update.hs 100;" f -checkDeath' src/Dodge/Creature/Update.hs 103;" f -checkEndGame src/Dodge/Update.hs 857;" f +checkDeath src/Dodge/Creature/Update.hs 99;" f +checkDeath' src/Dodge/Creature/Update.hs 102;" f +checkEndGame src/Dodge/Update.hs 859;" f checkErrorGL src/Shader/Compile.hs 86;" f checkFBO src/Framebuffer/Check.hs 6;" f checkGLError src/GLHelp.hs 17;" f checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 18;" f checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f -checkTermDist src/Dodge/Update.hs 394;" f +checkTermDist src/Dodge/Update.hs 396;" 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 @@ -2842,15 +2842,15 @@ chemFuelPouch src/Dodge/Item/Ammo.hs 81;" f chestPQ src/Dodge/Creature/HandPos.hs 180;" f chooseCursorBorders src/Dodge/Render/List.hs 141;" f chooseEquipPosition src/Dodge/Inventory/RBList.hs 41;" f -chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 61;" f +chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 64;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 47;" f chooseMovementLtAuto src/Dodge/CreatureEffect.hs 78;" f -circHitWall src/Dodge/Base/Collide.hs 240;" f +circHitWall src/Dodge/Base/Collide.hs 244;" f circInPolygon src/Geometry/Polygon.hs 110;" f -circOnAnyCr src/Dodge/Base/Collide.hs 285;" f +circOnAnyCr src/Dodge/Base/Collide.hs 289;" f circOnSeg src/Geometry.hs 101;" f circOnSegNoEndpoints src/Geometry.hs 91;" f -circOnSomeWall src/Dodge/Base/Collide.hs 279;" f +circOnSomeWall src/Dodge/Base/Collide.hs 283;" f circle src/Picture/Base.hs 172;" f circleDecoration src/Dodge/Placement/TopDecoration.hs 62;" f circleSolid src/Picture/Base.hs 156;" f @@ -2892,18 +2892,18 @@ colCrWall src/Dodge/WallCreatureCollisions.hs 27;" f colCrsWalls src/Dodge/WallCreatureCollisions.hs 19;" f collectDamageTypes src/Dodge/Damage.hs 54;" f collectInvItems src/Dodge/Inventory.hs 205;" f -collide3 src/Dodge/Base/Collide.hs 129;" f -collide3Chasm src/Dodge/Base/Collide.hs 113;" f -collide3Chasms src/Dodge/Base/Collide.hs 105;" f -collide3Creature src/Dodge/Base/Collide.hs 162;" f -collide3Floors src/Dodge/Base/Collide.hs 143;" f -collide3Wall src/Dodge/Base/Collide.hs 157;" f -collide3Walls src/Dodge/Base/Collide.hs 138;" f -collide3WallsFloor src/Dodge/Base/Collide.hs 99;" f -collideCircWalls src/Dodge/Base/Collide.hs 252;" f -collidePoint src/Dodge/Base/Collide.hs 53;" f -collidePointTestFilter src/Dodge/Base/Collide.hs 190;" f -collidePointWallsFilter src/Dodge/Base/Collide.hs 204;" f +collide3 src/Dodge/Base/Collide.hs 130;" f +collide3Chasm src/Dodge/Base/Collide.hs 114;" f +collide3Chasms src/Dodge/Base/Collide.hs 106;" f +collide3Creature src/Dodge/Base/Collide.hs 163;" f +collide3Floors src/Dodge/Base/Collide.hs 144;" f +collide3Wall src/Dodge/Base/Collide.hs 158;" f +collide3Walls src/Dodge/Base/Collide.hs 139;" f +collide3WallsFloor src/Dodge/Base/Collide.hs 100;" f +collideCircWalls src/Dodge/Base/Collide.hs 256;" f +collidePoint src/Dodge/Base/Collide.hs 54;" f +collidePointTestFilter src/Dodge/Base/Collide.hs 194;" f +collidePointWallsFilter src/Dodge/Base/Collide.hs 208;" f color src/Picture/Base.hs 100;" f colorLamp src/Dodge/Creature/Lamp.hs 10;" f colorSH src/Shape.hs 234;" f @@ -2948,7 +2948,7 @@ copierItemUpdate src/Dodge/Creature/State.hs 136;" f copyItemToFloor src/Dodge/FloorItem.hs 14;" f corDoor src/Dodge/Room/Room.hs 411;" f cornerList src/Preload/Render.hs 236;" f -corpseOrGib src/Dodge/Creature/Update.hs 126;" f +corpseOrGib src/Dodge/Creature/Update.hs 135;" f corridor src/Dodge/Room/Corridor.hs 17;" f corridorBoss src/Dodge/LockAndKey.hs 135;" f corridorN src/Dodge/Room/Corridor.hs 58;" f @@ -2958,16 +2958,16 @@ crAwayFromPost src/Dodge/Creature/Test.hs 83;" f crBlips src/Dodge/RadarSweep.hs 88;" f crCamouflage src/Dodge/Creature/Picture.hs 40;" f crCanSeeCr src/Dodge/Creature/Test.hs 50;" f -crCrSpring src/Dodge/Update.hs 979;" f +crCrSpring src/Dodge/Update.hs 981;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 62;" f -crDeathSounds src/Dodge/Creature/Vocalization.hs 46;" f +crDeathSounds src/Dodge/Creature/Vocalization.hs 35;" f crDexterity src/Dodge/Creature/Statistics.hs 19;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 39;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 53;" f crHasTarget src/Dodge/Creature/Test.hs 63;" f crHasTargetLOS src/Dodge/Creature/Test.hs 66;" f -crHeight src/Dodge/Base/Collide.hs 175;" f -crHit src/Dodge/WorldEvent/ThingsHit.hs 137;" f +crHeight src/Dodge/Base/Collide.hs 176;" f +crHit src/Dodge/WorldEvent/ThingsHit.hs 138;" f crIXsNearCirc src/Dodge/Zoning/Creature.hs 33;" f crIXsNearPoint src/Dodge/Zoning/Creature.hs 15;" f crImpulsesOnCognizant src/Dodge/Creature/Perception.hs 62;" f @@ -2987,23 +2987,23 @@ crMvForward src/Dodge/Creature/Impulse/Movement.hs 57;" f crMvType src/Dodge/Creature/MoveType.hs 7;" f crNearPoint src/Dodge/Creature/Test.hs 129;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f +crOnSeg src/Dodge/WorldEvent/ThingsHit.hs 206;" f crPathing src/Dodge/Creature/Action.hs 117;" f crRad src/Dodge/Creature/Radius.hs 7;" f crRightHandWall src/Dodge/Creature/HandPos.hs 76;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 72;" f crSetRoots src/Dodge/Inventory/Location.hs 56;" f crShape src/Dodge/Creature/Shape.hs 8;" f -crSpring src/Dodge/Update.hs 966;" f +crSpring src/Dodge/Update.hs 968;" f crStratConMatches src/Dodge/Creature/Test.hs 78;" f crStrength src/Dodge/Creature/Statistics.hs 29;" f -crUpdate src/Dodge/Creature/Update.hs 93;" f +crUpdate src/Dodge/Creature/Update.hs 92;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 67;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 49;" f -crVocalResetTime src/Dodge/Creature/Vocalization.hs 70;" f -crVocalizationSound src/Dodge/Creature/Vocalization.hs 17;" f -crWarningSounds src/Dodge/Creature/Vocalization.hs 27;" f -crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 61;" f -crWlPbHitZ src/Dodge/WorldEvent/ThingsHit.hs 71;" f +crVocalResetTime src/Dodge/Creature/Vocalization.hs 59;" f +crWarningSounds src/Dodge/Creature/Vocalization.hs 16;" f +crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 62;" f +crWlPbHitZ src/Dodge/WorldEvent/ThingsHit.hs 72;" f crZoneSize src/Dodge/Zoning/Creature.hs 43;" f craftInfo src/Dodge/Item/Info.hs 168;" f craftItemSPic src/Dodge/Item/Draw/SPic.hs 40;" f @@ -3032,9 +3032,9 @@ critsRoom src/Dodge/Room/Room.hs 425;" f crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f crossPic src/Dodge/Render/Label.hs 28;" f crossProd src/Geometry/Vector3D.hs 41;" f -crsHit src/Dodge/WorldEvent/ThingsHit.hs 85;" f -crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 184;" f -crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 96;" f +crsHit src/Dodge/WorldEvent/ThingsHit.hs 86;" f +crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 185;" f +crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 97;" f crsItmsUnused src/Dodge/Room/Containing.hs 45;" f crsNearCirc src/Dodge/Zoning/Creature.hs 36;" f crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f @@ -3141,8 +3141,8 @@ defHeldItem src/Dodge/Default/Item.hs 9;" f defLSPic src/Dodge/LightSource/Draw.hs 10;" f defSPic src/Dodge/Item/Draw/SPic.hs 310;" f defaultAimMvType src/Dodge/Creature/MoveType.hs 17;" f -defaultAimingCrit src/Dodge/Default/Creature.hs 109;" f -defaultAudition src/Dodge/Default/Creature.hs 94;" f +defaultAimingCrit src/Dodge/Default/Creature.hs 108;" f +defaultAudition src/Dodge/Default/Creature.hs 93;" f defaultAutoWall src/Dodge/Default/Wall.hs 32;" f defaultBlock src/Dodge/Default/Block.hs 5;" f defaultBounds src/Dodge/Data/Bounds.hs 18;" f @@ -3155,9 +3155,9 @@ defaultChaseMvType src/Dodge/Creature/MoveType.hs 26;" f defaultClusterStatus src/Dodge/Default/Room.hs 37;" f defaultConfig src/Dodge/Data/Config.hs 152;" f defaultCreature src/Dodge/Default/Creature.hs 12;" f -defaultCreatureMemory src/Dodge/Default/Creature.hs 67;" f +defaultCreatureMemory src/Dodge/Default/Creature.hs 66;" f defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f -defaultDeathSounds src/Dodge/Creature/Vocalization.hs 56;" f +defaultDeathSounds src/Dodge/Creature/Vocalization.hs 45;" f defaultDirtBlock src/Dodge/Default/Block.hs 17;" f defaultDirtWall src/Dodge/Default/Wall.hs 47;" f defaultDoor src/Dodge/Default/Door.hs 5;" f @@ -3166,19 +3166,19 @@ defaultDrawButton src/Dodge/Button/Draw.hs 44;" f defaultFlIt src/Dodge/Default.hs 27;" f defaultForeground src/Dodge/Default/ForegroundShape.hs 5;" f defaultHUD src/Dodge/Default/World.hs 172;" f -defaultInanimate src/Dodge/Default/Creature.hs 64;" f +defaultInanimate src/Dodge/Default/Creature.hs 63;" f defaultInput src/Dodge/Default/World.hs 12;" f -defaultIntention src/Dodge/Default/Creature.hs 100;" f -defaultInvSize src/Dodge/Default/Creature.hs 74;" f +defaultIntention src/Dodge/Default/Creature.hs 99;" f +defaultInvSize src/Dodge/Default/Creature.hs 73;" f defaultLDP src/Dodge/ListDisplayParams.hs 19;" f defaultLWorld src/Dodge/Default/World.hs 106;" f defaultMachine src/Dodge/Default.hs 30;" f defaultMachineWall src/Dodge/Default/Wall.hs 38;" f -defaultPerceptionState src/Dodge/Default/Creature.hs 77;" f +defaultPerceptionState src/Dodge/Default/Creature.hs 76;" f defaultProximitySensor src/Dodge/Default.hs 53;" f defaultRoom src/Dodge/Default/Room.hs 9;" f defaultTerminal src/Dodge/Default/Terminal.hs 8;" f -defaultVision src/Dodge/Default/Creature.hs 87;" f +defaultVision src/Dodge/Default/Creature.hs 86;" f defaultWall src/Dodge/Default/Wall.hs 15;" f defaultWindow src/Dodge/Default/Wall.hs 54;" f defaultWorld src/Dodge/Default/World.hs 33;" f @@ -3221,7 +3221,7 @@ displayFrameTicks src/Dodge/Render/Picture.hs 50;" f displayFreeSlots src/Dodge/DisplayInventory.hs 196;" f displayIndents src/Dodge/DisplayInventory.hs 110;" f displayPulse src/Dodge/Inventory/SelectionList.hs 176;" f -displayTerminalLineString src/Dodge/Update.hs 564;" f +displayTerminalLineString src/Dodge/Update.hs 566;" f dist src/Geometry/Vector.hs 187;" f dist3 src/Geometry/Vector3D.hs 101;" f distributeAmmoToItem src/Dodge/WorldEffect.hs 150;" f @@ -3239,7 +3239,7 @@ doAnyEquipmentEffect src/Dodge/Creature/State.hs 146;" f doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBarrelSpin src/Dodge/Projectile/Update.hs 168;" f doBlBl src/Dodge/BlBl.hs 5;" f -doBounce src/Dodge/Base/Collide.hs 68;" f +doBounce src/Dodge/Base/Collide.hs 69;" f doButtonEvent src/Dodge/Button/Event.hs 9;" f doConLoop src/Loop.hs 138;" f doConLoop' src/Loop.hs 230;" f @@ -3301,7 +3301,7 @@ doWdBl src/Dodge/WorldBool.hs 10;" f doWdCrBl src/Dodge/CreatureEffect.hs 18;" f doWdP2f src/Dodge/WdP2f.hs 10;" f doWdWd src/Dodge/WorldEffect.hs 35;" f -doWorldEvents src/Dodge/Update.hs 488;" f +doWorldEvents src/Dodge/Update.hs 490;" f doWorldPos src/Dodge/WorldPos.hs 10;" f door src/Dodge/Room/Door.hs 14;" f doorBetween src/Dodge/Placement/Instance/Door.hs 34;" f @@ -3446,7 +3446,7 @@ drawZone src/Dodge/Debug/Picture.hs 152;" f drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f drawZoneCol src/Dodge/Debug/Picture.hs 149;" f drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 286;" f -dropAll src/Dodge/Creature/Update.hs 162;" f +dropAll src/Dodge/Creature/Update.hs 171;" f dropInventoryPath src/Dodge/HeldUse.hs 1371;" f dropItem src/Dodge/Creature/Action.hs 161;" f dropper src/Dodge/Item/Scope.hs 82;" f @@ -3622,7 +3622,7 @@ gameRoomViewpoints src/Dodge/Viewpoints.hs 35;" f gameRoomsFromRooms src/Dodge/Layout.hs 165;" f gameplayMenu src/Dodge/Menu.hs 152;" f gameplayMenuOptions src/Dodge/Menu.hs 155;" f -gasEffect src/Dodge/Update.hs 882;" f +gasEffect src/Dodge/Update.hs 884;" f gasType src/Dodge/HeldUse.hs 1135;" f gassesNearPoint src/Dodge/Zoning/Cloud.hs 12;" f generateGenParams src/Dodge/LevelGen/LevelStructure.hs 23;" f @@ -3648,7 +3648,7 @@ getCommands src/Dodge/Terminal.hs 58;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 580;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 567;" f -getDebugMouseOver src/Dodge/Update.hs 449;" f +getDebugMouseOver src/Dodge/Update.hs 451;" f getDistortions src/Dodge/Render.hs 443;" f getEdgesCrossing src/Dodge/Path.hs 39;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1284;" f @@ -3658,7 +3658,7 @@ getLaserDamage src/Dodge/HeldUse.hs 728;" f getLaserPhaseV src/Dodge/HeldUse.hs 725;" f getLinksOfType src/Dodge/RoomLink.hs 40;" f getMaxLinesTM src/Dodge/Terminal/Type.hs 6;" f -getMenuMouseContext src/Dodge/Update.hs 461;" f +getMenuMouseContext src/Dodge/Update.hs 463;" f getNodePos src/Dodge/Path.hs 36;" f getPJStabiliser src/Dodge/HeldUse.hs 1271;" f getPretty src/AesonHelp.hs 8;" f @@ -3727,7 +3727,7 @@ handHandleOrient src/Dodge/Item/HeldOffset.hs 71;" f handOrient src/Dodge/Item/HeldOffset.hs 52;" f handWalkingPos src/Dodge/Creature/HandPos.hs 51;" f handleEvent src/Dodge/Event.hs 27;" f -handleHotkeys src/Dodge/Creature/YourControl.hs 41;" f +handleHotkeys src/Dodge/Creature/YourControl.hs 37;" f handleKeyboardEvent src/Dodge/Event/Input.hs 23;" f handleMouseButtonEvent src/Dodge/Event/Input.hs 59;" f handleMouseMotionEvent src/Dodge/Event/Input.hs 47;" f @@ -3739,10 +3739,10 @@ handleTextInput src/Dodge/Event/Input.hs 19;" f handleWindowMoveEvent src/Dodge/Event.hs 44;" f hardQuit src/Dodge/Concurrent.hs 32;" f hasAutoDoorBody src/Dodge/Creature/Test.hs 138;" f -hasButtonLOS src/Dodge/Base/Collide.hs 304;" f +hasButtonLOS src/Dodge/Base/Collide.hs 308;" f hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f -hasLOS src/Dodge/Base/Collide.hs 297;" f -hasLOSIndirect src/Dodge/Base/Collide.hs 313;" f +hasLOS src/Dodge/Base/Collide.hs 301;" f +hasLOSIndirect src/Dodge/Base/Collide.hs 317;" f hat src/Dodge/Item/Equipment.hs 65;" f head src/DoubleStack.hs 14;" f headLamp src/Dodge/Item/Equipment.hs 68;" f @@ -3783,13 +3783,13 @@ holsterWeapon src/Dodge/Creature/Volition.hs 14;" f homingModule src/Dodge/Item/Scope.hs 50;" f horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f hotkeyToChar src/Dodge/Inventory/SelectionList.hs 185;" f -hotkeyToScancode src/Dodge/Creature/YourControl.hs 66;" f +hotkeyToScancode src/Dodge/Creature/YourControl.hs 62;" f hotkeyToString src/Dodge/Inventory/SelectionList.hs 182;" f hoverCrit src/Dodge/Creature/ChaseCrit.hs 35;" f -hoverCritHoverSound src/Dodge/Creature/Update.hs 70;" f +hoverCritHoverSound src/Dodge/Creature/Update.hs 69;" f hoverCritInternal src/Dodge/Humanoid.hs 28;" f hoverCritMv src/Dodge/Creature/ReaderUpdate.hs 152;" f -hoverDeathSounds src/Dodge/Creature/Vocalization.hs 63;" f +hoverDeathSounds src/Dodge/Creature/Vocalization.hs 52;" f iShape src/Dodge/Placement/Instance/LightSource.hs 58;" f icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f icosohedronFaces src/Polyhedra/Geodesic.hs 19;" f @@ -3887,7 +3887,7 @@ isAnimate src/Dodge/Creature/Test.hs 132;" f isCognizant src/Dodge/Creature/Perception.hs 118;" f isConnected src/Dodge/Inventory/Swap.hs 77;" f isCornerLink src/Dodge/RoomLink.hs 66;" f -isFlyable src/Dodge/WorldEvent/ThingsHit.hs 192;" f +isFlyable src/Dodge/WorldEvent/ThingsHit.hs 193;" f isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 199;" f isInLnk src/Dodge/PlacementSpot.hs 163;" f isJust' src/MaybeHelp.hs 27;" f @@ -3900,7 +3900,7 @@ isNothing' src/MaybeHelp.hs 31;" f isOnSeg src/Geometry.hs 237;" f isOutLnk src/Dodge/PlacementSpot.hs 168;" f isOutLnkNum src/Dodge/PlacementSpot.hs 173;" f -isOverTerminalScreen src/Dodge/Update.hs 469;" f +isOverTerminalScreen src/Dodge/Update.hs 471;" f isPulseLaser src/Dodge/IsPulseLaser.hs 10;" f isPutID src/Dodge/Placement/Instance/Wall.hs 108;" f isRHS src/Geometry/LHS.hs 44;" f @@ -3909,7 +3909,7 @@ isUnusedLnkType src/Dodge/PlacementSpot.hs 197;" f isUsedLnkUnplaced src/Dodge/PlacementSpot.hs 181;" f isValidCommand src/Dodge/Debug/Terminal.hs 134;" f isVowel src/StringHelp.hs 8;" f -isWalkable src/Dodge/WorldEvent/ThingsHit.hs 199;" f +isWalkable src/Dodge/WorldEvent/ThingsHit.hs 200;" f isoMatrix src/MatrixHelper.hs 35;" f isotriBWH src/Geometry/Polygon.hs 30;" f itDim src/Dodge/Item/InvSize.hs 21;" f @@ -4304,7 +4304,7 @@ muzzleWallCheck src/Dodge/Update.hs 346;" f mvButton src/Dodge/Placement/PlaceSpot.hs 170;" f mvCr src/Dodge/Placement/PlaceSpot.hs 173;" f mvFS src/Dodge/Placement/PlaceSpot.hs 176;" f -mvGust src/Dodge/Update.hs 873;" f +mvGust src/Dodge/Update.hs 875;" f mvLS src/Dodge/Placement/PlaceSpot.hs 215;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f @@ -4337,7 +4337,7 @@ nodeNear src/Dodge/Path.hs 94;" f nodesNear src/Dodge/Path.hs 100;" f nonConvexChasm src/Dodge/Room/Tutorial.hs 265;" f nonCornerLinks src/Dodge/Room/SensorDoor.hs 53;" f -normalGait src/Dodge/Creature/State/WalkCycle.hs 56;" f +normalGait src/Dodge/Creature/State/WalkCycle.hs 59;" f normalTo8 src/Shader/Poke.hs 466;" f normalizeAngle src/Geometry/Vector.hs 130;" f normalizeAnglePi src/Dodge/Base.hs 154;" f @@ -4394,10 +4394,10 @@ overPos src/Picture/Base.hs 298;" f overPosObj src/Shape.hs 274;" f overPosSH src/Shape.hs 258;" f overPosSP src/ShapePicture.hs 41;" f -overlapCircWalls src/Dodge/Base/Collide.hs 233;" f -overlapCircWallsClosest src/Dodge/Base/Collide.hs 272;" f -overlapSegCrs src/Dodge/Base/Collide.hs 60;" f -overlapSegWalls src/Dodge/Base/Collide.hs 213;" f +overlapCircWalls src/Dodge/Base/Collide.hs 237;" f +overlapCircWallsClosest src/Dodge/Base/Collide.hs 276;" f +overlapSegCrs src/Dodge/Base/Collide.hs 61;" f +overlapSegWalls src/Dodge/Base/Collide.hs 217;" f overrideInternal src/Dodge/Creature/ReaderUpdate.hs 196;" f overrideMeleeCloseTarget src/Dodge/Creature/ReaderUpdate.hs 36;" f overwriteLabel src/Dodge/Tree/Compose.hs 32;" f @@ -4420,8 +4420,8 @@ pauseMenu src/Dodge/Menu.hs 57;" f pauseMenuOptions src/Dodge/Menu.hs 64;" f pauseSound src/Dodge/SoundLogic.hs 42;" f pauseTime src/Dodge/Update.hs 217;" f -pbFlicker src/Dodge/Update.hs 549;" f -pbsHit src/Dodge/WorldEvent/ThingsHit.hs 113;" f +pbFlicker src/Dodge/Update.hs 551;" f +pbsHit src/Dodge/WorldEvent/ThingsHit.hs 114;" f peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f pedestalRoom src/Dodge/Room/Containing.hs 50;" f penThing src/Dodge/Bullet.hs 215;" f @@ -4482,7 +4482,7 @@ pointerToItemID src/Dodge/Item/Location.hs 42;" f pointerYourRootItem src/Dodge/Item/Location.hs 33;" f pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f pointsToPoly src/Geometry/ConvexPoly.hs 37;" f -poisonSPic src/Dodge/Creature/Update.hs 158;" f +poisonSPic src/Dodge/Creature/Update.hs 167;" f poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f poke34 src/Shader/Poke.hs 509;" f pokeArrayOff src/Shader/Poke.hs 521;" f @@ -4631,7 +4631,7 @@ rLauncher src/Dodge/Item/Held/Launcher.hs 14;" f rLauncherX src/Dodge/Item/Held/Launcher.hs 30;" f rToOnward src/Dodge/Cleat.hs 21;" f radToDeg src/Geometry/Vector.hs 125;" f -radiusSpring src/Dodge/Update.hs 955;" f +radiusSpring src/Dodge/Update.hs 957;" f randBlockBreakWeapon src/Dodge/Item/Random.hs 7;" f randC1 src/Dodge/Placement/Instance/Creature.hs 8;" f randDirPS src/Dodge/PlacementSpot.hs 58;" f @@ -4653,7 +4653,7 @@ randPeakedParam src/RandomHelp.hs 149;" f randProb src/RandomHelp.hs 87;" f randSpark src/Dodge/Spark.hs 70;" f randSparkExtraVel src/Dodge/Spark.hs 93;" f -randWallReflect src/Dodge/Update.hs 729;" f +randWallReflect src/Dodge/Update.hs 731;" f randomChallenges src/Dodge/Room/Start.hs 64;" f randomCompass src/Dodge/Layout.hs 61;" f randomFourCornerRoom src/Dodge/Room/Procedural.hs 248;" f @@ -4721,9 +4721,9 @@ renderListAt src/Dodge/Render/List.hs 177;" f renderShadows src/Render.hs 116;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 184;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 81;" f -resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 74;" f +resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 63;" f resetPLUse src/Dodge/PlacementSpot.hs 94;" f -resetStride src/Dodge/Creature/State/WalkCycle.hs 51;" f +resetStride src/Dodge/Creature/State/WalkCycle.hs 54;" f resetTerminal src/Dodge/WorldEffect.hs 158;" f resizeFBOTO src/Framebuffer/Update.hs 185;" f resizeFBOTO' src/Framebuffer/Update.hs 197;" f @@ -4847,9 +4847,9 @@ scaleMat src/MatrixHelper.hs 71;" f scaleMatrix src/MatrixHelper.hs 68;" f scaleSH src/Shape.hs 266;" f scalp src/Dodge/Creature/Picture.hs 156;" f -scancodeToHotkey src/Dodge/Creature/YourControl.hs 86;" f +scancodeToHotkey src/Dodge/Creature/YourControl.hs 82;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f -scorchSPic src/Dodge/Creature/Update.hs 155;" f +scorchSPic src/Dodge/Creature/Update.hs 164;" f screenBox src/Dodge/Base/Window.hs 54;" f screenPolygon src/Dodge/Base/Window.hs 18;" f screenPolygonBord src/Dodge/Base/Window.hs 28;" f @@ -4914,7 +4914,7 @@ setLinkType src/Dodge/RoomLink.hs 79;" f setLinkTypePD src/Dodge/RoomLink.hs 86;" f setMusicVolume src/Sound.hs 164;" f setMvPos src/Dodge/Creature/ReaderUpdate.hs 59;" f -setOldPos src/Dodge/Update.hs 580;" f +setOldPos src/Dodge/Update.hs 582;" f setOutLinks src/Dodge/RoomLink.hs 49;" f setOutLinksByType src/Dodge/RoomLink.hs 76;" f setOutLinksPD src/Dodge/RoomLink.hs 96;" f @@ -5005,10 +5005,10 @@ showEquipItem src/Dodge/Item/Display.hs 108;" f showInt src/Dodge/Item/Info.hs 75;" f showIntsString src/Dodge/Tree/Compose.hs 130;" f showInventoryPathing src/Dodge/Item/Display.hs 86;" f -showManObj src/Dodge/TestString.hs 91;" f +showManObj src/Dodge/TestString.hs 97;" f showMuzzlePositions src/Dodge/Debug.hs 292;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f -showTimeFlow src/Dodge/TestString.hs 101;" f +showTimeFlow src/Dodge/TestString.hs 114;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f shrinkVert src/Geometry/Polygon.hs 202;" f shuffle src/RandomHelp.hs 68;" f @@ -5017,7 +5017,7 @@ shufflePair src/RandomHelp.hs 166;" f shuffleRoomPos src/Dodge/Layout.hs 98;" f shuffleTail src/RandomHelp.hs 78;" f sigmoid src/Dodge/Base.hs 151;" f -simpleCrSprings src/Dodge/Update.hs 960;" f +simpleCrSprings src/Dodge/Update.hs 962;" f simpleTermMessage src/Dodge/Terminal.hs 275;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 765;" f sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 801;" f @@ -5141,8 +5141,9 @@ stackText src/Picture/Base.hs 180;" f stackedInventory src/Dodge/Creature.hs 326;" f startCr src/Dodge/Creature.hs 90;" f startCrafts src/Dodge/Room/Start.hs 94;" f +startDeathTimer src/Dodge/Creature/Update.hs 123;" f startDrag src/Dodge/Update/Input/InGame.hs 286;" f -startFalling src/Dodge/Creature/Update.hs 184;" f +startFalling src/Dodge/Creature/Update.hs 190;" f startInvList src/Dodge/Creature.hs 105;" f startInventory src/Dodge/Creature.hs 108;" f startNewGameInSlot src/Dodge/StartNewGame.hs 16;" f @@ -5235,7 +5236,7 @@ testEvent src/Dodge/Event/Test.hs 11;" f testInventory src/Dodge/Creature.hs 307;" f testPic src/Dodge/Render/ShapePicture.hs 57;" f testSPic src/Dodge/Render/ShapePicture.hs 54;" f -testStringInit src/Dodge/TestString.hs 37;" f +testStringInit src/Dodge/TestString.hs 40;" f text src/Picture/Base.hs 185;" f textGrad src/Picture/Text.hs 5;" f textInputBlurb src/Dodge/Terminal.hs 43;" f @@ -5257,11 +5258,11 @@ thickCircle src/Picture/Base.hs 267;" f thickLine src/Picture/Base.hs 238;" f thickLineCol src/Picture/Base.hs 250;" f thinHighBar src/Dodge/Room/Foreground.hs 77;" f -thingHit src/Dodge/WorldEvent/ThingsHit.hs 134;" f -thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 122;" f -thingsHit src/Dodge/WorldEvent/ThingsHit.hs 46;" f -thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 143;" f -thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 54;" f +thingHit src/Dodge/WorldEvent/ThingsHit.hs 135;" f +thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 123;" f +thingsHit src/Dodge/WorldEvent/ThingsHit.hs 47;" f +thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 144;" f +thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 55;" f threeLineDecoration src/Dodge/Placement/TopDecoration.hs 67;" f throb1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 809;" f throbC4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 769;" f @@ -5291,7 +5292,7 @@ toBinary src/Dodge/Inventory/SelectionList.hs 138;" f toBothLnk src/Dodge/RoomLink.hs 136;" f toClosestMultiple src/HelpNum.hs 3;" f toColor8 src/Color.hs 158;" f -toDeathCarriage src/Dodge/Creature/Update.hs 120;" f +toDeathCarriage src/Dodge/Creature/Update.hs 129;" f toFloatVAs src/Shader/Compile.hs 66;" f toLabel src/Dodge/Cleat.hs 16;" f toMultiset src/Multiset.hs 64;" f @@ -5300,6 +5301,7 @@ toTopLeft src/Dodge/Render/List.hs 212;" f toV2 src/Geometry/Data.hs 54;" f toV3 src/Geometry/Data.hs 57;" f toV4 src/Geometry/Data.hs 60;" f +tocrs src/Dodge/TestString.hs 38;" f toggleCombineInv src/Dodge/DisplayInventory.hs 315;" f toggleCommands src/Dodge/Terminal.hs 86;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 68;" f @@ -5314,7 +5316,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 671;" f topInvW src/Dodge/ListDisplayParams.hs 54;" f topPrismEdgeIndices src/Shader/Poke.hs 335;" f topPrismIndices src/Shader/Poke.hs 410;" f -topTestPart src/Dodge/TestString.hs 87;" f +topTestPart src/Dodge/TestString.hs 92;" f torchShape src/Dodge/Item/Draw/SPic.hs 277;" f torqueAmount src/Dodge/HeldUse.hs 606;" f torqueCr src/Dodge/WorldEffect.hs 85;" f @@ -5423,7 +5425,7 @@ unusedOffPathAwayFromLink src/Dodge/PlacementSpot.hs 133;" f unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 139;" f unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 121;" f unusedSpotNearInLink src/Dodge/PlacementSpot.hs 203;" f -updateAimPos src/Dodge/Update.hs 381;" f +updateAimPos src/Dodge/Update.hs 383;" f updateAllNodes src/TreeHelp.hs 88;" f updateArc src/Dodge/Tesla.hs 43;" f updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 454;" f @@ -5433,49 +5435,49 @@ updateBaseWheelEvent src/Dodge/Update/Scroll.hs 30;" f updateBounds src/Dodge/Update/Camera.hs 262;" f updateBulVel src/Dodge/Bullet.hs 57;" f updateBullet src/Dodge/Bullet.hs 22;" f -updateBullets src/Dodge/Update.hs 644;" f +updateBullets src/Dodge/Update.hs 646;" f updateCamera src/Dodge/Update/Camera.hs 33;" f updateCarriage src/Dodge/Creature/State/WalkCycle.hs 14;" f updateCarriage' src/Dodge/Creature/State/WalkCycle.hs 19;" f updateCloseObjects src/Dodge/Inventory.hs 126;" f -updateCloud src/Dodge/Update.hs 886;" f -updateClouds src/Dodge/Update.hs 755;" f +updateCloud src/Dodge/Update.hs 888;" f +updateClouds src/Dodge/Update.hs 757;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 40;" f updateCombineSections src/Dodge/DisplayInventory.hs 47;" f updateCreature src/Dodge/Creature/Update.hs 40;" f -updateCreatureGroups src/Dodge/Update.hs 616;" f -updateCreatureSoundPositions src/Dodge/Update.hs 595;" f +updateCreatureGroups src/Dodge/Update.hs 618;" f +updateCreatureSoundPositions src/Dodge/Update.hs 597;" f updateCreatureStride src/Dodge/Update.hs 374;" f updateCreatureStrides src/Dodge/Update.hs 371;" f -updateDebris src/Dodge/Update.hs 658;" f +updateDebris src/Dodge/Update.hs 660;" f updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f updateDebugMessageOffset src/Dodge/Update.hs 102;" f -updateDelayedEvents src/Dodge/Update.hs 996;" f +updateDelayedEvents src/Dodge/Update.hs 1005;" f updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f updateDistortion src/Dodge/Distortion.hs 8;" f -updateDistortions src/Dodge/Update.hs 637;" f +updateDistortions src/Dodge/Update.hs 639;" f updateDoor src/Dodge/Door.hs 22;" f -updateDoors src/Dodge/Update.hs 386;" f -updateDust src/Dodge/Update.hs 934;" f -updateDusts src/Dodge/Update.hs 761;" f +updateDoors src/Dodge/Update.hs 388;" f +updateDust src/Dodge/Update.hs 936;" f +updateDusts src/Dodge/Update.hs 763;" f updateEdge src/Dodge/Path.hs 45;" f updateEdgeWallObs src/Dodge/Update/WallDamage.hs 39;" f updateEdgesWall src/Dodge/Update/WallDamage.hs 23;" f updateEdgesWall' src/Dodge/Update/WallDamage.hs 36;" f updateEnergyBall src/Dodge/EnergyBall.hs 31;" f -updateEnergyBalls src/Dodge/Update.hs 746;" f +updateEnergyBalls src/Dodge/Update.hs 748;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 481;" f updateExpBarrel src/Dodge/Barreloid.hs 21;" f updateFlame src/Dodge/Flame.hs 19;" f -updateFlames src/Dodge/Update.hs 743;" f +updateFlames src/Dodge/Update.hs 745;" f updateFloatingCamera src/Dodge/Update/Camera.hs 38;" f updateFunctionKey src/Dodge/Update/Input/InGame.hs 338;" f updateFunctionKeys src/Dodge/Update/Input/InGame.hs 334;" f -updateGas src/Dodge/Update.hs 908;" f -updateGasses src/Dodge/Update.hs 758;" f -updateGusts src/Dodge/Update.hs 870;" f -updateIMl src/Dodge/Update.hs 610;" f -updateIMl' src/Dodge/Update.hs 613;" f +updateGas src/Dodge/Update.hs 910;" f +updateGasses src/Dodge/Update.hs 760;" f +updateGusts src/Dodge/Update.hs 872;" f +updateIMl src/Dodge/Update.hs 612;" f +updateIMl' src/Dodge/Update.hs 615;" f updateInGameCamera src/Dodge/Update/Camera.hs 86;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 404;" f updateInt2Map src/Dodge/Zoning/Base.hs 94;" f @@ -5488,35 +5490,35 @@ updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 357;" f updateKeysTextInputTerminal src/Dodge/Update/Input/InGame.hs 380;" f updateLampoid src/Dodge/Lampoid.hs 13;" f updateLaser src/Dodge/Laser/Update.hs 12;" f -updateLasers src/Dodge/Update.hs 495;" f +updateLasers src/Dodge/Update.hs 497;" f updateLeftParentSF src/Dodge/Item/Grammar.hs 177;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f -updateLivingCreature src/Dodge/Creature/Update.hs 50;" f +updateLivingCreature src/Dodge/Creature/Update.hs 49;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 417;" f updateMachine src/Dodge/Machine/Update.hs 24;" f -updateMagnets src/Dodge/Update.hs 389;" f +updateMagnets src/Dodge/Update.hs 391;" f updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 205;" f -updateMouseContext src/Dodge/Update.hs 402;" f -updateMouseContextGame src/Dodge/Update.hs 407;" f +updateMouseContext src/Dodge/Update.hs 404;" f +updateMouseContextGame src/Dodge/Update.hs 409;" f updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 98;" f updateMouseInGame src/Dodge/Update/Input/InGame.hs 88;" f updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 168;" f -updateObjCatMaybes src/Dodge/Update.hs 628;" f -updateObjMapMaybe src/Dodge/Update.hs 621;" f -updatePastWorlds src/Dodge/Update.hs 484;" f -updatePlasmaBall src/Dodge/Update.hs 509;" f -updatePlasmaBalls src/Dodge/Update.hs 651;" f +updateObjCatMaybes src/Dodge/Update.hs 630;" f +updateObjMapMaybe src/Dodge/Update.hs 623;" f +updatePastWorlds src/Dodge/Update.hs 486;" f +updatePlasmaBall src/Dodge/Update.hs 511;" f +updatePlasmaBalls src/Dodge/Update.hs 653;" f updatePreload src/Preload/Update.hs 21;" f updateProjectile src/Dodge/Projectile/Update.hs 26;" f updatePulse src/Dodge/Creature/Update.hs 228;" f -updatePulseBall src/Dodge/Update.hs 529;" f -updatePulseLaser src/Dodge/Update.hs 698;" f -updatePulseLasers src/Dodge/Update.hs 504;" f +updatePulseBall src/Dodge/Update.hs 531;" f +updatePulseLaser src/Dodge/Update.hs 700;" f +updatePulseLasers src/Dodge/Update.hs 506;" f updateRBList src/Dodge/Inventory/RBList.hs 22;" f updateRadarBlip src/Dodge/RadarBlip.hs 11;" f -updateRadarBlips src/Dodge/Update.hs 640;" f +updateRadarBlips src/Dodge/Update.hs 642;" f updateRadarSweep src/Dodge/RadarSweep.hs 40;" f -updateRadarSweeps src/Dodge/Update.hs 749;" f +updateRadarSweeps src/Dodge/Update.hs 751;" f updateRandNode src/TreeHelp.hs 111;" f updateRenderSplit appDodge/Main.hs 104;" f updateRightParentSF src/Dodge/Item/Grammar.hs 188;" f @@ -5526,17 +5528,17 @@ updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateSection src/Dodge/DisplayInventory.hs 262;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 241;" f updateShockwave src/Dodge/Shockwave/Update.hs 8;" f -updateShockwaves src/Dodge/Update.hs 740;" f +updateShockwaves src/Dodge/Update.hs 742;" f updateSingleNodes src/TreeHelp.hs 100;" f updateSound src/Sound.hs 73;" f updateSounds src/Sound.hs 68;" f updateSpark src/Dodge/Spark.hs 20;" f -updateSparks src/Dodge/Update.hs 752;" f -updateTerminal src/Dodge/Update.hs 567;" f -updateTeslaArc src/Dodge/Update.hs 668;" f -updateTeslaArcs src/Dodge/Update.hs 665;" f +updateSparks src/Dodge/Update.hs 754;" f +updateTerminal src/Dodge/Update.hs 569;" f +updateTeslaArc src/Dodge/Update.hs 670;" f +updateTeslaArcs src/Dodge/Update.hs 667;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f -updateTractorBeams src/Dodge/Update.hs 737;" f +updateTractorBeams src/Dodge/Update.hs 739;" f updateTurret src/Dodge/Machine/Update.hs 55;" f updateUniverse src/Dodge/Update.hs 81;" f updateUniverseFirst src/Dodge/Update.hs 92;" f @@ -5547,7 +5549,7 @@ updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 24;" f updateVocTimer src/Dodge/Humanoid.hs 45;" f updateWallDamages src/Dodge/Update/WallDamage.hs 15;" f updateWheelEvent src/Dodge/Update/Scroll.hs 21;" f -updateWheelEvents src/Dodge/Update.hs 474;" f +updateWheelEvents src/Dodge/Update.hs 476;" f updateWorldEventFlag src/Dodge/Update.hs 127;" f updateWorldEventFlags src/Dodge/Update.hs 115;" f upperBody src/Dodge/Creature/Picture.hs 176;" f @@ -5570,7 +5572,7 @@ upperPrismPolyTS src/Shape.hs 116;" f upperRounded src/Shape.hs 182;" f useBulletPayload src/Dodge/Bullet.hs 117;" f useGasParams src/Dodge/HeldUse.hs 1111;" f -useHotkey src/Dodge/Creature/YourControl.hs 61;" f +useHotkey src/Dodge/Creature/YourControl.hs 57;" f useInventoryPath src/Dodge/HeldUse.hs 1402;" f useItem src/Dodge/Creature/Impulse/UseItem.hs 19;" f useItemLoc src/Dodge/Creature/Impulse/UseItem.hs 26;" f @@ -5612,7 +5614,7 @@ viewGameRoomBoundaries src/Dodge/Debug/Picture.hs 332;" f viewRoomBoundaries src/Dodge/Debug/Picture.hs 341;" f viewTarget src/Dodge/Creature/ReaderUpdate.hs 171;" f violet src/Color.hs 48;" f -visibleWalls src/Dodge/Base/Collide.hs 218;" f +visibleWalls src/Dodge/Base/Collide.hs 222;" f visionCheck src/Dodge/Creature/Perception.hs 165;" f volleyGun src/Dodge/Item/Held/Cane.hs 15;" f volleyGunShape src/Dodge/Item/Draw/SPic.hs 355;" f @@ -5622,17 +5624,17 @@ wallBlips src/Dodge/RadarSweep.hs 99;" f wallBuffer src/Dodge/WallCreatureCollisions.hs 99;" f wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f wallMovement src/Dodge/WallCreatureCollisions.hs 68;" f -wallToSurface src/Dodge/Base/Collide.hs 182;" f +wallToSurface src/Dodge/Base/Collide.hs 186;" f wallsFromRooms src/Dodge/Layout.hs 153;" f wallsToDraw src/Dodge/Render/Walls.hs 18;" f warmupSound src/Dodge/HeldUse.hs 1396;" f warningRooms src/Dodge/Room/Warning.hs 34;" f warp1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 855;" f -wasdAim src/Dodge/Creature/YourControl.hs 117;" f +wasdAim src/Dodge/Creature/YourControl.hs 116;" f wasdDir src/Dodge/WASD.hs 17;" f wasdM src/Dodge/WASD.hs 9;" f wasdMovement src/Dodge/Creature/YourControl.hs 140;" f -wasdWithAiming src/Dodge/Creature/YourControl.hs 110;" f +wasdWithAiming src/Dodge/Creature/YourControl.hs 106;" f watchCombinations src/Dodge/Combine/Combinations.hs 16;" f watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 201;" f weaponBehindPillar src/Dodge/Room/Room.hs 200;" f @@ -5666,7 +5668,7 @@ windowXFloat src/Dodge/Data/Config.hs 72;" f windowYFloat src/Dodge/Data/Config.hs 74;" f withAlpha src/Color.hs 37;" f withByteString src/Shader/Compile.hs 157;" f -wlHitPos src/Dodge/WorldEvent/ThingsHit.hs 161;" f +wlHitPos src/Dodge/WorldEvent/ThingsHit.hs 162;" f wlIXsNearCirc src/Dodge/Zoning/Wall.hs 31;" f wlIXsNearPoint src/Dodge/Zoning/Wall.hs 21;" f wlIXsNearRect src/Dodge/Zoning/Wall.hs 28;" f @@ -5679,9 +5681,9 @@ wlWlCrush' src/Dodge/WallCreatureCollisions.hs 89;" f wlZoneSize src/Dodge/Zoning/Wall.hs 51;" f wlsCrush' src/Dodge/WallCreatureCollisions.hs 80;" f wlsFromIXs src/Dodge/Zoning/Wall.hs 34;" f -wlsHit src/Dodge/WorldEvent/ThingsHit.hs 157;" f -wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 169;" f -wlsHitUnsorted src/Dodge/WorldEvent/ThingsHit.hs 164;" f +wlsHit src/Dodge/WorldEvent/ThingsHit.hs 158;" f +wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 170;" f +wlsHitUnsorted src/Dodge/WorldEvent/ThingsHit.hs 165;" f wlsNearCirc src/Dodge/Zoning/Wall.hs 48;" f wlsNearPoint src/Dodge/Zoning/Wall.hs 38;" f wlsNearRect src/Dodge/Zoning/Wall.hs 45;" f @@ -5711,7 +5713,7 @@ you src/Dodge/Base/You.hs 17;" f youDropItem src/Dodge/Creature/Action.hs 183;" f yourAugmentedItem src/Dodge/Render/HUD.hs 240;" f yourControl src/Dodge/Creature/YourControl.hs 26;" f -yourDefaultStrideLength src/Dodge/Default/Creature.hs 112;" f +yourDefaultStrideLength src/Dodge/Default/Creature.hs 111;" f yourInfo src/Dodge/Creature/Info.hs 10;" f yourInv src/Dodge/Base/You.hs 37;" f yourRootItem src/Dodge/Base/You.hs 26;" f @@ -5727,11 +5729,11 @@ zeroZ src/Geometry/Vector.hs 9;" f zipArcs src/Dodge/Tesla.hs 51;" f zipCount src/Dodge/Tree/Shift.hs 142;" f zoneCloud src/Dodge/Zoning/Cloud.hs 33;" f -zoneClouds src/Dodge/Update.hs 556;" f +zoneClouds src/Dodge/Update.hs 558;" f zoneCreature src/Dodge/Zoning/Creature.hs 56;" f -zoneCreatures src/Dodge/Update.hs 591;" f +zoneCreatures src/Dodge/Update.hs 593;" f zoneDust src/Dodge/Zoning/Cloud.hs 57;" f -zoneDusts src/Dodge/Update.hs 561;" f +zoneDusts src/Dodge/Update.hs 563;" f zoneExtract src/Dodge/Zoning/Base.hs 58;" f zoneGas src/Dodge/Zoning/Cloud.hs 36;" f zoneIncPe src/Dodge/Zoning/Pathing.hs 66;" f