diff --git a/src/Dodge/Room/LongDoor.hs b/src/Dodge/Room/LongDoor.hs index f88743b6a..a06eaa5e1 100644 --- a/src/Dodge/Room/LongDoor.hs +++ b/src/Dodge/Room/LongDoor.hs @@ -94,6 +94,7 @@ addSouthPillars x h r = do pillars <- takeOne [pillarsa, pillarsb, pillarsc] return $ r & rmPmnts .++~ pillars +-- should just be able to attach the mounts to the door directly addButtonSlowDoor :: RandomGen g => Float -> Float -> Room -> State g Room addButtonSlowDoor x h = shuffleLinks @@ -185,6 +186,46 @@ slowCrushRoom = do UnusedLink s -> onside edge s _ -> False +pushCaverns :: RandomGen g => State g Room +pushCaverns = do + rm <- shuffleLinks =<< removeLights <$> roomRectAutoLights 250 100 + crs <- takeOne [[] ] + return $ rm + & rmBound <>~ [ + ] + & rmLinks %~ setInLinks (\rl -> slinks West $ rl ^. rlType) + & rmLinks %~ setOutLinks (\rl -> slinks East $ rl ^. rlType) + & rmPmnts <>~ + [ps0 (PutTrigger False) $ \i -> Just $ + pContID (spos (slinks West)) (PutButton $ makeDumbSwitch i) $ \_ -> Just $ + pContID (spos (slinks East)) (PutButton $ makeDumbSwitch i) $ \_ -> Just $ + sps0 (PutDoor (dr & drTrigger .~ WdTrig i) defaultDoorWall) & plIDCont . mapped . mapped ?~ + sps0 (PutDoor (dr1 & drTrigger .~ WdTrig i) defaultDoorWall) + ] <> crs + where + slinks x s = (FromEdge x 0 `S.member` s) + dr = defaultDoor + & drUpdate .~ DoorLerp 0.005 + & drZeroPos .~ (V2 (-5) 50, 0) + & drOnePos .~ (V2 150 50, 0) + & drFootPrint .~ IM.fromDistinctAscList (zip [0..] (loopPairs . reverse $ rectWH 10 49)) + & drMounts .~ [MountedLight (V3 30 0 50) 200 0.5 + , MountedSPic (noPic $ aBar 55 [V2 10 0,V2 32 0])] + dr1 = dr + & drOnePos .~ (V2 255 50, 0) + & drZeroPos .~ (V2 100 50, 0) + & drFootPrint .~ IM.fromDistinctAscList (zip [0..] (loopPairs . reverse $ rectWH 10 49)) + & drMounts .~ [MountedLight (V3 (-30) 0 50) 200 0.5 + , MountedSPic (noPic $ aBar 55 [V2 (-10) 0,V2 (-32) 0])] + f ps = case ps of + PS _ r -> ps & psRot +~ pi & psPos +~ rotateV r (V2 0 (-5)) + _ -> ps + spos h = (rprBool (t' h) & psSelect . mapped . mapped . _Just . _1 %~ f) + t' h rp _ = case _rpType rp of + UnusedLink s -> h s + _ -> False + + slowCrush90 :: RandomGen g => State g Room slowCrush90 = do rm <- shuffleLinks =<< roomRectAutoLights 170 100 diff --git a/src/Dodge/Room/Tutorial.hs b/src/Dodge/Room/Tutorial.hs index 1504274a9..dbceac674 100644 --- a/src/Dodge/Room/Tutorial.hs +++ b/src/Dodge/Room/Tutorial.hs @@ -55,7 +55,7 @@ tutAnoTree = do foldMTRS [ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox , corDoor - , tToBTree "slowCrush" . return . cleatOnward <$> slowCrush90 + , tToBTree "slowCrush" . return . cleatOnward <$> pushCaverns , corDoor , chasmSpitTerminal --a , return $ tToBTree "cor" $ return $ cleatOnward corridor diff --git a/src/Dodge/Update.hs b/src/Dodge/Update.hs index 04f8943b3..f5fd4d368 100644 --- a/src/Dodge/Update.hs +++ b/src/Dodge/Update.hs @@ -374,7 +374,8 @@ updateCreatureStride :: Creature -> Creature updateCreatureStride cr = cr & crStance . carriage . strideAmount +~ d where s = fromMaybe 0 $ crMvType cr ^? mvSpeed - d = min s . norm $ cr ^. crPos - cr ^. crOldPos +-- d = min s . norm $ cr ^. crPos - cr ^. crOldPos + d = max 0 . min s $ dotV (cr ^. crPos . _xy - cr ^. crOldPos . _xy) (unitVectorAtAngle (cr ^. crMvDir)) updateAimPos :: Universe -> Universe updateAimPos u = diff --git a/tags b/tags index 046605673..125d1a87e 100644 --- a/tags +++ b/tags @@ -2571,7 +2571,7 @@ addToTrunk src/TreeHelp.hs 157;" f addWarningTerminal src/Dodge/Room/Warning.hs 94;" f addZ src/Geometry/Vector3D.hs 89;" f adjustIMZone src/Dodge/Base.hs 81;" f -advanceScrollAmount src/Dodge/Update.hs 477;" f +advanceScrollAmount src/Dodge/Update.hs 478;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f aimDelaySweep src/Dodge/Render/Picture.hs 285;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f @@ -2783,7 +2783,7 @@ 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 968;" f +canSpring src/Dodge/Update.hs 969;" f cancelExamineInventory src/Dodge/Item/BackgroundEffect.hs 23;" f capacitor src/Dodge/Item/Ammo.hs 67;" f card8Vec src/Dodge/Base/CardinalPoint.hs 17;" f @@ -2823,13 +2823,13 @@ checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkConnection src/Dodge/Inventory/Swap.hs 66;" f checkDeath src/Dodge/Creature/Update.hs 78;" f checkDeath' src/Dodge/Creature/Update.hs 81;" f -checkEndGame src/Dodge/Update.hs 854;" f +checkEndGame src/Dodge/Update.hs 855;" 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 392;" f +checkTermDist src/Dodge/Update.hs 393;" 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 @@ -2883,8 +2883,8 @@ clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f clsNearRect src/Dodge/Zoning/Cloud.hs 18;" f clsNearSeg src/Dodge/Zoning/Cloud.hs 15;" f cogRaised src/Dodge/Creature/Perception.hs 101;" f -colCrWall src/Dodge/WallCreatureCollisions.hs 30;" f -colCrsWalls src/Dodge/WallCreatureCollisions.hs 22;" f +colCrWall src/Dodge/WallCreatureCollisions.hs 28;" f +colCrsWalls src/Dodge/WallCreatureCollisions.hs 20;" f collectDamageTypes src/Dodge/Damage.hs 53;" f collectInvItems src/Dodge/Inventory.hs 205;" f collide3 src/Dodge/Base/Collide.hs 129;" f @@ -2953,7 +2953,7 @@ crAwayFromPost src/Dodge/Creature/Test.hs 86;" f crBlips src/Dodge/RadarSweep.hs 88;" f crCamouflage src/Dodge/Creature/Picture.hs 33;" f crCanSeeCr src/Dodge/Creature/Test.hs 53;" f -crCrSpring src/Dodge/Update.hs 976;" f +crCrSpring src/Dodge/Update.hs 977;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 62;" f crDeathSounds src/Dodge/Creature/Vocalization.hs 45;" f crDexterity src/Dodge/Creature/Statistics.hs 19;" f @@ -2984,7 +2984,7 @@ crRad src/Dodge/Creature/Radius.hs 7;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 75;" f crSetRoots src/Dodge/Inventory/Location.hs 55;" f crShape src/Dodge/Creature/Shape.hs 8;" f -crSpring src/Dodge/Update.hs 963;" f +crSpring src/Dodge/Update.hs 964;" f crStratConMatches src/Dodge/Creature/Test.hs 81;" f crStrength src/Dodge/Creature/Statistics.hs 29;" f crUpdate src/Dodge/Creature/Update.hs 71;" f @@ -3210,7 +3210,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 562;" f +displayTerminalLineString src/Dodge/Update.hs 563;" f dist src/Geometry/Vector.hs 185;" f dist3 src/Geometry/Vector3D.hs 101;" f distributeAmmoToItem src/Dodge/WorldEffect.hs 149;" f @@ -3290,7 +3290,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 34;" f -doWorldEvents src/Dodge/Update.hs 486;" f +doWorldEvents src/Dodge/Update.hs 487;" 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 @@ -3610,7 +3610,7 @@ gameRoomViewpoints src/Dodge/Viewpoints.hs 35;" f gameRoomsFromRooms src/Dodge/Layout.hs 153;" f gameplayMenu src/Dodge/Menu.hs 152;" f gameplayMenuOptions src/Dodge/Menu.hs 155;" f -gasEffect src/Dodge/Update.hs 879;" f +gasEffect src/Dodge/Update.hs 880;" f gasType src/Dodge/HeldUse.hs 1135;" f gassesNearPoint src/Dodge/Zoning/Cloud.hs 12;" f generateGenParams src/Dodge/LevelGen/LevelStructure.hs 23;" f @@ -3636,7 +3636,7 @@ getCommands src/Dodge/Terminal.hs 58;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 505;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 492;" f -getDebugMouseOver src/Dodge/Update.hs 447;" f +getDebugMouseOver src/Dodge/Update.hs 448;" f getDistortions src/Dodge/Render.hs 443;" f getEdgesCrossing src/Dodge/Path.hs 37;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1284;" f @@ -3646,7 +3646,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 459;" f +getMenuMouseContext src/Dodge/Update.hs 460;" f getNodePos src/Dodge/Path.hs 34;" f getPJStabiliser src/Dodge/HeldUse.hs 1271;" f getPretty src/AesonHelp.hs 8;" f @@ -3883,7 +3883,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 467;" f +isOverTerminalScreen src/Dodge/Update.hs 468;" f isPulseLaser src/Dodge/IsPulseLaser.hs 10;" f isPutID src/Dodge/Placement/Instance/Wall.hs 108;" f isRHS src/Geometry/LHS.hs 44;" f @@ -4276,7 +4276,7 @@ muzzleWallCheck src/Dodge/Update.hs 346;" f mvButton src/Dodge/Placement/PlaceSpot.hs 182;" f mvCr src/Dodge/Placement/PlaceSpot.hs 185;" f mvFS src/Dodge/Placement/PlaceSpot.hs 188;" f -mvGust src/Dodge/Update.hs 870;" f +mvGust src/Dodge/Update.hs 871;" f mvLS src/Dodge/Placement/PlaceSpot.hs 235;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f @@ -4304,7 +4304,7 @@ nextInSectionSS src/Dodge/SelectionSections.hs 34;" f nextLayoutInt src/Dodge/Data/MetaTree.hs 44;" f noPic src/ShapePicture.hs 25;" f noShape src/ShapePicture.hs 29;" f -noclipCheck src/Dodge/WallCreatureCollisions.hs 25;" f +noclipCheck src/Dodge/WallCreatureCollisions.hs 23;" f nodesNear src/Dodge/Path.hs 75;" f nonConvexChasm src/Dodge/Room/Tutorial.hs 260;" f nonCornerLinks src/Dodge/Room/SensorDoor.hs 53;" f @@ -4390,7 +4390,7 @@ 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 547;" f +pbFlicker src/Dodge/Update.hs 548;" f pbsHit src/Dodge/WorldEvent/ThingsHit.hs 112;" f peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f pedestalRoom src/Dodge/Room/Containing.hs 50;" f @@ -4555,7 +4555,8 @@ psposAddLabel src/Dodge/PlacementSpot.hs 71;" f pt0 src/Dodge/LevelGen/PlacementHelper.hs 55;" f ptCont src/Dodge/LevelGen/PlacementHelper.hs 21;" f pulseChecker src/Dodge/Item/Equipment.hs 84;" f -pushCr src/Dodge/WallCreatureCollisions.hs 45;" f +pushCaverns src/Dodge/Room/LongDoor.hs 188;" f +pushCr src/Dodge/WallCreatureCollisions.hs 43;" f pushL src/DoubleStack.hs 20;" f pushOutFromCorners src/Dodge/WallCreatureCollisions.hs 116;" f pushOutFromWall src/Dodge/WallCreatureCollisions.hs 105;" f @@ -4597,7 +4598,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 123;" f -radiusSpring src/Dodge/Update.hs 952;" f +radiusSpring src/Dodge/Update.hs 953;" 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 @@ -4619,7 +4620,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 726;" f +randWallReflect src/Dodge/Update.hs 727;" f randomChallenges src/Dodge/Room/Start.hs 64;" f randomCompass src/Dodge/Layout.hs 60;" f randomFourCornerRoom src/Dodge/Room/Procedural.hs 247;" f @@ -4882,7 +4883,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 58;" f -setOldPos src/Dodge/Update.hs 578;" f +setOldPos src/Dodge/Update.hs 579;" f setOutLinks src/Dodge/RoomLink.hs 49;" f setOutLinksByType src/Dodge/RoomLink.hs 76;" f setOutLinksPD src/Dodge/RoomLink.hs 96;" f @@ -4985,7 +4986,7 @@ shufflePair src/RandomHelp.hs 166;" f shuffleRoomPos src/Dodge/Layout.hs 86;" f shuffleTail src/RandomHelp.hs 78;" f sigmoid src/Dodge/Base.hs 151;" f -simpleCrSprings src/Dodge/Update.hs 957;" f +simpleCrSprings src/Dodge/Update.hs 958;" f simpleTermMessage src/Dodge/Terminal.hs 275;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 757;" f sineRaisePitchTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 793;" f @@ -5012,10 +5013,10 @@ slapClean7S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 747;" f slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 667;" f slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 629;" f slideWindow src/ListHelp.hs 81;" f -slowCrush90 src/Dodge/Room/LongDoor.hs 188;" f +slowCrush90 src/Dodge/Room/LongDoor.hs 224;" f slowCrushRoom src/Dodge/Room/LongDoor.hs 144;" f -slowDoorRoom src/Dodge/Room/LongDoor.hs 234;" f -slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 251;" f +slowDoorRoom src/Dodge/Room/LongDoor.hs 270;" f +slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 287;" f smallBattery src/Dodge/Item/Ammo.hs 57;" f smallBranch src/Dodge/Tree/GenerateStructure.hs 32;" f smallChaseCrit src/Dodge/Creature/ChaseCrit.hs 14;" f @@ -5386,7 +5387,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 379;" f +updateAimPos src/Dodge/Update.hs 380;" f updateAllNodes src/TreeHelp.hs 86;" f updateArc src/Dodge/Tesla.hs 43;" f updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 454;" f @@ -5396,47 +5397,47 @@ 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 641;" f +updateBullets src/Dodge/Update.hs 642;" f updateCamera src/Dodge/Update/Camera.hs 33;" f updateCloseObjects src/Dodge/Inventory.hs 126;" f -updateCloud src/Dodge/Update.hs 883;" f -updateClouds src/Dodge/Update.hs 752;" f +updateCloud src/Dodge/Update.hs 884;" f +updateClouds src/Dodge/Update.hs 753;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 40;" f updateCombineSections src/Dodge/DisplayInventory.hs 47;" f updateCreature src/Dodge/Creature/Update.hs 37;" f -updateCreatureGroups src/Dodge/Update.hs 613;" f -updateCreatureSoundPositions src/Dodge/Update.hs 592;" f +updateCreatureGroups src/Dodge/Update.hs 614;" f +updateCreatureSoundPositions src/Dodge/Update.hs 593;" f updateCreatureStride src/Dodge/Update.hs 373;" f updateCreatureStrides src/Dodge/Update.hs 370;" f -updateDebris src/Dodge/Update.hs 655;" f +updateDebris src/Dodge/Update.hs 656;" 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 997;" f updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f updateDistortion src/Dodge/Distortion.hs 8;" f -updateDistortions src/Dodge/Update.hs 634;" f +updateDistortions src/Dodge/Update.hs 635;" f updateDoor src/Dodge/Door.hs 22;" f -updateDoors src/Dodge/Update.hs 384;" f -updateDust src/Dodge/Update.hs 931;" f -updateDusts src/Dodge/Update.hs 758;" f +updateDoors src/Dodge/Update.hs 385;" f +updateDust src/Dodge/Update.hs 932;" f +updateDusts src/Dodge/Update.hs 759;" f updateEdge src/Dodge/Path.hs 43;" 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 743;" f +updateEnergyBalls src/Dodge/Update.hs 744;" 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 740;" f +updateFlames src/Dodge/Update.hs 741;" 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 905;" f -updateGasses src/Dodge/Update.hs 755;" f -updateGusts src/Dodge/Update.hs 867;" f -updateIMl src/Dodge/Update.hs 607;" f -updateIMl' src/Dodge/Update.hs 610;" f +updateGas src/Dodge/Update.hs 906;" f +updateGasses src/Dodge/Update.hs 756;" f +updateGusts src/Dodge/Update.hs 868;" f +updateIMl src/Dodge/Update.hs 608;" f +updateIMl' src/Dodge/Update.hs 611;" 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 @@ -5449,35 +5450,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 493;" f +updateLasers src/Dodge/Update.hs 494;" f updateLeftParentSF src/Dodge/Item/Grammar.hs 177;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f updateLivingCreature src/Dodge/Creature/Update.hs 47;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 417;" f updateMachine src/Dodge/Machine/Update.hs 24;" f -updateMagnets src/Dodge/Update.hs 387;" f +updateMagnets src/Dodge/Update.hs 388;" f updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 205;" f -updateMouseContext src/Dodge/Update.hs 400;" f -updateMouseContextGame src/Dodge/Update.hs 405;" f +updateMouseContext src/Dodge/Update.hs 401;" f +updateMouseContextGame src/Dodge/Update.hs 406;" 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 625;" f -updateObjMapMaybe src/Dodge/Update.hs 618;" f -updatePastWorlds src/Dodge/Update.hs 482;" f -updatePlasmaBall src/Dodge/Update.hs 507;" f -updatePlasmaBalls src/Dodge/Update.hs 648;" f +updateObjCatMaybes src/Dodge/Update.hs 626;" f +updateObjMapMaybe src/Dodge/Update.hs 619;" f +updatePastWorlds src/Dodge/Update.hs 483;" f +updatePlasmaBall src/Dodge/Update.hs 508;" f +updatePlasmaBalls src/Dodge/Update.hs 649;" f updatePreload src/Preload/Update.hs 21;" f updateProjectile src/Dodge/Projectile/Update.hs 26;" f updatePulse src/Dodge/Creature/Update.hs 185;" f -updatePulseBall src/Dodge/Update.hs 527;" f -updatePulseLaser src/Dodge/Update.hs 695;" f -updatePulseLasers src/Dodge/Update.hs 502;" f +updatePulseBall src/Dodge/Update.hs 528;" f +updatePulseLaser src/Dodge/Update.hs 696;" f +updatePulseLasers src/Dodge/Update.hs 503;" f updateRBList src/Dodge/Inventory/RBList.hs 22;" f updateRadarBlip src/Dodge/RadarBlip.hs 11;" f -updateRadarBlips src/Dodge/Update.hs 637;" f +updateRadarBlips src/Dodge/Update.hs 638;" f updateRadarSweep src/Dodge/RadarSweep.hs 40;" f -updateRadarSweeps src/Dodge/Update.hs 746;" f +updateRadarSweeps src/Dodge/Update.hs 747;" f updateRandNode src/TreeHelp.hs 109;" f updateRenderSplit appDodge/Main.hs 104;" f updateRightParentSF src/Dodge/Item/Grammar.hs 188;" f @@ -5487,17 +5488,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 737;" f +updateShockwaves src/Dodge/Update.hs 738;" f updateSingleNodes src/TreeHelp.hs 98;" 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 749;" f -updateTerminal src/Dodge/Update.hs 565;" f -updateTeslaArc src/Dodge/Update.hs 665;" f -updateTeslaArcs src/Dodge/Update.hs 662;" f +updateSparks src/Dodge/Update.hs 750;" f +updateTerminal src/Dodge/Update.hs 566;" f +updateTeslaArc src/Dodge/Update.hs 666;" f +updateTeslaArcs src/Dodge/Update.hs 663;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f -updateTractorBeams src/Dodge/Update.hs 734;" f +updateTractorBeams src/Dodge/Update.hs 735;" f updateTurret src/Dodge/Machine/Update.hs 56;" f updateUniverse src/Dodge/Update.hs 81;" f updateUniverseFirst src/Dodge/Update.hs 92;" f @@ -5508,7 +5509,7 @@ updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 24;" f updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 11;" f updateWallDamages src/Dodge/Update/WallDamage.hs 15;" f updateWheelEvent src/Dodge/Update/Scroll.hs 21;" f -updateWheelEvents src/Dodge/Update.hs 472;" f +updateWheelEvents src/Dodge/Update.hs 473;" f updateWorldEventFlag src/Dodge/Update.hs 127;" f updateWorldEventFlags src/Dodge/Update.hs 115;" f upperBody src/Dodge/Creature/Picture.hs 118;" f @@ -5583,7 +5584,7 @@ walkableNodeNear src/Dodge/Path.hs 69;" f wallBlips src/Dodge/RadarSweep.hs 99;" f wallBuffer src/Dodge/WallCreatureCollisions.hs 100;" f wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f -wallMovement src/Dodge/WallCreatureCollisions.hs 71;" f +wallMovement src/Dodge/WallCreatureCollisions.hs 69;" f wallToSurface src/Dodge/Base/Collide.hs 182;" f wallsFromRooms src/Dodge/Layout.hs 141;" f wallsToDraw src/Dodge/Render/Walls.hs 18;" f @@ -5637,11 +5638,9 @@ wlIsOpaque src/Dodge/Base/Wall.hs 6;" f wlIsSeeThrough src/Dodge/Base/Wall.hs 11;" f wlOpaqueDraw src/Dodge/Render/Walls.hs 53;" f wlSeeThroughDraw src/Dodge/Render/Walls.hs 56;" f -wlWlCrush src/Dodge/WallCreatureCollisions.hs 87;" f -wlWlCrush' src/Dodge/WallCreatureCollisions.hs 92;" f +wlWlCrush' src/Dodge/WallCreatureCollisions.hs 90;" f wlZoneSize src/Dodge/Zoning/Wall.hs 51;" f -wlsCrush src/Dodge/WallCreatureCollisions.hs 79;" f -wlsCrush' src/Dodge/WallCreatureCollisions.hs 83;" f +wlsCrush' src/Dodge/WallCreatureCollisions.hs 81;" f wlsFromIXs src/Dodge/Zoning/Wall.hs 34;" f wlsHit src/Dodge/WorldEvent/ThingsHit.hs 156;" f wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 168;" f @@ -5689,11 +5688,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 554;" f +zoneClouds src/Dodge/Update.hs 555;" f zoneCreature src/Dodge/Zoning/Creature.hs 56;" f -zoneCreatures src/Dodge/Update.hs 588;" f +zoneCreatures src/Dodge/Update.hs 589;" f zoneDust src/Dodge/Zoning/Cloud.hs 57;" f -zoneDusts src/Dodge/Update.hs 559;" f +zoneDusts src/Dodge/Update.hs 560;" 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