From 2b969f6530d0e094721615b18b863d0ead5f9936 Mon Sep 17 00:00:00 2001 From: justin Date: Tue, 26 Nov 2024 22:49:54 +0000 Subject: [PATCH] Make selection cursors use selection item width --- src/Dodge/Data/SelectionList.hs | 4 +- src/Dodge/DisplayInventory.hs | 2 +- src/Dodge/ListDisplayParams.hs | 4 +- src/Dodge/Render/HUD.hs | 9 +- src/Dodge/Render/List.hs | 25 ++-- src/Dodge/Render/MenuScreen.hs | 1 + src/Dodge/SelectionSections/Draw.hs | 2 +- src/Dodge/TestString.hs | 5 +- tags | 202 ++++++++++++++-------------- 9 files changed, 128 insertions(+), 126 deletions(-) diff --git a/src/Dodge/Data/SelectionList.hs b/src/Dodge/Data/SelectionList.hs index 456c34443..05ea32e04 100644 --- a/src/Dodge/Data/SelectionList.hs +++ b/src/Dodge/Data/SelectionList.hs @@ -38,8 +38,8 @@ type IMSS a = IntMap (SelectionSection a) data SelectionWidth = FixedSelectionWidth Int - | VariableSelectionWidth (Int -> Int) - | UseMaxSelectionItemWidth +-- | UseMaxSelectionItemWidth + | UseItemWidth data SelectionItem a = SelectionItem diff --git a/src/Dodge/DisplayInventory.hs b/src/Dodge/DisplayInventory.hs index c603eb466..c4bc5c957 100644 --- a/src/Dodge/DisplayInventory.hs +++ b/src/Dodge/DisplayInventory.hs @@ -207,7 +207,7 @@ filterSectionsPair infocus filtfn itms filtdescription mfilt = (filtsis, itms') $ SelectionInfo [filtdescription ++ " FILTER/" ++ str ++ [filtcurs], numfiltitems] 2 - 15 + (length (filtdescription ++ " FILTER/" ++ str ++ [filtcurs])) True white 0 diff --git a/src/Dodge/ListDisplayParams.hs b/src/Dodge/ListDisplayParams.hs index 0dd06b65a..99da3a65b 100644 --- a/src/Dodge/ListDisplayParams.hs +++ b/src/Dodge/ListDisplayParams.hs @@ -26,13 +26,13 @@ defaultListDisplayParams = { _spScreenOff = V2 (-0.5) 0.5 -- top left , _spPixelOff = 0 } - , _ldpWidth = FixedSelectionWidth 15 + , _ldpWidth = UseItemWidth } invDisplayParams :: World -> ListDisplayParams invDisplayParams w = defaultListDisplayParams - & ldpWidth .~ FixedSelectionWidth (determineInvSelCursorWidth w) +-- & ldpWidth .~ FixedSelectionWidth (determineInvSelCursorWidth w) & ldpPos . spPixelOff .~ V2 6 (-1) invCursorParams :: World -> CursorDisplay diff --git a/src/Dodge/Render/HUD.hs b/src/Dodge/Render/HUD.hs index ee8e83478..6fa3a87a5 100644 --- a/src/Dodge/Render/HUD.hs +++ b/src/Dodge/Render/HUD.hs @@ -117,7 +117,7 @@ drawMouseOver cfig w = return . translateScreenPos cfig (invDisplayParams w ^. ldpPos) . color (withAlpha 0.1 white) -- . color white - $ selSecDrawCursorAt 15 idp curs sss (j, i) + $ selSecDrawCursorAt idp curs sss (j, i) -- curs = BoundaryCursor [West] curs = BackdropCursor combinvsel = do @@ -128,7 +128,7 @@ drawMouseOver cfig w = let idp = secondColumnParams return . translateScreenPos cfig (idp ^. ldpPos) . color (withAlpha 0.2 white) - $ selSecDrawCursorAt 15 idp curs sss (j, i) + $ selSecDrawCursorAt idp curs sss (j, i) drawDragSelected :: Configuration -> World -> Maybe Picture drawDragSelected cfig w = do @@ -142,7 +142,7 @@ drawDragSelected cfig w = do (i, _, _) <- w ^? hud . hudElement . diSelection . _Just sss <- w ^? hud . hudElement . diSections let idp = invDisplayParams w - let f x = (selSecDrawCursorAt 15 idp BackdropCursor sss (i, x) <>) + let f x = (selSecDrawCursorAt idp BackdropCursor sss (i, x) <>) return . translateScreenPos cfig (invDisplayParams w ^. ldpPos) . color (withAlpha 0.2 white) . IS.foldr f mempty @@ -154,7 +154,7 @@ drawDragSelecting cfig w = do b <- mselend sss <- w ^? hud . hudElement . diSections let idp = invDisplayParams w - let f x = selSecDrawCursorAt 15 idp BackdropCursor sss (i, x) + let f x = selSecDrawCursorAt idp BackdropCursor sss (i, x) return . translateScreenPos cfig (invDisplayParams w ^. ldpPos) . color (withAlpha 0.2 white) . foldMap f @@ -350,7 +350,6 @@ combineInventoryExtra sss msel cfig w = fromMaybe mempty $ do return $ translateScreenPos cfig (idp ^. ldpPos) $ selSecDrawCursor - 15 idp (BoundaryCursor [North, South, East, West]) sss' diff --git a/src/Dodge/Render/List.hs b/src/Dodge/Render/List.hs index c07ee9e70..e201c5f6e 100644 --- a/src/Dodge/Render/List.hs +++ b/src/Dodge/Render/List.hs @@ -67,14 +67,16 @@ makeSelectionListPictures = concatMap f where f si = map (color (_siColor si) . text) $ _siPictures si --- note this does not take into account any selectionsection indent +-- note this does not take into account any selectionsection indent, nor the LDP +-- selection width drawCursorAt :: Maybe Int -> [SelectionItem a] -> ListDisplayParams -> + Int -> CursorDisplay -> Picture -drawCursorAt mi lis ldps curs = fromMaybe mempty $ do +drawCursorAt mi lis ldps width curs = fromMaybe mempty $ do i <- mi selit <- lis !? i return $ @@ -85,13 +87,14 @@ drawCursorAt mi lis ldps curs = fromMaybe mempty $ do (sum . map _siHeight $ take i lis) (_siOffX selit) (_siColor selit) - (getLDPWidth ldps) + width (_siHeight selit) -getLDPWidth :: ListDisplayParams -> Int -getLDPWidth ldps = case _ldpWidth ldps of +getLDPWidth :: ListDisplayParams -> Int -> Int -> IM.IntMap (SelectionSection a) -> Int +getLDPWidth ldps i j sss = case _ldpWidth ldps of FixedSelectionWidth x -> x - _ -> 1 +-- UseMaxSelectionItemWidth -> a + UseItemWidth -> fromMaybe 0 $ sss ^? ix i . ssItems . ix j . siWidth drawListYoff :: Int -> [Picture] -> Picture drawListYoff = drawListYgapScaleYoff 0 1 @@ -106,16 +109,17 @@ stackPicturesAtOff :: Int -> [Picture] -> Picture stackPicturesAtOff i = mconcat . zipWith (drawListElement 10 1 0) [i, i -1 ..] selSecDrawCursorAt :: - Int -> +-- Int -> ListDisplayParams -> CursorDisplay -> IM.IntMap (SelectionSection a) -> (Int, Int) -> Picture -selSecDrawCursorAt xsize ldp curs sss (i, j) = fold $ do +selSecDrawCursorAt ldp curs sss (i, j) = fold $ do yint <- selSecYint i j sss sindent <- sss ^? ix i . ssIndent si <- sss ^? ix i . ssItems . ix j + let xsize = getLDPWidth ldp i j sss return $ listCursorChooseBorderScale (ldp ^. ldpVerticalGap) @@ -128,13 +132,14 @@ selSecDrawCursorAt xsize ldp curs sss (i, j) = fold $ do (_siHeight si) selSecDrawCursor :: - Int -> +-- Int -> ListDisplayParams -> CursorDisplay -> IM.IntMap (SelectionSection a) -> Maybe (Int, Int) -> Picture -selSecDrawCursor xsize ldp curs = maybe mempty . selSecDrawCursorAt xsize ldp curs +--selSecDrawCursor xsize ldp curs = maybe mempty . selSecDrawCursorAt xsize ldp curs +selSecDrawCursor ldp curs = maybe mempty . selSecDrawCursorAt ldp curs -- displays a cursor that should match up to list text pictures listCursorChooseBorderScale :: diff --git a/src/Dodge/Render/MenuScreen.hs b/src/Dodge/Render/MenuScreen.hs index 834c8bb59..3a8e670d5 100644 --- a/src/Dodge/Render/MenuScreen.hs +++ b/src/Dodge/Render/MenuScreen.hs @@ -48,6 +48,7 @@ drawOptions ldps cfig title msel sl = msel sl ldps + 50 (BoundaryCursor [North, South]) ) diff --git a/src/Dodge/SelectionSections/Draw.hs b/src/Dodge/SelectionSections/Draw.hs index e5135aab5..c170ab517 100644 --- a/src/Dodge/SelectionSections/Draw.hs +++ b/src/Dodge/SelectionSections/Draw.hs @@ -37,7 +37,7 @@ drawSSCursor :: Picture drawSSCursor sss msel ldp curs cfig = translateScreenPos cfig (ldp ^. ldpPos) $ - selSecDrawCursor 15 ldp curs sss msel + selSecDrawCursor ldp curs sss msel drawSSMultiCursor :: IM.IntMap (SelectionSection a) -> diff --git a/src/Dodge/TestString.hs b/src/Dodge/TestString.hs index 56619bde8..e7fcec90d 100644 --- a/src/Dodge/TestString.hs +++ b/src/Dodge/TestString.hs @@ -25,10 +25,7 @@ import qualified IntMapHelp as IM testStringInit :: Universe -> [String] testStringInit u = - [show $ u ^? uvWorld . input . mouseContext . mcoDragSection - ,show $ u ^? uvWorld . input . mouseContext . mcoMaybeSelect - ,show $ u ^? uvWorld . input . mouseContext . mcoAboveSelect - ,show $ u ^? uvWorld . input . mouseContext . mcoBelowSelect + [show $ u ^? uvWorld . hud . hudElement . diSections . ix (-1) . ssItems . ix 0 . siWidth ] -- fromMaybe mempty $ do -- cr <- u ^? uvWorld . cWorld . lWorld . creatures . ix 0 diff --git a/tags b/tags index 3591c7fe1..5f7d9c23f 100644 --- a/tags +++ b/tags @@ -1667,7 +1667,7 @@ SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 27;" C SelectUse src/Dodge/SelectUse.hs 1;" m Select_creature src/Dodge/Data/Config.hs 92;" C SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 22;" C -SelectionInfo src/Dodge/Data/SelectionList.hs 53;" C +SelectionInfo src/Dodge/Data/SelectionList.hs 54;" C SelectionItem src/Dodge/Data/SelectionList.hs 44;" t SelectionList src/Dodge/Data/SelectionList.hs 4;" m SelectionList src/Dodge/Inventory/SelectionList.hs 3;" m @@ -2009,7 +2009,7 @@ UseHeld src/Dodge/Data/Item/Use.hs 36;" C UseHotkey src/Dodge/Data/Item/Use.hs 44;" C UseItem src/Dodge/Data/ActionPlan.hs 37;" C UseItem src/Dodge/Creature/Impulse/UseItem.hs 1;" m -UseMaxSelectionItemWidth src/Dodge/Data/SelectionList.hs 42;" C +UseItemWidth src/Dodge/Data/SelectionList.hs 42;" C UseMvTargetPos src/Dodge/Data/ActionPlan.hs 163;" C UseScope src/Dodge/Data/Item/Use.hs 60;" C UseSelf src/Dodge/Data/ActionPlan.hs 157;" C @@ -2023,7 +2023,6 @@ VBO src/Shader/Data.hs 81;" t VF src/Polyhedra/Data.hs 21;" t VIOLET src/Color/Data.hs 22;" C VOLLEYGUN src/Dodge/Data/Item/Combine.hs 139;" C -VariableSelectionWidth src/Dodge/Data/SelectionList.hs 41;" C Vector src/Geometry/Vector.hs 3;" m Vector3D src/Geometry/Vector3D.hs 2;" m VertexAttribute src/Shader/Data.hs 68;" t @@ -3010,17 +3009,19 @@ _shapeHalfSize src/Shape/Data.hs 18;" f _shapeShader src/Data/Preload/Render.hs 25;" f _shockwaves src/Dodge/Data/LWorld.hs 114;" f _shrinkGunStatus src/Dodge/Data/Item/Params.hs 18;" f -_siColor src/Dodge/Data/SelectionList.hs 49;" f -_siColor src/Dodge/Data/SelectionList.hs 57;" f +_siColor src/Dodge/Data/SelectionList.hs 50;" f +_siColor src/Dodge/Data/SelectionList.hs 59;" f _siHeight src/Dodge/Data/SelectionList.hs 47;" f -_siHeight src/Dodge/Data/SelectionList.hs 55;" f -_siIsSelectable src/Dodge/Data/SelectionList.hs 48;" f -_siIsSelectable src/Dodge/Data/SelectionList.hs 56;" f -_siOffX src/Dodge/Data/SelectionList.hs 50;" f -_siOffX src/Dodge/Data/SelectionList.hs 58;" f -_siPayload src/Dodge/Data/SelectionList.hs 51;" f +_siHeight src/Dodge/Data/SelectionList.hs 56;" f +_siIsSelectable src/Dodge/Data/SelectionList.hs 49;" f +_siIsSelectable src/Dodge/Data/SelectionList.hs 58;" f +_siOffX src/Dodge/Data/SelectionList.hs 51;" f +_siOffX src/Dodge/Data/SelectionList.hs 60;" f +_siPayload src/Dodge/Data/SelectionList.hs 52;" f _siPictures src/Dodge/Data/SelectionList.hs 46;" f -_siPictures src/Dodge/Data/SelectionList.hs 54;" f +_siPictures src/Dodge/Data/SelectionList.hs 55;" f +_siWidth src/Dodge/Data/SelectionList.hs 48;" f +_siWidth src/Dodge/Data/SelectionList.hs 57;" f _sideEffect src/Loop/Data.hs 13;" f _sideImpulses src/Dodge/Data/ActionPlan.hs 170;" f _sidePush src/Dodge/Data/Item/Use.hs 87;" f @@ -3556,7 +3557,7 @@ checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f chemFuelPouch src/Dodge/Item/Ammo.hs 110;" f -chooseCursorBorders src/Dodge/Render/List.hs 161;" f +chooseCursorBorders src/Dodge/Render/List.hs 166;" f chooseEquipmentPosition src/Dodge/Inventory/RBList.hs 36;" f chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 39;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 42;" f @@ -3590,10 +3591,10 @@ clickGetCreature src/Dodge/Debug.hs 83;" f clipV src/Geometry/Vector.hs 47;" f clipZoom src/Dodge/Update/Camera.hs 215;" f clockCycle src/Dodge/Clock.hs 9;" f -closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 66;" f -closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 52;" f -closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 79;" f -closeObjectInfo src/Dodge/Render/HUD.hs 214;" f +closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 68;" f +closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 53;" f +closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 82;" f +closeObjectInfo src/Dodge/Render/HUD.hs 215;" f closestCreatureID src/Dodge/Debug.hs 92;" f closestPointOnLine src/Geometry/Intersect.hs 251;" f closestPointOnLineParam src/Geometry/Intersect.hs 267;" f @@ -3612,7 +3613,7 @@ colCrsWalls src/Dodge/WallCreatureCollisions.hs 17;" f colSpark src/Dodge/Spark.hs 47;" f colSparkRandDir src/Dodge/Spark.hs 101;" f collectDamageTypes src/Dodge/Damage.hs 32;" f -collectInvItems src/Dodge/Update/Input/InGame.hs 280;" f +collectInvItems src/Dodge/Update/Input/InGame.hs 282;" f collideCircWalls src/Dodge/Base/Collide.hs 149;" f collidePoint src/Dodge/Base/Collide.hs 48;" f collidePointTestFilter src/Dodge/Base/Collide.hs 93;" f @@ -3624,11 +3625,11 @@ colorSH src/Shape.hs 235;" f combinationsDotGraph src/Dodge/Combine/Graph.hs 94;" f combinationsGraph src/Dodge/Combine/Graph.hs 73;" f combinationsOf src/Multiset.hs 46;" f -combinationsTrie src/Dodge/Combine.hs 41;" f +combinationsTrie src/Dodge/Combine.hs 42;" f combineAwareness src/Dodge/Creature/Perception.hs 109;" f combineFloors src/Dodge/Room/Procedural.hs 172;" f -combineInventoryExtra src/Dodge/Render/HUD.hs 332;" f -combineItemListYouX src/Dodge/Combine.hs 33;" f +combineInventoryExtra src/Dodge/Render/HUD.hs 333;" f +combineItemListYouX src/Dodge/Combine.hs 34;" f combineList src/Dodge/Combine.hs 20;" f combineRooms src/Dodge/Room/Procedural.hs 152;" f combineS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 356;" f @@ -3646,7 +3647,7 @@ composeTree src/Dodge/Tree/Compose.hs 46;" f computerBeepingS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f conEffects src/Dodge/Concurrent.hs 13;" f concBall src/Dodge/WorldEvent/SpawnParticle.hs 27;" f -concurrentIS src/Dodge/Update/Input/InGame.hs 272;" f +concurrentIS src/Dodge/Update/Input/InGame.hs 274;" f connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 532;" f connectionBlurb src/Dodge/Terminal.hs 102;" f connectionBlurbLines src/Dodge/Terminal.hs 47;" f @@ -3759,7 +3760,7 @@ cylinderIndices src/Shader/Poke.hs 374;" f cylinderOnSeg src/Geometry.hs 125;" f cylinderPoly src/Shape.hs 86;" f cylinderRoundIndices src/Shader/Poke.hs 381;" f -dShadCol src/Dodge/Render/List.hs 220;" f +dShadCol src/Dodge/Render/List.hs 225;" f damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f damToExpBarrel src/Dodge/Barreloid.hs 57;" f damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f @@ -3781,7 +3782,7 @@ damageWlCircle src/Dodge/DamageCircle.hs 26;" f dampField src/Dodge/Magnet.hs 8;" f damsToExpBarrel src/Dodge/Barreloid.hs 50;" f dark src/Color.hs 108;" f -darkenBackground src/Dodge/Render/MenuScreen.hs 54;" f +darkenBackground src/Dodge/Render/MenuScreen.hs 55;" f dbArg src/Dodge/Base.hs 143;" f dbArgChain src/Dodge/Base.hs 148;" f deZoneIX src/Dodge/Zoning/Base.hs 86;" f @@ -3930,7 +3931,7 @@ disconnectTerminal src/Dodge/Terminal.hs 217;" 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 224;" f +displayFreeSlots src/Dodge/DisplayInventory.hs 225;" f displayIndents src/Dodge/DisplayInventory.hs 123;" f displaySectionsSizes src/Dodge/DisplayInventory.hs 118;" f displayTerminalLineString src/Dodge/Update.hs 438;" f @@ -3963,7 +3964,7 @@ doDamagesFL src/Dodge/Flame.hs 57;" f doDeathToggle src/Dodge/WorldEffect.hs 96;" f doDeathTriggers src/Dodge/WorldEffect.hs 91;" f doDrWdWd src/Dodge/DrWdWd.hs 16;" f -doDrag src/Dodge/Update/Input/InGame.hs 104;" f +doDrag src/Dodge/Update/Input/InGame.hs 99;" f doDrawing src/Dodge/Render.hs 35;" f doDrawing' src/Dodge/Render.hs 46;" f doFloatFloat src/Dodge/FloatFunction.hs 5;" f @@ -3991,13 +3992,13 @@ 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 445;" f +doRegexInput src/Dodge/Update/Input/InGame.hs 422;" f doRoomInPlacements src/Dodge/Layout.hs 97;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomPlacements src/Dodge/Layout.hs 122;" f doRoomShift src/Dodge/Room/Link.hs 33;" f doScopeZoom src/Dodge/Update/Camera.hs 141;" f -doSectionSize src/Dodge/DisplayInventory.hs 246;" f +doSectionSize src/Dodge/DisplayInventory.hs 247;" f doSideEffects appDodge/Main.hs 118;" f doStep src/Dodge/ArcStep.hs 9;" f doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f @@ -4052,7 +4053,7 @@ drawCreature src/Dodge/Render/ShapePicture.hs 41;" f drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 165;" f drawCross src/Dodge/Render/Label.hs 24;" f drawCrossCol src/Dodge/Render/Label.hs 21;" f -drawCursorAt src/Dodge/Render/List.hs 71;" f +drawCursorAt src/Dodge/Render/List.hs 72;" f drawDDATest src/Dodge/Debug/Picture.hs 256;" f drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f drawDoubleLampCover src/Dodge/Prop/Draw.hs 81;" f @@ -4069,7 +4070,7 @@ drawExamineInventory src/Dodge/Render/HUD.hs 187;" 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 -drawFooterText src/Dodge/Render/MenuScreen.hs 74;" f +drawFooterText src/Dodge/Render/MenuScreen.hs 75;" f drawForceField src/Dodge/Wall/Draw.hs 11;" f drawGapPlus src/Dodge/Render/Picture.hs 230;" f drawGib src/Dodge/Prop/Draw.hs 28;" f @@ -4078,16 +4079,18 @@ drawInputMenu src/Dodge/Render/MenuScreen.hs 21;" f drawInspectWall src/Dodge/Debug/Picture.hs 209;" f drawInspectWalls src/Dodge/Debug/Picture.hs 197;" f drawInventory src/Dodge/Render/HUD.hs 54;" f +drawItemChildrenConnect src/Dodge/Render/HUD.hs 319;" f +drawItemConnections src/Dodge/Render/HUD.hs 308;" f drawJumpDown src/Dodge/Render/Picture.hs 163;" f drawLabCrossCol src/Dodge/Render/Label.hs 8;" f drawLampCover src/Dodge/Prop/Draw.hs 44;" f drawLaser src/Dodge/Laser/Draw.hs 6;" f drawLightSource src/Dodge/LightSource/Draw.hs 7;" f drawLinearShockwave src/Dodge/LinearShockwave/Draw.hs 10;" f -drawList src/Dodge/Render/List.hs 214;" f -drawListElement src/Dodge/Render/List.hs 192;" f -drawListYgapScaleYoff src/Dodge/Render/List.hs 99;" f -drawListYoff src/Dodge/Render/List.hs 96;" f +drawList src/Dodge/Render/List.hs 219;" f +drawListElement src/Dodge/Render/List.hs 197;" f +drawListYgapScaleYoff src/Dodge/Render/List.hs 102;" f +drawListYoff src/Dodge/Render/List.hs 99;" f drawMachine src/Dodge/Machine/Draw.hs 17;" f drawMapWall src/Dodge/Render/HUD/Carte.hs 33;" f drawMenuClick src/Dodge/Render/Picture.hs 137;" f @@ -4108,7 +4111,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 240;" f +drawRBOptions src/Dodge/Render/HUD.hs 241;" f drawRadarSweep src/Dodge/RadarSweep/Draw.hs 7;" f drawRemoteShell src/Dodge/Projectile/Draw.hs 30;" f drawReturn src/Dodge/Render/Picture.hs 123;" f @@ -4135,7 +4138,7 @@ drawTargeting src/Dodge/Targeting/Draw.hs 13;" f drawTerminalDisplay src/Dodge/Render/HUD.hs 358;" f drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f drawText src/Picture/Base.hs 220;" f -drawTitle src/Dodge/Render/MenuScreen.hs 57;" f +drawTitle src/Dodge/Render/MenuScreen.hs 58;" f drawTitleBackground src/Dodge/Render/List.hs 44;" f drawTractorBeam src/Dodge/TractorBeam/Draw.hs 7;" f drawTurret src/Dodge/Machine/Draw.hs 65;" f @@ -4177,12 +4180,12 @@ 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 -endCombineRegex src/Dodge/Update/Input/InGame.hs 245;" f -endRegex src/Dodge/Update/Input/InGame.hs 234;" f -enterCombineInv src/Dodge/DisplayInventory.hs 358;" f +endCombineRegex src/Dodge/Update/Input/InGame.hs 247;" f +endRegex src/Dodge/Update/Input/InGame.hs 236;" f +enterCombineInv src/Dodge/DisplayInventory.hs 359;" f eqConstr src/SameConstr.hs 17;" f eqPosText src/Dodge/Equipment/Text.hs 6;" f -equipAllocString src/Dodge/Render/HUD.hs 298;" f +equipAllocString src/Dodge/Render/HUD.hs 299;" f equipInfo src/Dodge/Item/Info.hs 103;" f equipItemSPic src/Dodge/Item/Draw/SPic.hs 65;" f equipPosition src/Dodge/Item/Draw.hs 30;" f @@ -4254,7 +4257,7 @@ flameWall src/Dodge/Item/Held/SprayGuns.hs 56;" f flamerPic src/Dodge/Item/Draw/SPic.hs 328;" f flareCircleAt src/Dodge/HeldUse.hs 184;" f flatItemCombinations src/Dodge/Combine/Combinations.hs 49;" f -flatLookupItems src/Dodge/Combine.hs 36;" f +flatLookupItems src/Dodge/Combine.hs 37;" f flatShield src/Dodge/Item/Held/Utility.hs 9;" f flatShieldEquipSPic src/Dodge/Item/Draw/SPic.hs 378;" f fleeFrom src/Dodge/CreatureEffect.hs 120;" f @@ -4272,7 +4275,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 219;" f +floorItemPickupInfo src/Dodge/Render/HUD.hs 220;" f floorItemSPic src/Dodge/Render/ShapePicture.hs 119;" f floorWire src/Dodge/Wire.hs 13;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 412;" f @@ -4345,7 +4348,7 @@ getDamageCoding src/Dodge/Terminal.hs 177;" f getDistortions src/Dodge/Render.hs 383;" f getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f getItem src/Dodge/Item/Location.hs 15;" f -getLDPWidth src/Dodge/Render/List.hs 91;" f +getLDPWidth src/Dodge/Render/List.hs 93;" f getLaserColor src/Dodge/HeldUse.hs 199;" f getLaserDamage src/Dodge/HeldUse.hs 196;" f getLaserPhaseV src/Dodge/HeldUse.hs 193;" f @@ -4398,7 +4401,7 @@ gridPoints src/Grid.hs 67;" f gridPoints' src/Grid.hs 79;" f gridPoints'' src/Grid.hs 74;" f gridPointsOff src/Grid.hs 62;" f -groupSplitItemAmounts src/Dodge/Combine.hs 49;" f +groupSplitItemAmounts src/Dodge/Combine.hs 50;" f gruntS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 502;" f guardDisconnectedID src/Dodge/Update/Scroll.hs 73;" f gut1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 536;" f @@ -4462,7 +4465,7 @@ homingDrawType src/Dodge/Projectile/Create.hs 12;" f homingModule src/Dodge/Item/Scope.hs 32;" f horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f hotkeyToScancode src/Dodge/Creature/YourControl.hs 54;" f -hotkeyToString src/Dodge/Inventory/SelectionList.hs 37;" f +hotkeyToString src/Dodge/Inventory/SelectionList.hs 38;" f humanoidAIList src/Dodge/Humanoid.hs 181;" f hvBulletAmmo src/Dodge/Item/Weapon/Bullet.hs 31;" f iShape src/Dodge/Placement/Instance/LightSource.hs 73;" f @@ -4534,9 +4537,9 @@ interweave src/Justify.hs 17;" f intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f invAdj src/Dodge/Item/Grammar.hs 189;" f invCursorParams src/Dodge/ListDisplayParams.hs 38;" f -invDimColor src/Dodge/DisplayInventory.hs 218;" f +invDimColor src/Dodge/DisplayInventory.hs 219;" f invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f -invHead src/Dodge/Render/HUD.hs 397;" f +invHead src/Dodge/Render/HUD.hs 398;" f invLDT src/Dodge/Item/Grammar.hs 172;" f invRootMap src/Dodge/Item/Grammar.hs 181;" f invRootTrees src/Dodge/Item/Grammar.hs 211;" f @@ -4546,8 +4549,6 @@ invSideEff src/Dodge/Creature/State.hs 161;" f invSize src/Dodge/Inventory/CheckSlots.hs 30;" f invTrees src/Dodge/Item/Grammar.hs 199;" f invTrees' src/Dodge/Item/Grammar.hs 203;" f -inventoryExtra src/Dodge/Render/HUD.hs 307;" f -inventoryExtraH src/Dodge/Render/HUD.hs 318;" f inventoryX src/Dodge/Creature.hs 115;" f inverseSelNumPos src/Dodge/SelectionSections.hs 228;" f inverseSelSecYint src/Dodge/SelectionSections.hs 201;" f @@ -4556,7 +4557,7 @@ inverseShockwaveAt src/Dodge/WorldEvent/Shockwave.hs 43;" f invertEncircleDistP src/Dodge/Creature/Boid.hs 13;" f invertIntMap src/IntMapHelp.hs 99;" f invertIntMap src/Multiset.hs 67;" f -invertInventoryToMap src/Dodge/Combine.hs 54;" f +invertInventoryToMap src/Dodge/Combine.hs 55;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 25;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f isAmmoIntLink src/Dodge/HeldUse.hs 210;" f @@ -4566,7 +4567,7 @@ isConnected src/Dodge/Inventory/Swap.hs 90;" f isElectrical src/Dodge/Data/Damage.hs 42;" f isFrictionless src/Dodge/Creature/State.hs 341;" f isGas src/Dodge/Euse.hs 63;" f -isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 168;" f +isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 170;" f isInLnk src/Dodge/PlacementSpot.hs 160;" f isJust' src/MaybeHelp.hs 29;" f isLHS src/Geometry/LHS.hs 8;" f @@ -4703,15 +4704,15 @@ linksAndPath' src/Dodge/Room/Path.hs 44;" f linksOnPath src/Dodge/Room/CheckConsistency.hs 7;" f listConfig src/Dodge/Menu.hs 199;" f listControls src/Dodge/Menu.hs 212;" f -listCursorChooseBorderScale src/Dodge/Render/List.hs 140;" f +listCursorChooseBorderScale src/Dodge/Render/List.hs 145;" f listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f -listSelectionColorPicture src/Dodge/DisplayInventory.hs 350;" f +listSelectionColorPicture src/Dodge/DisplayInventory.hs 351;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f llleft src/Dodge/Item/Grammar.hs 107;" f llright src/Dodge/Item/Grammar.hs 114;" f lmt src/MatrixHelper.hs 43;" f lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f -lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 386;" f +lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 387;" f lnkPosDir src/Dodge/RoomLink.hs 97;" f loadDodgeConfig src/Dodge/Config/Load.hs 9;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f @@ -4837,7 +4838,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 608;" f +maybeExitCombine src/Dodge/Update/Input/InGame.hs 585;" f maybeOpenTerminal src/Dodge/Update.hs 123;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeTakeOne src/RandomHelp.hs 111;" f @@ -5061,7 +5062,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 528;" f +pauseGame src/Dodge/Update/Input/InGame.hs 505;" f pauseMenu src/Dodge/Menu.hs 53;" f pauseMenuOptions src/Dodge/Menu.hs 58;" f pauseSound src/Dodge/SoundLogic.hs 41;" f @@ -5117,9 +5118,9 @@ placeSpotID src/Dodge/Placement/PlaceSpot.hs 100;" f placeSpotID' src/Dodge/Placement/PlaceSpot.hs 106;" f placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 70;" f -placeString src/Dodge/Render/MenuScreen.hs 63;" f +placeString src/Dodge/Render/MenuScreen.hs 64;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f -plainRegex src/Dodge/DisplayInventory.hs 221;" f +plainRegex src/Dodge/DisplayInventory.hs 222;" f plateCraft src/Dodge/Item/Craftable.hs 45;" f playIfFree src/Sound.hs 136;" f playPositionalSoundQueue src/Sound.hs 144;" f @@ -5347,7 +5348,7 @@ reflectLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 13;" f refract src/Dodge/Item/Weapon/LaserPath.hs 40;" f refreshOptionsSelectionList src/Dodge/Menu/Option.hs 39;" f regexCombs src/Dodge/DisplayInventory.hs 71;" f -regexList src/Dodge/DisplayInventory.hs 394;" f +regexList src/Dodge/DisplayInventory.hs 395;" f reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 442;" f reloadLevelStart src/Dodge/Save.hs 71;" f reloadS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 440;" f @@ -5366,7 +5367,7 @@ renderInfoListAt src/Dodge/Render/InfoBox.hs 17;" f renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f renderLayer src/Render.hs 233;" f renderLightingNoShadows src/Render.hs 48;" f -renderListAt src/Dodge/Render/List.hs 197;" f +renderListAt src/Dodge/Render/List.hs 202;" f renderShadows src/Render.hs 117;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 160;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f @@ -5515,17 +5516,17 @@ seagullWhistle1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 372;" f seagullWhistleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 530;" f searchIfDamaged src/Dodge/Creature/ReaderUpdate.hs 203;" f secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f -sectionsDesiredLines src/Dodge/DisplayInventory.hs 230;" f -sectionsSizes src/Dodge/DisplayInventory.hs 235;" f +sectionsDesiredLines src/Dodge/DisplayInventory.hs 231;" f +sectionsSizes src/Dodge/DisplayInventory.hs 236;" f seedStartMenu src/Dodge/Menu.hs 79;" f seedStartOptions src/Dodge/Menu.hs 82;" f segOnCirc src/Geometry.hs 116;" f -selCloseObj src/Dodge/Update/Input/InGame.hs 551;" f -selNumPos src/Dodge/Render/HUD.hs 446;" f -selNumPosCardinal src/Dodge/Render/HUD.hs 469;" f -selSecDrawCursor src/Dodge/Render/List.hs 130;" f -selSecDrawCursorAt src/Dodge/Render/List.hs 108;" f -selSecSelCol src/Dodge/Render/HUD.hs 494;" f +selCloseObj src/Dodge/Update/Input/InGame.hs 528;" f +selNumPos src/Dodge/Render/HUD.hs 447;" f +selNumPosCardinal src/Dodge/Render/HUD.hs 470;" f +selSecDrawCursor src/Dodge/Render/List.hs 134;" f +selSecDrawCursorAt src/Dodge/Render/List.hs 111;" f +selSecSelCol src/Dodge/Render/HUD.hs 499;" f selSecSelSize src/Dodge/SelectionSections.hs 180;" f selSecYint src/Dodge/SelectionSections.hs 189;" f selectCreatureDebugItem src/Dodge/Debug.hs 39;" f @@ -5565,7 +5566,7 @@ setOutLinks src/Dodge/RoomLink.hs 48;" f setOutLinksByType src/Dodge/RoomLink.hs 57;" f setOutLinksPD src/Dodge/RoomLink.hs 77;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 292;" f -setSelWhileDragging src/Dodge/Update/Input/InGame.hs 341;" f +setSelWhileDragging src/Dodge/Update/Input/InGame.hs 318;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 85;" f setShaderSource src/Shader/Compile.hs 290;" f setShadowLimits src/Dodge/Shadows.hs 11;" f @@ -5616,10 +5617,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/Input/InGame.hs 290;" f -shiftInvItems' src/Dodge/Update/Input/InGame.hs 315;" f -shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 354;" f -shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 348;" f +shiftInvItems src/Dodge/Update/Input/InGame.hs 292;" f +shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 331;" f +shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 325;" 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 @@ -5659,9 +5659,9 @@ showEquipItem src/Dodge/Item/Display.hs 68;" f showEquipmentNumber src/Dodge/Item/Display.hs 110;" f showInt src/Dodge/Item/Info.hs 31;" f showIntsString src/Dodge/Tree/Compose.hs 129;" f -showManObj src/Dodge/TestString.hs 75;" f +showManObj src/Dodge/TestString.hs 72;" f showTerminalError src/Dodge/Debug/Terminal.hs 76;" f -showTimeFlow src/Dodge/TestString.hs 124;" f +showTimeFlow src/Dodge/TestString.hs 121;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 136;" f shrinkVert src/Geometry/Polygon.hs 140;" f shuffle src/RandomHelp.hs 49;" f @@ -5718,7 +5718,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 531;" f +spaceAction src/Dodge/Update/Input/InGame.hs 508;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 190;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 183;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 175;" f @@ -5768,13 +5768,13 @@ ssScrollMinOnFail src/Dodge/SelectionSections.hs 57;" f ssScrollUsing src/Dodge/SelectionSections.hs 47;" f ssSetCursor src/Dodge/SelectionSections.hs 72;" f ssfold src/FoldableHelp.hs 105;" f -stackPicturesAt src/Dodge/Render/List.hs 102;" f -stackPicturesAtOff src/Dodge/Render/List.hs 105;" f +stackPicturesAt src/Dodge/Render/List.hs 105;" f +stackPicturesAtOff src/Dodge/Render/List.hs 108;" f stackText src/Picture/Base.hs 188;" f stackedInventory src/Dodge/Creature.hs 281;" f startCr src/Dodge/Creature.hs 91;" f startCrafts src/Dodge/Room/Start.hs 92;" f -startDrag src/Dodge/Update/Input/InGame.hs 256;" f +startDrag src/Dodge/Update/Input/InGame.hs 258;" f startInvList src/Dodge/Creature.hs 109;" f startInventory src/Dodge/Creature.hs 112;" f startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f @@ -5904,7 +5904,7 @@ toLabel src/Dodge/Cleat.hs 16;" f toLasgunUpdate src/Dodge/Item/Grammar.hs 119;" f toMultiset src/Multiset.hs 64;" f toOnward src/Dodge/Tree/Compose.hs 101;" f -toTopLeft src/Dodge/Render/List.hs 224;" f +toTopLeft src/Dodge/Render/List.hs 229;" f toV2 src/Geometry/Data.hs 36;" f toV3 src/Geometry/Data.hs 38;" f toV4 src/Geometry/Data.hs 40;" f @@ -5912,8 +5912,8 @@ toggleCombineInv src/Dodge/DisplayInventory.hs 35;" f toggleCommand src/Dodge/Terminal.hs 196;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 79;" f toggleJust src/MaybeHelp.hs 41;" f -toggleMap src/Dodge/Update/Input/InGame.hs 572;" f -toggleTweakInv src/Dodge/Update/Input/InGame.hs 585;" f +toggleMap src/Dodge/Update/Input/InGame.hs 549;" f +toggleTweakInv src/Dodge/Update/Input/InGame.hs 562;" f togglesToEffects src/Dodge/Terminal.hs 248;" f tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f @@ -5921,7 +5921,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 332;" f topInvW src/Dodge/ListDisplayParams.hs 53;" f topPrismEdgeIndices src/Shader/Poke.hs 327;" f topPrismIndices src/Shader/Poke.hs 402;" f -topTestPart src/Dodge/TestString.hs 71;" f +topTestPart src/Dodge/TestString.hs 68;" f torch src/Dodge/Item/Held/Utility.hs 26;" f torchShape src/Dodge/Item/Draw/SPic.hs 213;" f torqueCr src/Dodge/WorldEffect.hs 72;" f @@ -5984,13 +5984,13 @@ trunkDepth src/TreeHelp.hs 161;" f tryAssignHotkey src/Dodge/Creature/YourControl.hs 85;" f tryAttachBulletBelt src/Dodge/Euse.hs 39;" f tryChargeBattery src/Dodge/Euse.hs 42;" f -tryCombine src/Dodge/Update/Input/InGame.hs 594;" f -tryDropSelected src/Dodge/Update/Input/InGame.hs 113;" f +tryCombine src/Dodge/Update/Input/InGame.hs 571;" f +tryDropSelected src/Dodge/Update/Input/InGame.hs 115;" f tryGetChannel src/Sound.hs 96;" f tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 20;" f tryGetRootItemInvID src/Dodge/Inventory/Location.hs 29;" f tryMeleeAttack src/Dodge/Creature/ReaderUpdate.hs 36;" f -tryPickupSelected src/Dodge/Update/Input/InGame.hs 120;" f +tryPickupSelected src/Dodge/Update/Input/InGame.hs 122;" f tryPlay src/Sound.hs 83;" f tryPutFloorItemIDInInv src/Dodge/Inventory/Add.hs 26;" f tryPutItemInInv src/Dodge/Inventory/Add.hs 42;" f @@ -6033,7 +6033,7 @@ updateAllNodes src/TreeHelp.hs 85;" f updateArc src/Dodge/Tesla/Arc.hs 86;" f updateAttachedItems src/Dodge/Creature/State.hs 172;" f updateAutoRecharge src/Dodge/Creature/State.hs 324;" f -updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 480;" f +updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 457;" f updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBounds src/Dodge/Update/Camera.hs 245;" f @@ -6056,42 +6056,42 @@ updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortions src/Dodge/Update.hs 529;" f updateEnergyBall src/Dodge/EnergyBall.hs 45;" f updateEnergyBalls src/Dodge/Update.hs 553;" f -updateEnterRegex src/Dodge/Update/Input/InGame.hs 507;" f +updateEnterRegex src/Dodge/Update/Input/InGame.hs 484;" 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 70;" f updateFlames src/Dodge/Update.hs 550;" f updateFloatingCamera src/Dodge/Update/Camera.hs 36;" f -updateFunctionKey src/Dodge/Update/Input/InGame.hs 371;" f -updateFunctionKeys src/Dodge/Update/Input/InGame.hs 364;" f +updateFunctionKey src/Dodge/Update/Input/InGame.hs 348;" f +updateFunctionKeys src/Dodge/Update/Input/InGame.hs 341;" f updateGusts src/Dodge/Update.hs 704;" f updateHeldRootItem src/Dodge/Creature/State.hs 166;" f updateHumanoid src/Dodge/Humanoid.hs 12;" f updateIMl src/Dodge/Update.hs 498;" f updateIMl' src/Dodge/Update.hs 503;" f updateInGameCamera src/Dodge/Update/Camera.hs 70;" f -updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 424;" f +updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 401;" f updateInstantBullets src/Dodge/Update.hs 642;" f updateInv src/Dodge/Creature/State.hs 151;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 89;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemWithOrientation src/Dodge/Creature/State.hs 193;" f -updateKeyInGame src/Dodge/Update/Input/InGame.hs 418;" f -updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 406;" f +updateKeyInGame src/Dodge/Update/Input/InGame.hs 395;" f +updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 383;" f updateLampoid src/Dodge/Lampoid.hs 12;" f updateLaser src/Dodge/Laser/Update.hs 13;" f updateLasers src/Dodge/Update.hs 427;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f -updateLongPressInGame src/Dodge/Update/Input/InGame.hs 439;" f +updateLongPressInGame src/Dodge/Update/Input/InGame.hs 416;" f updateMIM src/Dodge/Update.hs 655;" f updateMachine src/Dodge/Machine/Update.hs 19;" f -updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 174;" f +updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 176;" f updateMouseContext src/Dodge/Update.hs 310;" f updateMouseContextGame src/Dodge/Update.hs 315;" f updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 86;" f updateMouseInGame src/Dodge/Update/Input/InGame.hs 78;" f -updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 141;" f +updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 143;" f updateMovement src/Dodge/Creature/State.hs 331;" f updateObjCatMaybes src/Dodge/Update.hs 520;" f updateObjMapMaybe src/Dodge/Update.hs 513;" f @@ -6099,8 +6099,8 @@ updatePastWorlds src/Dodge/Update.hs 415;" f updatePosEvent src/Dodge/PosEvent.hs 11;" f updatePosEvents src/Dodge/Update.hs 562;" f updatePreload src/Preload/Update.hs 20;" f -updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 381;" f -updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 384;" f +updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 358;" f +updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 361;" 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 @@ -6114,8 +6114,8 @@ updateRootItemID src/Dodge/Inventory/Location.hs 35;" 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 299;" f -updateSectionsPositioning src/Dodge/DisplayInventory.hs 272;" f +updateSection src/Dodge/DisplayInventory.hs 300;" f +updateSectionsPositioning src/Dodge/DisplayInventory.hs 273;" f updateSeenWalls src/Dodge/Update.hs 673;" f updateShockwave src/Dodge/Shockwave/Update.hs 12;" f updateShockwaves src/Dodge/Update.hs 547;" f @@ -6293,7 +6293,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 190;" f -yourAugmentedItem src/Dodge/Render/HUD.hs 226;" f +yourAugmentedItem src/Dodge/Render/HUD.hs 227;" 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