Remove section-wide indentation

This commit is contained in:
2024-11-24 10:52:20 +00:00
parent aca7ebd808
commit 9529185319
11 changed files with 110 additions and 178 deletions
+1 -25
View File
@@ -1,25 +1 @@
/home/justin/Haskell/loop/src/Dodge/Update/Input/InGame.hs:128:9-18: warning: [-Wunused-local-binds] All good (594 modules, at 10:49:27)
Defined but not used: nfreeslots
|
128 | let nfreeslots = crNumFreeSlots cr
| ^^^^^^^^^^
/home/justin/Haskell/loop/src/Dodge/Update/Input/InGame.hs:130:5-6: warning: [-Wunused-matches]
Defined but not used: xs
|
130 | xs <- w ^? hud . hudElement . diSelectionExtra
| ^^
/home/justin/Haskell/loop/src/Dodge/Update/Input/InGame.hs:131:19: warning: [-Wunused-matches]
Defined but not used: x
|
131 | OverInvDrag 3 x <- w ^? input . mouseContext
| ^
/home/justin/Haskell/loop/src/Dodge/Update/Input/InGame.hs:137:17: warning: [-Wunused-matches]
Defined but not used: i
|
137 | OverInvDrag i mpos ->
| ^
/home/justin/Haskell/loop/src/Dodge/Update/Input/InGame.hs:209:9: warning: [-Wunused-matches]
Defined but not used: j
|
209 | (i, j) <- w ^? hud . hudElement . diSelection . _Just
| ^
-3
View File
@@ -29,11 +29,8 @@ data SectionCursor = SectionCursor
data SelectionSection a = SelectionSection data SelectionSection a = SelectionSection
{ _ssItems :: IntMap (SelectionItem a) { _ssItems :: IntMap (SelectionItem a)
-- , _ssMinSize :: Int
, _ssOffset :: Int , _ssOffset :: Int
, _ssShownItems :: [Picture] , _ssShownItems :: [Picture]
, _ssIndent :: Int
, _ssDescriptor :: String
} }
type IMSS a = IntMap (SelectionSection a) type IMSS a = IntMap (SelectionSection a)
+2 -12
View File
@@ -175,13 +175,12 @@ defaultInvSections :: IM.IntMap (SelectionSection ())
defaultInvSections = IM.fromDistinctAscList $ defaultInvSections = IM.fromDistinctAscList $
zip zip
[-2 ..] [-2 ..]
[ defaultSS & ssDescriptor .~ "STATUS" [ defaultSS
& ssItems .~ IM.fromAscList [(0,SelectionItem ["STATUS"] 1 False white 0 ())] & ssItems .~ IM.fromAscList [(0,SelectionItem ["STATUS"] 1 False white 0 ())]
, defaultFiltSection , defaultFiltSection
, defaultInvSection , defaultInvSection
, defaultYouSection , defaultYouSection
, defaultFiltSection & ssIndent .~ 2 , defaultFiltSection
& ssDescriptor .~ "NEARBY"
, defaultCOSection , defaultCOSection
] ]
@@ -191,29 +190,20 @@ defaultSS =
{ _ssItems = mempty { _ssItems = mempty
, _ssOffset = 0 , _ssOffset = 0
, _ssShownItems = [] , _ssShownItems = []
, _ssIndent = 0
, _ssDescriptor = ""
} }
defaultCOSection :: SelectionSection () defaultCOSection :: SelectionSection ()
defaultCOSection = defaultCOSection =
defaultSS defaultSS
& ssIndent .~ 2
& ssDescriptor .~ "CLOSE OBJECTS"
defaultFiltSection :: SelectionSection a defaultFiltSection :: SelectionSection a
defaultFiltSection = defaultFiltSection =
defaultSS defaultSS
& ssIndent .~ 0
& ssDescriptor .~ "INV"
defaultInvSection :: SelectionSection () defaultInvSection :: SelectionSection ()
defaultInvSection = defaultInvSection =
defaultSS defaultSS
& ssDescriptor .~ "INVENTORY ITEMS"
defaultYouSection :: SelectionSection () defaultYouSection :: SelectionSection ()
defaultYouSection = defaultYouSection =
defaultSS defaultSS
& ssIndent .~ 2
& ssDescriptor .~ "YOUR STATUS"
+55 -63
View File
@@ -1,21 +1,22 @@
-- {-# OPTIONS_GHC -fno-full-laziness #-} -- {-# OPTIONS_GHC -fno-full-laziness #-}
{-# LANGUAGE TupleSections #-} {-# LANGUAGE TupleSections #-}
module Dodge.DisplayInventory ( module Dodge.DisplayInventory (
toggleCombineInv, toggleCombineInv,
updateInventoryPositioning, updateInventoryPositioning,
updateCombinePositioning, updateCombinePositioning,
) where ) where
import Data.Monoid
import qualified Data.List as List
import Dodge.CharacterEnums
import Control.Applicative import Control.Applicative
import Control.Lens import Control.Lens
import Control.Monad import Control.Monad
import Data.Bifunctor import Data.Bifunctor
import qualified Data.IntMap.Strict as IM import qualified Data.IntMap.Strict as IM
import qualified Data.List as List
import Data.Maybe import Data.Maybe
import Data.Monoid
import Dodge.Base.You import Dodge.Base.You
import Dodge.CharacterEnums
import Dodge.Combine import Dodge.Combine
import Dodge.Data.Combine import Dodge.Data.Combine
import Dodge.Data.Config import Dodge.Data.Config
@@ -32,17 +33,15 @@ import ListHelp
import Picture.Base import Picture.Base
toggleCombineInv :: Universe -> Universe toggleCombineInv :: Universe -> Universe
toggleCombineInv uv = case uv ^? uvWorld . hud . hudElement . subInventory of toggleCombineInv uv = uv & case uv ^? uvWorld . hud . hudElement . subInventory of
Just CombineInventory{} -> Just CombineInventory{} -> uvWorld . hud . hudElement . subInventory .~ NoSubInventory
uv & uvWorld . hud . hudElement . subInventory _ -> uvWorld %~ enterCombineInv (uv ^. uvConfig)
.~ NoSubInventory --MouseInvNothing
_ -> uv & uvWorld %~ enterCombineInv (uv ^. uvConfig)
updateCombinePositioning :: Universe -> Universe updateCombinePositioning :: Universe -> Universe
updateCombinePositioning u = updateCombinePositioning u = u
u & uvWorld . hud . hudElement . subInventory . ciSections & uvWorld . hud . hudElement . subInventory . ciSections
%~ updateCombineSections (_uvWorld u) (_uvConfig u) %~ updateCombineSections (_uvWorld u) (_uvConfig u)
& checkCombineSelectionExists & checkCombineSelectionExists
updateCombineSections :: updateCombineSections ::
World -> World ->
@@ -56,9 +55,7 @@ updateCombineSections w cfig =
(getAvailableListLines secondColumnParams cfig) (getAvailableListLines secondColumnParams cfig)
[(0, sclose), (-1, sfclose)] [(0, sclose), (-1, sfclose)]
where where
filtcurs = case w ^? hud . hudElement . subInventory . ciSelection . _Just . _1 of filtcurs = w ^? hud . hudElement . subInventory . ciSelection . _Just . _1 == Just (-1)
Just (-1) -> [cFilledRect]
_ -> [cWireRect]
(sfclose, sclose) = (sfclose, sclose) =
filterSectionsPair filterSectionsPair
filtcurs filtcurs
@@ -108,7 +105,7 @@ checkCombineSelectionExists u = fromMaybe u $ do
<|> Just (0, 0) <|> Just (0, 0)
Just $ case u ^? uvWorld . hud . hudElement . subInventory . ciSections . ix i . ssItems . ix j of Just $ case u ^? uvWorld . hud . hudElement . subInventory . ciSections . ix i . ssItems . ix j of
Nothing -> Nothing ->
u & uvWorld . hud . hudElement . subInventory . ciSelection ?~ (0,-1) u & uvWorld . hud . hudElement . subInventory . ciSelection ?~ (0, -1)
& uvWorld . hud . hudElement . subInventory . ciSelection & uvWorld . hud . hudElement . subInventory . ciSelection
%~ scrollSelectionSections (-1) sss %~ scrollSelectionSections (-1) sss
_ -> u _ -> u
@@ -128,32 +125,21 @@ updateDisplaySections w cfig =
displaySectionsSizes displaySectionsSizes
mselpos mselpos
(getAvailableListLines (invDisplayParams w) cfig) (getAvailableListLines (invDisplayParams w) cfig)
addorder [filtinv, filtclose, invx, youx, closex]
where where
mselpos = w ^? hud . hudElement . diSelection . _Just mselpos = w ^? hud . hudElement . diSelection . _Just
addorder = case mselpos of invfiltcurs = mselpos ^? _Just . _1 == Just (-1)
Just (-1, _) -> reverse [filtinv, filtclose, invx, youx, closex]
Just (0, _) -> reverse [filtinv, filtclose, invx, youx, closex]
Just (1, _) -> reverse [filtinv, filtclose, invx, youx, closex]
Just (2, _) -> reverse [filtinv, filtclose, closex, invx, youx]
Just (3, _) -> reverse [filtinv, filtclose, closex, invx, youx]
_ -> reverse [filtinv, filtclose, invx, closex, youx]
invfiltcurs = case mselpos ^? _Just . _1 of
Just (-1) -> [toEnum 219] -- filled rect
_ -> [toEnum 128] -- wire rect
(sfinv, sinv) = (sfinv, sinv) =
filterSectionsPair invfiltcurs plainRegex invitems "INVENTORY" $ filterSectionsPair invfiltcurs plainRegex invitems "INVENTORY" $
w ^? hud . hudElement . diInvFilter . _Just w ^? hud . hudElement . diInvFilter . _Just
(filtinv, invx) = ((-1, sfinv), (0, sinv)) (filtinv, invx) = ((-1, sfinv), (0, sinv))
closefiltcurs = case mselpos ^? _Just . _1 of closefiltcurs = mselpos ^? _Just . _1 == Just 2
Just (2) -> [toEnum 219] -- filled rect
_ -> [toEnum 128] -- wire rect
(sfclose, sclose) = (sfclose, sclose) =
filterSectionsPair closefiltcurs plainRegex closeitms "NEARBY" $ filterSectionsPair closefiltcurs plainRegex closeitms "NEARBY" $
w ^? hud . hudElement . diCloseFilter . _Just w ^? hud . hudElement . diCloseFilter . _Just
(filtclose, closex) = ((2, sfclose), (3, sclose)) (filtclose, closex) = ((2, sfclose), (3, sclose))
youx = (1, youitems) youx = (1, youitems)
youitems = IM.singleton 0 $ SelectionItem [thetext] 1 True invDimColor 2 () youitems = IM.singleton 0 $ SelectionItem [thetext] 1 True invDimColor 0 ()
thetext = displayFreeSlots (crNumFreeSlots cr) thetext = displayFreeSlots (crNumFreeSlots cr)
closeitms = closeitms =
IM.fromDistinctAscList . zip [0 ..] $ IM.fromDistinctAscList . zip [0 ..] $
@@ -171,24 +157,23 @@ updateDisplaySections w cfig =
cr = you w cr = you w
filterSectionsPair :: filterSectionsPair ::
String -> -- string at the end of the input Bool -> -- check for whether filter is in focus, changes string at the end
(String -> SelectionItem a -> Bool) -> (String -> SelectionItem a -> Bool) ->
IM.IntMap (SelectionItem a) -> IM.IntMap (SelectionItem a) ->
String -> String ->
Maybe String -> Maybe String ->
(IM.IntMap (SelectionItem a), IM.IntMap (SelectionItem a)) (IM.IntMap (SelectionItem a), IM.IntMap (SelectionItem a))
filterSectionsPair endstr filtfn itms filtdescription mfilt = filterSectionsPair infocus filtfn itms filtdescription mfilt =
( filtsis (filtsis, itms')
, itms'
)
where where
filtcurs = if infocus then cFilledRect else cWireRect
filtsis = fold $ do filtsis = fold $ do
str <- mfilt str <- mfilt
return $ return $
IM.singleton IM.singleton
0 0
$ SelectionInfo $ SelectionInfo
[filtdescription ++ " FILTER/" ++ str ++ endstr, numfiltitems] [filtdescription ++ " FILTER/" ++ str ++ [filtcurs], numfiltitems]
2 2
True True
white white
@@ -234,21 +219,23 @@ doSectionSize ::
IM.IntMap Int -> -- sections already sized IM.IntMap Int -> -- sections already sized
IM.IntMap Int IM.IntMap Int
doSectionSize extraavailable mintaken is sss done = fromMaybe done $ do doSectionSize extraavailable mintaken is sss done = fromMaybe done $ do
(v,others,k,ks) <- getsecusingis <|> getminsec (v, others, k, ks) <- getsecusingis <|> getminsec
minv <- mintaken ^? ix k minv <- mintaken ^? ix k
let extradesired = v - minv let extradesired = v - minv
linesgiven = min extraavailable extradesired linesgiven = min extraavailable extradesired
return $ doSectionSize (extraavailable - linesgiven) mintaken ks others $ done return $
& at k ?~ linesgiven + minv doSectionSize (extraavailable - linesgiven) mintaken ks others $
done
& at k ?~ linesgiven + minv
where where
getsecusingis = do getsecusingis = do
(k,ks) <- List.uncons is (k, ks) <- List.uncons is
let (my,s') = IM.updateLookupWithKey (\_ _ -> Nothing) k sss let (my, s') = IM.updateLookupWithKey (\_ _ -> Nothing) k sss
y <- my y <- my
return (y,s',k,ks) return (y, s', k, ks)
getminsec = do getminsec = do
((k,v),s') <- IM.minViewWithKey sss ((k, v), s') <- IM.minViewWithKey sss
return (v,s',k,[]) return (v, s', k, [])
updateSectionsPositioning :: updateSectionsPositioning ::
(Int -> Int) -> -- for determining each sections minimum size (Int -> Int) -> -- for determining each sections minimum size
@@ -262,14 +249,18 @@ updateSectionsPositioning f mselpos allavailablelines lsss sss =
where where
mss = IM.mapWithKey m sss mss = IM.mapWithKey m sss
m k _ = do m k _ = do
(k',i) <- mselpos (k', i) <- mselpos
guard $ k == k' guard $ k == k'
return i return i
ls = IM.fromList lsss ls = IM.fromList lsss
h = IM.intersectionWith ($) h = IM.intersectionWith ($)
lk = fromMaybe [] $ fmap ((:[]) . fst) mselpos lk = fromMaybe [] $ fmap ((: []) . fst) mselpos
ssizes = sectionsSizes allavailablelines f ssizes =
lk $ sectionsDesiredLines $ IM.intersectionWith (set ssItems) ls sss sectionsSizes
allavailablelines
f
lk
$ sectionsDesiredLines $ IM.intersectionWith (set ssItems) ls sss
updateSection :: updateSection ::
IM.IntMap (SelectionItem a) -> IM.IntMap (SelectionItem a) ->
@@ -297,28 +288,33 @@ updateSection sis mcsel availablelines ss =
pos | pos == 0 || length allstrings <= availablelines -> 0 pos | pos == 0 || length allstrings <= availablelines -> 0
pos | pos - 1 < oldoffset -> pos - 1 pos | pos - 1 < oldoffset -> pos - 1
pos | maxcsel == csel -> pos - availablelines + xselsize pos | maxcsel == csel -> pos - availablelines + xselsize
pos | pos + 1 + xselsize - availablelines > oldoffset -> pos
| pos + 1 + xselsize - availablelines > oldoffset ->
pos - availablelines + 1 + xselsize pos - availablelines + 1 + xselsize
_ | length allstrings - oldoffset < availablelines -> _
| length allstrings - oldoffset < availablelines ->
length allstrings - availablelines length allstrings - availablelines
_ -> oldoffset _ -> oldoffset
tweakfirst (x : xs) tweakfirst (x : xs)
| offset > 0 = | offset > 0 =
color moreupcolor (text (theindent ++ replicate 15 (toEnum 30))) : --color moreupcolor (text (theindent ++ replicate 15 (toEnum 30))) :
color moreupcolor (text (replicate 15 (toEnum 30))) :
xs xs
| otherwise = x : xs | otherwise = x : xs
tweakfirst [] = [] tweakfirst [] = []
moreupcolor = fromMaybe white $ allstrings ^? ix offset . _1 moreupcolor = fromMaybe white $ allstrings ^? ix offset . _1
shownitems shownitems
| length shownstrings > availablelines = | length shownstrings > availablelines =
map h (take (availablelines - 1) shownstrings) map h (take (availablelines - 1) shownstrings)
++ [color moredowncolor . text $ theindent ++ replicate 15 (toEnum 31)] -- ++ [color moredowncolor . text $ theindent ++ replicate 15 (toEnum 31)]
++ [color moredowncolor . text $ replicate 15 (toEnum 31)]
| otherwise = map h shownstrings | otherwise = map h shownstrings
moredowncolor = fromMaybe white $ allstrings ^? ix (offset + availablelines - 1) . _1 moredowncolor = fromMaybe white $ allstrings ^? ix (offset + availablelines - 1) . _1
allstrings = listSelectionColorPicture sis allstrings = listSelectionColorPicture sis
shownstrings = drop offset allstrings shownstrings = drop offset allstrings
h (_, str) = translate (fromIntegral (_ssIndent ss) * 100) 0 str --h (_, str) = translate (fromIntegral (_ssIndent ss) * 100) 0 str
theindent = replicate (_ssIndent ss) ' ' h (_, str) = str
-- theindent = replicate (_ssIndent ss) ' '
listSelectionColorPicture :: Foldable t => t (SelectionItem a) -> [(Color, Picture)] listSelectionColorPicture :: Foldable t => t (SelectionItem a) -> [(Color, Picture)]
listSelectionColorPicture = foldMap f listSelectionColorPicture = foldMap f
@@ -351,11 +347,9 @@ enterCombineInv cfig w =
filtsection = filtsection =
SelectionSection SelectionSection
{ _ssItems = mempty { _ssItems = mempty
-- , _ssMinSize = 0 , -- , _ssMinSize = 0
, _ssOffset = 0 _ssOffset = 0
, _ssShownItems = mempty , _ssShownItems = mempty
, _ssIndent = 0
, _ssDescriptor = "COMB FILTER"
} }
combsection = combsection =
updateSection updateSection
@@ -364,11 +358,9 @@ enterCombineInv cfig w =
availablelines availablelines
SelectionSection SelectionSection
{ _ssItems = cm { _ssItems = cm
-- , _ssMinSize = 5 , -- , _ssMinSize = 5
, _ssOffset = 0 _ssOffset = 0
, _ssShownItems = mempty , _ssShownItems = mempty
, _ssIndent = 0
, _ssDescriptor = "COMBINATIONS"
} }
regexList :: String -> [String] -> Bool regexList :: String -> [String] -> Bool
+1 -1
View File
@@ -59,7 +59,7 @@ closeObjectToSelectionItem e =
, _siIsSelectable = True , _siIsSelectable = True
, --, _siWidth = 15 , --, _siWidth = 15
_siColor = col _siColor = col
, _siOffX = 2 , _siOffX = 0
, _siPayload = () , _siPayload = ()
} }
where where
-11
View File
@@ -86,17 +86,6 @@ cycleOptions u = fromMaybe u $ do
| l + curoff >= n = 0 | l + curoff >= n = 0
| otherwise = l + curoff | otherwise = l + curoff
--colStrToSelItem :: (Color, String) -> SelectionItem (Universe -> Universe)
--colStrToSelItem (col, str) =
-- SelectionItem
-- { _siPictures = [str]
-- , _siHeight = 1
-- , _siIsSelectable = True
-- , _siColor = col
-- , _siOffX = 0
-- , _siPayload = id
-- }
optionValueOffset :: Universe -> MenuOption -> Int optionValueOffset :: Universe -> MenuOption -> Int
optionValueOffset u mo = case _moString mo u of optionValueOffset u mo = case _moString mo u of
MODStringOption s _ -> length s MODStringOption s _ -> length s
-11
View File
@@ -422,17 +422,6 @@ invHead cfig =
--textSelItems :: [String] -> [SelectionItem ()] --textSelItems :: [String] -> [SelectionItem ()]
--textSelItems = map (picsToSelectable . (: [])) --textSelItems = map (picsToSelectable . (: []))
--picsToSelectable :: [String] -> SelectionItem ()
--picsToSelectable pics =
-- SelectionItem
-- { _siPictures = pics
-- , _siHeight = length pics
-- , _siIsSelectable = True
-- , _siColor = white
-- , _siOffX = 0
-- , _siPayload = ()
-- }
-- would be nice to add parameter to orient this with NSEW, cf cursor -- would be nice to add parameter to orient this with NSEW, cf cursor
selNumPos :: selNumPos ::
Configuration -> Configuration ->
+1 -2
View File
@@ -113,7 +113,6 @@ selSecDrawCursorAt ::
Picture Picture
selSecDrawCursorAt xsize ldp curs sss (i, j) = fold $ do selSecDrawCursorAt xsize ldp curs sss (i, j) = fold $ do
yint <- selSecYint i j sss yint <- selSecYint i j sss
xint <- sss ^? ix i . ssIndent
si <- sss ^? ix i . ssItems . ix j si <- sss ^? ix i . ssItems . ix j
return $ return $
listCursorChooseBorderScale listCursorChooseBorderScale
@@ -121,7 +120,7 @@ selSecDrawCursorAt xsize ldp curs sss (i, j) = fold $ do
(ldp ^. ldpScale) (ldp ^. ldpScale)
curs curs
yint yint
(xint + _siOffX si) (_siOffX si)
(_siColor si) (_siColor si)
xsize xsize
(_siHeight si) (_siHeight si)
+4 -5
View File
@@ -51,13 +51,12 @@ drawSSMultiCursor sss msel mextra ldp curs cfig = translateScreenPos cfig (ldp ^
$ do $ do
(i, j) <- msel (i, j) <- msel
yint <- selSecYint i j sss yint <- selSecYint i j sss
xint <- sss ^? ix i . ssIndent
ydown <- mextra ydown <- mextra
ssitms <- sss ^? ix i . ssItems ssitms <- sss ^? ix i . ssItems
let selitms = fst . IM.split (j + ydown + 1) . snd . IM.split (j -1) $ ssitms let selitms = fst . IM.split (j + ydown + 1) . snd . IM.split (j -1) $ ssitms
ysize = sum . fmap _siHeight $ selitms ysize = sum . fmap _siHeight $ selitms
maxoff = maximum . fmap _siOffX $ selitms maxxoff = maximum . fmap _siOffX $ selitms
minoff = minimum . fmap _siOffX $ selitms minxoff = minimum . fmap _siOffX $ selitms
let col = white let col = white
-- col <- fmap (_siColor . fst) $ IM.minView selitms -- col <- fmap (_siColor . fst) $ IM.minView selitms
return $ return $
@@ -66,7 +65,7 @@ drawSSMultiCursor sss msel mextra ldp curs cfig = translateScreenPos cfig (ldp ^
(ldp ^. ldpScale) (ldp ^. ldpScale)
curs curs
yint yint
(xint + minoff) minxoff
col col
(15 + maxoff - minoff) (15 + maxxoff - minxoff)
ysize ysize
+8 -6
View File
@@ -124,17 +124,18 @@ tryDropSelected mpos w = do
tryPickupSelected :: Maybe (Int,Int) -> World -> Maybe World tryPickupSelected :: Maybe (Int,Int) -> World -> Maybe World
tryPickupSelected mpos w = do tryPickupSelected mpos w = do
guard $ maybe True (\(i,_) -> i == 0) mpos guard $ maybe True (\(i,_) -> i == 0) mpos
cr <- w ^? cWorld . lWorld . creatures . ix 0 -- cr <- w ^? cWorld . lWorld . creatures . ix 0
let nfreeslots = crNumFreeSlots cr -- let nfreeslots = crNumFreeSlots cr
(3, _) <- w ^? hud . hudElement . diSelection . _Just (3, _) <- w ^? hud . hudElement . diSelection . _Just
xs <- w ^? hud . hudElement . diSelectionExtra -- xs <- w ^? hud . hudElement . diSelectionExtra
OverInvDrag 3 x <- w ^? input . mouseContext -- OverInvDrag 3 x <- w ^? input . mouseContext
return w return w
-- return $ IS.foldr (dropItem cr) w xs -- return $ IS.foldr (dropItem cr) w xs
updateMouseReleaseInGame :: World -> World updateMouseReleaseInGame :: World -> World
updateMouseReleaseInGame w = case w ^. input . mouseContext of updateMouseReleaseInGame w = case w ^. input . mouseContext of
OverInvDrag i mpos -> --OverInvDrag i mpos ->
OverInvDrag _ mpos ->
input . mouseContext .~ MouseInGame $ input . mouseContext .~ MouseInGame $
fromMaybe w $ tryDropSelected mpos w <|> tryPickupSelected mpos w fromMaybe w $ tryDropSelected mpos w <|> tryPickupSelected mpos w
-- OverInvDrag i mpos -> fromMaybe (dropSelected w & input . mouseContext .~ MouseInGame) $ do -- OverInvDrag i mpos -> fromMaybe (dropSelected w & input . mouseContext .~ MouseInGame) $ do
@@ -206,7 +207,8 @@ updateMouseClickInGame cfig w = case w ^. input . mouseContext of
startDrag :: (Int, Int) -> World -> World startDrag :: (Int, Int) -> World -> World
startDrag (a, b) w = fromMaybe (augInvDirectSelect (a, b) $ setmichosen mempty w) $ do startDrag (a, b) w = fromMaybe (augInvDirectSelect (a, b) $ setmichosen mempty w) $ do
(i, j) <- w ^? hud . hudElement . diSelection . _Just --(i, j) <- w ^? hud . hudElement . diSelection . _Just
(i, _) <- w ^? hud . hudElement . diSelection . _Just
xs <- w ^? hud . hudElement . diSelectionExtra xs <- w ^? hud . hudElement . diSelectionExtra
guard $ i == a && b `IS.member` xs guard $ i == a && b `IS.member` xs
return $ setmichosen xs w return $ setmichosen xs w
+37 -38
View File
@@ -3654,7 +3654,7 @@ colCrsWalls src/Dodge/WallCreatureCollisions.hs 17;" f
colSpark src/Dodge/Spark.hs 47;" f colSpark src/Dodge/Spark.hs 47;" f
colSparkRandDir src/Dodge/Spark.hs 101;" f colSparkRandDir src/Dodge/Spark.hs 101;" f
collectDamageTypes src/Dodge/Damage.hs 32;" f collectDamageTypes src/Dodge/Damage.hs 32;" f
collectInvItems src/Dodge/Update/Input/InGame.hs 226;" f collectInvItems src/Dodge/Update/Input/InGame.hs 228;" f
collideCircWalls src/Dodge/Base/Collide.hs 149;" f collideCircWalls src/Dodge/Base/Collide.hs 149;" f
collidePoint src/Dodge/Base/Collide.hs 48;" f collidePoint src/Dodge/Base/Collide.hs 48;" f
collidePointTestFilter src/Dodge/Base/Collide.hs 93;" f collidePointTestFilter src/Dodge/Base/Collide.hs 93;" f
@@ -3688,7 +3688,7 @@ composeTree src/Dodge/Tree/Compose.hs 46;" f
computerBeepingS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f computerBeepingS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f
conEffects src/Dodge/Concurrent.hs 13;" f conEffects src/Dodge/Concurrent.hs 13;" f
concBall src/Dodge/WorldEvent/SpawnParticle.hs 27;" f concBall src/Dodge/WorldEvent/SpawnParticle.hs 27;" f
concurrentIS src/Dodge/Update/Input/InGame.hs 218;" f concurrentIS src/Dodge/Update/Input/InGame.hs 220;" f
connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 532;" f connectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 532;" f
connectionBlurb src/Dodge/Terminal.hs 102;" f connectionBlurb src/Dodge/Terminal.hs 102;" f
connectionBlurbLines src/Dodge/Terminal.hs 47;" f connectionBlurbLines src/Dodge/Terminal.hs 47;" f
@@ -3983,7 +3983,7 @@ disconnectTerminal src/Dodge/Terminal.hs 217;" f
displayConfig src/Dodge/Menu.hs 196;" f 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 206;" f displayFreeSlots src/Dodge/DisplayInventory.hs 200;" f
displaySectionsSizes src/Dodge/DisplayInventory.hs 116;" f displaySectionsSizes src/Dodge/DisplayInventory.hs 116;" f
displayTerminalLineString src/Dodge/Update.hs 422;" f displayTerminalLineString src/Dodge/Update.hs 422;" f
dist src/Geometry/Vector.hs 179;" f dist src/Geometry/Vector.hs 179;" f
@@ -4042,13 +4042,13 @@ doPropUpdates src/Dodge/Prop/Update.hs 36;" f
doQuickload src/Dodge/Save.hs 82;" f doQuickload src/Dodge/Save.hs 82;" f
doQuicksave src/Dodge/Save.hs 77;" f doQuicksave src/Dodge/Save.hs 77;" f
doRandImpulse src/Dodge/RandImpulse.hs 7;" f doRandImpulse src/Dodge/RandImpulse.hs 7;" f
doRegexInput src/Dodge/Update/Input/InGame.hs 353;" f doRegexInput src/Dodge/Update/Input/InGame.hs 355;" f
doRoomInPlacements src/Dodge/Layout.hs 97;" f doRoomInPlacements src/Dodge/Layout.hs 97;" f
doRoomOutPlacements src/Dodge/Layout.hs 107;" f doRoomOutPlacements src/Dodge/Layout.hs 107;" f
doRoomPlacements src/Dodge/Layout.hs 122;" f doRoomPlacements src/Dodge/Layout.hs 122;" f
doRoomShift src/Dodge/Room/Link.hs 33;" f doRoomShift src/Dodge/Room/Link.hs 33;" f
doScopeZoom src/Dodge/Update/Camera.hs 141;" f doScopeZoom src/Dodge/Update/Camera.hs 141;" f
doSectionSize src/Dodge/DisplayInventory.hs 228;" f doSectionSize src/Dodge/DisplayInventory.hs 222;" f
doSideEffects appDodge/Main.hs 118;" f doSideEffects appDodge/Main.hs 118;" f
doStep src/Dodge/ArcStep.hs 9;" f doStep src/Dodge/ArcStep.hs 9;" f
doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f
@@ -4234,7 +4234,7 @@ encircle src/Dodge/Creature/Boid.hs 115;" f
encircleCloseP src/Dodge/Creature/Boid.hs 35;" f encircleCloseP src/Dodge/Creature/Boid.hs 35;" f
encircleDistP src/Dodge/Creature/Boid.hs 21;" f encircleDistP src/Dodge/Creature/Boid.hs 21;" f
encircleP src/Dodge/Creature/Boid.hs 27;" f encircleP src/Dodge/Creature/Boid.hs 27;" f
enterCombineInv src/Dodge/DisplayInventory.hs 354;" f enterCombineInv src/Dodge/DisplayInventory.hs 324;" f
eqConstr src/SameConstr.hs 17;" f eqConstr src/SameConstr.hs 17;" f
eqPosText src/Dodge/Equipment/Text.hs 6;" f eqPosText src/Dodge/Equipment/Text.hs 6;" f
equipAllocString src/Dodge/Render/HUD.hs 280;" f equipAllocString src/Dodge/Render/HUD.hs 280;" f
@@ -4283,7 +4283,7 @@ fdiv src/ShortShow.hs 27;" f
feet src/Dodge/Creature/Picture.hs 51;" f feet src/Dodge/Creature/Picture.hs 51;" f
ffoldM src/Framebuffer/Update.hs 79;" f ffoldM src/Framebuffer/Update.hs 79;" f
filter3 src/FoldableHelp.hs 76;" f filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 172;" f filterSectionsPair src/Dodge/DisplayInventory.hs 166;" f
findBlips src/Dodge/RadarSweep.hs 44;" f findBlips src/Dodge/RadarSweep.hs 44;" f
findBoundDists src/Dodge/Update/Camera.hs 235;" f findBoundDists src/Dodge/Update/Camera.hs 235;" f
findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f
@@ -4595,7 +4595,7 @@ interweave src/Justify.hs 17;" f
intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f
invAdj src/Dodge/Item/Grammar.hs 188;" f invAdj src/Dodge/Item/Grammar.hs 188;" f
invCursorParams src/Dodge/ListDisplayParams.hs 38;" f invCursorParams src/Dodge/ListDisplayParams.hs 38;" f
invDimColor src/Dodge/DisplayInventory.hs 200;" f invDimColor src/Dodge/DisplayInventory.hs 194;" f
invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f
invHead src/Dodge/Render/HUD.hs 377;" f invHead src/Dodge/Render/HUD.hs 377;" f
invLDT src/Dodge/Item/Grammar.hs 171;" f invLDT src/Dodge/Item/Grammar.hs 171;" f
@@ -4770,7 +4770,7 @@ 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 139;" f listCursorChooseBorderScale src/Dodge/Render/List.hs 139;" f
listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f
listSelectionColorPicture src/Dodge/DisplayInventory.hs 346;" f listSelectionColorPicture src/Dodge/DisplayInventory.hs 316;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
llleft src/Dodge/Item/Grammar.hs 107;" f llleft src/Dodge/Item/Grammar.hs 107;" f
llright src/Dodge/Item/Grammar.hs 114;" f llright src/Dodge/Item/Grammar.hs 114;" f
@@ -4907,7 +4907,7 @@ maybeClearPath src/Dodge/Block.hs 77;" f
maybeClearPaths src/Dodge/Block.hs 74;" f maybeClearPaths src/Dodge/Block.hs 74;" f
maybeDestroyBlock src/Dodge/Wall/Damage.hs 26;" f maybeDestroyBlock src/Dodge/Wall/Damage.hs 26;" f
maybeDestroyDoor src/Dodge/Wall/Damage.hs 31;" f maybeDestroyDoor src/Dodge/Wall/Damage.hs 31;" f
maybeExitCombine src/Dodge/Update/Input/InGame.hs 513;" f maybeExitCombine src/Dodge/Update/Input/InGame.hs 515;" f
maybeOpenTerminal src/Dodge/Update.hs 123;" f maybeOpenTerminal src/Dodge/Update.hs 123;" f
maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f
maybeTakeOne src/RandomHelp.hs 111;" f maybeTakeOne src/RandomHelp.hs 111;" f
@@ -5132,7 +5132,7 @@ parseNum src/Dodge/Debug/Terminal.hs 73;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 14;" f pathConnected src/Dodge/Room/CheckConsistency.hs 14;" f
pathEdgeObstructed src/Dodge/Path.hs 43;" f pathEdgeObstructed src/Dodge/Path.hs 43;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f
pauseGame src/Dodge/Update/Input/InGame.hs 449;" f pauseGame src/Dodge/Update/Input/InGame.hs 451;" f
pauseMenu src/Dodge/Menu.hs 53;" f pauseMenu src/Dodge/Menu.hs 53;" f
pauseMenuOptions src/Dodge/Menu.hs 58;" f pauseMenuOptions src/Dodge/Menu.hs 58;" f
pauseSound src/Dodge/SoundLogic.hs 41;" f pauseSound src/Dodge/SoundLogic.hs 41;" f
@@ -5189,7 +5189,7 @@ 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 63;" f placeString src/Dodge/Render/MenuScreen.hs 63;" f
placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f
plainRegex src/Dodge/DisplayInventory.hs 203;" f plainRegex src/Dodge/DisplayInventory.hs 197;" f
plateCraft src/Dodge/Item/Craftable.hs 45;" f plateCraft src/Dodge/Item/Craftable.hs 45;" f
playIfFree src/Sound.hs 136;" f playIfFree src/Sound.hs 136;" f
playPositionalSoundQueue src/Sound.hs 144;" f playPositionalSoundQueue src/Sound.hs 144;" f
@@ -5419,7 +5419,7 @@ refract src/Dodge/Item/Weapon/LaserPath.hs 40;" f
refreshOptionsSelectionList src/Dodge/Menu/Option.hs 39;" f refreshOptionsSelectionList src/Dodge/Menu/Option.hs 39;" f
regexCombs src/Dodge/DisplayInventory.hs 71;" f regexCombs src/Dodge/DisplayInventory.hs 71;" f
regexIn src/Regex.hs 4;" f regexIn src/Regex.hs 4;" f
regexList src/Dodge/DisplayInventory.hs 397;" f regexList src/Dodge/DisplayInventory.hs 367;" f
regexList src/Regex.hs 7;" f regexList src/Regex.hs 7;" f
reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 442;" f reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 442;" f
reloadLevelStart src/Dodge/Save.hs 71;" f reloadLevelStart src/Dodge/Save.hs 71;" f
@@ -5590,8 +5590,8 @@ seagullWhistle1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 372;" f
seagullWhistleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 530;" f seagullWhistleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 530;" f
searchIfDamaged src/Dodge/Creature/ReaderUpdate.hs 203;" f searchIfDamaged src/Dodge/Creature/ReaderUpdate.hs 203;" f
secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f
sectionsDesiredLines src/Dodge/DisplayInventory.hs 212;" f sectionsDesiredLines src/Dodge/DisplayInventory.hs 206;" f
sectionsSizes src/Dodge/DisplayInventory.hs 217;" f sectionsSizes src/Dodge/DisplayInventory.hs 211;" f
seedStartMenu src/Dodge/Menu.hs 79;" f seedStartMenu src/Dodge/Menu.hs 79;" f
seedStartOptions src/Dodge/Menu.hs 82;" f seedStartOptions src/Dodge/Menu.hs 82;" f
segOnCirc src/Geometry.hs 116;" f segOnCirc src/Geometry.hs 116;" f
@@ -5690,9 +5690,9 @@ shiftChildren src/Dodge/Tree/Compose.hs 43;" f
shiftDraw src/Dodge/Render/ShapePicture.hs 66;" f shiftDraw src/Dodge/Render/ShapePicture.hs 66;" f
shiftDraw' src/Dodge/Render/ShapePicture.hs 72;" f shiftDraw' src/Dodge/Render/ShapePicture.hs 72;" f
shiftInBy src/Dodge/PlacementSpot.hs 236;" f shiftInBy src/Dodge/PlacementSpot.hs 236;" f
shiftInvItems src/Dodge/Update/Input/InGame.hs 235;" f shiftInvItems src/Dodge/Update/Input/InGame.hs 237;" f
shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 262;" f shiftInvItemsDown src/Dodge/Update/Input/InGame.hs 264;" f
shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 256;" f shiftInvItemsUp src/Dodge/Update/Input/InGame.hs 258;" f
shiftLinkBy src/Dodge/Room/Link.hs 87;" f shiftLinkBy src/Dodge/Room/Link.hs 87;" f
shiftPSBy src/Dodge/Placement/Shift.hs 12;" f shiftPSBy src/Dodge/Placement/Shift.hs 12;" f
shiftPathBy src/Dodge/Room/Link.hs 92;" f shiftPathBy src/Dodge/Room/Link.hs 92;" f
@@ -5791,7 +5791,7 @@ soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f
soundWithStatus src/Dodge/SoundLogic.hs 98;" f soundWithStatus src/Dodge/SoundLogic.hs 98;" f
soundWithStatusVolume src/Dodge/SoundLogic.hs 48;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 48;" f
southPillarsRoom src/Dodge/Room/LongDoor.hs 85;" f southPillarsRoom src/Dodge/Room/LongDoor.hs 85;" f
spaceAction src/Dodge/Update/Input/InGame.hs 452;" f spaceAction src/Dodge/Update/Input/InGame.hs 454;" f
spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 186;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 186;" f
spanColLightI src/Dodge/Placement/Instance/LightSource.hs 179;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 179;" f
spanLS src/Dodge/Placement/Instance/LightSource.hs 171;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 171;" f
@@ -5848,7 +5848,7 @@ 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
startCrafts src/Dodge/Room/Start.hs 92;" f startCrafts src/Dodge/Room/Start.hs 92;" f
startDrag src/Dodge/Update/Input/InGame.hs 207;" f startDrag src/Dodge/Update/Input/InGame.hs 208;" f
startInvList src/Dodge/Creature.hs 109;" f startInvList src/Dodge/Creature.hs 109;" f
startInventory src/Dodge/Creature.hs 112;" f startInventory src/Dodge/Creature.hs 112;" f
startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f
@@ -5989,8 +5989,8 @@ toggleCombineInv src/Dodge/DisplayInventory.hs 34;" f
toggleCommand src/Dodge/Terminal.hs 196;" f toggleCommand src/Dodge/Terminal.hs 196;" f
toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 79;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 79;" f
toggleJust src/MaybeHelp.hs 41;" f toggleJust src/MaybeHelp.hs 41;" f
toggleMap src/Dodge/Update/Input/InGame.hs 476;" f toggleMap src/Dodge/Update/Input/InGame.hs 478;" f
toggleTweakInv src/Dodge/Update/Input/InGame.hs 490;" f toggleTweakInv src/Dodge/Update/Input/InGame.hs 492;" f
togglesToEffects src/Dodge/Terminal.hs 248;" f togglesToEffects src/Dodge/Terminal.hs 248;" f
tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f
tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f
@@ -6061,7 +6061,7 @@ trunkDepth src/TreeHelp.hs 161;" f
tryAssignHotkey src/Dodge/Creature/YourControl.hs 85;" f tryAssignHotkey src/Dodge/Creature/YourControl.hs 85;" f
tryAttachBulletBelt src/Dodge/Euse.hs 40;" f tryAttachBulletBelt src/Dodge/Euse.hs 40;" f
tryChargeBattery src/Dodge/Euse.hs 43;" f tryChargeBattery src/Dodge/Euse.hs 43;" f
tryCombine src/Dodge/Update/Input/InGame.hs 499;" f tryCombine src/Dodge/Update/Input/InGame.hs 501;" f
tryDropSelected src/Dodge/Update/Input/InGame.hs 116;" f tryDropSelected src/Dodge/Update/Input/InGame.hs 116;" f
tryGetChannel src/Sound.hs 96;" f tryGetChannel src/Sound.hs 96;" f
tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 20;" f tryGetRootAttachedFromInvID src/Dodge/Inventory/Location.hs 20;" f
@@ -6109,7 +6109,7 @@ updateAllNodes src/TreeHelp.hs 85;" f
updateArc src/Dodge/Tesla/Arc.hs 86;" f updateArc src/Dodge/Tesla/Arc.hs 86;" f
updateAttachedItems src/Dodge/Creature/State.hs 173;" f updateAttachedItems src/Dodge/Creature/State.hs 173;" f
updateAutoRecharge src/Dodge/Creature/State.hs 324;" f updateAutoRecharge src/Dodge/Creature/State.hs 324;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 387;" f updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 389;" f
updateBarrel src/Dodge/Barreloid.hs 45;" f updateBarrel src/Dodge/Barreloid.hs 45;" f
updateBarreloid src/Dodge/Barreloid.hs 13;" f updateBarreloid src/Dodge/Barreloid.hs 13;" f
updateBounds src/Dodge/Update/Camera.hs 245;" f updateBounds src/Dodge/Update/Camera.hs 245;" f
@@ -6127,12 +6127,12 @@ updateCreatureGroups src/Dodge/Update.hs 492;" f
updateCreatureSoundPositions src/Dodge/Update.hs 468;" f updateCreatureSoundPositions src/Dodge/Update.hs 468;" f
updateDebugMessageOffset src/Dodge/Update.hs 92;" f updateDebugMessageOffset src/Dodge/Update.hs 92;" f
updateDelayedEvents src/Dodge/Update.hs 771;" f updateDelayedEvents src/Dodge/Update.hs 771;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 120;" f updateDisplaySections src/Dodge/DisplayInventory.hs 121;" f
updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortion src/Dodge/Distortion.hs 5;" f
updateDistortions src/Dodge/Update.hs 513;" f updateDistortions src/Dodge/Update.hs 513;" f
updateEnergyBall src/Dodge/EnergyBall.hs 46;" f updateEnergyBall src/Dodge/EnergyBall.hs 46;" f
updateEnergyBalls src/Dodge/Update.hs 540;" f updateEnergyBalls src/Dodge/Update.hs 540;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 428;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 430;" 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
@@ -6140,31 +6140,31 @@ updateFlame src/Dodge/Flame.hs 71;" f
updateFlames src/Dodge/Update.hs 537;" f updateFlames src/Dodge/Update.hs 537;" 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 279;" f updateFunctionKey src/Dodge/Update/Input/InGame.hs 281;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 272;" f updateFunctionKeys src/Dodge/Update/Input/InGame.hs 274;" f
updateGusts src/Dodge/Update.hs 691;" f updateGusts src/Dodge/Update.hs 691;" 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 482;" f updateIMl src/Dodge/Update.hs 482;" f
updateIMl' src/Dodge/Update.hs 487;" f updateIMl' src/Dodge/Update.hs 487;" f
updateInGameCamera src/Dodge/Update/Camera.hs 70;" f updateInGameCamera src/Dodge/Update/Camera.hs 70;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 332;" f updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 334;" f
updateInstantBullets src/Dodge/Update.hs 629;" f updateInstantBullets src/Dodge/Update.hs 629;" f
updateInv src/Dodge/Creature/State.hs 152;" f updateInv src/Dodge/Creature/State.hs 152;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 89;" f updateInventoryPositioning src/Dodge/DisplayInventory.hs 89;" f
updateItemTargeting src/Dodge/Creature/State.hs 268;" f updateItemTargeting src/Dodge/Creature/State.hs 268;" f
updateItemWithOrientation src/Dodge/Creature/State.hs 194;" f updateItemWithOrientation src/Dodge/Creature/State.hs 194;" f
updateKeyInGame src/Dodge/Update/Input/InGame.hs 326;" f updateKeyInGame src/Dodge/Update/Input/InGame.hs 328;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 314;" f updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 316;" 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 411;" f updateLasers src/Dodge/Update.hs 411;" f
updateLightSources src/Dodge/Update.hs 516;" f updateLightSources src/Dodge/Update.hs 516;" f
updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 347;" f updateLongPressInGame src/Dodge/Update/Input/InGame.hs 349;" f
updateMIM src/Dodge/Update.hs 642;" f updateMIM src/Dodge/Update.hs 642;" f
updateMachine src/Dodge/Machine/Update.hs 19;" f updateMachine src/Dodge/Machine/Update.hs 19;" f
updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 160;" f updateMouseClickInGame src/Dodge/Update/Input/InGame.hs 161;" f
updateMouseContext src/Dodge/Update.hs 307;" f updateMouseContext src/Dodge/Update.hs 307;" f
updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 96;" f updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 96;" f
updateMouseInGame src/Dodge/Update/Input/InGame.hs 88;" f updateMouseInGame src/Dodge/Update/Input/InGame.hs 88;" f
@@ -6176,8 +6176,8 @@ updatePastWorlds src/Dodge/Update.hs 399;" f
updatePosEvent src/Dodge/PosEvent.hs 11;" f updatePosEvent src/Dodge/PosEvent.hs 11;" f
updatePosEvents src/Dodge/Update.hs 549;" f updatePosEvents src/Dodge/Update.hs 549;" f
updatePreload src/Preload/Update.hs 20;" f updatePreload src/Preload/Update.hs 20;" f
updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 289;" f updatePressedButtonsCarte src/Dodge/Update/Input/InGame.hs 291;" f
updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 292;" f updatePressedButtonsCarte' src/Dodge/Update/Input/InGame.hs 294;" f
updateProjectile src/Dodge/Projectile/Update.hs 23;" f 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
@@ -6191,9 +6191,8 @@ updateRootItemID src/Dodge/Inventory/Location.hs 35;" f
updateScopeZoom src/Dodge/Update/Camera.hs 127;" f updateScopeZoom src/Dodge/Update/Camera.hs 127;" f
updateScopeZoom' src/Dodge/Update/Camera.hs 132;" f 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 297;" f updateSection src/Dodge/DisplayInventory.hs 267;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 252;" f updateSectionsPositioning src/Dodge/DisplayInventory.hs 246;" f
updateSectionsPositioning' src/Dodge/DisplayInventory.hs 274;" f
updateSeenWalls src/Dodge/Update.hs 660;" f updateSeenWalls src/Dodge/Update.hs 660;" f
updateShockwave src/Dodge/Shockwave/Update.hs 12;" f updateShockwave src/Dodge/Shockwave/Update.hs 12;" f
updateShockwaves src/Dodge/Update.hs 534;" f updateShockwaves src/Dodge/Update.hs 534;" f