Allow more drag selection to work

This commit is contained in:
2025-08-25 13:30:04 +01:00
parent a2c32907f0
commit 58c645041f
5 changed files with 72 additions and 57 deletions
+3
View File
@@ -23,3 +23,6 @@ data CardinalCover
| NSE
| NSW
| NS
data AboveBelow = Above | Below
deriving (Eq, Ord, Show, Bounded, Enum)
+2 -1
View File
@@ -22,7 +22,8 @@ data MouseContext
, _mcoAboveSelect :: Maybe (Int,Int)
, _mcoBelowSelect :: Maybe (Int,Int)
}
| OverInvDragSelect { _mcoSecSelStart :: (Int,Int), _mcoSelEnd :: Maybe Int }
-- | OverInvDragSelect { _mcoSecSelStart :: (Int,Int), _mcoSelEnd :: Maybe Int }
| OverInvDragSelect { _mcoSecSelStart :: Maybe (Int,Int), _mcoSelEnd :: Maybe Int }
| OverInvSelect { _mcoInvSelect :: (Int,Int)}
| OverCombFiltInv { _mcoInvFilt :: (Int,Int)}
| OverCombSelect { _mcoCombSelect :: (Int,Int)}
+1 -2
View File
@@ -148,8 +148,7 @@ drawDragSelected cfig w = do
drawDragSelecting :: Configuration -> World -> Maybe Picture
drawDragSelecting cfig w = do
OverInvDragSelect (i, j) mselend <- w ^? input . mouseContext
b <- mselend
OverInvDragSelect (Just (i, j)) (Just b) <- w ^? input . mouseContext
sss <- w ^? hud . hudElement . diSections
let f x = selSecDrawCursorAt invDP BackdropCursor sss (i, x)
return . translateScreenPos cfig (invDP ^. ldpPos)
+16 -7
View File
@@ -100,11 +100,17 @@ updateMouseHeldInGame :: Configuration -> World -> World
updateMouseHeldInGame cfig w = case w ^. input . mouseContext of
OverInvDragSelect {} | ButtonRight `M.member` (w ^. input . mouseButtons)
-> w & input . mouseContext .~ MouseGameRotate
OverInvDragSelect sstart _ -> fromMaybe w $ do
OverInvDragSelect (Just sstart) _ -> fromMaybe w $ do
sss <- w ^? hud . hudElement . diSections
let msel = inverseSelNumPos cfig invDP sss (w ^. input . mousePos)
guard $ Just (fst sstart) == fmap fst msel || isNothing msel
guard $ Just (fst sstart) == fmap fst msel
return $ w & input . mouseContext . mcoSelEnd .~ fmap snd msel
OverInvDragSelect Nothing _ -> fromMaybe w $ do
sss <- w ^? hud . hudElement . diSections
ysel <- inverseSelSecYint
(posSelSecYint cfig invDP (w ^. input . mousePos . _y)) sss
guard (isGroupSelectableSection $ fst ysel)
return $ w & input . mouseContext .~ OverInvDragSelect (Just ysel) Nothing
OverInvDrag k mmouseover ab bn -> doDrag 30 k mmouseover ab bn w
_ -> w
@@ -157,7 +163,7 @@ updateMouseReleaseInGame w = case w ^. input . mouseContext of
OverInvDrag k mpos _ _ ->
input . mouseContext .~ MouseInGame $
fromMaybe w $ tryDropSelected mpos w <|> tryPickupSelected k mpos w
OverInvDragSelect ssel mesel
OverInvDragSelect (Just ssel) mesel
| ScancodeLShift `M.member` (w ^. input . pressedKeys) ->
w & input . mouseContext .~ MouseInGame
& hud . hudElement . diSelection . _Just . _3
@@ -172,9 +178,12 @@ updateMouseReleaseInGame w = case w ^. input . mouseContext of
OverInvDragSelect _ Nothing ->
w & input . mouseContext .~ MouseInGame
& hud . hudElement . diSelection . _Just . _3 %~ const mempty
OverInvDragSelect ssel (Just esel) ->
OverInvDragSelect (Just ssel) (Just esel) ->
w & input . mouseContext .~ MouseInGame
& invSetSelection (f (fst ssel, esel) (h ssel esel))
OverInvDragSelect Nothing _ ->
w & input . mouseContext .~ MouseInGame
& hud . hudElement . diSelection . _Just . _3 %~ const mempty
_ -> w
where
getuniques x y = IS.union x y IS.\\ IS.intersection x y
@@ -193,12 +202,12 @@ isGroupSelectableSection = \case
updateMouseClickInGame :: Configuration -> World -> World
updateMouseClickInGame cfig w = case w ^. input . mouseContext of
MouseInGame -> fromMaybe w $ do
MouseInGame -> fromMaybe (w & input . mouseContext .~ OverInvDragSelect Nothing Nothing) $ do
sss <- w ^? hud . hudElement . diSections
ysel <- inverseSelSecYint
(posSelSecYint cfig invDP (w ^. input . mousePos . _y)) sss
guard (isGroupSelectableSection $ fst ysel)
return $ w & input . mouseContext .~ OverInvDragSelect ysel Nothing
return $ w & input . mouseContext .~ OverInvDragSelect (Just ysel) Nothing
OverInvSelect (-1, _)
| selsec == Just (-1) ->
w
@@ -212,7 +221,7 @@ updateMouseClickInGame cfig w = case w ^. input . mouseContext of
OverInvSelect x
| ScancodeLShift `M.member` (w ^. input . pressedKeys)
&& isGroupSelectableSection (fst x) ->
w & input . mouseContext .~ OverInvDragSelect x (Just $ snd x)
w & input . mouseContext .~ OverInvDragSelect (Just x) (Just $ snd x)
OverInvSelect x -> startDrag x cfig w
OverTerminal tmid TerminalTextInput{} -> terminalReturnEffect tmid w
OverTerminal tmid TerminalPressTo{} -> continueTerminal tmid w
+50 -47
View File
@@ -35,6 +35,8 @@ AUTOAMR src/Dodge/Data/Item/Combine.hs 161;" C
AUTOPISTOL src/Dodge/Data/Item/Combine.hs 147;" C
AUTORIFLE src/Dodge/Data/Item/Combine.hs 156;" C
AZURE src/Color/Data.hs 23;" C
Above src/Dodge/Data/CardinalPoint.hs 27;" C
AboveBelow src/Dodge/Data/CardinalPoint.hs 27;" t
AccessTerminal src/Dodge/Data/WorldEffect.hs 27;" C
Action src/Dodge/Data/ActionPlan.hs 78;" t
ActionNothing src/Dodge/Data/ActionPlan.hs 83;" C
@@ -124,6 +126,7 @@ BeamDrawColor src/Dodge/Data/Beam.hs 35;" C
BeamSimple src/Dodge/Data/Beam.hs 50;" C
BeamType src/Dodge/Data/Beam.hs 46;" t
BecomePowerful src/Dodge/Data/Scenario.hs 9;" C
Below src/Dodge/Data/CardinalPoint.hs 27;" C
BeltBulletAmmo src/Dodge/Data/AmmoType.hs 8;" C
BezierTrajectory src/Dodge/Data/Bullet.hs 44;" C
BezierTrajectoryType src/Dodge/Data/Bullet.hs 51;" C
@@ -2825,7 +2828,7 @@ capacitor src/Dodge/Item/Ammo.hs 69;" f
cardEightVec src/Dodge/Base/CardinalPoint.hs 16;" f
cardList src/Dodge/Base/CardinalPoint.hs 6;" f
cardVec src/Dodge/Base/CardinalPoint.hs 9;" f
cardinalVectors src/Dodge/FloorItem.hs 28;" f
cardinalVectors src/Dodge/FloorItem.hs 24;" f
cartePosToScreen src/Dodge/Base/Coordinate.hs 37;" f
cdtPropagateFold src/Dodge/DoubleTree.hs 407;" f
cenLasTur src/Dodge/Room/LasTurret.hs 24;" f
@@ -2926,7 +2929,7 @@ cogRaised src/Dodge/Creature/Perception.hs 102;" f
colCrWall src/Dodge/WallCreatureCollisions.hs 28;" f
colCrsWalls src/Dodge/WallCreatureCollisions.hs 18;" f
collectDamageTypes src/Dodge/Damage.hs 53;" f
collectInvItems src/Dodge/Update/Input/InGame.hs 291;" f
collectInvItems src/Dodge/Update/Input/InGame.hs 290;" f
collide3 src/Dodge/Base/Collide.hs 119;" f
collide3Chasm src/Dodge/Base/Collide.hs 103;" f
collide3Chasms src/Dodge/Base/Collide.hs 96;" f
@@ -2967,14 +2970,14 @@ composeTree src/Dodge/Tree/Compose.hs 46;" f
computerBeepingS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 640;" f
conEffects src/Dodge/Concurrent.hs 12;" f
conLDTToConDT src/Dodge/DoubleTree.hs 22;" f
concurrentIS src/Dodge/Update/Input/InGame.hs 283;" f
concurrentIS src/Dodge/Update/Input/InGame.hs 282;" f
connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 722;" f
connectionBlurb src/Dodge/Terminal.hs 46;" f
connectionBlurbLines src/Dodge/Terminal.hs 38;" f
constructEdges src/Polyhedra.hs 34;" f
constructEdgesList src/Polyhedra.hs 43;" f
contToIDCont src/Dodge/LevelGen/PlacementHelper.hs 57;" f
continueTerminal src/Dodge/Update/Input/InGame.hs 394;" f
continueTerminal src/Dodge/Update/Input/InGame.hs 393;" f
convexHull src/Geometry/Polygon.hs 110;" f
convexHullSafe src/Geometry/Polygon.hs 117;" f
convexPolysOverlap src/Geometry/ConvexPoly.hs 50;" f
@@ -2982,7 +2985,7 @@ coolMachinePistol src/Dodge/Creature/State.hs 101;" f
coolMinigun src/Dodge/Creature/State.hs 94;" f
copier src/Dodge/Item/Scope.hs 88;" f
copierItemUpdate src/Dodge/Creature/State.hs 130;" f
copyItemToFloor src/Dodge/FloorItem.hs 15;" f
copyItemToFloor src/Dodge/FloorItem.hs 14;" f
corDoor src/Dodge/Room/Room.hs 376;" f
cornerList src/Preload/Render.hs 198;" f
corpseOrGib src/Dodge/Creature/Update.hs 102;" f
@@ -3017,7 +3020,7 @@ crMvBy src/Dodge/Creature/Impulse/Movement.hs 20;" f
crMvForward src/Dodge/Creature/Impulse/Movement.hs 42;" f
crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 141;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 24;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f
crOnWall src/Dodge/WallCreatureCollisions.hs 86;" f
crRad src/Dodge/Creature/Radius.hs 7;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 74;" f
@@ -3040,7 +3043,7 @@ createFlIt src/Dodge/Placement/PlaceSpot.hs 185;" f
createForceField src/Dodge/ForceField.hs 7;" f
createGas src/Dodge/Gas.hs 8;" f
createHeadLamp src/Dodge/Euse.hs 56;" f
createItemYou src/Dodge/Inventory/Add.hs 113;" f
createItemYou src/Dodge/Inventory/Add.hs 60;" f
createLightMap src/Render.hs 26;" f
createPathGrid src/Dodge/Room/Path.hs 21;" f
createProjectile src/Dodge/HeldUse.hs 1313;" f
@@ -3311,7 +3314,7 @@ doPropUpdates src/Dodge/Prop/Update.hs 34;" 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 438;" f
doRegexInput src/Dodge/Update/Input/InGame.hs 437;" f
doRoomInPlacements src/Dodge/Layout.hs 97;" f
doRoomOutPlacements src/Dodge/Layout.hs 107;" f
doRoomPlacements src/Dodge/Layout.hs 122;" f
@@ -3525,8 +3528,8 @@ encircleCloseP src/Dodge/Creature/Boid.hs 36;" f
encircleDistP src/Dodge/Creature/Boid.hs 22;" f
encircleP src/Dodge/Creature/Boid.hs 28;" f
endArcPos src/Dodge/Tesla.hs 87;" f
endCombineRegex src/Dodge/Update/Input/InGame.hs 263;" f
endRegex src/Dodge/Update/Input/InGame.hs 254;" f
endCombineRegex src/Dodge/Update/Input/InGame.hs 262;" f
endRegex src/Dodge/Update/Input/InGame.hs 253;" f
energyReleaseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 592;" f
enterCombineInv src/Dodge/DisplayInventory.hs 322;" f
epText src/Dodge/Inventory/SelectionList.hs 76;" f
@@ -3583,7 +3586,7 @@ findClosePoint src/Dodge/LevelGen/StaticWalls/Deprecated.hs 74;" f
findIndex src/IntMapHelp.hs 85;" f
findReverseEdge src/Polyhedra.hs 50;" f
findReverseEdgeList src/Polyhedra.hs 57;" f
findWallFreeDropPoint src/Dodge/FloorItem.hs 31;" f
findWallFreeDropPoint src/Dodge/FloorItem.hs 27;" f
findWallsInPolygon src/Dodge/LevelGen/StaticWalls/Deprecated.hs 78;" f
findWithIx src/ListHelp.hs 123;" f
fireFadeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 552;" f
@@ -3687,7 +3690,7 @@ getAutoSpringLinks src/Dodge/Item/Grammar.hs 85;" f
getAvailableListLines src/Dodge/SelectionList.hs 10;" f
getBulHitDams src/Dodge/Bullet.hs 170;" f
getBulletType src/Dodge/HeldUse.hs 933;" f
getCloseObj src/Dodge/Update/Input/InGame.hs 529;" f
getCloseObj src/Dodge/Update/Input/InGame.hs 528;" f
getCommand src/Dodge/Terminal.hs 58;" f
getCommands src/Dodge/Terminal.hs 55;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 46;" f
@@ -3887,23 +3890,23 @@ interweave src/Justify.hs 17;" f
introScan src/Dodge/Item/Scope.hs 57;" f
introScanValue src/Dodge/Inventory/SelectionList.hs 80;" f
intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f
invAdj src/Dodge/Item/Grammar.hs 239;" f
invAdj src/Dodge/Item/Grammar.hs 235;" f
invCursorParams src/Dodge/ListDisplayParams.hs 36;" f
invDP src/Dodge/ListDisplayParams.hs 30;" f
invDT src/Dodge/Item/Grammar.hs 216;" f
invDT' src/Dodge/Item/Grammar.hs 221;" f
invDimColor src/Dodge/DisplayInventory.hs 191;" f
invHead src/Dodge/Render/HUD.hs 402;" f
invIMDT src/Dodge/Item/Grammar.hs 249;" f
invIndents src/Dodge/Item/Grammar.hs 256;" f
invIMDT src/Dodge/Item/Grammar.hs 245;" f
invIndents src/Dodge/Item/Grammar.hs 252;" f
invItemEffs src/Dodge/Creature/State.hs 62;" f
invItemLocUpdate src/Dodge/Creature/State.hs 70;" f
invRootMap src/Dodge/Item/Grammar.hs 228;" f
invRootMap src/Dodge/Item/Grammar.hs 226;" f
invSelectionItem src/Dodge/Inventory/SelectionList.hs 32;" f
invSetSelection src/Dodge/Inventory.hs 195;" f
invSetSelectionPos src/Dodge/Inventory.hs 203;" f
invShiftPointBy src/Dodge/ShiftPoint.hs 8;" f
invSize src/Dodge/Inventory/CheckSlots.hs 32;" f
invSize src/Dodge/Inventory/CheckSlots.hs 33;" f
inventoryX src/Dodge/Creature.hs 113;" f
inverseSelNumPos src/Dodge/SelectionSections.hs 228;" f
inverseSelSecYint src/Dodge/SelectionSections.hs 201;" f
@@ -3920,7 +3923,7 @@ isAnimate src/Dodge/Creature/Test.hs 144;" f
isCognizant src/Dodge/Creature/Perception.hs 106;" f
isConnected src/Dodge/Inventory/Swap.hs 76;" f
isElectrical src/Dodge/Machine/Update.hs 80;" f
isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 189;" f
isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 188;" f
isInLnk src/Dodge/PlacementSpot.hs 169;" f
isJust' src/MaybeHelp.hs 29;" f
isLHS src/Geometry/LHS.hs 8;" f
@@ -4195,7 +4198,7 @@ mapper src/Dodge/Item/Scope.hs 70;" f
materialColor src/Dodge/Material/Color.hs 8;" f
maxAmmo src/Dodge/Item/MaxAmmo.hs 6;" f
maxDamageType src/Dodge/Damage.hs 58;" f
maxInvSlots src/Dodge/Inventory/CheckSlots.hs 29;" f
maxInvSlots src/Dodge/Inventory/CheckSlots.hs 30;" f
maxShowX src/Dodge/Combine/Graph.hs 50;" f
maxViewDistance src/Dodge/Viewpoints.hs 26;" f
maybeBlockedPassage src/Dodge/Room/RezBox.hs 80;" f
@@ -4205,7 +4208,7 @@ maybeClearPath src/Dodge/Block.hs 72;" f
maybeClearPaths src/Dodge/Block.hs 69;" f
maybeDestroyBlock src/Dodge/Wall/Damage.hs 32;" f
maybeDestroyDoor src/Dodge/Wall/Damage.hs 37;" f
maybeExitCombine src/Dodge/Update/Input/InGame.hs 550;" f
maybeExitCombine src/Dodge/Update/Input/InGame.hs 549;" f
maybeOpenConsole src/Dodge/Update.hs 131;" f
maybeReadFile src/Dodge/LoadSeed.hs 10;" f
maybeTakeOne src/RandomHelp.hs 116;" f
@@ -4425,7 +4428,7 @@ parseNum src/Dodge/Debug/Terminal.hs 75;" 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 515;" f
pauseGame src/Dodge/Update/Input/InGame.hs 514;" f
pauseMenu src/Dodge/Menu.hs 56;" f
pauseMenuOptions src/Dodge/Menu.hs 61;" f
pauseSound src/Dodge/SoundLogic.hs 42;" f
@@ -4449,8 +4452,8 @@ pesNearRect src/Dodge/Zoning/Pathing.hs 40;" f
pesNearSeg src/Dodge/Zoning/Pathing.hs 37;" f
picFormat src/Polyhedra.hs 23;" f
picMap src/Picture/Base.hs 67;" f
pickUpItem src/Dodge/Inventory/Add.hs 121;" f
pickUpItemAt src/Dodge/Inventory/Add.hs 128;" f
pickUpItem src/Dodge/Inventory/Add.hs 68;" f
pickUpItemAt src/Dodge/Inventory/Add.hs 73;" f
pickUpS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 624;" f
pincerP src/Dodge/Creature/Boid.hs 61;" f
pincerP' src/Dodge/Creature/Boid.hs 94;" f
@@ -4956,7 +4959,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 288;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 327;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 326;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f
setShadowLimits src/Dodge/Shadows.hs 11;" f
@@ -5010,9 +5013,9 @@ shiftChildren src/Dodge/Tree/Compose.hs 43;" f
shiftDraw src/Dodge/Render/ShapePicture.hs 78;" f
shiftDraw' src/Dodge/Render/ShapePicture.hs 84;" f
shiftInBy src/Dodge/PlacementSpot.hs 251;" f
shiftInvItems src/Dodge/Update/Input/InGame.hs 301;" f
shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 340;" f
shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 334;" f
shiftInvItems src/Dodge/Update/Input/InGame.hs 300;" f
shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 339;" f
shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 333;" 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
@@ -5051,9 +5054,9 @@ showEquipItem src/Dodge/Item/Display.hs 107;" f
showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 129;" f
showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 74;" f
showManObj src/Dodge/TestString.hs 75;" f
showTerminalError src/Dodge/Debug/Terminal.hs 78;" f
showTimeFlow src/Dodge/TestString.hs 97;" f
showTimeFlow src/Dodge/TestString.hs 98;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 142;" f
shrinkVert src/Geometry/Polygon.hs 146;" f
shuffle src/RandomHelp.hs 49;" f
@@ -5112,7 +5115,7 @@ soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f
soundWithStatus src/Dodge/SoundLogic.hs 104;" f
soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f
southPillarsRoom src/Dodge/Room/LongDoor.hs 86;" f
spaceAction src/Dodge/Update/Input/InGame.hs 519;" f
spaceAction src/Dodge/Update/Input/InGame.hs 518;" 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
@@ -5168,7 +5171,7 @@ stackText src/Picture/Base.hs 188;" f
stackedInventory src/Dodge/Creature.hs 310;" f
startCr src/Dodge/Creature.hs 92;" f
startCrafts src/Dodge/Room/Start.hs 93;" f
startDrag src/Dodge/Update/Input/InGame.hs 272;" f
startDrag src/Dodge/Update/Input/InGame.hs 271;" f
startInvList src/Dodge/Creature.hs 107;" f
startInventory src/Dodge/Creature.hs 110;" f
startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f
@@ -5324,7 +5327,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 448;" f
topInvW src/Dodge/ListDisplayParams.hs 51;" f
topPrismEdgeIndices src/Shader/Poke.hs 335;" f
topPrismIndices src/Shader/Poke.hs 410;" f
topTestPart src/Dodge/TestString.hs 70;" f
topTestPart src/Dodge/TestString.hs 71;" f
torch src/Dodge/Item/Held/Utility.hs 23;" f
torchShape src/Dodge/Item/Draw/SPic.hs 290;" f
torqueAmount src/Dodge/HeldUse.hs 573;" f
@@ -5384,7 +5387,7 @@ truncate src/Polyhedra/Geodesic.hs 38;" f
trunkDepth src/TreeHelp.hs 161;" f
tryAttachItems src/Dodge/Item/Grammar.hs 34;" f
tryClickUse src/Dodge/Creature/YourControl.hs 225;" f
tryCombine src/Dodge/Update/Input/InGame.hs 540;" f
tryCombine src/Dodge/Update/Input/InGame.hs 539;" f
tryDrawToCapacitor src/Dodge/Creature/State.hs 150;" f
tryDropSelected src/Dodge/Update/Input/InGame.hs 123;" f
tryGetChannel src/Sound.hs 97;" f
@@ -5393,8 +5396,8 @@ tryGetRootItemInvID src/Dodge/Inventory/Location.hs 35;" f
tryMeleeAttack src/Dodge/Creature/ReaderUpdate.hs 38;" f
tryPickupSelected src/Dodge/Update/Input/InGame.hs 130;" f
tryPlay src/Sound.hs 84;" f
tryPutItemInInv src/Dodge/Inventory/Add.hs 23;" f
tryPutItemInInvAt src/Dodge/Inventory/Add.hs 51;" f
tryPutItemInInv src/Dodge/Inventory/Add.hs 24;" f
tryPutItemInInvAt src/Dodge/Inventory/Add.hs 52;" f
trySeedFromClipboard src/Dodge/Menu.hs 91;" f
trySpin src/Dodge/Projectile/Update.hs 170;" f
trySynthBullet src/Dodge/Creature/State.hs 166;" f
@@ -5442,7 +5445,7 @@ unusedSpotNearInLink src/Dodge/PlacementSpot.hs 201;" f
updateAimPos src/Dodge/Update.hs 321;" f
updateAllNodes src/TreeHelp.hs 85;" f
updateArc src/Dodge/Tesla.hs 44;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 472;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 471;" f
updateBarrel src/Dodge/Barreloid.hs 41;" f
updateBarreloid src/Dodge/Barreloid.hs 15;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 34;" f
@@ -5472,42 +5475,42 @@ updateDust src/Dodge/Update.hs 844;" f
updateDusts src/Dodge/Update.hs 691;" f
updateEnergyBall src/Dodge/EnergyBall.hs 31;" f
updateEnergyBalls src/Dodge/Update.hs 679;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 497;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 496;" f
updateExpBarrel src/Dodge/Barreloid.hs 20;" f
updateFBOTO src/Framebuffer/Update.hs 97;" f
updateFBOTO3 src/Framebuffer/Update.hs 131;" f
updateFlame src/Dodge/Flame.hs 19;" f
updateFlames src/Dodge/Update.hs 676;" f
updateFloatingCamera src/Dodge/Update/Camera.hs 35;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 357;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 350;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 356;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 349;" f
updateGusts src/Dodge/Update.hs 803;" f
updateHumanoid src/Dodge/Humanoid.hs 13;" f
updateIMl src/Dodge/Update.hs 544;" f
updateIMl' src/Dodge/Update.hs 549;" f
updateInGameCamera src/Dodge/Update/Camera.hs 79;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 419;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 418;" f
updateInt2Map src/Dodge/Zoning/Base.hs 92;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 88;" f
updateItemTargeting src/Dodge/Creature/State.hs 258;" f
updateKeyContinueTerminal src/Dodge/Update/Input/InGame.hs 388;" f
updateKeyInGame src/Dodge/Update/Input/InGame.hs 413;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 375;" f
updateKeysTextInputTerminal src/Dodge/Update/Input/InGame.hs 397;" f
updateKeyContinueTerminal src/Dodge/Update/Input/InGame.hs 387;" f
updateKeyInGame src/Dodge/Update/Input/InGame.hs 412;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 374;" f
updateKeysTextInputTerminal src/Dodge/Update/Input/InGame.hs 396;" f
updateLampoid src/Dodge/Lampoid.hs 12;" f
updateLaser src/Dodge/Laser/Update.hs 11;" f
updateLasers src/Dodge/Update.hs 450;" f
updateLeftParentSF src/Dodge/Item/Grammar.hs 170;" f
updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 432;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 431;" f
updateMachine src/Dodge/Machine/Update.hs 20;" f
updateMagnets src/Dodge/Update.hs 329;" f
updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 195;" f
updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 194;" f
updateMouseContext src/Dodge/Update.hs 342;" f
updateMouseContextGame src/Dodge/Update.hs 347;" f
updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 99;" f
updateMouseInGame src/Dodge/Update/Input/InGame.hs 89;" f
updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 156;" f
updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 155;" f
updateObjCatMaybes src/Dodge/Update.hs 566;" f
updateObjMapMaybe src/Dodge/Update.hs 559;" f
updatePastWorlds src/Dodge/Update.hs 438;" f