diff --git a/ghcidOutput b/ghcidOutput index c4e89a3f6..3ec34982f 100644 --- a/ghcidOutput +++ b/ghcidOutput @@ -1 +1 @@ -All good (594 modules, at 21:55:11) +All good (594 modules, at 09:49:37) diff --git a/src/Dodge/DisplayInventory.hs b/src/Dodge/DisplayInventory.hs index 48e41ba3c..a64fbb0a1 100644 --- a/src/Dodge/DisplayInventory.hs +++ b/src/Dodge/DisplayInventory.hs @@ -5,6 +5,7 @@ module Dodge.DisplayInventory ( updateCombinePositioning, ) where +import Data.Bifunctor import Dodge.Inventory import Control.Lens import Control.Monad @@ -132,8 +133,13 @@ updateDisplaySections w cfig = map closeObjectToSelectionItem (w ^. hud . closeObjects) invitems = IM.mapWithKey - (\k (y, x) -> invSelectionItem y cr k (x ^. locLDT . ldtValue)) - (allInvLocs $ _crInv cr) + (\k (indent, x) -> invSelectionItem indent cr k (x ^. locLDT . ldtValue)) + (fmap (first removeindentiffiltering) . allInvLocs $ _crInv cr) + -- this clearly deserves refactoring, also check if drawInventory/iextra + -- needs it at the same time + removeindentiffiltering = if maybe False isFilteringInv (w ^? hud . hudElement . diSections) + then const 0 + else id cr = you w -- filtpair i itms filtdescription mstr = diff --git a/src/Dodge/Inventory.hs b/src/Dodge/Inventory.hs index 928174510..63c9f896b 100644 --- a/src/Dodge/Inventory.hs +++ b/src/Dodge/Inventory.hs @@ -14,6 +14,7 @@ module Dodge.Inventory ( module Dodge.Inventory.RBList, swapInvItems, scrollAugNextInSection, + isFilteringInv, ) where import Control.Applicative @@ -254,3 +255,7 @@ selectedCloseObject w = do you w ^? crManipulation . manObject . ispCloseObject <|> fmap fst (IM.lookupMin =<< w ^? hud . hudElement . diSections . ix 3 . ssItems) w ^? hud . closeObjects . ix i + +isFilteringInv :: IM.IntMap (SelectionSection a) -> Bool +isFilteringInv = not . null . (^. ix (-1) . ssItems) + diff --git a/src/Dodge/Render/HUD.hs b/src/Dodge/Render/HUD.hs index 73ed5d284..6092083f2 100644 --- a/src/Dodge/Render/HUD.hs +++ b/src/Dodge/Render/HUD.hs @@ -74,6 +74,7 @@ drawInventory sss w cfig = curs = invCursorParams w iextra = fromMaybe mempty $ do inv <- w ^? cWorld . lWorld . creatures . ix 0 . crInv + guard =<< fmap (not . isFilteringInv) (w ^? hud . hudElement . diSections) return . inventoryExtra sss cfig w $ invAdj inv drawRootCursor :: World diff --git a/src/Dodge/TestString.hs b/src/Dodge/TestString.hs index 088607938..55dd60e7a 100644 --- a/src/Dodge/TestString.hs +++ b/src/Dodge/TestString.hs @@ -23,6 +23,7 @@ import qualified IntMapHelp as IM testStringInit :: Universe -> [String] testStringInit u = [show $ u ^? uvWorld . hud . hudElement . diSelection . _Just , show $ u ^? uvWorld . cWorld . lWorld . creatures . ix 0 . crManipulation . manObject + , show . fmap (fmap _siPictures) $ u ^? uvWorld . hud . hudElement . diSections . ix (-1) . ssItems ] -- <> [[toEnum (i+j * 32) | i <- [0..31]] | j <- [0..7]] -- <> map show (IM.elems (L.postscan (L.premap _siHeight L.sum) diff --git a/src/Dodge/Update/Input/Text.hs b/src/Dodge/Update/Input/Text.hs index 9805a6bbd..da6f4f4a2 100644 --- a/src/Dodge/Update/Input/Text.hs +++ b/src/Dodge/Update/Input/Text.hs @@ -15,7 +15,6 @@ doTextInputOverUniverse p u = doTextInputOver (u ^. uvWorld . input) p u doTextInputOver :: Input -> ASetter' a String -> a -> a doTextInputOver u p x = x & p %~ (++ map toUpper (rights str)) - --x & p %~ (++ rights str) & checkBackspace where str = u ^. textInput diff --git a/tags b/tags index 119d5a7ed..77cedbc3f 100644 --- a/tags +++ b/tags @@ -3345,7 +3345,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 69;" f +andOrRegex src/Dodge/DisplayInventory.hs 73;" f angleBetween src/Geometry.hs 145;" f angleVV src/Geometry/Vector.hs 57;" f angleVV3 src/Geometry/Vector3D.hs 122;" f @@ -3410,7 +3410,7 @@ attachOnward' src/Dodge/Tree/Compose.hs 98;" f attachTree src/Dodge/Tree/Compose.hs 38;" f attentionViewPoint src/Dodge/Creature/ReaderUpdate.hs 66;" f attribSize src/Shader/Compile.hs 306;" f -augInvDirectSelect src/Dodge/Inventory.hs 218;" f +augInvDirectSelect src/Dodge/Inventory.hs 219;" f augmentedHUD src/Dodge/Item/Scope.hs 47;" f autoAmr src/Dodge/Item/Held/Rod.hs 51;" f autoBS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 350;" f @@ -3429,7 +3429,7 @@ bQuadToF src/Geometry/Bezier.hs 37;" f bQuadToLine src/Geometry/Bezier.hs 30;" f backpackCombinations src/Dodge/Combine/Combinations.hs 25;" f backpackShape src/Dodge/Item/Draw/SPic.hs 94;" f -backspaceInputted src/Dodge/Update/Input/Text.hs 26;" f +backspaceInputted src/Dodge/Update/Input/Text.hs 25;" f bangCone src/Dodge/Item/Held/Cone.hs 11;" f bangConeShape src/Dodge/Item/Draw/SPic.hs 235;" f bangEchoS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 370;" f @@ -3546,9 +3546,9 @@ centroidNum src/Geometry/Polygon.hs 133;" f chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f chainLinkOrientation src/Dodge/Creature/State.hs 183;" f chainPairs src/Geometry.hs 363;" f -changeSwapClose src/Dodge/Inventory.hs 157;" f -changeSwapSel src/Dodge/Inventory.hs 149;" f -changeSwapWith src/Dodge/Inventory.hs 212;" f +changeSwapClose src/Dodge/Inventory.hs 158;" f +changeSwapSel src/Dodge/Inventory.hs 150;" f +changeSwapWith src/Dodge/Inventory.hs 213;" f charToTuple src/Picture/Base.hs 317;" f charToTupleGrad src/Picture/Text.hs 18;" f chargeIfEquipped src/Dodge/ItEffect.hs 54;" f @@ -3565,7 +3565,7 @@ 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 84;" f +checkInventorySelectionExists src/Dodge/DisplayInventory.hs 88;" f checkTermDist src/Dodge/Update.hs 289;" f checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f @@ -3593,7 +3593,7 @@ clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f clampPath src/Dodge/Room/Procedural.hs 166;" f cldtPropagateFold src/Dodge/DoubleTree.hs 230;" f cleanUpPreload src/Preload.hs 11;" f -cleanUpRenderPreload src/Preload/Render.hs 216;" f +cleanUpRenderPreload src/Preload/Render.hs 217;" f cleanUpSoundPreload src/Preload.hs 16;" f cleanupHalted src/Sound.hs 116;" f cleatLabel src/Dodge/Cleat.hs 30;" f @@ -3607,7 +3607,7 @@ 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 186;" f +closeObjectInfo src/Dodge/Render/HUD.hs 184;" f closeObjectToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f closeObjectToTextPictures src/Dodge/Inventory/SelectionList.hs 68;" f closestCreatureID src/Dodge/Debug.hs 92;" f @@ -3643,7 +3643,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 296;" f +combineInventoryExtra src/Dodge/Render/HUD.hs 294;" f combineItemListYouX src/Dodge/Combine.hs 33;" f combineList src/Dodge/Combine.hs 20;" f combineRooms src/Dodge/Room/Procedural.hs 152;" f @@ -3674,7 +3674,7 @@ convexPolysOverlap src/Geometry/ConvexPoly.hs 50;" f copyItemToFloor src/Dodge/FloorItem.hs 17;" f copyItemToFloorID src/Dodge/FloorItem.hs 21;" f corDoor src/Dodge/Room/Room.hs 376;" f -cornerList src/Preload/Render.hs 194;" f +cornerList src/Preload/Render.hs 195;" f corpseOrGib src/Dodge/Creature/State.hs 92;" f corridor src/Dodge/Room/Corridor.hs 17;" f corridorBoss src/Dodge/LockAndKey.hs 134;" f @@ -3925,7 +3925,7 @@ denormalEdges src/Polyhedra.hs 136;" f destroyAt src/Dodge/Bullet.hs 201;" f destroyBlock src/Dodge/Block.hs 56;" f destroyDoor src/Dodge/Block.hs 85;" f -destroyInvItem src/Dodge/Inventory.hs 43;" f +destroyInvItem src/Dodge/Inventory.hs 44;" f destroyLS src/Dodge/LightSource.hs 91;" f destroyLSFlashAt src/Dodge/LightSource.hs 101;" f destroyMachine src/Dodge/Machine/Destroy.hs 12;" f @@ -3954,8 +3954,8 @@ 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 333;" f +displayFreeSlots src/Dodge/DisplayInventory.hs 198;" f +displayTerminal src/Dodge/Render/HUD.hs 331;" f displayTerminalLineString src/Dodge/Update.hs 426;" f dist src/Geometry/Vector.hs 179;" f dist3 src/Geometry/Vector3D.hs 101;" f @@ -3967,7 +3967,7 @@ divideLineExact src/Geometry.hs 279;" f divideLineOddNumPoints src/Geometry.hs 264;" f doAfterPlacement src/Dodge/Layout.hs 86;" f doAfterPlacements src/Dodge/Layout.hs 83;" f -doBackspace src/Dodge/Update/Input/Text.hs 32;" f +doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBlBl src/Dodge/WorldEffect.hs 98;" f doBlSh src/Dodge/Block/Draw.hs 14;" f doBounce src/Dodge/Base/Collide.hs 68;" f @@ -4066,7 +4066,7 @@ 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 142;" f +drawCombineInventory src/Dodge/Render/HUD.hs 140;" 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 @@ -4076,13 +4076,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 108;" f -drawDISelections src/Dodge/Render/HUD.hs 126;" f +drawDIMouseOver src/Dodge/Render/HUD.hs 106;" f +drawDISelections src/Dodge/Render/HUD.hs 124;" 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 156;" f +drawExamineInventory src/Dodge/Render/HUD.hs 154;" 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 @@ -4123,10 +4123,10 @@ 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 204;" f +drawRBOptions src/Dodge/Render/HUD.hs 202;" f drawRadarSweep src/Dodge/RadarSweep/Draw.hs 7;" f drawRemoteShell src/Dodge/Projectile/Draw.hs 30;" f -drawRootCursor src/Dodge/Render/HUD.hs 82;" f +drawRootCursor src/Dodge/Render/HUD.hs 80;" f drawSSCursor src/Dodge/SelectionSections/Draw.hs 30;" f drawSSMultiCursor src/Dodge/SelectionSections/Draw.hs 41;" f drawSelectionList src/Dodge/Render/List.hs 30;" f @@ -4139,7 +4139,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 134;" f +drawSubInventory src/Dodge/Render/HUD.hs 132;" 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 @@ -4188,10 +4188,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 290;" f eqConstr src/SameConstr.hs 17;" f eqPosText src/Dodge/Equipment/Text.hs 6;" f -equipAllocString src/Dodge/Render/HUD.hs 262;" f +equipAllocString src/Dodge/Render/HUD.hs 260;" 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 @@ -4237,7 +4237,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 146;" f +filterSectionsPair src/Dodge/DisplayInventory.hs 164;" f findBlips src/Dodge/RadarSweep.hs 44;" f findBoundDists src/Dodge/Update/Camera.hs 235;" f findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f @@ -4284,7 +4284,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 191;" f +floorItemPickupInfo src/Dodge/Render/HUD.hs 189;" f floorItemSPic src/Dodge/Render/ShapePicture.hs 119;" f floorWire src/Dodge/Wire.hs 13;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 398;" f @@ -4362,11 +4362,11 @@ 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 117;" f +getMouseInvSel src/Dodge/Render/HUD.hs 115;" f getNodePos src/Dodge/Path.hs 31;" f getPretty src/AesonHelp.hs 7;" f getPrettyShort src/AesonHelp.hs 10;" f -getRootItemBounds src/Dodge/Render/HUD.hs 98;" f +getRootItemBounds src/Dodge/Render/HUD.hs 96;" f getSensor src/Dodge/Terminal.hs 187;" f getSmoothScrollValue src/Dodge/SmoothScroll.hs 17;" f getSplitString src/Dodge/Debug/Terminal.hs 123;" f @@ -4510,7 +4510,7 @@ initialAnoTree src/Dodge/Floor.hs 29;" f initialRoomTree src/Dodge/Floor.hs 19;" f initialWorld src/Dodge/Initialisation.hs 16;" f initialisePlaying src/Sound.hs 76;" f -initializeGLState src/Preload/Render.hs 212;" f +initializeGLState src/Preload/Render.hs 213;" f initializeOptionMenu src/Dodge/Menu/Option.hs 14;" f initializeOptionMenuBO src/Dodge/Menu/Option.hs 29;" f initializeTexture2D src/Framebuffer/Update.hs 221;" f @@ -4550,9 +4550,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 192;" f invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f -invHead src/Dodge/Render/HUD.hs 369;" f +invHead src/Dodge/Render/HUD.hs 367;" 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 @@ -4563,8 +4563,8 @@ 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 271;" f -inventoryExtraH src/Dodge/Render/HUD.hs 282;" f +inventoryExtra src/Dodge/Render/HUD.hs 269;" f +inventoryExtraH src/Dodge/Render/HUD.hs 280;" f inventoryX src/Dodge/Creature.hs 115;" f inverseSelBoundaryDown src/Dodge/SelectionSections.hs 250;" f inverseSelBoundaryUp src/Dodge/SelectionSections.hs 237;" f @@ -4582,6 +4582,7 @@ isAmmoIntLink src/Dodge/HeldUse.hs 206;" f isAnimate src/Dodge/Creature/Test.hs 138;" f isCognizant src/Dodge/Creature/Perception.hs 105;" f isElectrical src/Dodge/Data/Damage.hs 42;" f +isFilteringInv src/Dodge/DisplayInventory.hs 145;" f isFrictionless src/Dodge/Creature/State.hs 341;" f isGas src/Dodge/Euse.hs 64;" f isInLnk src/Dodge/PlacementSpot.hs 160;" f @@ -4722,13 +4723,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 282;" 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 358;" f +lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 356;" f lnkPosDir src/Dodge/RoomLink.hs 97;" f loadDodgeConfig src/Dodge/Config/Load.hs 9;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f @@ -5002,7 +5003,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 38;" f +nextInSectionSS src/Dodge/SelectionSections.hs 39;" f noPic src/ShapePicture.hs 25;" f noShape src/ShapePicture.hs 29;" f noclipCheck src/Dodge/WallCreatureCollisions.hs 20;" f @@ -5040,7 +5041,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 72;" f +orRegex src/Dodge/DisplayInventory.hs 76;" f orange src/Color.hs 25;" f orderAround3 src/Geometry/Vector3D.hs 105;" f orderAroundFirst src/Geometry/Polygon.hs 82;" f @@ -5143,7 +5144,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 195;" f plateCraft src/Dodge/Item/Craftable.hs 45;" f playIfFree src/Sound.hs 136;" f playPositionalSoundQueue src/Sound.hs 144;" f @@ -5371,9 +5372,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 59;" f +regexCombs src/Dodge/DisplayInventory.hs 63;" f regexIn src/Regex.hs 4;" f -regexList src/Dodge/DisplayInventory.hs 311;" f +regexList src/Dodge/DisplayInventory.hs 330;" f regexList src/Regex.hs 7;" f reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 428;" f reloadLevelStart src/Dodge/Save.hs 71;" f @@ -5430,7 +5431,7 @@ rightPad src/Padding.hs 22;" f rightPadNoSquash src/Padding.hs 26;" f rlPosDir src/Dodge/RoomLink.hs 94;" f rmInLinks src/Dodge/RoomLink.hs 138;" f -rmInvItem src/Dodge/Inventory.hs 56;" f +rmInvItem src/Dodge/Inventory.hs 57;" f rmLinksOfType src/Dodge/RoomLink.hs 135;" f rmOutLinks src/Dodge/RoomLink.hs 138;" f roomC src/Dodge/Room/Room.hs 38;" f @@ -5523,12 +5524,13 @@ screenPolygon src/Dodge/Base/Window.hs 17;" f screenPolygonBord src/Dodge/Base/Window.hs 27;" f screenPosAbs src/Dodge/ScreenPos.hs 15;" f screenToWorldPos src/Dodge/Base/Coordinate.hs 53;" f -scrollAugInvSel src/Dodge/Inventory.hs 226;" f +scrollAugInvSel src/Dodge/Inventory.hs 227;" f +scrollAugNextInSection src/Dodge/Inventory.hs 240;" f 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 28;" f +scrollSelectionSections src/Dodge/SelectionSections.hs 29;" f scrollTimeBack src/Dodge/Update.hs 200;" f scrollTimeForward src/Dodge/Update.hs 220;" f scrollWatch src/Dodge/Item/Weapon/Utility.hs 30;" f @@ -5545,16 +5547,16 @@ 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 429;" f -selNumPosCardinal src/Dodge/Render/HUD.hs 452;" f +selNumPos src/Dodge/Render/HUD.hs 427;" f +selNumPosCardinal src/Dodge/Render/HUD.hs 450;" f selSecDrawCursor src/Dodge/Render/List.hs 108;" f selSecDrawCursorAt src/Dodge/Render/List.hs 86;" f -selSecSelCol src/Dodge/Render/HUD.hs 475;" f +selSecSelCol src/Dodge/Render/HUD.hs 473;" f selSecSelSize src/Dodge/SelectionSections.hs 175;" f selSecYint src/Dodge/SelectionSections.hs 184;" f selectCreatureDebugItem src/Dodge/Debug.hs 39;" f selectUse src/Dodge/SelectUse.hs 11;" f -selectedCloseObject src/Dodge/Inventory.hs 252;" f +selectedCloseObject src/Dodge/Inventory.hs 251;" f sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f senseDamage src/Dodge/Machine/Update.hs 134;" f @@ -5682,9 +5684,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 45;" f +showManObj src/Dodge/TestString.hs 47;" f showTerminalError src/Dodge/Debug/Terminal.hs 76;" f -showTimeFlow src/Dodge/TestString.hs 92;" f +showTimeFlow src/Dodge/TestString.hs 94;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 136;" f shrinkVert src/Geometry/Polygon.hs 140;" f shuffle src/RandomHelp.hs 49;" f @@ -5829,7 +5831,7 @@ subMap src/TreeHelp.hs 118;" f subZipWith src/Dodge/Placement/Instance/Wall.hs 115;" f swapInOutLinks src/Dodge/RoomLink.hs 80;" f swapIndices src/ListHelp.hs 50;" f -swapInvItems src/Dodge/Inventory.hs 174;" f +swapInvItems src/Dodge/Inventory.hs 175;" f swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f swarmUsingCenter src/Dodge/Creature/Boid.hs 171;" f switchDoor src/Dodge/Placement/Instance/Door.hs 96;" f @@ -5942,7 +5944,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 320;" 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 41;" f +topTestPart src/Dodge/TestString.hs 43;" f torch src/Dodge/Item/Held/Utility.hs 26;" f torchShape src/Dodge/Item/Draw/SPic.hs 213;" f torqueCr src/Dodge/WorldEffect.hs 70;" f @@ -6059,7 +6061,7 @@ updateBulVel src/Dodge/Bullet.hs 50;" f updateBullet src/Dodge/Bullet.hs 28;" f updateBullets src/Dodge/Update.hs 527;" f updateCamera src/Dodge/Update/Camera.hs 31;" f -updateCloseObjects src/Dodge/Inventory.hs 115;" f +updateCloseObjects src/Dodge/Inventory.hs 116;" f updateCloud src/Dodge/Update.hs 712;" f updateClouds src/Dodge/Update.hs 556;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 35;" f @@ -6069,7 +6071,7 @@ updateCreatureGroups src/Dodge/Update.hs 496;" f updateCreatureSoundPositions src/Dodge/Update.hs 472;" f updateDebugMessageOffset src/Dodge/Update.hs 89;" f updateDelayedEvents src/Dodge/Update.hs 775;" f -updateDisplaySections src/Dodge/DisplayInventory.hs 91;" f +updateDisplaySections src/Dodge/DisplayInventory.hs 95;" f updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortions src/Dodge/Update.hs 517;" f updateEnergyBall src/Dodge/EnergyBall.hs 46;" f @@ -6091,7 +6093,7 @@ updateInGameCamera src/Dodge/Update/Camera.hs 70;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 139;" f updateInstantBullets src/Dodge/Update.hs 633;" f updateInv src/Dodge/Creature/State.hs 152;" f -updateInventoryPositioning src/Dodge/DisplayInventory.hs 77;" f +updateInventoryPositioning src/Dodge/DisplayInventory.hs 81;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemWithOrientation src/Dodge/Creature/State.hs 194;" f updateKeyInGame src/Dodge/Update/Input/InGame.hs 133;" f @@ -6129,8 +6131,8 @@ 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 +updateSection src/Dodge/DisplayInventory.hs 225;" f +updateSectionsPositioning src/Dodge/DisplayInventory.hs 204;" f updateSeenWalls src/Dodge/Update.hs 664;" f updateShockwave src/Dodge/Shockwave/Update.hs 12;" f updateShockwaves src/Dodge/Update.hs 538;" f @@ -6307,7 +6309,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 198;" f +yourAugmentedItem src/Dodge/Render/HUD.hs 196;" 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