From c1b16112795baa165fd2e67e4830bce12e733296 Mon Sep 17 00:00:00 2001 From: justin Date: Mon, 4 Nov 2024 00:40:24 +0000 Subject: [PATCH] Record mouse over combination selections --- ghcidOutput | 2 +- src/Dodge/Data/HUD.hs | 1 + src/Dodge/DisplayInventory.hs | 8 +- src/Dodge/Render/HUD.hs | 14 +- src/Dodge/SelectionSections.hs | 1 + src/Dodge/Update.hs | 10 ++ tags | 283 +++++++++++++++++---------------- 7 files changed, 175 insertions(+), 144 deletions(-) diff --git a/ghcidOutput b/ghcidOutput index e2287dc17..eac2d4e21 100644 --- a/ghcidOutput +++ b/ghcidOutput @@ -1 +1 @@ -All good (594 modules, at 00:06:14) +All good (594 modules, at 00:29:19) diff --git a/src/Dodge/Data/HUD.hs b/src/Dodge/Data/HUD.hs index d8ef8d270..1071f9ea3 100644 --- a/src/Dodge/Data/HUD.hs +++ b/src/Dodge/Data/HUD.hs @@ -40,6 +40,7 @@ data SubInventory { _ciSections :: IntMap (SelectionSection CombinableItem) , _ciSelection :: Maybe (Int, Int) , _ciFilter :: Maybe String + , _ciMouseOver :: Maybe (Int,Int) } | LockedInventory | DisplayTerminal {_termID :: Int} diff --git a/src/Dodge/DisplayInventory.hs b/src/Dodge/DisplayInventory.hs index ec746656a..a630be0c4 100644 --- a/src/Dodge/DisplayInventory.hs +++ b/src/Dodge/DisplayInventory.hs @@ -289,9 +289,11 @@ enterCombineInv :: Configuration -> World -> World enterCombineInv cfig w = w & hud . hudElement . subInventory .~ CombineInventory - sss - selpos - Nothing + { _ciSections = sss + , _ciSelection = selpos + , _ciFilter = Nothing + , _ciMouseOver = Nothing + } & hud . hudElement . diInvFilter .~ Nothing where diff --git a/src/Dodge/Render/HUD.hs b/src/Dodge/Render/HUD.hs index b0997f750..18694f6c5 100644 --- a/src/Dodge/Render/HUD.hs +++ b/src/Dodge/Render/HUD.hs @@ -102,7 +102,6 @@ getRootItemBounds i inv = do y <- locLeftmost root ^? locLDT . ldtValue . cItem . itLocation . ilInvID return (x,y) - drawDIMouseOver :: World -> Picture drawDIMouseOver w = fromMaybe mempty $ do (j, i) <- w ^? hud . hudElement . diMouseOver . _Just @@ -112,6 +111,15 @@ drawDIMouseOver w = fromMaybe mempty $ do where curs = BackdropCursor +drawCIMouseOver :: World -> Picture +drawCIMouseOver w = fromMaybe mempty $ do + (j, i) <- w ^? hud . hudElement . subInventory . ciMouseOver . _Just + sss <- w ^? hud . hudElement . subInventory . ciSections + let idp = invDisplayParams w + return . color (withAlpha 0.2 white) $ selSecDrawCursorAt 15 idp curs sss (j, i) + where + curs = BackdropCursor + getMouseInvSel :: World -> Maybe ((Int, Int), (Int, Int)) getMouseInvSel w = case w ^? hud . hudElement . subInventory . nsSelected of Just (MouseInvSelect s (Just e)) -> Just (s, e) @@ -147,6 +155,10 @@ drawCombineInventory cfig sss w = <> drawSelectionSections sss secondColumnParams cfig <> drawSSCursor sss msel secondColumnParams curs cfig <> combineInventoryExtra sss msel cfig w + <> translateScreenPos + cfig + (secondColumnParams ^. ldpPos) + (drawCIMouseOver w) where curs = BoundaryCursor [North, South, West] msel = w ^? hud . hudElement . subInventory . ciSelection . _Just diff --git a/src/Dodge/SelectionSections.hs b/src/Dodge/SelectionSections.hs index 579db9944..4c0dc7fcb 100644 --- a/src/Dodge/SelectionSections.hs +++ b/src/Dodge/SelectionSections.hs @@ -223,6 +223,7 @@ inverseSelSecYintXPosCheck cfig ldp x yint sss = do let l = length $ _ssShownItems ss V2 x0 _ = screenPosAbs cfig (ldp ^. ldpPos) guard (x - x0 < 150) -- HACK, should determine selection item width and offset below + guard (x > x0) if l <= yint then inverseSelSecYint (yint - l) othersss else do diff --git a/src/Dodge/Update.hs b/src/Dodge/Update.hs index ec55d817d..bf77aefb9 100644 --- a/src/Dodge/Update.hs +++ b/src/Dodge/Update.hs @@ -280,6 +280,7 @@ functionalUpdate u = . over uvWorld updateWheelEvents . over uvWorld (updateMouseInventorySelection (u ^. uvConfig)) . over uvWorld (updateMouseOverInventory (u ^. uvConfig)) + . over uvWorld (updateMouseOverCombineInventory (u ^. uvConfig)) . over uvWorld zoneClouds . over uvWorld zoneCreatures -- . over uvWorld updateInventorySelectionList @@ -387,6 +388,15 @@ updateMouseOverInventory cfig w = fromMaybe w $ do where ldp = invDisplayParams w +updateMouseOverCombineInventory :: Configuration -> World -> World +updateMouseOverCombineInventory cfig w = fromMaybe w $ do + sss <- w ^? hud . hudElement . subInventory . ciSections + return $ + w & hud . hudElement . subInventory . ciMouseOver + .~ inverseSelNumPos cfig ldp sss (w ^. input . mousePos) + where + ldp = secondColumnParams + updateWheelEvents :: World -> World updateWheelEvents w | yi == 0 = w diff --git a/tags b/tags index 7bc074765..1ef35a2c7 100644 --- a/tags +++ b/tags @@ -514,7 +514,7 @@ Display src/Dodge/Item/Display.hs 1;" m DisplayCarte src/Dodge/Data/HUD.hs 26;" C DisplayInventory src/Dodge/Data/HUD.hs 17;" C DisplayInventory src/Dodge/DisplayInventory.hs 2;" m -DisplayTerminal src/Dodge/Data/HUD.hs 45;" C +DisplayTerminal src/Dodge/Data/HUD.hs 46;" C Distortion src/Dodge/Data/Distortion.hs 12;" t Distortion src/Dodge/Data/Distortion.hs 6;" m Distortion src/Dodge/Distortion.hs 1;" m @@ -817,7 +817,7 @@ HELD src/Dodge/Data/Item/Combine.hs 16;" C HELDDETECTOR src/Dodge/Data/Item/Combine.hs 162;" C HOMINGMODULE src/Dodge/Data/Item/Combine.hs 82;" C HOSE src/Dodge/Data/Item/Combine.hs 32;" C -HUD src/Dodge/Data/HUD.hs 47;" t +HUD src/Dodge/Data/HUD.hs 48;" t HUD src/Dodge/Data/HUD.hs 6;" m HUD src/Dodge/Render/HUD.hs 3;" m HUDElement src/Dodge/Data/HUD.hs 16;" t @@ -1074,7 +1074,7 @@ Location src/Dodge/Item/Location.hs 1;" m LocationLDT src/Dodge/Data/DoubleTree.hs 62;" t Lock src/Dodge/Inventory/Lock.hs 1;" m LockAndKey src/Dodge/LockAndKey.hs 1;" m -LockedInventory src/Dodge/Data/HUD.hs 44;" C +LockedInventory src/Dodge/Data/HUD.hs 45;" C LoneWolf src/Dodge/Data/Creature/State.hs 46;" C LongAI src/Dodge/Data/Creature/Misc.hs 60;" C LongDoor src/Dodge/Room/LongDoor.hs 2;" m @@ -2272,15 +2272,16 @@ _camViewDistance src/Dodge/Data/Camera.hs 30;" f _camViewFrom src/Dodge/Data/Camera.hs 29;" f _camZoom src/Dodge/Data/Camera.hs 26;" f _carriage src/Dodge/Data/Creature/Stance.hs 14;" f -_carteCenter src/Dodge/Data/HUD.hs 49;" f -_carteRot src/Dodge/Data/HUD.hs 51;" f -_carteZoom src/Dodge/Data/HUD.hs 50;" f +_carteCenter src/Dodge/Data/HUD.hs 50;" f +_carteRot src/Dodge/Data/HUD.hs 52;" f +_carteZoom src/Dodge/Data/HUD.hs 51;" f _ceSideEffect src/Dodge/Data/Universe.hs 62;" f _ceString src/Dodge/Data/Universe.hs 63;" f _ciFilter src/Dodge/Data/HUD.hs 42;" f _ciInfo src/Dodge/Data/Combine.hs 8;" f _ciInvIDs src/Dodge/Data/Combine.hs 6;" f _ciItem src/Dodge/Data/Combine.hs 7;" f +_ciMouseOver src/Dodge/Data/HUD.hs 43;" f _ciSections src/Dodge/Data/HUD.hs 40;" f _ciSelection src/Dodge/Data/HUD.hs 41;" f _cigType src/Dodge/Data/Camera.hs 19;" f @@ -2306,7 +2307,7 @@ _cldtUp src/Dodge/Data/DoubleTree.hs 46;" f _cldtUp src/Dodge/Data/DoubleTree.hs 54;" f _clickPos src/Dodge/Data/Input.hs 26;" f _clickWorldPos src/Dodge/Data/Input.hs 28;" f -_closeObjects src/Dodge/Data/HUD.hs 52;" f +_closeObjects src/Dodge/Data/HUD.hs 53;" f _cloudEBO src/Data/Preload/Render.hs 49;" f _cloudShader src/Data/Preload/Render.hs 48;" f _cloudVBO src/Data/Preload/Render.hs 47;" f @@ -2590,7 +2591,7 @@ _heldPos src/Dodge/Data/Input.hs 27;" f _heldTriggerType src/Dodge/Data/Item/Use.hs 42;" f _heldWorldPos src/Dodge/Data/Input.hs 29;" f _hud src/Dodge/Data/World.hs 47;" f -_hudElement src/Dodge/Data/HUD.hs 48;" f +_hudElement src/Dodge/Data/HUD.hs 49;" f _humanoidAI src/Dodge/Data/Creature/Misc.hs 69;" f _iaLoaded src/Dodge/Data/Item/Use/Consumption.hs 22;" f _iaMax src/Dodge/Data/Item/Use/Consumption.hs 21;" f @@ -3096,7 +3097,7 @@ _tcEffect src/Dodge/Data/Terminal.hs 118;" f _tcHelp src/Dodge/Data/Terminal.hs 117;" f _tcString src/Dodge/Data/Terminal.hs 115;" f _tempLightSources src/Dodge/Data/LWorld.hs 137;" f -_termID src/Dodge/Data/HUD.hs 45;" f +_termID src/Dodge/Data/HUD.hs 46;" f _terminals src/Dodge/Data/LWorld.hs 123;" f _teslaArcs src/Dodge/Data/LWorld.hs 113;" f _testFloat src/Dodge/Data/World.hs 45;" f @@ -3319,7 +3320,7 @@ addToTrunk src/TreeHelp.hs 156;" f addWarningTerminal src/Dodge/Room/Warning.hs 37;" f addZ src/Geometry/Vector3D.hs 89;" f adjustIMZone src/Dodge/Base.hs 77;" f -advanceScrollAmount src/Dodge/Update.hs 397;" f +advanceScrollAmount src/Dodge/Update.hs 407;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 29;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 45;" f aimDelaySweep src/Dodge/Render/Picture.hs 94;" f @@ -3345,7 +3346,7 @@ ammoMagSPic src/Dodge/Item/Draw/SPic.hs 45;" f amr src/Dodge/Item/Held/Rod.hs 46;" f analyser src/Dodge/Placement/Instance/Analyser.hs 12;" f analyserByDoor src/Dodge/Room/LasTurret.hs 75;" f -andOrRegex src/Dodge/DisplayInventory.hs 73;" f +andOrRegex src/Dodge/DisplayInventory.hs 76;" f angleBetween src/Geometry.hs 145;" f angleVV src/Geometry/Vector.hs 57;" f angleVV3 src/Geometry/Vector3D.hs 122;" f @@ -3559,14 +3560,15 @@ chaseCritAwarenessUpdate src/Dodge/Creature/Perception.hs 69;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 112;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 30;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 46;" f +checkCombineSelectionExists src/Dodge/DisplayInventory.hs 98;" f checkDeath src/Dodge/Creature/State.hs 75;" f -checkEndGame src/Dodge/Update.hs 684;" f +checkEndGame src/Dodge/Update.hs 694;" f checkErrorGL src/Shader/Compile.hs 255;" f checkFBO src/Framebuffer/Check.hs 6;" f checkGLError src/GLHelp.hs 17;" f checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 16;" f -checkInventorySelectionExists src/Dodge/DisplayInventory.hs 88;" f -checkTermDist src/Dodge/Update.hs 289;" f +checkInventorySelectionExists src/Dodge/DisplayInventory.hs 91;" f +checkTermDist src/Dodge/Update.hs 290;" 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 @@ -3587,7 +3589,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 737;" f +clClSpringVel src/Dodge/Update.hs 747;" 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 @@ -3607,14 +3609,14 @@ clipZoom src/Dodge/Update/Camera.hs 215;" f clockCycle src/Dodge/Clock.hs 9;" f closeObjEq src/Dodge/Inventory/CloseObject.hs 15;" f closeObjPos src/Dodge/Inventory/CloseObject.hs 10;" f -closeObjectInfo src/Dodge/Render/HUD.hs 184;" f +closeObjectInfo src/Dodge/Render/HUD.hs 196;" f closeObjectToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f closeObjectToTextPictures src/Dodge/Inventory/SelectionList.hs 68;" f closestCreatureID src/Dodge/Debug.hs 92;" 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 707;" f +cloudEffect src/Dodge/Update.hs 717;" f cloudPoisonDamage src/Dodge/Update/Cloud.hs 9;" f clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f @@ -3643,7 +3645,7 @@ combinationsOf src/Multiset.hs 46;" f combinationsTrie src/Dodge/Combine.hs 41;" f combineAwareness src/Dodge/Creature/Perception.hs 109;" f combineFloors src/Dodge/Room/Procedural.hs 172;" f -combineInventoryExtra src/Dodge/Render/HUD.hs 294;" f +combineInventoryExtra src/Dodge/Render/HUD.hs 306;" f combineItemListYouX src/Dodge/Combine.hs 33;" f combineList src/Dodge/Combine.hs 20;" f combineRooms src/Dodge/Room/Procedural.hs 152;" f @@ -3685,7 +3687,7 @@ crAdd src/Dodge/Room/RezBox.hs 104;" f crAwayFromPost src/Dodge/Creature/Test.hs 77;" f crBlips src/Dodge/RadarSweep.hs 69;" f crCanSeeCr src/Dodge/Creature/Test.hs 48;" f -crCrSpring src/Dodge/Update.hs 755;" f +crCrSpring src/Dodge/Update.hs 765;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 28;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 37;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 51;" f @@ -3705,7 +3707,7 @@ crNearPoint src/Dodge/Creature/Test.hs 135;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 35;" f crOnWall src/Dodge/WallCreatureCollisions.hs 84;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 67;" f -crSpring src/Dodge/Update.hs 750;" f +crSpring src/Dodge/Update.hs 760;" f crStratConMatches src/Dodge/Creature/Test.hs 72;" f crUpdate src/Dodge/Creature/State.hs 62;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 47;" f @@ -3956,9 +3958,9 @@ disconnectTerminal src/Dodge/Terminal.hs 215;" f displayConfig src/Dodge/Menu.hs 196;" f displayControls src/Dodge/Menu.hs 206;" f displayFrameTicks src/Dodge/Render/Picture.hs 39;" f -displayFreeSlots src/Dodge/DisplayInventory.hs 179;" f -displayTerminal src/Dodge/Render/HUD.hs 331;" f -displayTerminalLineString src/Dodge/Update.hs 426;" f +displayFreeSlots src/Dodge/DisplayInventory.hs 196;" f +displayTerminal src/Dodge/Render/HUD.hs 343;" f +displayTerminalLineString src/Dodge/Update.hs 436;" f dist src/Geometry/Vector.hs 179;" f dist3 src/Geometry/Vector3D.hs 101;" f divTo src/Geometry/Zone.hs 6;" f @@ -4015,7 +4017,7 @@ doPropUpdates src/Dodge/Prop/Update.hs 36;" f doQuickload src/Dodge/Save.hs 82;" f doQuicksave src/Dodge/Save.hs 77;" f doRandImpulse src/Dodge/RandImpulse.hs 7;" f -doRegexInput src/Dodge/Update/Input/InGame.hs 179;" f +doRegexInput src/Dodge/Update/Input/InGame.hs 186;" f doRoomInPlacements src/Dodge/Layout.hs 97;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomPlacements src/Dodge/Layout.hs 122;" f @@ -4041,7 +4043,7 @@ doWdCrCr src/Dodge/CreatureEffect.hs 12;" f doWdP2f src/Dodge/WdP2f.hs 12;" f doWdWd src/Dodge/WorldEffect.hs 26;" f doWeaponRepetitions src/Dodge/HeldUse.hs 56;" f -doWorldEvents src/Dodge/Update.hs 408;" f +doWorldEvents src/Dodge/Update.hs 418;" 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 @@ -4064,11 +4066,12 @@ drawBlock src/Dodge/Block/Draw.hs 7;" f drawBoundingBox src/Dodge/Debug/Picture.hs 301;" f drawBul src/Dodge/Bullet/Draw.hs 9;" f drawButton src/Dodge/Button/Draw.hs 9;" f +drawCIMouseOver src/Dodge/Render/HUD.hs 114;" f drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f drawCarte src/Dodge/Render/HUD/Carte.hs 14;" f drawCircFlare src/Dodge/Flare.hs 25;" f drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f -drawCombineInventory src/Dodge/Render/HUD.hs 140;" f +drawCombineInventory src/Dodge/Render/HUD.hs 148;" f drawConcurrentMessage src/Dodge/Render/Picture.hs 62;" f drawCorpse src/Dodge/Corpse/Draw.hs 6;" f drawCrInfo src/Dodge/Debug/Picture.hs 342;" f @@ -4078,13 +4081,13 @@ drawCross src/Dodge/Render/Label.hs 24;" f drawCrossCol src/Dodge/Render/Label.hs 21;" f drawCursorAt src/Dodge/Render/List.hs 49;" f drawDDATest src/Dodge/Debug/Picture.hs 256;" f -drawDIMouseOver src/Dodge/Render/HUD.hs 106;" f -drawDISelections src/Dodge/Render/HUD.hs 124;" f +drawDIMouseOver src/Dodge/Render/HUD.hs 105;" f +drawDISelections src/Dodge/Render/HUD.hs 132;" f drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f drawDoubleLampCover src/Dodge/Prop/Draw.hs 81;" f drawEnergyBall src/Dodge/EnergyBall/Draw.hs 8;" f drawEquipment src/Dodge/Creature/Picture.hs 140;" f -drawExamineInventory src/Dodge/Render/HUD.hs 154;" f +drawExamineInventory src/Dodge/Render/HUD.hs 166;" f drawFarWallDetect src/Dodge/Debug/Picture.hs 234;" f drawFlame src/Dodge/Flame/Draw.hs 7;" f drawFlamelet src/Dodge/EnergyBall/Draw.hs 23;" f @@ -4125,7 +4128,7 @@ drawPointLabel src/Dodge/Render/Label.hs 13;" f drawProjectile src/Dodge/Projectile/Draw.hs 13;" f drawProp src/Dodge/Prop/Draw.hs 15;" f drawProp' src/Dodge/Prop/Draw.hs 12;" f -drawRBOptions src/Dodge/Render/HUD.hs 202;" f +drawRBOptions src/Dodge/Render/HUD.hs 214;" f drawRadarSweep src/Dodge/RadarSweep/Draw.hs 7;" f drawRemoteShell src/Dodge/Projectile/Draw.hs 30;" f drawRootCursor src/Dodge/Render/HUD.hs 80;" f @@ -4141,7 +4144,7 @@ drawShell src/Dodge/Projectile/Draw.hs 20;" f drawShockwave src/Dodge/Shockwave/Draw.hs 7;" f drawSpark src/Dodge/Spark/Draw.hs 6;" f drawStaticBall src/Dodge/EnergyBall/Draw.hs 14;" f -drawSubInventory src/Dodge/Render/HUD.hs 132;" f +drawSubInventory src/Dodge/Render/HUD.hs 140;" f drawSweep src/Dodge/Render/Picture.hs 101;" f drawSwitch src/Dodge/Button/Draw.hs 15;" f drawSwitchWire src/Dodge/LevelGen/Switch.hs 28;" f @@ -4190,10 +4193,10 @@ encircle src/Dodge/Creature/Boid.hs 115;" f encircleCloseP src/Dodge/Creature/Boid.hs 35;" f encircleDistP src/Dodge/Creature/Boid.hs 21;" f encircleP src/Dodge/Creature/Boid.hs 27;" f -enterCombineInv src/Dodge/DisplayInventory.hs 271;" f +enterCombineInv src/Dodge/DisplayInventory.hs 288;" f eqConstr src/SameConstr.hs 17;" f eqPosText src/Dodge/Equipment/Text.hs 6;" f -equipAllocString src/Dodge/Render/HUD.hs 260;" f +equipAllocString src/Dodge/Render/HUD.hs 272;" f equipInfo src/Dodge/Item/Info.hs 103;" f equipItemSPic src/Dodge/Item/Draw/SPic.hs 65;" f equipPosition src/Dodge/Item/Draw.hs 29;" f @@ -4239,7 +4242,7 @@ fdiv src/ShortShow.hs 27;" f feet src/Dodge/Creature/Picture.hs 51;" f ffoldM src/Framebuffer/Update.hs 79;" f filter3 src/FoldableHelp.hs 76;" f -filterSectionsPair src/Dodge/DisplayInventory.hs 145;" f +filterSectionsPair src/Dodge/DisplayInventory.hs 162;" f findBlips src/Dodge/RadarSweep.hs 44;" f findBoundDists src/Dodge/Update/Camera.hs 235;" f findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f @@ -4286,7 +4289,7 @@ flockPointTarget src/Dodge/Creature/Boid.hs 199;" f flockPointTargetR src/Dodge/Creature/Boid.hs 266;" f flockToPointUsing src/Dodge/Creature/Boid.hs 214;" f flockToPointUsing' src/Dodge/Creature/Boid.hs 227;" f -floorItemPickupInfo src/Dodge/Render/HUD.hs 189;" f +floorItemPickupInfo src/Dodge/Render/HUD.hs 201;" f floorItemSPic src/Dodge/Render/ShapePicture.hs 119;" f floorWire src/Dodge/Wire.hs 13;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 412;" f @@ -4364,7 +4367,7 @@ getLaserColor src/Dodge/HeldUse.hs 196;" f getLaserDamage src/Dodge/HeldUse.hs 193;" f getLaserPhaseV src/Dodge/HeldUse.hs 190;" f getLinksOfType src/Dodge/RoomLink.hs 39;" f -getMouseInvSel src/Dodge/Render/HUD.hs 115;" f +getMouseInvSel src/Dodge/Render/HUD.hs 123;" f getNodePos src/Dodge/Path.hs 31;" f getPretty src/AesonHelp.hs 7;" f getPrettyShort src/AesonHelp.hs 10;" f @@ -4552,9 +4555,9 @@ interweave src/Justify.hs 17;" f intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f invAdj src/Dodge/Item/Grammar.hs 186;" f invCursorParams src/Dodge/ListDisplayParams.hs 38;" f -invDimColor src/Dodge/DisplayInventory.hs 173;" f +invDimColor src/Dodge/DisplayInventory.hs 190;" f invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f -invHead src/Dodge/Render/HUD.hs 367;" f +invHead src/Dodge/Render/HUD.hs 379;" f invLDT src/Dodge/Item/Grammar.hs 169;" f invRootMap src/Dodge/Item/Grammar.hs 178;" f invRootTrees src/Dodge/Item/Grammar.hs 208;" f @@ -4565,14 +4568,14 @@ invSideEff src/Dodge/Creature/State.hs 162;" f invSize src/Dodge/Inventory/CheckSlots.hs 41;" f invTrees src/Dodge/Item/Grammar.hs 196;" f invTrees' src/Dodge/Item/Grammar.hs 200;" f -inventoryExtra src/Dodge/Render/HUD.hs 269;" f -inventoryExtraH src/Dodge/Render/HUD.hs 280;" f +inventoryExtra src/Dodge/Render/HUD.hs 281;" f +inventoryExtraH src/Dodge/Render/HUD.hs 292;" f inventoryX src/Dodge/Creature.hs 115;" f -inverseSelBoundaryDown src/Dodge/SelectionSections.hs 248;" f -inverseSelBoundaryUp src/Dodge/SelectionSections.hs 235;" f -inverseSelNumPos src/Dodge/SelectionSections.hs 226;" f -inverseSelSecYint src/Dodge/SelectionSections.hs 196;" f -inverseSelSecYintXPosCheck src/Dodge/SelectionSections.hs 207;" f +inverseSelBoundaryDown src/Dodge/SelectionSections.hs 255;" f +inverseSelBoundaryUp src/Dodge/SelectionSections.hs 242;" f +inverseSelNumPos src/Dodge/SelectionSections.hs 233;" f +inverseSelSecYint src/Dodge/SelectionSections.hs 203;" f +inverseSelSecYintXPosCheck src/Dodge/SelectionSections.hs 214;" f inverseShockwaveAt src/Dodge/WorldEvent/Shockwave.hs 43;" f invertEncircleDistP src/Dodge/Creature/Boid.hs 13;" f invertIntMap src/IntMapHelp.hs 99;" f @@ -4725,13 +4728,13 @@ listConfig src/Dodge/Menu.hs 199;" f listControls src/Dodge/Menu.hs 212;" f listCursorChooseBorderScale src/Dodge/Render/List.hs 118;" f listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f -listSelectionColorPicture src/Dodge/DisplayInventory.hs 263;" f +listSelectionColorPicture src/Dodge/DisplayInventory.hs 280;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f llleft src/Dodge/Item/Grammar.hs 105;" f llright src/Dodge/Item/Grammar.hs 112;" f lmt src/MatrixHelper.hs 43;" f lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f -lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 356;" f +lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 368;" f lnkPosDir src/Dodge/RoomLink.hs 97;" f loadDodgeConfig src/Dodge/Config/Load.hs 9;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f @@ -4849,7 +4852,7 @@ makeTlsTimeRadColPos src/Dodge/LightSource.hs 88;" f makeTypeCraft src/Dodge/Item/Craftable.hs 13;" f makeTypeCraftNum src/Dodge/Item/Craftable.hs 7;" f mapOverlay src/Dodge/Render/HUD/Carte.hs 24;" f -markWallSeen src/Dodge/Update.hs 669;" f +markWallSeen src/Dodge/Update.hs 679;" f maxDamageType src/Dodge/Damage.hs 37;" f maxShowX src/Dodge/Combine/Graph.hs 43;" f maxViewDistance src/Dodge/Viewpoints.hs 26;" f @@ -4860,7 +4863,7 @@ maybeClearPath src/Dodge/Block.hs 77;" f maybeClearPaths src/Dodge/Block.hs 74;" f maybeDestroyBlock src/Dodge/Wall/Damage.hs 26;" f maybeDestroyDoor src/Dodge/Wall/Damage.hs 31;" f -maybeExitCombine src/Dodge/Update/Input/InGame.hs 342;" f +maybeExitCombine src/Dodge/Update/Input/InGame.hs 349;" f maybeOpenTerminal src/Dodge/Update.hs 116;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeTakeOne src/RandomHelp.hs 111;" f @@ -4980,7 +4983,7 @@ mvBullet src/Dodge/Bullet.hs 33;" 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 698;" f +mvGust src/Dodge/Update.hs 708;" 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 @@ -5005,7 +5008,7 @@ newHotkey src/Dodge/Hotkey.hs 18;" f newKey src/IntMapHelp.hs 60;" f newSounds src/Dodge/Creature/Perception.hs 170;" f newTextureFramebuffer src/Framebuffer/Setup.hs 16;" f -nextInSectionSS src/Dodge/SelectionSections.hs 39;" f +nextInSectionSS src/Dodge/SelectionSections.hs 40;" f noPic src/ShapePicture.hs 25;" f noShape src/ShapePicture.hs 29;" f noclipCheck src/Dodge/WallCreatureCollisions.hs 20;" f @@ -5043,7 +5046,7 @@ optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 39;" f optionValueOffset src/Dodge/Menu/Option.hs 106;" f optionsOptions src/Dodge/Menu.hs 108;" f optionsToSelections src/Dodge/Menu/Option.hs 59;" f -orRegex src/Dodge/DisplayInventory.hs 76;" f +orRegex src/Dodge/DisplayInventory.hs 79;" f orange src/Color.hs 25;" f orderAround3 src/Geometry/Vector3D.hs 105;" f orderAroundFirst src/Geometry/Polygon.hs 82;" f @@ -5089,7 +5092,7 @@ parseNum src/Dodge/Debug/Terminal.hs 73;" f pathConnected src/Dodge/Room/CheckConsistency.hs 14;" f pathEdgeObstructed src/Dodge/Path.hs 43;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f -pauseGame src/Dodge/Update/Input/InGame.hs 276;" f +pauseGame src/Dodge/Update/Input/InGame.hs 283;" f pauseMenu src/Dodge/Menu.hs 53;" f pauseMenuOptions src/Dodge/Menu.hs 58;" f pauseSound src/Dodge/SoundLogic.hs 41;" f @@ -5146,7 +5149,7 @@ placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 70;" f placeString src/Dodge/Render/MenuScreen.hs 54;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f -plainRegex src/Dodge/DisplayInventory.hs 176;" f +plainRegex src/Dodge/DisplayInventory.hs 193;" f plateCraft src/Dodge/Item/Craftable.hs 45;" f playIfFree src/Sound.hs 136;" f playPositionalSoundQueue src/Sound.hs 144;" f @@ -5235,7 +5238,7 @@ polysToPic src/Polyhedra.hs 130;" f popScreen src/Dodge/Menu/PushPop.hs 6;" f posEventEffect src/Dodge/PosEvent.hs 16;" f posRms src/Dodge/Tree/Shift.hs 44;" f -posSelSecYint src/Dodge/SelectionSections.hs 179;" f +posSelSecYint src/Dodge/SelectionSections.hs 186;" f positionRoomsFromTree src/Dodge/Tree/Shift.hs 35;" f postGenerationProcessing src/Dodge/LevelGen.hs 33;" f postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 11;" f @@ -5248,7 +5251,7 @@ powlistUpToN src/Multiset.hs 23;" f powlistUpToN' src/Multiset.hs 12;" f powlistUpToN'' src/Multiset.hs 31;" f ppDraw src/Dodge/Render/ShapePicture.hs 116;" f -ppEvents src/Dodge/Update.hs 661;" f +ppEvents src/Dodge/Update.hs 671;" f ppLevelReset src/Dodge/PressPlate.hs 13;" f preCritStart src/Dodge/Room/Start.hs 82;" f preloadRender src/Preload/Render.hs 30;" f @@ -5374,9 +5377,9 @@ reflectInParam src/Geometry.hs 233;" f reflectLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 13;" f refract src/Dodge/Item/Weapon/LaserPath.hs 40;" f refreshOptionsSelectionList src/Dodge/Menu/Option.hs 34;" f -regexCombs src/Dodge/DisplayInventory.hs 63;" f +regexCombs src/Dodge/DisplayInventory.hs 66;" f regexIn src/Regex.hs 4;" f -regexList src/Dodge/DisplayInventory.hs 311;" f +regexList src/Dodge/DisplayInventory.hs 332;" f regexList src/Regex.hs 7;" f reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 442;" f reloadLevelStart src/Dodge/Save.hs 71;" f @@ -5532,7 +5535,7 @@ scrollCommandStrings src/Dodge/Update/Scroll.hs 137;" f scrollCommands src/Dodge/Update/Scroll.hs 134;" f scrollDebugInfoInt src/Dodge/Debug.hs 47;" f scrollRBOption src/Dodge/Update/Scroll.hs 111;" f -scrollSelectionSections src/Dodge/SelectionSections.hs 29;" f +scrollSelectionSections src/Dodge/SelectionSections.hs 30;" f scrollTimeBack src/Dodge/Update.hs 200;" f scrollTimeForward src/Dodge/Update.hs 220;" f scrollWatch src/Dodge/Item/Weapon/Utility.hs 30;" f @@ -5550,13 +5553,13 @@ secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f seedStartMenu src/Dodge/Menu.hs 79;" f seedStartOptions src/Dodge/Menu.hs 82;" f segOnCirc src/Geometry.hs 116;" f -selNumPos src/Dodge/Render/HUD.hs 427;" f -selNumPosCardinal src/Dodge/Render/HUD.hs 450;" f +selNumPos src/Dodge/Render/HUD.hs 439;" f +selNumPosCardinal src/Dodge/Render/HUD.hs 462;" f selSecDrawCursor src/Dodge/Render/List.hs 108;" f selSecDrawCursorAt src/Dodge/Render/List.hs 86;" f -selSecSelCol src/Dodge/Render/HUD.hs 473;" f -selSecSelSize src/Dodge/SelectionSections.hs 175;" f -selSecYint src/Dodge/SelectionSections.hs 184;" f +selSecSelCol src/Dodge/Render/HUD.hs 485;" f +selSecSelSize src/Dodge/SelectionSections.hs 182;" f +selSecYint src/Dodge/SelectionSections.hs 191;" f selectCreatureDebugItem src/Dodge/Debug.hs 39;" f selectUse src/Dodge/SelectUse.hs 11;" f selectedCloseObject src/Dodge/Inventory.hs 252;" f @@ -5590,7 +5593,7 @@ setLinkTypePD src/Dodge/RoomLink.hs 67;" f setMinInvSize src/Dodge/Creature/Action.hs 150;" f setMusicVolume src/Sound.hs 161;" f setMvPos src/Dodge/Creature/ReaderUpdate.hs 51;" f -setOldPos src/Dodge/Update.hs 450;" f +setOldPos src/Dodge/Update.hs 460;" f setOutLinks src/Dodge/RoomLink.hs 48;" f setOutLinksByType src/Dodge/RoomLink.hs 57;" f setOutLinksPD src/Dodge/RoomLink.hs 77;" f @@ -5645,9 +5648,9 @@ shiftChildren src/Dodge/Tree/Compose.hs 43;" f shiftDraw src/Dodge/Render/ShapePicture.hs 66;" f shiftDraw' src/Dodge/Render/ShapePicture.hs 72;" f shiftInBy src/Dodge/PlacementSpot.hs 236;" f -shiftInvItems src/Dodge/Update.hs 351;" f -shiftInvItemsDown src/Dodge/Update.hs 372;" f -shiftInvItemsUp src/Dodge/Update.hs 366;" f +shiftInvItems src/Dodge/Update.hs 352;" f +shiftInvItemsDown src/Dodge/Update.hs 373;" f +shiftInvItemsUp src/Dodge/Update.hs 367;" f shiftLinkBy src/Dodge/Room/Link.hs 87;" f shiftPSBy src/Dodge/Placement/Shift.hs 12;" f shiftPathBy src/Dodge/Room/Link.hs 92;" f @@ -5697,7 +5700,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 129;" f -simpleCrSprings src/Dodge/Update.hs 746;" f +simpleCrSprings src/Dodge/Update.hs 756;" f simpleDamFL src/Dodge/Flame.hs 41;" f simpleTermMessage src/Dodge/Terminal.hs 250;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f @@ -5746,7 +5749,7 @@ soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f soundWithStatus src/Dodge/SoundLogic.hs 98;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 48;" f southPillarsRoom src/Dodge/Room/LongDoor.hs 85;" f -spaceAction src/Dodge/Update/Input/InGame.hs 279;" f +spaceAction src/Dodge/Update/Input/InGame.hs 286;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 186;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 179;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 171;" f @@ -5780,21 +5783,22 @@ square src/Geometry/Polygon.hs 46;" f squareDecoration src/Dodge/Placement/TopDecoration.hs 41;" f squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 110;" f squashNormalizeV src/Geometry/Vector.hs 146;" f -ssLookupDown src/Dodge/SelectionSections.hs 94;" f -ssLookupGE' src/Dodge/SelectionSections.hs 168;" f -ssLookupGT src/Dodge/SelectionSections.hs 151;" f -ssLookupGT' src/Dodge/SelectionSections.hs 161;" f -ssLookupLE' src/Dodge/SelectionSections.hs 139;" f -ssLookupLT src/Dodge/SelectionSections.hs 119;" f -ssLookupLT' src/Dodge/SelectionSections.hs 129;" f -ssLookupMax src/Dodge/SelectionSections.hs 80;" f -ssLookupMaxInSection src/Dodge/SelectionSections.hs 112;" f -ssLookupMin src/Dodge/SelectionSections.hs 146;" f -ssLookupNextMax src/Dodge/SelectionSections.hs 103;" f -ssLookupUp src/Dodge/SelectionSections.hs 85;" f -ssScrollMinOnFail src/Dodge/SelectionSections.hs 60;" f -ssScrollUsing src/Dodge/SelectionSections.hs 50;" f -ssSetCursor src/Dodge/SelectionSections.hs 71;" f +ssLookupDown src/Dodge/SelectionSections.hs 101;" f +ssLookupGE' src/Dodge/SelectionSections.hs 175;" f +ssLookupGT src/Dodge/SelectionSections.hs 158;" f +ssLookupGT' src/Dodge/SelectionSections.hs 168;" f +ssLookupLE' src/Dodge/SelectionSections.hs 146;" f +ssLookupLT src/Dodge/SelectionSections.hs 126;" f +ssLookupLT' src/Dodge/SelectionSections.hs 136;" f +ssLookupMax src/Dodge/SelectionSections.hs 87;" f +ssLookupMaxInSection src/Dodge/SelectionSections.hs 119;" f +ssLookupMin src/Dodge/SelectionSections.hs 153;" f +ssLookupNextMax src/Dodge/SelectionSections.hs 110;" f +ssLookupUp src/Dodge/SelectionSections.hs 92;" f +ssScrollMinOnFail src/Dodge/SelectionSections.hs 61;" f +ssScrollUsing src/Dodge/SelectionSections.hs 51;" f +ssSetCursor src/Dodge/SelectionSections.hs 72;" f +ssTryLookup src/Dodge/SelectionSections.hs 81;" f ssfold src/FoldableHelp.hs 105;" f stackPicturesAt src/Dodge/Render/List.hs 80;" f stackPicturesAtOff src/Dodge/Render/List.hs 83;" f @@ -5802,7 +5806,7 @@ stackText src/Picture/Base.hs 188;" f stackedInventory src/Dodge/Creature.hs 282;" f startCr src/Dodge/Creature.hs 91;" f startCrafts src/Dodge/Room/Start.hs 92;" f -startDrag src/Dodge/Update.hs 340;" f +startDrag src/Dodge/Update.hs 341;" f startInvList src/Dodge/Creature.hs 109;" f startInventory src/Dodge/Creature.hs 112;" f startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f @@ -5920,7 +5924,7 @@ titleOptionsMenu src/Dodge/Menu.hs 99;" f titleOptionsNoWrite src/Dodge/Menu.hs 102;" f tlsTimeRadColPos src/Dodge/LightSource.hs 69;" f tlsTimeRadFunPos src/Dodge/LightSource.hs 26;" f -tmUpdate src/Dodge/Update.hs 430;" f +tmUpdate src/Dodge/Update.hs 440;" f toBothLnk src/Dodge/RoomLink.hs 121;" f toClosestMultiple src/HelpNum.hs 3;" f toColor8 src/Color.hs 148;" f @@ -5934,12 +5938,12 @@ toTopLeft src/Dodge/Render/List.hs 200;" f toV2 src/Geometry/Data.hs 36;" f toV3 src/Geometry/Data.hs 38;" f toV4 src/Geometry/Data.hs 40;" f -toggleCombineInv src/Dodge/DisplayInventory.hs 28;" f +toggleCombineInv src/Dodge/DisplayInventory.hs 30;" f toggleCommand src/Dodge/Terminal.hs 194;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 75;" f toggleJust src/MaybeHelp.hs 41;" f -toggleMap src/Dodge/Update/Input/InGame.hs 303;" f -toggleTweakInv src/Dodge/Update/Input/InGame.hs 319;" f +toggleMap src/Dodge/Update/Input/InGame.hs 310;" f +toggleTweakInv src/Dodge/Update/Input/InGame.hs 326;" f togglesToEffects src/Dodge/Terminal.hs 245;" f tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f @@ -6010,7 +6014,7 @@ trunkDepth src/TreeHelp.hs 161;" f tryAssignHotkey src/Dodge/Creature/YourControl.hs 85;" f tryAttachBulletBelt src/Dodge/Euse.hs 40;" f tryChargeBattery src/Dodge/Euse.hs 43;" f -tryCombine src/Dodge/Update/Input/InGame.hs 328;" f +tryCombine src/Dodge/Update/Input/InGame.hs 335;" f tryGetChannel src/Sound.hs 96;" f tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 19;" f tryGetRootItemInvID src/Dodge/Inventory/Location.hs 28;" f @@ -6056,100 +6060,101 @@ updateAllNodes src/TreeHelp.hs 85;" f updateArc src/Dodge/Tesla/Arc.hs 86;" f updateAttachedItems src/Dodge/Creature/State.hs 173;" f updateAutoRecharge src/Dodge/Creature/State.hs 324;" f -updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 214;" f +updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 221;" f updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBounds src/Dodge/Update/Camera.hs 245;" f updateBulVel src/Dodge/Bullet.hs 50;" f updateBullet src/Dodge/Bullet.hs 28;" f -updateBullets src/Dodge/Update.hs 527;" f +updateBullets src/Dodge/Update.hs 537;" f updateCamera src/Dodge/Update/Camera.hs 31;" f updateCloseObjects src/Dodge/Inventory.hs 117;" f -updateCloud src/Dodge/Update.hs 712;" f -updateClouds src/Dodge/Update.hs 556;" f +updateCloud src/Dodge/Update.hs 722;" f +updateClouds src/Dodge/Update.hs 566;" f updateCombineInvClick src/Dodge/Update/Input/InGame.hs 94;" f -updateCombinePositioning src/Dodge/DisplayInventory.hs 35;" f -updateCombineSections src/Dodge/DisplayInventory.hs 40;" f +updateCombinePositioning src/Dodge/DisplayInventory.hs 37;" f +updateCombineSections src/Dodge/DisplayInventory.hs 43;" f updateCreature src/Dodge/Creature/Update.hs 10;" f -updateCreatureGroups src/Dodge/Update.hs 496;" f -updateCreatureSoundPositions src/Dodge/Update.hs 472;" f +updateCreatureGroups src/Dodge/Update.hs 506;" f +updateCreatureSoundPositions src/Dodge/Update.hs 482;" f updateDebugMessageOffset src/Dodge/Update.hs 89;" f -updateDelayedEvents src/Dodge/Update.hs 775;" f -updateDisplaySections src/Dodge/DisplayInventory.hs 95;" f +updateDelayedEvents src/Dodge/Update.hs 785;" f +updateDisplaySections src/Dodge/DisplayInventory.hs 111;" f updateDistortion src/Dodge/Distortion.hs 5;" f -updateDistortions src/Dodge/Update.hs 517;" f +updateDistortions src/Dodge/Update.hs 527;" f updateEnergyBall src/Dodge/EnergyBall.hs 46;" f -updateEnergyBalls src/Dodge/Update.hs 544;" f -updateEnterRegex src/Dodge/Update/Input/InGame.hs 255;" f +updateEnergyBalls src/Dodge/Update.hs 554;" f +updateEnterRegex src/Dodge/Update/Input/InGame.hs 262;" f updateExpBarrel src/Dodge/Barreloid.hs 19;" f updateFBOTO src/Framebuffer/Update.hs 97;" f updateFBOTO3 src/Framebuffer/Update.hs 131;" f updateFlame src/Dodge/Flame.hs 71;" f -updateFlames src/Dodge/Update.hs 541;" f +updateFlames src/Dodge/Update.hs 551;" f updateFlare src/Dodge/Flare.hs 7;" f updateFloatingCamera src/Dodge/Update/Camera.hs 36;" f -updateGusts src/Dodge/Update.hs 695;" f +updateGusts src/Dodge/Update.hs 705;" f updateHeldRootItem src/Dodge/Creature/State.hs 167;" f updateHumanoid src/Dodge/Humanoid.hs 12;" f -updateIMl src/Dodge/Update.hs 486;" f -updateIMl' src/Dodge/Update.hs 491;" f +updateIMl src/Dodge/Update.hs 496;" f +updateIMl' src/Dodge/Update.hs 501;" f updateInGameCamera src/Dodge/Update/Camera.hs 70;" f -updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 153;" f -updateInstantBullets src/Dodge/Update.hs 633;" f +updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 160;" f +updateInstantBullets src/Dodge/Update.hs 643;" f updateInv src/Dodge/Creature/State.hs 152;" f -updateInventoryPositioning src/Dodge/DisplayInventory.hs 81;" f +updateInventoryPositioning src/Dodge/DisplayInventory.hs 84;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemWithOrientation src/Dodge/Creature/State.hs 194;" f -updateKeyInGame src/Dodge/Update/Input/InGame.hs 147;" f -updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 136;" f +updateKeyInGame src/Dodge/Update/Input/InGame.hs 154;" f +updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 143;" f updateLampoid src/Dodge/Lampoid.hs 12;" f updateLaser src/Dodge/Laser/Update.hs 13;" f -updateLasers src/Dodge/Update.hs 415;" f -updateLightSources src/Dodge/Update.hs 520;" f +updateLasers src/Dodge/Update.hs 425;" f +updateLightSources src/Dodge/Update.hs 530;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f -updateLongPressInGame src/Dodge/Update/Input/InGame.hs 173;" f -updateMIM src/Dodge/Update.hs 646;" f +updateLongPressInGame src/Dodge/Update/Input/InGame.hs 180;" f +updateMIM src/Dodge/Update.hs 656;" f updateMachine src/Dodge/Machine/Update.hs 16;" f -updateMouseInventorySelection src/Dodge/Update.hs 299;" f -updateMouseInventorySelection' src/Dodge/Update.hs 304;" f -updateMouseOverInventory src/Dodge/Update.hs 381;" f +updateMouseInventorySelection src/Dodge/Update.hs 300;" f +updateMouseInventorySelection' src/Dodge/Update.hs 305;" f +updateMouseOverCombineInventory src/Dodge/Update.hs 391;" f +updateMouseOverInventory src/Dodge/Update.hs 382;" f updateMovement src/Dodge/Creature/State.hs 331;" f -updateObjCatMaybes src/Dodge/Update.hs 508;" f -updateObjMapMaybe src/Dodge/Update.hs 501;" f -updatePastWorlds src/Dodge/Update.hs 403;" f +updateObjCatMaybes src/Dodge/Update.hs 518;" f +updateObjMapMaybe src/Dodge/Update.hs 511;" f +updatePastWorlds src/Dodge/Update.hs 413;" f updatePosEvent src/Dodge/PosEvent.hs 11;" f -updatePosEvents src/Dodge/Update.hs 553;" f +updatePosEvents src/Dodge/Update.hs 563;" f updatePreload src/Preload/Update.hs 20;" f -updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 111;" f -updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 114;" f +updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 118;" f +updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 121;" f updateProjectile src/Dodge/Projectile/Update.hs 23;" f updateProp src/Dodge/Prop/Update.hs 11;" f updateRBList src/Dodge/Inventory/RBList.hs 16;" f updateRadarBlip src/Dodge/RadarBlip.hs 8;" f -updateRadarBlips src/Dodge/Update.hs 523;" f +updateRadarBlips src/Dodge/Update.hs 533;" f updateRadarSweep src/Dodge/RadarSweep.hs 25;" f -updateRadarSweeps src/Dodge/Update.hs 547;" f +updateRadarSweeps src/Dodge/Update.hs 557;" f updateRandNode src/TreeHelp.hs 108;" f updateRenderSplit appDodge/Main.hs 106;" f updateRootItemID src/Dodge/Inventory/Location.hs 34;" f updateScopeZoom src/Dodge/Update/Camera.hs 127;" f updateScopeZoom' src/Dodge/Update/Camera.hs 132;" f updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f -updateSection src/Dodge/DisplayInventory.hs 206;" f -updateSectionsPositioning src/Dodge/DisplayInventory.hs 185;" f -updateSeenWalls src/Dodge/Update.hs 664;" f +updateSection src/Dodge/DisplayInventory.hs 223;" f +updateSectionsPositioning src/Dodge/DisplayInventory.hs 202;" f +updateSeenWalls src/Dodge/Update.hs 674;" f updateShockwave src/Dodge/Shockwave/Update.hs 12;" f -updateShockwaves src/Dodge/Update.hs 538;" f +updateShockwaves src/Dodge/Update.hs 548;" f updateSingleNodes src/TreeHelp.hs 97;" f updateSound src/Sound.hs 71;" f updateSounds src/Sound.hs 66;" f updateSpark src/Dodge/Spark.hs 19;" f -updateSparks src/Dodge/Update.hs 550;" f +updateSparks src/Dodge/Update.hs 560;" f updateTempLightSource src/Dodge/LightSource/Update.hs 7;" f updateTeslaArc src/Dodge/Tesla/Arc.hs 29;" f -updateTeslaArcs src/Dodge/Update.hs 532;" f +updateTeslaArcs src/Dodge/Update.hs 542;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f -updateTractorBeams src/Dodge/Update.hs 535;" f +updateTractorBeams src/Dodge/Update.hs 545;" f updateTurret src/Dodge/Machine/Update.hs 31;" f updateUniverse src/Dodge/Update.hs 69;" f updateUniverseFirst src/Dodge/Update.hs 80;" f @@ -6160,7 +6165,7 @@ updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 20;" 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 390;" f +updateWheelEvents src/Dodge/Update.hs 400;" f updateWorldEventFlag src/Dodge/Update.hs 110;" f updateWorldEventFlags src/Dodge/Update.hs 101;" f upperBody src/Dodge/Creature/Picture.hs 133;" f @@ -6314,7 +6319,7 @@ yV2 src/Geometry/Vector.hs 203;" f yellow src/Color.hs 17;" f you src/Dodge/Base/You.hs 18;" f youDropItem src/Dodge/Creature/Action.hs 184;" f -yourAugmentedItem src/Dodge/Render/HUD.hs 196;" f +yourAugmentedItem src/Dodge/Render/HUD.hs 208;" f yourControl src/Dodge/Creature/YourControl.hs 22;" f yourDefaultSpeed src/Dodge/Default/Creature.hs 134;" f yourDefaultStrideLength src/Dodge/Default/Creature.hs 137;" f @@ -6331,9 +6336,9 @@ zipCount src/Dodge/Tree/Shift.hs 129;" f zipCountDown src/Dodge/Room/Procedural.hs 118;" f zipWithDefaults src/Dodge/Item/Display.hs 21;" f zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f -zoneClouds src/Dodge/Update.hs 423;" f +zoneClouds src/Dodge/Update.hs 433;" f zoneCreature src/Dodge/Zoning/Creature.hs 52;" f -zoneCreatures src/Dodge/Update.hs 467;" f +zoneCreatures src/Dodge/Update.hs 477;" f zoneExtract src/Dodge/Zoning/Base.hs 50;" f zoneMonoid src/Dodge/Zoning/Base.hs 80;" f zoneOfCirc src/Dodge/Zoning/Base.hs 22;" f