Handle menu selection with mouse context, remove wheel scroll control

This commit is contained in:
2024-11-17 12:32:05 +00:00
parent 53d8ca2861
commit 5b6c356bab
9 changed files with 147 additions and 136 deletions
+5 -1
View File
@@ -1 +1,5 @@
All good (595 modules, at 12:18:32) /home/justin/Haskell/loop/src/Dodge/Menu/Option.hs:53:35-41: warning: [-Wunused-matches]
Defined but not used: mselpos
|
53 | makeOptionsSelectionList maxlines mselpos u mos pmo =
| ^^^^^^^
+1 -1
View File
@@ -23,7 +23,7 @@ data CursorDisplay
data SelectionList a = SelectionList data SelectionList a = SelectionList
{ _slItems :: [SelectionItem a] { _slItems :: [SelectionItem a]
, _slSelPos :: Maybe Int -- , _slSelPos :: Maybe Int
} }
data SectionCursor = SectionCursor data SectionCursor = SectionCursor
-1
View File
@@ -5,5 +5,4 @@ import Dodge.Data.SelectionList
defaultSelectionList :: SelectionList a defaultSelectionList :: SelectionList a
defaultSelectionList = SelectionList defaultSelectionList = SelectionList
{_slItems = mempty {_slItems = mempty
, _slSelPos = Nothing
} }
+1 -1
View File
@@ -53,7 +53,7 @@ makeOptionsSelectionList ::
makeOptionsSelectionList maxlines mselpos u mos pmo = makeOptionsSelectionList maxlines mselpos u mos pmo =
defaultSelectionList defaultSelectionList
{ _slItems = optionsToSelections maxlines u mos pmo { _slItems = optionsToSelections maxlines u mos pmo
, _slSelPos = mselpos -- , _slSelPos = mselpos
} }
optionsToSelections :: optionsToSelections ::
+6 -5
View File
@@ -14,6 +14,7 @@ module Dodge.Render.List (
listCursorChooseBorderScale, listCursorChooseBorderScale,
selSecDrawCursorAt, selSecDrawCursorAt,
drawTitleBackground, -- should be renamed, made sensible drawTitleBackground, -- should be renamed, made sensible
drawCursorAt,
) where ) where
import Dodge.ListDisplayParams import Dodge.ListDisplayParams
@@ -38,11 +39,11 @@ drawSelectionList ldps cfig sl =
(ldps ^. ldpScale) (ldps ^. ldpScale)
0 0
(makeSelectionListPictures sl) (makeSelectionListPictures sl)
<> drawCursorAt -- <> drawCursorAt
(sl ^. slSelPos) -- (sl ^. slSelPos)
(sl ^. slItems) -- (sl ^. slItems)
ldps -- ldps
(BoundaryCursor [North, South]) -- (BoundaryCursor [North, South])
drawTitleBackground :: Configuration -> Picture drawTitleBackground :: Configuration -> Picture
drawTitleBackground cfig = drawTitleBackground cfig =
+16 -7
View File
@@ -3,16 +3,19 @@ module Dodge.Render.MenuScreen (
drawMenuScreen, drawMenuScreen,
) where ) where
import Dodge.ScreenPos
import Dodge.Data.CardinalPoint
import Control.Lens
import Dodge.Render.List
import Dodge.Base.Window import Dodge.Base.Window
import Dodge.Data.SelectionList import Dodge.Data.SelectionList
import Dodge.Data.Universe import Dodge.Data.Universe
import Dodge.Render.List
import Picture import Picture
drawMenuScreen :: Configuration -> ScreenLayer -> Picture drawMenuScreen :: Configuration -> Maybe Int -> ScreenLayer -> Picture
drawMenuScreen cfig screen = case screen of drawMenuScreen cfig spos screen = case screen of
OptionScreen{_scTitle = titf, _scSelectionList = selpos, _scListDisplayParams = ldps} -> OptionScreen{_scTitle = titf, _scSelectionList = slist, _scListDisplayParams = ldps} ->
drawOptions ldps cfig titf selpos drawOptions ldps cfig titf spos slist
InputScreen inputstr help -> drawInputMenu cfig ('>' : inputstr) help InputScreen inputstr help -> drawInputMenu cfig ('>' : inputstr) help
drawInputMenu :: drawInputMenu ::
@@ -34,13 +37,19 @@ drawOptions ::
Configuration -> Configuration ->
-- | Title -- | Title
String -> String ->
-- | Select position Maybe Int ->
SelectionList a -> SelectionList a ->
Picture Picture
drawOptions ldps cfig title sl = drawOptions ldps cfig title msel sl =
darkenBackground cfig darkenBackground cfig
<> drawTitle cfig title <> drawTitle cfig title
<> drawSelectionList ldps cfig sl <> drawSelectionList ldps cfig sl
<> translateScreenPos cfig (ldps ^. ldpPos) (drawCursorAt
msel
(sl ^. slItems)
ldps
(BoundaryCursor [North, South])
)
darkenBackground :: Configuration -> Picture darkenBackground :: Configuration -> Picture
darkenBackground = color (withAlpha 0.5 black) . polygon . reverse . screenBox darkenBackground = color (withAlpha 0.5 black) . polygon . reverse . screenBox
+1 -1
View File
@@ -57,7 +57,7 @@ fpsText x = color col . text $ "ms/frame " ++ show x
drawMenuOrHUD :: Configuration -> Universe -> Picture drawMenuOrHUD :: Configuration -> Universe -> Picture
drawMenuOrHUD cfig u = case u ^. uvScreenLayers of drawMenuOrHUD cfig u = case u ^. uvScreenLayers of
[] -> drawHUD (u ^. uvConfig) (u ^. uvWorld) [] -> drawHUD (u ^. uvConfig) (u ^. uvWorld)
(lay : _) -> drawMenuScreen cfig lay (lay : _) -> drawMenuScreen cfig (u ^? uvWorld . input . mouseContext . mcoMenuClick) lay
drawConcurrentMessage :: Universe -> Picture drawConcurrentMessage :: Universe -> Picture
drawConcurrentMessage u = drawConcurrentMessage u =
+36 -36
View File
@@ -41,10 +41,10 @@ optionScreenUpdate :: Universe -> Universe
optionScreenUpdate u = optionScreenUpdate u =
(uvScreenLayers . ix 0 . scDisplayTime +~ 1) (uvScreenLayers . ix 0 . scDisplayTime +~ 1)
. refreshOptionsSelectionList . refreshOptionsSelectionList
. mouseOverSelectionList -- . mouseOverSelectionList
. optionScreenDefaultEffect . optionScreenDefaultEffect
. mouseClickOptionsList . mouseClickOptionsList
. menuWheelEvents -- . menuWheelEvents
. over (uvScreenLayers . _head) (setSelectionListRestriction (u ^. uvConfig)) . over (uvScreenLayers . _head) (setSelectionListRestriction (u ^. uvConfig))
$ u $ u
@@ -61,32 +61,32 @@ mouseClickOptionsList u = fromMaybe u $ do
sl <- u ^? uvScreenLayers . ix 0 . scSelectionList sl <- u ^? uvScreenLayers . ix 0 . scSelectionList
Just $ case u ^. uvWorld . input . mouseButtons . at ButtonLeft of Just $ case u ^. uvWorld . input . mouseButtons . at ButtonLeft of
Just 0 -> fromMaybe u $ do Just 0 -> fromMaybe u $ do
i <- sl ^. slSelPos i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
f <- sl ^? slItems . ix i . siPayload . _1 f <- sl ^? slItems . ix i . siPayload . _1
return $ f u return $ f u
_ -> case u ^. uvWorld . input . mouseButtons . at ButtonRight of _ -> case u ^. uvWorld . input . mouseButtons . at ButtonRight of
Just 0 -> fromMaybe u $ do Just 0 -> fromMaybe u $ do
i <- sl ^. slSelPos i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
f <- sl ^? slItems . ix i . siPayload . _2 f <- sl ^? slItems . ix i . siPayload . _2
return $ f u return $ f u
_ -> u _ -> u
mouseOverSelectionList :: Universe -> Universe --mouseOverSelectionList :: Universe -> Universe
mouseOverSelectionList u = fromMaybe u $ do --mouseOverSelectionList u = fromMaybe u $ do
screen <- u ^? uvScreenLayers . ix 0 -- screen <- u ^? uvScreenLayers . ix 0
ldps <- screen ^? scListDisplayParams -- ldps <- screen ^? scListDisplayParams
let ymax = maybe 0 length $ screen ^? scSelectionList . slItems -- let ymax = maybe 0 length $ screen ^? scSelectionList . slItems
yi <- ldpVerticalSelection (u ^. uvConfig) ldps (u ^. uvWorld . input . mousePos) -- yi <- ldpVerticalSelection (u ^. uvConfig) ldps (u ^. uvWorld . input . mousePos)
guard $ mmoving || (_scDisplayTime screen <= 1) -- guard $ mmoving || (_scDisplayTime screen <= 1)
let myi = do -- let myi = do
guard (yi >= 0 && yi < ymax && isselectable yi) -- guard (yi >= 0 && yi < ymax && isselectable yi)
return yi -- return yi
return $ u & uvScreenLayers . _head . scSelectionList . slSelPos .~ myi -- return $ u & uvScreenLayers . _head . scSelectionList . slSelPos .~ myi
where -- where
isselectable yi = -- isselectable yi =
fromMaybe False $ -- fromMaybe False $
u ^? uvScreenLayers . _head . scSelectionList . slItems . ix yi . siIsSelectable -- u ^? uvScreenLayers . _head . scSelectionList . slItems . ix yi . siIsSelectable
mmoving = u ^. uvWorld . input . mouseMoving -- mmoving = u ^. uvWorld . input . mouseMoving
ldpVerticalSelection :: Configuration -> ListDisplayParams -> Point2 -> Maybe Int ldpVerticalSelection :: Configuration -> ListDisplayParams -> Point2 -> Maybe Int
ldpVerticalSelection cfig ldp (V2 _ y) ldpVerticalSelection cfig ldp (V2 _ y)
@@ -101,23 +101,23 @@ ldpVerticalSelection cfig ldp (V2 _ y)
yupper = floor $ (top - (y + ygap)) / yoff yupper = floor $ (top - (y + ygap)) / yoff
ylower = ceiling ((top - y) / yoff) - 1 ylower = ceiling ((top - y) / yoff) - 1
menuWheelEvents :: Universe -> Universe --menuWheelEvents :: Universe -> Universe
menuWheelEvents u = foldr ($) u (replicate (abs y) (menuWheelStep (signum y))) --menuWheelEvents u = foldr ($) u (replicate (abs y) (menuWheelStep (signum y)))
where -- where
y = u ^. uvWorld . input . scrollAmount -- y = u ^. uvWorld . input . scrollAmount
-- you probably want i to be 1 or -1 ---- you probably want i to be 1 or -1
menuWheelStep :: Int -> Universe -> Universe --menuWheelStep :: Int -> Universe -> Universe
menuWheelStep i u = fromMaybe u $ do --menuWheelStep i u = fromMaybe u $ do
sl <- u ^? uvScreenLayers . _head . scSelectionList -- sl <- u ^? uvScreenLayers . _head . scSelectionList
selpos <- sl ^? slSelPos . _Just -- selpos <- sl ^? slSelPos . _Just
ymax <- fmap length (sl ^? slItems) -- ymax <- fmap length (sl ^? slItems)
let newpos = (selpos - i) `mod` ymax -- let newpos = (selpos - i) `mod` ymax
itm <- sl ^? slItems . ix newpos -- itm <- sl ^? slItems . ix newpos
let newu = u & uvScreenLayers . _head . scSelectionList . slSelPos . _Just %~ const newpos -- let newu = u & uvScreenLayers . _head . scSelectionList . slSelPos . _Just %~ const newpos
if _siIsSelectable itm -- if _siIsSelectable itm
then Just newu -- then Just newu
else Just $ menuWheelStep i newu -- else Just $ menuWheelStep i newu
setSelectionListRestriction :: Configuration -> ScreenLayer -> ScreenLayer setSelectionListRestriction :: Configuration -> ScreenLayer -> ScreenLayer
setSelectionListRestriction cfig screen = fromMaybe screen $ do setSelectionListRestriction cfig screen = fromMaybe screen $ do
+81 -83
View File
@@ -1199,8 +1199,8 @@ MouseInvDrag src/Dodge/Data/HUD.hs 30;" C
MouseInvNothing src/Dodge/Data/HUD.hs 31;" C MouseInvNothing src/Dodge/Data/HUD.hs 31;" C
MouseInvSelect src/Dodge/Data/HUD.hs 28;" C MouseInvSelect src/Dodge/Data/HUD.hs 28;" C
MouseInventorySelection src/Dodge/Data/HUD.hs 27;" t MouseInventorySelection src/Dodge/Data/HUD.hs 27;" t
MouseMenu src/Dodge/Data/Input.hs 24;" C
MouseMenuClick src/Dodge/Data/Input.hs 23;" C MouseMenuClick src/Dodge/Data/Input.hs 23;" C
MouseMenuCursor src/Dodge/Data/Input.hs 24;" C
Mouse_position src/Dodge/Data/Config.hs 73;" C Mouse_position src/Dodge/Data/Config.hs 73;" C
Move src/Dodge/Data/ActionPlan.hs 28;" C Move src/Dodge/Data/ActionPlan.hs 28;" C
Move src/Dodge/Wall/Move.hs 3;" m Move src/Dodge/Wall/Move.hs 3;" m
@@ -3071,7 +3071,6 @@ _skinHead src/Dodge/Data/Creature/Misc.hs 66;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 68;" f _skinLower src/Dodge/Data/Creature/Misc.hs 68;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 67;" f _skinUpper src/Dodge/Data/Creature/Misc.hs 67;" f
_slItems src/Dodge/Data/SelectionList.hs 25;" f _slItems src/Dodge/Data/SelectionList.hs 25;" f
_slSelPos src/Dodge/Data/SelectionList.hs 26;" f
_smoothScrollAmount src/Dodge/Data/Input.hs 42;" f _smoothScrollAmount src/Dodge/Data/Input.hs 42;" f
_soundAngDist src/Sound/Data.hs 53;" f _soundAngDist src/Sound/Data.hs 53;" f
_soundChannel src/Sound/Data.hs 52;" f _soundChannel src/Sound/Data.hs 52;" f
@@ -3346,7 +3345,7 @@ addToTrunk src/TreeHelp.hs 156;" f
addWarningTerminal src/Dodge/Room/Warning.hs 37;" f addWarningTerminal src/Dodge/Room/Warning.hs 37;" f
addZ src/Geometry/Vector3D.hs 89;" f addZ src/Geometry/Vector3D.hs 89;" f
adjustIMZone src/Dodge/Base.hs 77;" f adjustIMZone src/Dodge/Base.hs 77;" f
advanceScrollAmount src/Dodge/Update.hs 457;" f advanceScrollAmount src/Dodge/Update.hs 469;" f
advanceSmoothScroll src/Dodge/SmoothScroll.hs 29;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 29;" f
advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 45;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 45;" f
aimDelaySweep src/Dodge/Render/Picture.hs 181;" f aimDelaySweep src/Dodge/Render/Picture.hs 181;" f
@@ -3591,7 +3590,7 @@ chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 46;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 99;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 99;" f
checkConnection src/Dodge/Inventory.hs 233;" f checkConnection src/Dodge/Inventory.hs 233;" f
checkDeath src/Dodge/Creature/State.hs 75;" f checkDeath src/Dodge/Creature/State.hs 75;" f
checkEndGame src/Dodge/Update.hs 744;" f checkEndGame src/Dodge/Update.hs 756;" f
checkErrorGL src/Shader/Compile.hs 255;" f checkErrorGL src/Shader/Compile.hs 255;" f
checkFBO src/Framebuffer/Check.hs 6;" f checkFBO src/Framebuffer/Check.hs 6;" f
checkGLError src/GLHelp.hs 17;" f checkGLError src/GLHelp.hs 17;" f
@@ -3602,7 +3601,7 @@ checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f
checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f
checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f
chemFuelPouch src/Dodge/Item/Ammo.hs 110;" f chemFuelPouch src/Dodge/Item/Ammo.hs 110;" f
chooseCursorBorders src/Dodge/Render/List.hs 156;" f chooseCursorBorders src/Dodge/Render/List.hs 157;" f
chooseEquipmentPosition src/Dodge/Inventory/RBList.hs 36;" f chooseEquipmentPosition src/Dodge/Inventory/RBList.hs 36;" f
chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 39;" f chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 39;" f
chooseFreeSite src/Dodge/Inventory/RBList.hs 42;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 42;" f
@@ -3618,7 +3617,7 @@ circle src/Picture/Base.hs 180;" f
circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f
circleSolid src/Picture/Base.hs 164;" f circleSolid src/Picture/Base.hs 164;" f
circleSolidCol src/Picture/Base.hs 168;" f circleSolidCol src/Picture/Base.hs 168;" f
clClSpringVel src/Dodge/Update.hs 797;" f clClSpringVel src/Dodge/Update.hs 809;" f
clZoneSize src/Dodge/Zone/Size.hs 3;" f clZoneSize src/Dodge/Zone/Size.hs 3;" f
clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f
clampPath src/Dodge/Room/Procedural.hs 166;" f clampPath src/Dodge/Room/Procedural.hs 166;" f
@@ -3645,7 +3644,7 @@ closestCreatureID src/Dodge/Debug.hs 92;" f
closestPointOnLine src/Geometry/Intersect.hs 251;" f closestPointOnLine src/Geometry/Intersect.hs 251;" f
closestPointOnLineParam src/Geometry/Intersect.hs 267;" f closestPointOnLineParam src/Geometry/Intersect.hs 267;" f
closestPointOnSeg src/Geometry/Intersect.hs 282;" f closestPointOnSeg src/Geometry/Intersect.hs 282;" f
cloudEffect src/Dodge/Update.hs 767;" f cloudEffect src/Dodge/Update.hs 779;" f
cloudPoisonDamage src/Dodge/Update/Cloud.hs 9;" f cloudPoisonDamage src/Dodge/Update/Cloud.hs 9;" f
clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f clsNearCirc src/Dodge/Zoning/Cloud.hs 18;" f
clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f
@@ -3716,7 +3715,7 @@ crAdd src/Dodge/Room/RezBox.hs 104;" f
crAwayFromPost src/Dodge/Creature/Test.hs 77;" f crAwayFromPost src/Dodge/Creature/Test.hs 77;" f
crBlips src/Dodge/RadarSweep.hs 69;" f crBlips src/Dodge/RadarSweep.hs 69;" f
crCanSeeCr src/Dodge/Creature/Test.hs 48;" f crCanSeeCr src/Dodge/Creature/Test.hs 48;" f
crCrSpring src/Dodge/Update.hs 815;" f crCrSpring src/Dodge/Update.hs 827;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 28;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 28;" f
crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 37;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 37;" f
crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 51;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 51;" f
@@ -3737,7 +3736,7 @@ crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 35;" f
crOnWall src/Dodge/WallCreatureCollisions.hs 84;" f crOnWall src/Dodge/WallCreatureCollisions.hs 84;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 67;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 67;" f
crSetRoots src/Dodge/Inventory/Location.hs 48;" f crSetRoots src/Dodge/Inventory/Location.hs 48;" f
crSpring src/Dodge/Update.hs 810;" f crSpring src/Dodge/Update.hs 822;" f
crStratConMatches src/Dodge/Creature/Test.hs 72;" f crStratConMatches src/Dodge/Creature/Test.hs 72;" f
crUpdate src/Dodge/Creature/State.hs 62;" f crUpdate src/Dodge/Creature/State.hs 62;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f
@@ -3806,7 +3805,7 @@ cylinderIndices src/Shader/Poke.hs 374;" f
cylinderOnSeg src/Geometry.hs 125;" f cylinderOnSeg src/Geometry.hs 125;" f
cylinderPoly src/Shape.hs 86;" f cylinderPoly src/Shape.hs 86;" f
cylinderRoundIndices src/Shader/Poke.hs 381;" f cylinderRoundIndices src/Shader/Poke.hs 381;" f
dShadCol src/Dodge/Render/List.hs 213;" f dShadCol src/Dodge/Render/List.hs 214;" f
damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f
damToExpBarrel src/Dodge/Barreloid.hs 57;" f damToExpBarrel src/Dodge/Barreloid.hs 57;" f
damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f
@@ -3828,7 +3827,7 @@ damageWlCircle src/Dodge/DamageCircle.hs 26;" f
dampField src/Dodge/Magnet.hs 8;" f dampField src/Dodge/Magnet.hs 8;" f
damsToExpBarrel src/Dodge/Barreloid.hs 50;" f damsToExpBarrel src/Dodge/Barreloid.hs 50;" f
dark src/Color.hs 108;" f dark src/Color.hs 108;" f
darkenBackground src/Dodge/Render/MenuScreen.hs 45;" f darkenBackground src/Dodge/Render/MenuScreen.hs 53;" f
dbArg src/Dodge/Base.hs 143;" f dbArg src/Dodge/Base.hs 143;" f
dbArgChain src/Dodge/Base.hs 148;" f dbArgChain src/Dodge/Base.hs 148;" f
deZoneIX src/Dodge/Zoning/Base.hs 86;" f deZoneIX src/Dodge/Zoning/Base.hs 86;" f
@@ -3988,7 +3987,7 @@ displayConfig src/Dodge/Menu.hs 196;" f
displayControls src/Dodge/Menu.hs 206;" f displayControls src/Dodge/Menu.hs 206;" f
displayFrameTicks src/Dodge/Render/Picture.hs 39;" f displayFrameTicks src/Dodge/Render/Picture.hs 39;" f
displayFreeSlots src/Dodge/DisplayInventory.hs 197;" f displayFreeSlots src/Dodge/DisplayInventory.hs 197;" f
displayTerminalLineString src/Dodge/Update.hs 486;" f displayTerminalLineString src/Dodge/Update.hs 498;" f
dist src/Geometry/Vector.hs 179;" f dist src/Geometry/Vector.hs 179;" f
dist3 src/Geometry/Vector3D.hs 101;" f dist3 src/Geometry/Vector3D.hs 101;" f
divTo src/Geometry/Zone.hs 6;" f divTo src/Geometry/Zone.hs 6;" f
@@ -4024,7 +4023,7 @@ doFloatFloat src/Dodge/FloatFunction.hs 5;" f
doGenFloat src/Dodge/HeldUse.hs 441;" f doGenFloat src/Dodge/HeldUse.hs 441;" f
doInPlacements src/Dodge/Layout.hs 92;" f doInPlacements src/Dodge/Layout.hs 92;" f
doIndividualPlacements src/Dodge/Layout.hs 117;" f doIndividualPlacements src/Dodge/Layout.hs 117;" f
doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 25;" f doInputScreenInput src/Dodge/Update/Input/ScreenLayer.hs 26;" f
doIntImp src/Dodge/CreatureEffect.hs 24;" f doIntImp src/Dodge/CreatureEffect.hs 24;" f
doInvEffect src/Dodge/ItEffect.hs 10;" f doInvEffect src/Dodge/ItEffect.hs 10;" f
doItCrWdWd src/Dodge/WorldEffect.hs 49;" f doItCrWdWd src/Dodge/WorldEffect.hs 49;" f
@@ -4072,7 +4071,7 @@ doWdCrCr src/Dodge/CreatureEffect.hs 12;" f
doWdP2f src/Dodge/WdP2f.hs 12;" f doWdP2f src/Dodge/WdP2f.hs 12;" f
doWdWd src/Dodge/WorldEffect.hs 26;" f doWdWd src/Dodge/WorldEffect.hs 26;" f
doWeaponRepetitions src/Dodge/HeldUse.hs 56;" f doWeaponRepetitions src/Dodge/HeldUse.hs 56;" f
doWorldEvents src/Dodge/Update.hs 468;" f doWorldEvents src/Dodge/Update.hs 480;" f
doWorldPos src/Dodge/WorldPos.hs 7;" f doWorldPos src/Dodge/WorldPos.hs 7;" f
door src/Dodge/Room/Door.hs 13;" f door src/Dodge/Room/Door.hs 13;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 39;" f doorBetween src/Dodge/Placement/Instance/Door.hs 39;" f
@@ -4109,7 +4108,7 @@ drawCreature src/Dodge/Render/ShapePicture.hs 41;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 165;" f drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 165;" f
drawCross src/Dodge/Render/Label.hs 24;" f drawCross src/Dodge/Render/Label.hs 24;" f
drawCrossCol src/Dodge/Render/Label.hs 21;" f drawCrossCol src/Dodge/Render/Label.hs 21;" f
drawCursorAt src/Dodge/Render/List.hs 66;" f drawCursorAt src/Dodge/Render/List.hs 67;" f
drawDDATest src/Dodge/Debug/Picture.hs 256;" f drawDDATest src/Dodge/Debug/Picture.hs 256;" f
drawDISelections src/Dodge/Render/HUD.hs 146;" f drawDISelections src/Dodge/Render/HUD.hs 146;" f
drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f
@@ -4122,13 +4121,13 @@ drawFarWallDetect src/Dodge/Debug/Picture.hs 234;" f
drawFlame src/Dodge/Flame/Draw.hs 7;" f drawFlame src/Dodge/Flame/Draw.hs 7;" f
drawFlamelet src/Dodge/EnergyBall/Draw.hs 23;" f drawFlamelet src/Dodge/EnergyBall/Draw.hs 23;" f
drawFlare src/Dodge/Flare.hs 12;" f drawFlare src/Dodge/Flare.hs 12;" f
drawFooterText src/Dodge/Render/MenuScreen.hs 65;" f drawFooterText src/Dodge/Render/MenuScreen.hs 73;" f
drawForceField src/Dodge/Wall/Draw.hs 11;" f drawForceField src/Dodge/Wall/Draw.hs 11;" f
drawGapPlus src/Dodge/Render/Picture.hs 172;" f drawGapPlus src/Dodge/Render/Picture.hs 172;" f
drawGib src/Dodge/Prop/Draw.hs 28;" f drawGib src/Dodge/Prop/Draw.hs 28;" f
drawHP src/Dodge/Render/HUD.hs 56;" f drawHP src/Dodge/Render/HUD.hs 56;" f
drawHUD src/Dodge/Render/HUD.hs 48;" f drawHUD src/Dodge/Render/HUD.hs 48;" f
drawInputMenu src/Dodge/Render/MenuScreen.hs 18;" f drawInputMenu src/Dodge/Render/MenuScreen.hs 21;" f
drawInspectWall src/Dodge/Debug/Picture.hs 209;" f drawInspectWall src/Dodge/Debug/Picture.hs 209;" f
drawInspectWalls src/Dodge/Debug/Picture.hs 197;" f drawInspectWalls src/Dodge/Debug/Picture.hs 197;" f
drawInventory src/Dodge/Render/HUD.hs 65;" f drawInventory src/Dodge/Render/HUD.hs 65;" f
@@ -4137,23 +4136,23 @@ drawLampCover src/Dodge/Prop/Draw.hs 44;" f
drawLaser src/Dodge/Laser/Draw.hs 6;" f drawLaser src/Dodge/Laser/Draw.hs 6;" f
drawLightSource src/Dodge/LightSource/Draw.hs 7;" f drawLightSource src/Dodge/LightSource/Draw.hs 7;" f
drawLinearShockwave src/Dodge/LinearShockwave/Draw.hs 10;" f drawLinearShockwave src/Dodge/LinearShockwave/Draw.hs 10;" f
drawList src/Dodge/Render/List.hs 207;" f drawList src/Dodge/Render/List.hs 208;" f
drawListElement src/Dodge/Render/List.hs 187;" f drawListElement src/Dodge/Render/List.hs 188;" f
drawListYgapScaleYoff src/Dodge/Render/List.hs 94;" f drawListYgapScaleYoff src/Dodge/Render/List.hs 95;" f
drawListYoff src/Dodge/Render/List.hs 91;" f drawListYoff src/Dodge/Render/List.hs 92;" f
drawMachine src/Dodge/Machine/Draw.hs 17;" f drawMachine src/Dodge/Machine/Draw.hs 17;" f
drawMapWall src/Dodge/Render/HUD/Carte.hs 33;" f drawMapWall src/Dodge/Render/HUD/Carte.hs 33;" f
drawMenuClick src/Dodge/Render/Picture.hs 122;" f drawMenuClick src/Dodge/Render/Picture.hs 122;" f
drawMenuCursor src/Dodge/Render/Picture.hs 135;" f drawMenuCursor src/Dodge/Render/Picture.hs 135;" f
drawMenuOrHUD src/Dodge/Render/Picture.hs 57;" f drawMenuOrHUD src/Dodge/Render/Picture.hs 57;" f
drawMenuScreen src/Dodge/Render/MenuScreen.hs 12;" f drawMenuScreen src/Dodge/Render/MenuScreen.hs 15;" f
drawMouseCursor src/Dodge/Render/Picture.hs 73;" f drawMouseCursor src/Dodge/Render/Picture.hs 73;" f
drawMouseOver src/Dodge/Render/HUD.hs 116;" f drawMouseOver src/Dodge/Render/HUD.hs 116;" f
drawMousePosition src/Dodge/Debug/Picture.hs 319;" f drawMousePosition src/Dodge/Debug/Picture.hs 319;" f
drawMovingShape src/Dodge/Prop/Draw.hs 67;" f drawMovingShape src/Dodge/Prop/Draw.hs 67;" f
drawMovingShapeCol src/Dodge/Prop/Draw.hs 73;" f drawMovingShapeCol src/Dodge/Prop/Draw.hs 73;" f
drawMuzFlare src/Dodge/Flare.hs 17;" f drawMuzFlare src/Dodge/Flare.hs 17;" f
drawOptions src/Dodge/Render/MenuScreen.hs 32;" f drawOptions src/Dodge/Render/MenuScreen.hs 35;" f
drawPathBetween src/Dodge/Debug/Picture.hs 168;" f drawPathBetween src/Dodge/Debug/Picture.hs 168;" f
drawPathEdge src/Dodge/Debug/Picture.hs 222;" f drawPathEdge src/Dodge/Debug/Picture.hs 222;" f
drawPathing src/Dodge/Debug/Picture.hs 384;" f drawPathing src/Dodge/Debug/Picture.hs 384;" f
@@ -4170,8 +4169,8 @@ drawRootCursor src/Dodge/Render/HUD.hs 84;" f
drawSSCursor src/Dodge/SelectionSections/Draw.hs 30;" f drawSSCursor src/Dodge/SelectionSections/Draw.hs 30;" f
drawSSMultiCursor src/Dodge/SelectionSections/Draw.hs 41;" f drawSSMultiCursor src/Dodge/SelectionSections/Draw.hs 41;" f
drawSelect src/Dodge/Render/Picture.hs 151;" f drawSelect src/Dodge/Render/Picture.hs 151;" f
drawSelectionList src/Dodge/Render/List.hs 33;" f drawSelectionList src/Dodge/Render/List.hs 34;" f
drawSelectionListBackground src/Dodge/Render/List.hs 52;" f drawSelectionListBackground src/Dodge/Render/List.hs 53;" f
drawSelectionSections src/Dodge/SelectionSections/Draw.hs 17;" f drawSelectionSections src/Dodge/SelectionSections/Draw.hs 17;" f
drawSensor src/Dodge/Machine/Draw.hs 24;" f drawSensor src/Dodge/Machine/Draw.hs 24;" f
drawShader src/Shader.hs 27;" f drawShader src/Shader.hs 27;" f
@@ -4190,8 +4189,8 @@ drawTargeting src/Dodge/Targeting/Draw.hs 13;" f
drawTerminalDisplay src/Dodge/Render/HUD.hs 351;" f drawTerminalDisplay src/Dodge/Render/HUD.hs 351;" f
drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f
drawText src/Picture/Base.hs 220;" f drawText src/Picture/Base.hs 220;" f
drawTitle src/Dodge/Render/MenuScreen.hs 48;" f drawTitle src/Dodge/Render/MenuScreen.hs 56;" f
drawTitleBackground src/Dodge/Render/List.hs 47;" f drawTitleBackground src/Dodge/Render/List.hs 48;" f
drawTractorBeam src/Dodge/TractorBeam/Draw.hs 7;" f drawTractorBeam src/Dodge/TractorBeam/Draw.hs 7;" f
drawTurret src/Dodge/Machine/Draw.hs 65;" f drawTurret src/Dodge/Machine/Draw.hs 65;" f
drawVerticalLampCover src/Dodge/Prop/Draw.hs 59;" f drawVerticalLampCover src/Dodge/Prop/Draw.hs 59;" f
@@ -4401,7 +4400,7 @@ getDamageCoding src/Dodge/Terminal.hs 178;" f
getDistortions src/Dodge/Render.hs 382;" f getDistortions src/Dodge/Render.hs 382;" f
getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f
getItem src/Dodge/Item/Location.hs 15;" f getItem src/Dodge/Item/Location.hs 15;" f
getLDPWidth src/Dodge/Render/List.hs 86;" f getLDPWidth src/Dodge/Render/List.hs 87;" f
getLaserColor src/Dodge/HeldUse.hs 196;" f getLaserColor src/Dodge/HeldUse.hs 196;" f
getLaserDamage src/Dodge/HeldUse.hs 193;" f getLaserDamage src/Dodge/HeldUse.hs 193;" f
getLaserPhaseV src/Dodge/HeldUse.hs 190;" f getLaserPhaseV src/Dodge/HeldUse.hs 190;" f
@@ -4639,7 +4638,7 @@ isLeftOfA src/Geometry.hs 181;" f
isNothing' src/MaybeHelp.hs 33;" f isNothing' src/MaybeHelp.hs 33;" f
isOnSeg src/Geometry.hs 240;" f isOnSeg src/Geometry.hs 240;" f
isOutLnk src/Dodge/PlacementSpot.hs 164;" f isOutLnk src/Dodge/PlacementSpot.hs 164;" f
isOverTerminalScreen src/Dodge/Update.hs 435;" f isOverTerminalScreen src/Dodge/Update.hs 447;" f
isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f
isRHS src/Geometry/LHS.hs 24;" f isRHS src/Geometry/LHS.hs 24;" f
isUnusedLnk src/Dodge/PlacementSpot.hs 61;" f isUnusedLnk src/Dodge/PlacementSpot.hs 61;" f
@@ -4728,7 +4727,7 @@ launcherCrit src/Dodge/Creature/LauncherCrit.hs 12;" f
launcherPic src/Dodge/Item/Draw/SPic.hs 331;" f launcherPic src/Dodge/Item/Draw/SPic.hs 331;" f
launcherX src/Dodge/Item/Held/Launcher.hs 32;" f launcherX src/Dodge/Item/Held/Launcher.hs 32;" f
layoutLevelFromSeed src/Dodge/LevelGen.hs 47;" f layoutLevelFromSeed src/Dodge/LevelGen.hs 47;" f
ldpVerticalSelection src/Dodge/Update/Input/ScreenLayer.hs 90;" f ldpVerticalSelection src/Dodge/Update/Input/ScreenLayer.hs 91;" f
ldtIL src/Dodge/DoubleTree.hs 149;" f ldtIL src/Dodge/DoubleTree.hs 149;" f
ldtPropagate src/Dodge/DoubleTree.hs 20;" f ldtPropagate src/Dodge/DoubleTree.hs 20;" f
ldtPropagateFold src/Dodge/DoubleTree.hs 29;" f ldtPropagateFold src/Dodge/DoubleTree.hs 29;" f
@@ -4768,7 +4767,7 @@ linksAndPath' src/Dodge/Room/Path.hs 44;" f
linksOnPath src/Dodge/Room/CheckConsistency.hs 7;" f linksOnPath src/Dodge/Room/CheckConsistency.hs 7;" f
listConfig src/Dodge/Menu.hs 199;" f listConfig src/Dodge/Menu.hs 199;" f
listControls src/Dodge/Menu.hs 212;" f listControls src/Dodge/Menu.hs 212;" f
listCursorChooseBorderScale src/Dodge/Render/List.hs 135;" f listCursorChooseBorderScale src/Dodge/Render/List.hs 136;" f
listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f
listSelectionColorPicture src/Dodge/DisplayInventory.hs 273;" f listSelectionColorPicture src/Dodge/DisplayInventory.hs 273;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
@@ -4871,7 +4870,7 @@ makePathBetween src/Dodge/Path.hs 35;" f
makePathBetweenPs src/Dodge/Path.hs 54;" f makePathBetweenPs src/Dodge/Path.hs 54;" f
makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 26;" f makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 26;" f
makeRect src/Grid.hs 82;" f makeRect src/Grid.hs 82;" f
makeSelectionListPictures src/Dodge/Render/List.hs 61;" f makeSelectionListPictures src/Dodge/Render/List.hs 62;" f
makeShaderEBO src/Shader/Compile.hs 53;" f makeShaderEBO src/Shader/Compile.hs 53;" f
makeShaderProgram src/Shader/Compile.hs 241;" f makeShaderProgram src/Shader/Compile.hs 241;" f
makeShaderUsingVAO src/Shader/Compile.hs 146;" f makeShaderUsingVAO src/Shader/Compile.hs 146;" f
@@ -4897,7 +4896,7 @@ makeTlsTimeRadColPos src/Dodge/LightSource.hs 88;" f
makeTypeCraft src/Dodge/Item/Craftable.hs 13;" f makeTypeCraft src/Dodge/Item/Craftable.hs 13;" f
makeTypeCraftNum src/Dodge/Item/Craftable.hs 7;" f makeTypeCraftNum src/Dodge/Item/Craftable.hs 7;" f
mapOverlay src/Dodge/Render/HUD/Carte.hs 24;" f mapOverlay src/Dodge/Render/HUD/Carte.hs 24;" f
markWallSeen src/Dodge/Update.hs 729;" f markWallSeen src/Dodge/Update.hs 741;" f
maxDamageType src/Dodge/Damage.hs 37;" f maxDamageType src/Dodge/Damage.hs 37;" f
maxShowX src/Dodge/Combine/Graph.hs 43;" f maxShowX src/Dodge/Combine/Graph.hs 43;" f
maxViewDistance src/Dodge/Viewpoints.hs 26;" f maxViewDistance src/Dodge/Viewpoints.hs 26;" f
@@ -4940,8 +4939,8 @@ memoTopPrismEdgeIndices src/Shader/Poke.hs 321;" f
memoTopPrismIndices src/Shader/Poke.hs 309;" f memoTopPrismIndices src/Shader/Poke.hs 309;" f
menuOptionToSelectionItem src/Dodge/Menu/Option.hs 111;" f menuOptionToSelectionItem src/Dodge/Menu/Option.hs 111;" f
menuOptionToString src/Dodge/Menu/Option.hs 138;" f menuOptionToString src/Dodge/Menu/Option.hs 138;" f
menuWheelEvents src/Dodge/Update/Input/ScreenLayer.hs 103;" f menuWheelEvents src/Dodge/Update/Input/ScreenLayer.hs 104;" f
menuWheelStep src/Dodge/Update/Input/ScreenLayer.hs 109;" f menuWheelStep src/Dodge/Update/Input/ScreenLayer.hs 110;" f
merge src/ListHelp.hs 83;" f merge src/ListHelp.hs 83;" f
mergeBy src/ListHelp.hs 86;" f mergeBy src/ListHelp.hs 86;" f
mergeOn src/ListHelp.hs 93;" f mergeOn src/ListHelp.hs 93;" f
@@ -4994,9 +4993,8 @@ mntLight src/Dodge/Placement/Instance/LightSource.hs 154;" f
mntLightLnkCond src/Dodge/Placement/Instance/LightSource.hs 159;" f mntLightLnkCond src/Dodge/Placement/Instance/LightSource.hs 159;" f
modTo src/Geometry/Zone.hs 10;" f modTo src/Geometry/Zone.hs 10;" f
mouseActionsCr src/Dodge/Creature/YourControl.hs 153;" f mouseActionsCr src/Dodge/Creature/YourControl.hs 153;" f
mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 58;" f mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 59;" f
mouseCursorType src/Dodge/Render/Picture.hs 79;" f mouseCursorType src/Dodge/Render/Picture.hs 79;" f
mouseOverSelectionList src/Dodge/Update/Input/ScreenLayer.hs 73;" f
mouseWorldPos src/Dodge/Base/Coordinate.hs 48;" f mouseWorldPos src/Dodge/Base/Coordinate.hs 48;" f
moveBullet src/Dodge/Bullet.hs 193;" f moveBullet src/Dodge/Bullet.hs 193;" f
moveCombineSel src/Dodge/Update/Scroll.hs 58;" f moveCombineSel src/Dodge/Update/Scroll.hs 58;" f
@@ -5028,7 +5026,7 @@ mvBullet src/Dodge/Bullet.hs 33;" f
mvButton src/Dodge/Placement/PlaceSpot.hs 176;" f mvButton src/Dodge/Placement/PlaceSpot.hs 176;" f
mvCr src/Dodge/Placement/PlaceSpot.hs 186;" f mvCr src/Dodge/Placement/PlaceSpot.hs 186;" f
mvFS src/Dodge/Placement/PlaceSpot.hs 189;" f mvFS src/Dodge/Placement/PlaceSpot.hs 189;" f
mvGust src/Dodge/Update.hs 758;" f mvGust src/Dodge/Update.hs 770;" f
mvLS src/Dodge/Placement/PlaceSpot.hs 217;" f mvLS src/Dodge/Placement/PlaceSpot.hs 217;" f
mvP src/Dodge/Wall/Move.hs 54;" f mvP src/Dodge/Wall/Move.hs 54;" f
mvPP src/Dodge/Placement/PlaceSpot.hs 183;" f mvPP src/Dodge/Placement/PlaceSpot.hs 183;" f
@@ -5086,8 +5084,8 @@ oneH src/Dodge/Creature/Test.hs 95;" f
openCursorAt src/Dodge/Render/HUD/Carte.hs 54;" f openCursorAt src/Dodge/Render/HUD/Carte.hs 54;" f
optionListDisplayParams src/Dodge/ListDisplayParams.hs 69;" f optionListDisplayParams src/Dodge/ListDisplayParams.hs 69;" f
optionMenu src/Dodge/Menu.hs 105;" f optionMenu src/Dodge/Menu.hs 105;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 50;" f optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 51;" f
optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 39;" f optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 40;" f
optionValueOffset src/Dodge/Menu/Option.hs 106;" f optionValueOffset src/Dodge/Menu/Option.hs 106;" f
optionsOptions src/Dodge/Menu.hs 108;" f optionsOptions src/Dodge/Menu.hs 108;" f
optionsToSelections src/Dodge/Menu/Option.hs 59;" f optionsToSelections src/Dodge/Menu/Option.hs 59;" f
@@ -5192,7 +5190,7 @@ placeSpotID src/Dodge/Placement/PlaceSpot.hs 100;" f
placeSpotID' src/Dodge/Placement/PlaceSpot.hs 106;" f placeSpotID' src/Dodge/Placement/PlaceSpot.hs 106;" f
placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f
placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 70;" f placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 70;" f
placeString src/Dodge/Render/MenuScreen.hs 54;" f placeString src/Dodge/Render/MenuScreen.hs 62;" f
placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f
plainRegex src/Dodge/DisplayInventory.hs 194;" f plainRegex src/Dodge/DisplayInventory.hs 194;" f
plateCraft src/Dodge/Item/Craftable.hs 45;" f plateCraft src/Dodge/Item/Craftable.hs 45;" f
@@ -5296,7 +5294,7 @@ powlistUpToN src/Multiset.hs 23;" f
powlistUpToN' src/Multiset.hs 12;" f powlistUpToN' src/Multiset.hs 12;" f
powlistUpToN'' src/Multiset.hs 31;" f powlistUpToN'' src/Multiset.hs 31;" f
ppDraw src/Dodge/Render/ShapePicture.hs 116;" f ppDraw src/Dodge/Render/ShapePicture.hs 116;" f
ppEvents src/Dodge/Update.hs 721;" f ppEvents src/Dodge/Update.hs 733;" f
ppLevelReset src/Dodge/PressPlate.hs 13;" f ppLevelReset src/Dodge/PressPlate.hs 13;" f
preCritStart src/Dodge/Room/Start.hs 82;" f preCritStart src/Dodge/Room/Start.hs 82;" f
preloadRender src/Preload/Render.hs 30;" f preloadRender src/Preload/Render.hs 30;" f
@@ -5444,7 +5442,7 @@ renderInfoListAt src/Dodge/Render/InfoBox.hs 17;" f
renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f
renderLayer src/Render.hs 233;" f renderLayer src/Render.hs 233;" f
renderLightingNoShadows src/Render.hs 48;" f renderLightingNoShadows src/Render.hs 48;" f
renderListAt src/Dodge/Render/List.hs 192;" f renderListAt src/Dodge/Render/List.hs 193;" f
renderShadows src/Render.hs 117;" f renderShadows src/Render.hs 117;" f
replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 160;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 160;" f
replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f
@@ -5600,8 +5598,8 @@ seedStartOptions src/Dodge/Menu.hs 82;" f
segOnCirc src/Geometry.hs 116;" f segOnCirc src/Geometry.hs 116;" f
selNumPos src/Dodge/Render/HUD.hs 448;" f selNumPos src/Dodge/Render/HUD.hs 448;" f
selNumPosCardinal src/Dodge/Render/HUD.hs 471;" f selNumPosCardinal src/Dodge/Render/HUD.hs 471;" f
selSecDrawCursor src/Dodge/Render/List.hs 125;" f selSecDrawCursor src/Dodge/Render/List.hs 126;" f
selSecDrawCursorAt src/Dodge/Render/List.hs 103;" f selSecDrawCursorAt src/Dodge/Render/List.hs 104;" f
selSecSelCol src/Dodge/Render/HUD.hs 494;" f selSecSelCol src/Dodge/Render/HUD.hs 494;" f
selSecSelSize src/Dodge/SelectionSections.hs 182;" f selSecSelSize src/Dodge/SelectionSections.hs 182;" f
selSecYint src/Dodge/SelectionSections.hs 191;" f selSecYint src/Dodge/SelectionSections.hs 191;" f
@@ -5638,12 +5636,12 @@ setLinkTypePD src/Dodge/RoomLink.hs 67;" f
setMinInvSize src/Dodge/Creature/Action.hs 150;" f setMinInvSize src/Dodge/Creature/Action.hs 150;" f
setMusicVolume src/Sound.hs 161;" f setMusicVolume src/Sound.hs 161;" f
setMvPos src/Dodge/Creature/ReaderUpdate.hs 51;" f setMvPos src/Dodge/Creature/ReaderUpdate.hs 51;" f
setOldPos src/Dodge/Update.hs 510;" f setOldPos src/Dodge/Update.hs 522;" f
setOutLinks src/Dodge/RoomLink.hs 48;" f setOutLinks src/Dodge/RoomLink.hs 48;" f
setOutLinksByType src/Dodge/RoomLink.hs 57;" f setOutLinksByType src/Dodge/RoomLink.hs 57;" f
setOutLinksPD src/Dodge/RoomLink.hs 77;" f setOutLinksPD src/Dodge/RoomLink.hs 77;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 292;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 292;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 121;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 122;" f
setShaderSource src/Shader/Compile.hs 290;" f setShaderSource src/Shader/Compile.hs 290;" f
setShadowLimits src/Dodge/Shadows.hs 11;" f setShadowLimits src/Dodge/Shadows.hs 11;" f
setSoundVolume src/Sound.hs 156;" f setSoundVolume src/Sound.hs 156;" f
@@ -5745,7 +5743,7 @@ shuffleLinks src/Dodge/Room/Link.hs 30;" f
shuffleRoomPos src/Dodge/Layout.hs 78;" f shuffleRoomPos src/Dodge/Layout.hs 78;" f
shuffleTail src/RandomHelp.hs 59;" f shuffleTail src/RandomHelp.hs 59;" f
sigmoid src/Dodge/Base.hs 129;" f sigmoid src/Dodge/Base.hs 129;" f
simpleCrSprings src/Dodge/Update.hs 806;" f simpleCrSprings src/Dodge/Update.hs 818;" f
simpleDamFL src/Dodge/Flame.hs 41;" f simpleDamFL src/Dodge/Flame.hs 41;" f
simpleTermMessage src/Dodge/Terminal.hs 253;" f simpleTermMessage src/Dodge/Terminal.hs 253;" f
sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f sineRaisePitchOneSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f
@@ -5845,8 +5843,8 @@ ssScrollUsing src/Dodge/SelectionSections.hs 51;" f
ssSetCursor src/Dodge/SelectionSections.hs 72;" f ssSetCursor src/Dodge/SelectionSections.hs 72;" f
ssTryLookup src/Dodge/SelectionSections.hs 81;" f ssTryLookup src/Dodge/SelectionSections.hs 81;" f
ssfold src/FoldableHelp.hs 105;" f ssfold src/FoldableHelp.hs 105;" f
stackPicturesAt src/Dodge/Render/List.hs 97;" f stackPicturesAt src/Dodge/Render/List.hs 98;" f
stackPicturesAtOff src/Dodge/Render/List.hs 100;" f stackPicturesAtOff src/Dodge/Render/List.hs 101;" f
stackText src/Picture/Base.hs 188;" f stackText src/Picture/Base.hs 188;" f
stackedInventory src/Dodge/Creature.hs 281;" f stackedInventory src/Dodge/Creature.hs 281;" f
startCr src/Dodge/Creature.hs 91;" f startCr src/Dodge/Creature.hs 91;" f
@@ -5973,7 +5971,7 @@ titleOptionsMenu src/Dodge/Menu.hs 99;" f
titleOptionsNoWrite src/Dodge/Menu.hs 102;" f titleOptionsNoWrite src/Dodge/Menu.hs 102;" f
tlsTimeRadColPos src/Dodge/LightSource.hs 69;" f tlsTimeRadColPos src/Dodge/LightSource.hs 69;" f
tlsTimeRadFunPos src/Dodge/LightSource.hs 26;" f tlsTimeRadFunPos src/Dodge/LightSource.hs 26;" f
tmUpdate src/Dodge/Update.hs 490;" f tmUpdate src/Dodge/Update.hs 502;" f
toBothLnk src/Dodge/RoomLink.hs 121;" f toBothLnk src/Dodge/RoomLink.hs 121;" f
toClosestMultiple src/HelpNum.hs 3;" f toClosestMultiple src/HelpNum.hs 3;" f
toColor8 src/Color.hs 148;" f toColor8 src/Color.hs 148;" f
@@ -5983,7 +5981,7 @@ toLabel src/Dodge/Cleat.hs 16;" f
toLasgunUpdate src/Dodge/Item/Grammar.hs 119;" f toLasgunUpdate src/Dodge/Item/Grammar.hs 119;" f
toMultiset src/Multiset.hs 64;" f toMultiset src/Multiset.hs 64;" f
toOnward src/Dodge/Tree/Compose.hs 101;" f toOnward src/Dodge/Tree/Compose.hs 101;" f
toTopLeft src/Dodge/Render/List.hs 217;" f toTopLeft src/Dodge/Render/List.hs 218;" f
toV2 src/Geometry/Data.hs 36;" f toV2 src/Geometry/Data.hs 36;" f
toV3 src/Geometry/Data.hs 38;" f toV3 src/Geometry/Data.hs 38;" f
toV4 src/Geometry/Data.hs 40;" f toV4 src/Geometry/Data.hs 40;" f
@@ -6115,42 +6113,42 @@ updateBarreloid src/Dodge/Barreloid.hs 13;" f
updateBounds src/Dodge/Update/Camera.hs 245;" f updateBounds src/Dodge/Update/Camera.hs 245;" f
updateBulVel src/Dodge/Bullet.hs 50;" f updateBulVel src/Dodge/Bullet.hs 50;" f
updateBullet src/Dodge/Bullet.hs 28;" f updateBullet src/Dodge/Bullet.hs 28;" f
updateBullets src/Dodge/Update.hs 587;" f updateBullets src/Dodge/Update.hs 599;" f
updateCamera src/Dodge/Update/Camera.hs 31;" f updateCamera src/Dodge/Update/Camera.hs 31;" f
updateCloseObjects src/Dodge/Inventory.hs 124;" f updateCloseObjects src/Dodge/Inventory.hs 124;" f
updateCloud src/Dodge/Update.hs 772;" f updateCloud src/Dodge/Update.hs 784;" f
updateClouds src/Dodge/Update.hs 616;" f updateClouds src/Dodge/Update.hs 628;" f
updateCombineInvClick src/Dodge/Update/Input/InGame.hs 102;" f updateCombineInvClick src/Dodge/Update/Input/InGame.hs 102;" f
updateCombinePositioning src/Dodge/DisplayInventory.hs 38;" f updateCombinePositioning src/Dodge/DisplayInventory.hs 38;" f
updateCombineSections src/Dodge/DisplayInventory.hs 44;" f updateCombineSections src/Dodge/DisplayInventory.hs 44;" f
updateCreature src/Dodge/Creature/Update.hs 10;" f updateCreature src/Dodge/Creature/Update.hs 10;" f
updateCreatureGroups src/Dodge/Update.hs 556;" f updateCreatureGroups src/Dodge/Update.hs 568;" f
updateCreatureSoundPositions src/Dodge/Update.hs 532;" f updateCreatureSoundPositions src/Dodge/Update.hs 544;" f
updateDebugMessageOffset src/Dodge/Update.hs 92;" f updateDebugMessageOffset src/Dodge/Update.hs 92;" f
updateDelayedEvents src/Dodge/Update.hs 835;" f updateDelayedEvents src/Dodge/Update.hs 847;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 112;" f updateDisplaySections src/Dodge/DisplayInventory.hs 112;" f
updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortion src/Dodge/Distortion.hs 5;" f
updateDistortions src/Dodge/Update.hs 577;" f updateDistortions src/Dodge/Update.hs 589;" f
updateEnergyBall src/Dodge/EnergyBall.hs 46;" f updateEnergyBall src/Dodge/EnergyBall.hs 46;" f
updateEnergyBalls src/Dodge/Update.hs 604;" f updateEnergyBalls src/Dodge/Update.hs 616;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 283;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 283;" f
updateExpBarrel src/Dodge/Barreloid.hs 19;" f updateExpBarrel src/Dodge/Barreloid.hs 19;" f
updateFBOTO src/Framebuffer/Update.hs 97;" f updateFBOTO src/Framebuffer/Update.hs 97;" f
updateFBOTO3 src/Framebuffer/Update.hs 131;" f updateFBOTO3 src/Framebuffer/Update.hs 131;" f
updateFlame src/Dodge/Flame.hs 71;" f updateFlame src/Dodge/Flame.hs 71;" f
updateFlames src/Dodge/Update.hs 601;" f updateFlames src/Dodge/Update.hs 613;" f
updateFlare src/Dodge/Flare.hs 7;" f updateFlare src/Dodge/Flare.hs 7;" f
updateFloatingCamera src/Dodge/Update/Camera.hs 36;" f updateFloatingCamera src/Dodge/Update/Camera.hs 36;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 92;" f updateFunctionKey src/Dodge/Update/Input/InGame.hs 92;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 88;" f updateFunctionKeys src/Dodge/Update/Input/InGame.hs 88;" f
updateGusts src/Dodge/Update.hs 755;" f updateGusts src/Dodge/Update.hs 767;" f
updateHeldRootItem src/Dodge/Creature/State.hs 167;" f updateHeldRootItem src/Dodge/Creature/State.hs 167;" f
updateHumanoid src/Dodge/Humanoid.hs 12;" f updateHumanoid src/Dodge/Humanoid.hs 12;" f
updateIMl src/Dodge/Update.hs 546;" f updateIMl src/Dodge/Update.hs 558;" f
updateIMl' src/Dodge/Update.hs 551;" f updateIMl' src/Dodge/Update.hs 563;" f
updateInGameCamera src/Dodge/Update/Camera.hs 70;" f updateInGameCamera src/Dodge/Update/Camera.hs 70;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 186;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 186;" f
updateInstantBullets src/Dodge/Update.hs 693;" f updateInstantBullets src/Dodge/Update.hs 705;" f
updateInv src/Dodge/Creature/State.hs 152;" f updateInv src/Dodge/Creature/State.hs 152;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 85;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 85;" f
updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f
@@ -6159,21 +6157,21 @@ updateKeyInGame src/Dodge/Update/Input/InGame.hs 180;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 169;" f updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 169;" f
updateLampoid src/Dodge/Lampoid.hs 12;" f updateLampoid src/Dodge/Lampoid.hs 12;" f
updateLaser src/Dodge/Laser/Update.hs 13;" f updateLaser src/Dodge/Laser/Update.hs 13;" f
updateLasers src/Dodge/Update.hs 475;" f updateLasers src/Dodge/Update.hs 487;" f
updateLightSources src/Dodge/Update.hs 580;" f updateLightSources src/Dodge/Update.hs 592;" f
updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 201;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 201;" f
updateMIM src/Dodge/Update.hs 706;" f updateMIM src/Dodge/Update.hs 718;" f
updateMachine src/Dodge/Machine/Update.hs 19;" f updateMachine src/Dodge/Machine/Update.hs 19;" f
updateMouseContext src/Dodge/Update.hs 391;" f updateMouseContext src/Dodge/Update.hs 391;" f
updateMouseInventorySelection src/Dodge/Update.hs 309;" f updateMouseInventorySelection src/Dodge/Update.hs 309;" f
updateMouseInventorySelection' src/Dodge/Update.hs 314;" f updateMouseInventorySelection' src/Dodge/Update.hs 314;" f
updateMovement src/Dodge/Creature/State.hs 331;" f updateMovement src/Dodge/Creature/State.hs 331;" f
updateObjCatMaybes src/Dodge/Update.hs 568;" f updateObjCatMaybes src/Dodge/Update.hs 580;" f
updateObjMapMaybe src/Dodge/Update.hs 561;" f updateObjMapMaybe src/Dodge/Update.hs 573;" f
updatePastWorlds src/Dodge/Update.hs 463;" f updatePastWorlds src/Dodge/Update.hs 475;" f
updatePosEvent src/Dodge/PosEvent.hs 11;" f updatePosEvent src/Dodge/PosEvent.hs 11;" f
updatePosEvents src/Dodge/Update.hs 613;" f updatePosEvents src/Dodge/Update.hs 625;" f
updatePreload src/Preload/Update.hs 20;" f updatePreload src/Preload/Update.hs 20;" f
updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 144;" f updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 144;" f
updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 147;" f updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 147;" f
@@ -6181,9 +6179,9 @@ updateProjectile src/Dodge/Projectile/Update.hs 23;" f
updateProp src/Dodge/Prop/Update.hs 11;" f updateProp src/Dodge/Prop/Update.hs 11;" f
updateRBList src/Dodge/Inventory/RBList.hs 16;" f updateRBList src/Dodge/Inventory/RBList.hs 16;" f
updateRadarBlip src/Dodge/RadarBlip.hs 8;" f updateRadarBlip src/Dodge/RadarBlip.hs 8;" f
updateRadarBlips src/Dodge/Update.hs 583;" f updateRadarBlips src/Dodge/Update.hs 595;" f
updateRadarSweep src/Dodge/RadarSweep.hs 25;" f updateRadarSweep src/Dodge/RadarSweep.hs 25;" f
updateRadarSweeps src/Dodge/Update.hs 607;" f updateRadarSweeps src/Dodge/Update.hs 619;" f
updateRandNode src/TreeHelp.hs 108;" f updateRandNode src/TreeHelp.hs 108;" f
updateRenderSplit appDodge/Main.hs 106;" f updateRenderSplit appDodge/Main.hs 106;" f
updateRootItemID src/Dodge/Inventory/Location.hs 35;" f updateRootItemID src/Dodge/Inventory/Location.hs 35;" f
@@ -6192,30 +6190,30 @@ updateScopeZoom' src/Dodge/Update/Camera.hs 132;" f
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 224;" f updateSection src/Dodge/DisplayInventory.hs 224;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 203;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 203;" f
updateSeenWalls src/Dodge/Update.hs 724;" f updateSeenWalls src/Dodge/Update.hs 736;" f
updateShockwave src/Dodge/Shockwave/Update.hs 12;" f updateShockwave src/Dodge/Shockwave/Update.hs 12;" f
updateShockwaves src/Dodge/Update.hs 598;" f updateShockwaves src/Dodge/Update.hs 610;" f
updateSingleNodes src/TreeHelp.hs 97;" f updateSingleNodes src/TreeHelp.hs 97;" f
updateSound src/Sound.hs 71;" f updateSound src/Sound.hs 71;" f
updateSounds src/Sound.hs 66;" f updateSounds src/Sound.hs 66;" f
updateSpark src/Dodge/Spark.hs 19;" f updateSpark src/Dodge/Spark.hs 19;" f
updateSparks src/Dodge/Update.hs 610;" f updateSparks src/Dodge/Update.hs 622;" f
updateTempLightSource src/Dodge/LightSource/Update.hs 7;" f updateTempLightSource src/Dodge/LightSource/Update.hs 7;" f
updateTeslaArc src/Dodge/Tesla/Arc.hs 29;" f updateTeslaArc src/Dodge/Tesla/Arc.hs 29;" f
updateTeslaArcs src/Dodge/Update.hs 592;" f updateTeslaArcs src/Dodge/Update.hs 604;" f
updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f updateTractorBeam src/Dodge/TractorBeam/Update.hs 9;" f
updateTractorBeams src/Dodge/Update.hs 595;" f updateTractorBeams src/Dodge/Update.hs 607;" f
updateTurret src/Dodge/Machine/Update.hs 47;" f updateTurret src/Dodge/Machine/Update.hs 47;" f
updateUniverse src/Dodge/Update.hs 71;" f updateUniverse src/Dodge/Update.hs 71;" f
updateUniverseFirst src/Dodge/Update.hs 83;" f updateUniverseFirst src/Dodge/Update.hs 83;" f
updateUniverseLast src/Dodge/Update.hs 133;" f updateUniverseLast src/Dodge/Update.hs 133;" f
updateUniverseMid src/Dodge/Update.hs 154;" f updateUniverseMid src/Dodge/Update.hs 154;" f
updateUseInputInGame src/Dodge/Update/Input/InGame.hs 34;" f updateUseInputInGame src/Dodge/Update/Input/InGame.hs 34;" f
updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 20;" f updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 21;" f
updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 12;" f updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 12;" f
updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f updateWallDamages src/Dodge/Update/WallDamage.hs 10;" f
updateWheelEvent src/Dodge/Update/Scroll.hs 19;" f updateWheelEvent src/Dodge/Update/Scroll.hs 19;" f
updateWheelEvents src/Dodge/Update.hs 450;" f updateWheelEvents src/Dodge/Update.hs 462;" f
updateWorldEventFlag src/Dodge/Update.hs 117;" f updateWorldEventFlag src/Dodge/Update.hs 117;" f
updateWorldEventFlags src/Dodge/Update.hs 105;" f updateWorldEventFlags src/Dodge/Update.hs 105;" f
upperBody src/Dodge/Creature/Picture.hs 133;" f upperBody src/Dodge/Creature/Picture.hs 133;" f
@@ -6387,9 +6385,9 @@ zipCount src/Dodge/Tree/Shift.hs 129;" f
zipCountDown src/Dodge/Room/Procedural.hs 118;" f zipCountDown src/Dodge/Room/Procedural.hs 118;" f
zipWithDefaults src/Dodge/Item/Display.hs 21;" f zipWithDefaults src/Dodge/Item/Display.hs 21;" f
zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f
zoneClouds src/Dodge/Update.hs 483;" f zoneClouds src/Dodge/Update.hs 495;" f
zoneCreature src/Dodge/Zoning/Creature.hs 52;" f zoneCreature src/Dodge/Zoning/Creature.hs 52;" f
zoneCreatures src/Dodge/Update.hs 527;" f zoneCreatures src/Dodge/Update.hs 539;" f
zoneExtract src/Dodge/Zoning/Base.hs 50;" f zoneExtract src/Dodge/Zoning/Base.hs 50;" f
zoneMonoid src/Dodge/Zoning/Base.hs 80;" f zoneMonoid src/Dodge/Zoning/Base.hs 80;" f
zoneOfCirc src/Dodge/Zoning/Base.hs 22;" f zoneOfCirc src/Dodge/Zoning/Base.hs 22;" f