Refactor close objects hud display
This commit is contained in:
+1
-1
@@ -1 +1 @@
|
||||
All good (594 modules, at 14:06:19)
|
||||
All good (593 modules, at 16:12:32)
|
||||
|
||||
@@ -50,11 +50,10 @@ data HUD = HUD
|
||||
, _carteCenter :: Point2
|
||||
, _carteZoom :: Float
|
||||
, _carteRot :: Float
|
||||
, _closeObjects :: [Either FloorItem Button]
|
||||
, _closeItems :: [FloorItem]
|
||||
, _closeInterfaces :: [Button]
|
||||
}
|
||||
|
||||
makeLenses ''HUD
|
||||
makeLenses ''HUDElement
|
||||
makeLenses ''SubInventory
|
||||
|
||||
--makeLenses ''MouseInventorySelection
|
||||
|
||||
@@ -156,7 +156,8 @@ defaultHUD =
|
||||
, _carteCenter = V2 0 0
|
||||
, _carteZoom = 0.5
|
||||
, _carteRot = 0
|
||||
, _closeObjects = []
|
||||
, _closeItems = mempty
|
||||
, _closeInterfaces = mempty
|
||||
}
|
||||
|
||||
defaultDisplayInventory :: HUDElement
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
-- {-# OPTIONS_GHC -fno-full-laziness #-}
|
||||
{-# LANGUAGE TupleSections #-}
|
||||
--{-# LANGUAGE TupleSections #-}
|
||||
|
||||
module Dodge.DisplayInventory (
|
||||
toggleCombineInv,
|
||||
@@ -52,10 +52,10 @@ updateCombineSections ::
|
||||
updateCombineSections w cfig =
|
||||
updateSectionsPositioning
|
||||
(const 5)
|
||||
(const 0)
|
||||
(w ^? hud . hudElement . subInventory . ciSelection . _Just)
|
||||
(getAvailableListLines secondColumnParams cfig)
|
||||
[(0, sclose), (-1, sfclose)]
|
||||
(IM.fromAscList [(-1,0),(0,0)])
|
||||
where
|
||||
filtcurs = w ^? hud . hudElement . subInventory . ciSelection . _Just . _1 == Just (-1)
|
||||
(sfclose, sclose) =
|
||||
@@ -117,6 +117,13 @@ displaySectionsSizes 0 = 10
|
||||
displaySectionsSizes 3 = 10
|
||||
displaySectionsSizes _ = 3
|
||||
|
||||
displayIndents :: Int -> Int
|
||||
displayIndents (-3) = 2
|
||||
displayIndents 0 = 2
|
||||
displayIndents 3 = 2
|
||||
displayIndents 5 = 2
|
||||
displayIndents _ = 0
|
||||
|
||||
updateDisplaySections ::
|
||||
World ->
|
||||
Configuration ->
|
||||
@@ -125,10 +132,10 @@ updateDisplaySections ::
|
||||
updateDisplaySections w cfig =
|
||||
updateSectionsPositioning
|
||||
displaySectionsSizes
|
||||
displayIndents
|
||||
mselpos
|
||||
(getAvailableListLines (invDisplayParams w) cfig)
|
||||
[statushead,statusdisplay,invhead,invx,youx, nearbyhead, closex]
|
||||
(IM.fromAscList [(-4,0),(-3,2),(-2,0),(-1,0),(0,2),(1,0),(2,0),(3,2)])
|
||||
where
|
||||
mselpos = w ^? hud . hudElement . diSelection . _Just
|
||||
invfiltcurs = mselpos ^? _Just . _1 == Just (-1)
|
||||
@@ -147,21 +154,19 @@ updateDisplaySections w cfig =
|
||||
youx = (1, youitems)
|
||||
makehead str i = (i,IM.singleton 0 $ SelectionInfo [str] 1 False white 0)
|
||||
statushead = (-4,IM.singleton 0 $ SelectionInfo ["STATUS"] 1 False white 0)
|
||||
statusdisplay = (-3,IM.singleton 0 $ SelectionInfo ["HEALTH "++show (_crHP cr)] 1 False white 0)
|
||||
statusdisplay = (-3,IM.singleton 0 $ SelectionInfo ["HEALTH: "++show (_crHP cr)] 1 False white 0)
|
||||
invhead = if null sfinv then makehead "INVENTORY" (-2) else filtinv
|
||||
youitems = IM.singleton 0 $ SelectionItem [thetext] 1 True invDimColor 2 ()
|
||||
thetext = displayFreeSlots (crNumFreeSlots cr)
|
||||
closeitms =
|
||||
IM.fromDistinctAscList . zip [0 ..] $
|
||||
map closeObjectToSelectionItem (w ^. hud . closeObjects)
|
||||
map closeItemToSelectionItem (w ^. hud . closeItems)
|
||||
invitems =
|
||||
IM.mapWithKey
|
||||
(\k (indent, x) -> invSelectionItem indent cr k (x ^. locLDT . ldtValue))
|
||||
(fmap (first removeindentiffiltering) . allInvLocs $ _crInv cr)
|
||||
-- this clearly deserves refactoring, also check if drawInventory/iextra
|
||||
-- needs it at the same time
|
||||
removeindentiffiltering =
|
||||
if maybe False isFilteringInv (w ^? hud . hudElement . diSections)
|
||||
if maybe False (not . null) (w ^? hud . hudElement . diInvFilter . _Just)
|
||||
then const 0
|
||||
else id
|
||||
cr = you w
|
||||
@@ -218,7 +223,7 @@ sectionsSizes ::
|
||||
IM.IntMap Int
|
||||
sectionsSizes x f is sss = doSectionSize extraavailable mintaken is sss mempty
|
||||
where
|
||||
mintaken = IM.mapWithKey (\k y -> min (f k) y) sss
|
||||
mintaken = IM.mapWithKey (min . f) sss
|
||||
extraavailable = x - sum mintaken
|
||||
|
||||
doSectionSize ::
|
||||
@@ -249,26 +254,25 @@ doSectionSize extraavailable mintaken is sss done = fromMaybe done $ do
|
||||
|
||||
updateSectionsPositioning ::
|
||||
(Int -> Int) -> -- for determining each sections minimum size
|
||||
(Int -> Int) -> -- for determining each sections indent
|
||||
Maybe (Int, Int) ->
|
||||
Int ->
|
||||
[(Int, IM.IntMap (SelectionItem a))] ->
|
||||
IM.IntMap Int ->
|
||||
IM.IntMap (SelectionSection a) ->
|
||||
IM.IntMap (SelectionSection a)
|
||||
updateSectionsPositioning f mselpos allavailablelines lsss indents sss =
|
||||
IM.intersectionWith updateSection ls mss `h` ssizes `g` offsets `h` indents
|
||||
updateSectionsPositioning f h mselpos allavailablelines lsss sss =
|
||||
IM.intersectionWithKey (\k -> updateSection (h k) (m k)) ls ssizes `g` offsets
|
||||
where
|
||||
offsets = fmap _ssOffset sss
|
||||
mss = IM.mapWithKey m ssizes
|
||||
m k _ = do
|
||||
m k = do
|
||||
(k', i) <- mselpos
|
||||
guard $ k == k'
|
||||
return i
|
||||
ls = IM.fromList lsss
|
||||
h = IM.intersectionWith ($)
|
||||
-- h = IM.intersectionWith ($)
|
||||
-- defaults non-existing offsets to 0
|
||||
g = merge (mapMissing (const ($ 0))) dropMissing (zipWithMatched (const ($)))
|
||||
lk = fromMaybe [] $ fmap ((: []) . fst) mselpos
|
||||
lk = maybe [] ((: []) . fst) mselpos
|
||||
ssizes =
|
||||
sectionsSizes
|
||||
allavailablelines
|
||||
@@ -277,13 +281,13 @@ updateSectionsPositioning f mselpos allavailablelines lsss indents sss =
|
||||
$ sectionsDesiredLines ls
|
||||
|
||||
updateSection ::
|
||||
IM.IntMap (SelectionItem a) ->
|
||||
Maybe Int ->
|
||||
Int ->
|
||||
Maybe Int ->
|
||||
IM.IntMap (SelectionItem a) ->
|
||||
Int ->
|
||||
Int ->
|
||||
SelectionSection a
|
||||
updateSection sis mcsel availablelines oldoffset indent =
|
||||
updateSection indent mcsel sis availablelines oldoffset =
|
||||
SelectionSection
|
||||
{ _ssItems = sis
|
||||
, _ssOffset = offset
|
||||
@@ -363,10 +367,10 @@ enterCombineInv cfig w =
|
||||
}
|
||||
combsection =
|
||||
updateSection
|
||||
cm
|
||||
(Just 0)
|
||||
availablelines
|
||||
0
|
||||
(Just 0)
|
||||
cm
|
||||
availablelines
|
||||
0
|
||||
|
||||
regexList :: String -> [String] -> Bool
|
||||
|
||||
+62
-65
@@ -9,39 +9,38 @@ module Dodge.Inventory (
|
||||
scrollAugInvSel,
|
||||
crNumFreeSlots,
|
||||
crInvSize,
|
||||
selectedCloseObject,
|
||||
selectedCloseItem,
|
||||
setInvPosFromSS,
|
||||
module Dodge.Inventory.RBList,
|
||||
swapInvItems,
|
||||
scrollAugNextInSection,
|
||||
isFilteringInv,
|
||||
-- isFilteringInv,
|
||||
swapItemWith,
|
||||
) where
|
||||
|
||||
import qualified Data.IntSet as IS
|
||||
import Control.Monad
|
||||
import Dodge.Item.Grammar
|
||||
import Dodge.Data.DoubleTree
|
||||
import Sound.Data
|
||||
import Dodge.SoundLogic
|
||||
import Control.Applicative
|
||||
import Control.Monad
|
||||
import Data.Function
|
||||
import qualified Data.IntSet as IS
|
||||
import Data.Maybe
|
||||
import Dodge.Base
|
||||
import Dodge.Data.DoubleTree
|
||||
import Dodge.Data.SelectionList
|
||||
import Dodge.Data.World
|
||||
--import Dodge.DisplayInventory
|
||||
import Dodge.Euse
|
||||
import Dodge.Inventory.CheckSlots
|
||||
import Dodge.Inventory.CloseObject
|
||||
import Dodge.Inventory.Location
|
||||
import Dodge.Inventory.RBList
|
||||
import Dodge.ItEffect
|
||||
import Dodge.Item.Grammar
|
||||
import Dodge.SelectionSections
|
||||
import Dodge.SoundLogic
|
||||
import Geometry
|
||||
import qualified IntMapHelp as IM
|
||||
import LensHelp
|
||||
import ListHelp
|
||||
import NewInt
|
||||
import Sound.Data
|
||||
|
||||
--import Padding
|
||||
|
||||
@@ -90,12 +89,13 @@ rmInvItem cid invid w =
|
||||
-- & updateCreatureItemLocations cid
|
||||
|
||||
pointcid = cWorld . lWorld . creatures . ix cid
|
||||
updateselectionextra | cid == 0 = hud . hudElement . diSelectionExtra .~ mempty
|
||||
updateselectionextra
|
||||
| cid == 0 = hud . hudElement . diSelectionExtra .~ mempty
|
||||
| otherwise = id
|
||||
updateselection
|
||||
| cid == 0 && cr ^? crManipulation . manObject . imSelectedItem == Just invid =
|
||||
scrollAugInvSel (-1) . scrollAugInvSel 1 -- . updateInventorySectionItems
|
||||
-- id -- . updateInventorySectionItems
|
||||
-- id -- . updateInventorySectionItems
|
||||
| otherwise =
|
||||
pointcid . crManipulation . manObject . imSelectedItem %~ g
|
||||
|
||||
@@ -126,36 +126,34 @@ rmInvItem cid invid w =
|
||||
updateCloseObjects :: World -> World
|
||||
updateCloseObjects w =
|
||||
w
|
||||
& hud . closeObjects .~ newcloseobjects
|
||||
& updatecursorposifnecessary
|
||||
& hud . closeItems %~ f
|
||||
& hud . closeInterfaces %~ g
|
||||
where
|
||||
newcloseobjects = unionBy closeObjEq oldCloseFiltered currentClose
|
||||
updatecursorposifnecessary =
|
||||
case w ^? cWorld . lWorld . creatures . ix 0 . crManipulation . manObject . ispCloseObject of
|
||||
Just i
|
||||
| i >= length newcloseobjects -> scrollAugInvSel 1
|
||||
| isNothing (w ^? hud . hudElement . diSections . ix 3 . ssItems . ix i) ->
|
||||
scrollAugInvSel (-1)
|
||||
_ -> id
|
||||
filt = filter $ \obj -> dist ypos (closeObjPos obj) < 40 && hasButtonLOS ypos (closeObjPos obj) w
|
||||
-- the following should update any changed properties of flits/bts
|
||||
g oldbts = intersectBy bteq cbts oldbts `btunion` cbts
|
||||
f olditems = intersectBy feq citems olditems `itunion` citems
|
||||
itunion = unionBy feq
|
||||
btunion = unionBy bteq
|
||||
feq = (==) `on` _flItID
|
||||
bteq = (==) `on` _btID
|
||||
cbts = filter (isclose . _btPos) activeButtons
|
||||
citems =
|
||||
filter (isclose . _flItPos)
|
||||
. IM.elems
|
||||
$ w ^. cWorld . lWorld . floorItems . unNIntMap
|
||||
isclose pos = dist ypos pos < 40 && hasButtonLOS ypos pos w
|
||||
ypos = _crPos $ you w
|
||||
activeButtons =
|
||||
map Right
|
||||
. filter ((/=) BtNoLabel . _btState)
|
||||
filter ((/=) BtNoLabel . _btState)
|
||||
. IM.elems
|
||||
$ w ^. cWorld . lWorld . buttons
|
||||
currentClose =
|
||||
filt $
|
||||
map Left (IM.elems $ w ^. cWorld . lWorld . floorItems . unNIntMap)
|
||||
++ activeButtons
|
||||
oldClose = filt $ mapMaybe updatebyid $ w ^. hud . closeObjects
|
||||
oldCloseFiltered = intersectBy closeObjEq oldClose currentClose
|
||||
updatebyid (Left flid) =
|
||||
fmap Left $
|
||||
w
|
||||
^? cWorld . lWorld . floorItems . unNIntMap
|
||||
. ix (_unNInt $ _flItID flid)
|
||||
updatebyid (Right btid) = fmap Right $ w ^? cWorld . lWorld . buttons . ix (_btID btid)
|
||||
-- updatecursorposifnecessary =
|
||||
-- case w ^? cWorld . lWorld . creatures . ix 0 . crManipulation . manObject . ispCloseObject of
|
||||
-- Just i
|
||||
-- | i >= length newcloseobjects -> scrollAugInvSel 1
|
||||
-- | isNothing (w ^? hud . hudElement . diSections . ix 3 . ssItems . ix i) ->
|
||||
-- scrollAugInvSel (-1)
|
||||
-- _ -> id
|
||||
|
||||
changeSwapSel :: Int -> World -> World
|
||||
changeSwapSel yi w
|
||||
@@ -178,7 +176,7 @@ changeSwapClose f i w = fromMaybe w $ do
|
||||
& swapAnyExtraSelection i k
|
||||
& cWorld . lWorld . creatures . ix 0 . crManipulation . manObject . ispCloseObject
|
||||
.~ k
|
||||
& hud . closeObjects %~ swapIndices i k
|
||||
& hud . closeItems %~ swapIndices i k
|
||||
& hud . hudElement . diSelection . _Just . _2 .~ k
|
||||
& worldEventFlags . at InventoryChange ?~ ()
|
||||
|
||||
@@ -196,7 +194,7 @@ swapInvItems f i w = fromMaybe w $ do
|
||||
Just (0, j) | j == i -> hud . hudElement . diSelection . _Just . _2 .~ k
|
||||
_ -> id
|
||||
return $
|
||||
w
|
||||
w
|
||||
& swapAnyExtraSelection i k
|
||||
& checkConnection InventorySound disconnectItemS i k
|
||||
& cWorld . lWorld . creatures . ix 0 %~ updatecreature k
|
||||
@@ -207,15 +205,16 @@ swapInvItems f i w = fromMaybe w $ do
|
||||
& cWorld . lWorld %~ crUpdateItemLocations 0 -- the double application is inefficient, but necessary without further changes
|
||||
-- a rethink is maybe in order
|
||||
& checkConnection InventoryConnectSound connectItemS i k
|
||||
-- & checkconnect k InventoryConnectSound connectItemS
|
||||
where
|
||||
-- cpos = fromMaybe 0 $ w ^? cWorld . lWorld . creatures . ix 0 . crPos
|
||||
-- checkconnect k stype s w'
|
||||
-- | p (i+1) || p (i-1)
|
||||
-- || p (k+1) || p (k-1) = soundStart stype cpos s Nothing w'
|
||||
-- | otherwise = w'
|
||||
-- where
|
||||
-- p j = maybe False not $ w' ^? cWorld . lWorld . creatures . ix 0 . crInv . ix j . itLocation . ilIsRoot
|
||||
-- & checkconnect k InventoryConnectSound connectItemS
|
||||
|
||||
-- cpos = fromMaybe 0 $ w ^? cWorld . lWorld . creatures . ix 0 . crPos
|
||||
-- checkconnect k stype s w'
|
||||
-- | p (i+1) || p (i-1)
|
||||
-- || p (k+1) || p (k-1) = soundStart stype cpos s Nothing w'
|
||||
-- | otherwise = w'
|
||||
-- where
|
||||
-- p j = maybe False not $ w' ^? cWorld . lWorld . creatures . ix 0 . crInv . ix j . itLocation . ilIsRoot
|
||||
updatecreature k =
|
||||
(crInv %~ IM.safeSwapKeys i k)
|
||||
. (crManipulation . manObject . imSelectedItem .~ k)
|
||||
@@ -238,8 +237,9 @@ swapAnyExtraSelection i k w = fromMaybe w $ do
|
||||
is <- w ^? hud . hudElement . diSelectionExtra
|
||||
let f = if i `IS.member` is then IS.insert k else id
|
||||
g = if k `IS.member` is then IS.insert i else id
|
||||
return $ w & hud . hudElement . diSelectionExtra
|
||||
%~ (f . g . IS.delete i . IS.delete k)
|
||||
return $
|
||||
w & hud . hudElement . diSelectionExtra
|
||||
%~ (f . g . IS.delete i . IS.delete k)
|
||||
|
||||
checkConnection :: SoundOrigin -> SoundID -> Int -> Int -> World -> World
|
||||
checkConnection so s i j w = fromMaybe w $ do
|
||||
@@ -253,16 +253,17 @@ checkConnection so s i j w = fromMaybe w $ do
|
||||
|
||||
isConnected :: LocationLDT b a -> Bool
|
||||
isConnected x = case x ^. locLdtContext of
|
||||
TopLDT -> not (null $ x ^. locLDT . ldtRight)
|
||||
|| not (null $ x ^. locLDT . ldtLeft)
|
||||
TopLDT ->
|
||||
not (null $ x ^. locLDT . ldtRight)
|
||||
|| not (null $ x ^. locLDT . ldtLeft)
|
||||
_ -> True
|
||||
|
||||
swapItemWith ::
|
||||
swapItemWith ::
|
||||
(Int -> IM.IntMap (SelectionItem ()) -> Maybe Int) ->
|
||||
(Int,Int) ->
|
||||
(Int, Int) ->
|
||||
World ->
|
||||
World
|
||||
swapItemWith f (j,i) w = case j of
|
||||
swapItemWith f (j, i) w = case j of
|
||||
0 -> w & swapInvItems f i
|
||||
3 -> w & changeSwapClose f i
|
||||
_ -> w
|
||||
@@ -296,22 +297,18 @@ scrollAugInvSel yi w
|
||||
|
||||
scrollAugNextInSection :: World -> World
|
||||
scrollAugNextInSection w =
|
||||
w & hud . hudElement %~ doscroll
|
||||
& worldEventFlags . at InventoryChange ?~ ()
|
||||
& setInvPosFromSS
|
||||
& cWorld . lWorld %~ crUpdateItemLocations 0
|
||||
w & hud . hudElement %~ doscroll
|
||||
& worldEventFlags . at InventoryChange ?~ ()
|
||||
& setInvPosFromSS
|
||||
& cWorld . lWorld %~ crUpdateItemLocations 0
|
||||
where
|
||||
doscroll he = fromMaybe he $ do
|
||||
sss <- he ^? diSections
|
||||
return $ he & diSelection %~ nextInSectionSS sss
|
||||
|
||||
selectedCloseObject :: World -> Maybe (Either FloorItem Button)
|
||||
selectedCloseObject w = do
|
||||
selectedCloseItem :: World -> Maybe FloorItem
|
||||
selectedCloseItem w = do
|
||||
i <-
|
||||
you w ^? crManipulation . manObject . ispCloseObject
|
||||
<|> fmap fst (IM.lookupMin =<< w ^? hud . hudElement . diSections . ix 3 . ssItems)
|
||||
w ^? hud . closeObjects . ix i
|
||||
|
||||
isFilteringInv :: IM.IntMap (SelectionSection a) -> Bool
|
||||
isFilteringInv = not . null . (^. ix (-1) . ssItems)
|
||||
|
||||
w ^? hud . closeItems . ix i
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
module Dodge.Inventory.CloseObject (
|
||||
closeObjPos,
|
||||
closeObjEq,
|
||||
) where
|
||||
|
||||
import Dodge.Data.Button
|
||||
import Dodge.Data.FloorItem
|
||||
import Geometry
|
||||
|
||||
closeObjPos :: Either FloorItem Button -> Point2
|
||||
closeObjPos e = case e of
|
||||
Right x -> _btPos x
|
||||
Left x -> _flItPos x
|
||||
|
||||
closeObjEq :: Either FloorItem Button -> Either FloorItem Button -> Bool
|
||||
closeObjEq (Right x) (Right y) = _btID x == _btID y
|
||||
closeObjEq (Left x) (Left y) = _flItID x == _flItID y
|
||||
closeObjEq _ _ = False
|
||||
@@ -1,9 +1,9 @@
|
||||
{-# LANGUAGE LambdaCase #-}
|
||||
--{-# LANGUAGE LambdaCase #-}
|
||||
|
||||
module Dodge.Inventory.SelectionList (
|
||||
invSelectionItem,
|
||||
invSelectionItem',
|
||||
closeObjectToSelectionItem,
|
||||
closeItemToSelectionItem,
|
||||
) where
|
||||
|
||||
import Dodge.Data.ComposedItem
|
||||
@@ -51,8 +51,8 @@ hotkeyToString x = case x of
|
||||
Hotkey9 -> "[9]"
|
||||
Hotkey0 -> "[0]"
|
||||
|
||||
closeObjectToSelectionItem :: Either FloorItem Button -> SelectionItem ()
|
||||
closeObjectToSelectionItem e =
|
||||
closeItemToSelectionItem :: FloorItem -> SelectionItem ()
|
||||
closeItemToSelectionItem e =
|
||||
SelectionItem
|
||||
{ _siPictures = pics
|
||||
, _siHeight = length pics
|
||||
@@ -63,11 +63,11 @@ closeObjectToSelectionItem e =
|
||||
, _siPayload = ()
|
||||
}
|
||||
where
|
||||
(pics, col) = closeObjectToTextPictures e
|
||||
(pics, col) = closeItemToTextPictures e
|
||||
|
||||
closeObjectToTextPictures :: Either FloorItem Button -> ([String], Color)
|
||||
closeObjectToTextPictures = \case
|
||||
Left flit ->
|
||||
closeItemToTextPictures :: FloorItem -> ([String], Color)
|
||||
closeItemToTextPictures flit =
|
||||
let it = _flIt flit
|
||||
in (basicItemDisplay it, itemInvColor . pciToCI $ basePCI it)
|
||||
Right bt -> ([_btText bt], yellow)
|
||||
|
||||
-- Right bt -> ([_btText bt], yellow)
|
||||
|
||||
+40
-38
@@ -4,10 +4,10 @@ module Dodge.Render.HUD (
|
||||
drawHUD,
|
||||
) where
|
||||
|
||||
import qualified Data.IntSet as IS
|
||||
import Control.Applicative
|
||||
import Control.Lens
|
||||
import Control.Monad
|
||||
import qualified Data.IntSet as IS
|
||||
import qualified Data.Map.Strict as M
|
||||
import Data.Maybe
|
||||
--import qualified Data.Vector as V
|
||||
@@ -47,19 +47,9 @@ drawHUD :: Configuration -> World -> Picture
|
||||
drawHUD cfig w = case w ^. hud . hudElement of
|
||||
DisplayCarte -> drawCarte cfig w
|
||||
DisplayInventory{_diSections = sections, _subInventory = subinv} ->
|
||||
drawHP cfig w
|
||||
<> drawInventory sections w cfig
|
||||
drawInventory sections w cfig
|
||||
<> drawSubInventory subinv cfig w
|
||||
|
||||
drawHP :: Configuration -> World -> Picture
|
||||
drawHP cfig =
|
||||
dShadCol white
|
||||
. translate (halfWidth cfig) (halfHeight cfig - 40)
|
||||
. scale 0.2 0.2
|
||||
. textRight
|
||||
. show
|
||||
. (^?! cWorld . lWorld . creatures . ix 0 . crHP)
|
||||
|
||||
drawInventory :: IM.IntMap (SelectionSection ()) -> World -> Configuration -> Picture
|
||||
drawInventory sss w cfig =
|
||||
drawSelectionSections sss ldp cfig
|
||||
@@ -72,8 +62,9 @@ drawInventory sss w cfig =
|
||||
curs = invCursorParams w
|
||||
iextra = fromMaybe mempty $ do
|
||||
inv <- w ^? cWorld . lWorld . creatures . ix 0 . crInv
|
||||
guard . not . isFilteringInv =<< (w ^? hud . hudElement . diSections)
|
||||
return . inventoryExtra sss cfig w $ invAdj inv
|
||||
case w ^? hud . hudElement . diInvFilter . _Just of
|
||||
Just (_ : _) -> Nothing
|
||||
_ -> return . inventoryExtra sss cfig w $ invAdj inv
|
||||
|
||||
drawRootCursor ::
|
||||
World ->
|
||||
@@ -109,13 +100,17 @@ getRootItemBounds i inv = do
|
||||
|
||||
-- this should display while dragging a single inv item
|
||||
drawMouseOver :: Configuration -> World -> Picture
|
||||
drawMouseOver cfig w = concat (invsel <|> combinvsel
|
||||
<|> drawDragSelect cfig w)
|
||||
<> concat (drawDragSelected cfig w)
|
||||
drawMouseOver cfig w =
|
||||
concat
|
||||
( invsel <|> combinvsel
|
||||
<|> drawDragSelect cfig w
|
||||
)
|
||||
<> concat (drawDragSelected cfig w)
|
||||
where
|
||||
invsel = do
|
||||
(j, i) <- w ^? input . mouseContext . mcoInvSelect <|>
|
||||
w ^? input . mouseContext . mcoInvFilt
|
||||
(j, i) <-
|
||||
w ^? input . mouseContext . mcoInvSelect
|
||||
<|> w ^? input . mouseContext . mcoInvFilt
|
||||
sss <- w ^? hud . hudElement . diSections
|
||||
let idp = invDisplayParams w
|
||||
return . translateScreenPos cfig (invDisplayParams w ^. ldpPos)
|
||||
@@ -123,8 +118,9 @@ drawMouseOver cfig w = concat (invsel <|> combinvsel
|
||||
$ selSecDrawCursorAt 15 idp curs sss (j, i)
|
||||
curs = BackdropCursor
|
||||
combinvsel = do
|
||||
(j, i) <- (w ^? input . mouseContext . mcoCombSelect)
|
||||
<|> (w ^? input . mouseContext . mcoCombCombine)
|
||||
(j, i) <-
|
||||
(w ^? input . mouseContext . mcoCombSelect)
|
||||
<|> (w ^? input . mouseContext . mcoCombCombine)
|
||||
sss <- w ^? hud . hudElement . subInventory . ciSections
|
||||
let idp = secondColumnParams
|
||||
return . translateScreenPos cfig (idp ^. ldpPos)
|
||||
@@ -135,23 +131,27 @@ drawDragSelected :: Configuration -> World -> Maybe Picture
|
||||
drawDragSelected cfig w = do
|
||||
ys <- w ^? hud . hudElement . diSelectionExtra
|
||||
guard $ not (IS.null ys)
|
||||
(i,_) <- w ^? hud . hudElement . diSelection . _Just
|
||||
(i, _) <- w ^? hud . hudElement . diSelection . _Just
|
||||
sss <- w ^? hud . hudElement . diSections
|
||||
let idp = invDisplayParams w
|
||||
let f x = (selSecDrawCursorAt 15 idp BackdropCursor sss (i, x) <>)
|
||||
return . translateScreenPos cfig (invDisplayParams w ^. ldpPos)
|
||||
. color (withAlpha 0.2 white) . IS.foldr f mempty $ ys
|
||||
. color (withAlpha 0.2 white)
|
||||
. IS.foldr f mempty
|
||||
$ ys
|
||||
|
||||
drawDragSelect :: Configuration -> World -> Maybe Picture
|
||||
drawDragSelect cfig w = do
|
||||
OverInvDragSelect (i,j) mselend <- w ^? input . mouseContext
|
||||
(a,b) <- mselend
|
||||
OverInvDragSelect (i, j) mselend <- w ^? input . mouseContext
|
||||
(a, b) <- mselend
|
||||
guard $ i == a
|
||||
sss <- w ^? hud . hudElement . diSections
|
||||
let idp = invDisplayParams w
|
||||
let f x = selSecDrawCursorAt 15 idp BackdropCursor sss (i, x)
|
||||
return . translateScreenPos cfig (invDisplayParams w ^. ldpPos)
|
||||
. color (withAlpha 0.2 white) . foldMap f $ [min j b .. max j b]
|
||||
. color (withAlpha 0.2 white)
|
||||
. foldMap f
|
||||
$ [min j b .. max j b]
|
||||
|
||||
drawSubInventory :: SubInventory -> Configuration -> World -> Picture
|
||||
drawSubInventory subinv cfig w = case subinv of
|
||||
@@ -181,14 +181,15 @@ drawExamineInventory cfig w =
|
||||
<> drawSelectionList
|
||||
secondColumnParams
|
||||
cfig
|
||||
( map f
|
||||
( makeParagraph 55 $
|
||||
yourAugmentedItem
|
||||
itemInfo
|
||||
(yourInfo (you w))
|
||||
(closeObjectInfo (crNumFreeSlots (you w)))
|
||||
w
|
||||
)
|
||||
( map
|
||||
f
|
||||
( makeParagraph 55 $
|
||||
yourAugmentedItem
|
||||
itemInfo
|
||||
(yourInfo (you w))
|
||||
(closeObjectInfo (crNumFreeSlots (you w)))
|
||||
w
|
||||
)
|
||||
)
|
||||
where
|
||||
f str =
|
||||
@@ -216,7 +217,7 @@ floorItemPickupInfo n itm
|
||||
yourAugmentedItem :: (Item -> a) -> a -> (Either FloorItem Button -> a) -> World -> a
|
||||
yourAugmentedItem f x g w = case you w ^? crManipulation . manObject of
|
||||
Just (SelectedItem i _ _) -> f $ yourInv w ^?! ix i
|
||||
Just (SelCloseObject i) -> g $ w ^?! hud . closeObjects . ix i
|
||||
Just (SelCloseObject i) -> g . Left $ w ^?! hud . closeItems . ix i
|
||||
_ -> x
|
||||
|
||||
drawRBOptions :: Configuration -> World -> Picture
|
||||
@@ -323,7 +324,7 @@ combineInventoryExtra sss msel cfig w = fromMaybe mempty $ do
|
||||
let col = _siColor si
|
||||
lnks <- si ^? siPayload . ciInvIDs
|
||||
return (lnkMidPosInvSelsCol cfig w j col lnks)
|
||||
<> foldMap invcursor lnks
|
||||
<> foldMap invcursor lnks
|
||||
where
|
||||
invcursor i = do
|
||||
sss' <- w ^? hud . hudElement . diSections
|
||||
@@ -344,7 +345,7 @@ drawTerminalDisplay tid cfig w = fromMaybe mempty $ do
|
||||
invHead cfig (_tmTitle tm ++ ":T" ++ show tid)
|
||||
<> drawSelectionList secondColumnParams cfig (thesellist tm)
|
||||
<> color (withAlpha 0.5 green) (drawSelectionListBackground secondColumnParams cfig 15)
|
||||
-- when changing the 15, change isOverTerminalScreen
|
||||
-- when changing the 15, change isOverTerminalScreen
|
||||
<> color (dark $ _tmExternalColor tm) (drawTitleBackground cfig)
|
||||
where
|
||||
toselitm (str, col) = SelectionItem [str] 1 True col 0 ()
|
||||
@@ -361,7 +362,8 @@ drawTerminalDisplay tid cfig w = fromMaybe mempty $ do
|
||||
displayInputText tm s
|
||||
| _tmStatus tm == TerminalReady = partcommand tm ++ getPromptTM (tm ^. tmType) ++ s
|
||||
| otherwise = ""
|
||||
-- | hasfoc = clockCycle 10 (V.fromList [[cFilledRect] , "."]) w
|
||||
|
||||
-- | hasfoc = clockCycle 10 (V.fromList [[cFilledRect] , "."]) w
|
||||
|
||||
lnkMidPosInvSelsCol :: Configuration -> World -> Int -> Color -> [Int] -> Picture
|
||||
lnkMidPosInvSelsCol cfig w i col = fromMaybe mempty . foldMap f
|
||||
|
||||
@@ -26,7 +26,7 @@ drawSelectionSections sss ldp cfig =
|
||||
(_ldpScale ldp)
|
||||
0
|
||||
(foldMap
|
||||
(\ss -> fmap (translate (100*fromIntegral (_ssIndent ss)) 0) $ _ssShownItems ss) sss)
|
||||
(\ss -> translate (100*fromIntegral (_ssIndent ss)) 0 <$> _ssShownItems ss) sss)
|
||||
|
||||
drawSSCursor ::
|
||||
IM.IntMap (SelectionSection a) ->
|
||||
|
||||
@@ -453,7 +453,7 @@ pauseGame u = u & uvScreenLayers .~ [pauseMenu u]
|
||||
spaceAction :: World -> World
|
||||
spaceAction w = case w ^. hud . hudElement of
|
||||
DisplayCarte -> w & hud . carteCenter .~ theLoc
|
||||
DisplayInventory{_subInventory = NoSubInventory{}} -> case selectedCloseObject w of
|
||||
DisplayInventory{_subInventory = NoSubInventory{}} -> case Left <$> selectedCloseItem w of
|
||||
Just (Left flit) ->
|
||||
pickUpItem 0 flit w
|
||||
& worldEventFlags . at InventoryChange ?~ ()
|
||||
|
||||
@@ -2324,7 +2324,8 @@ _cldtUp src/Dodge/Data/DoubleTree.hs 46;" f
|
||||
_cldtUp src/Dodge/Data/DoubleTree.hs 54;" f
|
||||
_clickPos src/Dodge/Data/Input.hs 46;" f
|
||||
_clickWorldPos src/Dodge/Data/Input.hs 48;" f
|
||||
_closeObjects src/Dodge/Data/HUD.hs 53;" f
|
||||
_closeInterfaces src/Dodge/Data/HUD.hs 54;" f
|
||||
_closeItems src/Dodge/Data/HUD.hs 53;" f
|
||||
_cloudEBO src/Data/Preload/Render.hs 49;" f
|
||||
_cloudShader src/Data/Preload/Render.hs 48;" f
|
||||
_cloudVBO src/Data/Preload/Render.hs 47;" f
|
||||
@@ -3432,7 +3433,7 @@ attachOnward' src/Dodge/Tree/Compose.hs 98;" f
|
||||
attachTree src/Dodge/Tree/Compose.hs 38;" f
|
||||
attentionViewPoint src/Dodge/Creature/ReaderUpdate.hs 66;" f
|
||||
attribSize src/Shader/Compile.hs 306;" f
|
||||
augInvDirectSelect src/Dodge/Inventory.hs 276;" f
|
||||
augInvDirectSelect src/Dodge/Inventory.hs 277;" f
|
||||
augmentedHUD src/Dodge/Item/Scope.hs 47;" f
|
||||
autoAmr src/Dodge/Item/Held/Rod.hs 51;" f
|
||||
autoBS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 362;" f
|
||||
@@ -3569,9 +3570,9 @@ centroidNum src/Geometry/Polygon.hs 133;" f
|
||||
chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f
|
||||
chainLinkOrientation src/Dodge/Creature/State.hs 183;" f
|
||||
chainPairs src/Geometry.hs 363;" f
|
||||
changeSwapClose src/Dodge/Inventory.hs 168;" f
|
||||
changeSwapSel src/Dodge/Inventory.hs 160;" f
|
||||
changeSwapWith src/Dodge/Inventory.hs 270;" f
|
||||
changeSwapClose src/Dodge/Inventory.hs 166;" f
|
||||
changeSwapSel src/Dodge/Inventory.hs 158;" f
|
||||
changeSwapWith src/Dodge/Inventory.hs 271;" f
|
||||
charToTuple src/Picture/Base.hs 317;" f
|
||||
charToTupleGrad src/Picture/Text.hs 18;" f
|
||||
chargeIfEquipped src/Dodge/ItEffect.hs 54;" f
|
||||
@@ -3596,7 +3597,7 @@ checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f
|
||||
checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f
|
||||
checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f
|
||||
chemFuelPouch src/Dodge/Item/Ammo.hs 110;" f
|
||||
chooseCursorBorders src/Dodge/Render/List.hs 160;" f
|
||||
chooseCursorBorders src/Dodge/Render/List.hs 161;" f
|
||||
chooseEquipmentPosition src/Dodge/Inventory/RBList.hs 36;" f
|
||||
chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 39;" f
|
||||
chooseFreeSite src/Dodge/Inventory/RBList.hs 42;" f
|
||||
@@ -3630,11 +3631,11 @@ clickGetCreature src/Dodge/Debug.hs 83;" f
|
||||
clipV src/Geometry/Vector.hs 47;" f
|
||||
clipZoom src/Dodge/Update/Camera.hs 215;" f
|
||||
clockCycle src/Dodge/Clock.hs 9;" f
|
||||
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f
|
||||
closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 68;" f
|
||||
closeObjEq src/Dodge/Inventory/CloseObject.hs 15;" f
|
||||
closeObjPos src/Dodge/Inventory/CloseObject.hs 10;" f
|
||||
closeObjectInfo src/Dodge/Render/HUD.hs 204;" f
|
||||
closeObjectToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f
|
||||
closeObjectToTextPictures src/Dodge/Inventory/SelectionList.hs 68;" f
|
||||
closeObjectInfo src/Dodge/Render/HUD.hs 205;" f
|
||||
closestCreatureID src/Dodge/Debug.hs 92;" f
|
||||
closestPointOnLine src/Geometry/Intersect.hs 251;" f
|
||||
closestPointOnLineParam src/Geometry/Intersect.hs 267;" f
|
||||
@@ -3668,7 +3669,7 @@ combinationsOf src/Multiset.hs 46;" f
|
||||
combinationsTrie src/Dodge/Combine.hs 41;" f
|
||||
combineAwareness src/Dodge/Creature/Perception.hs 109;" f
|
||||
combineFloors src/Dodge/Room/Procedural.hs 172;" f
|
||||
combineInventoryExtra src/Dodge/Render/HUD.hs 314;" f
|
||||
combineInventoryExtra src/Dodge/Render/HUD.hs 315;" f
|
||||
combineItemListYouX src/Dodge/Combine.hs 33;" f
|
||||
combineList src/Dodge/Combine.hs 20;" f
|
||||
combineRooms src/Dodge/Room/Procedural.hs 152;" f
|
||||
@@ -3801,7 +3802,7 @@ cylinderIndices src/Shader/Poke.hs 374;" f
|
||||
cylinderOnSeg src/Geometry.hs 125;" f
|
||||
cylinderPoly src/Shape.hs 86;" f
|
||||
cylinderRoundIndices src/Shader/Poke.hs 381;" f
|
||||
dShadCol src/Dodge/Render/List.hs 219;" f
|
||||
dShadCol src/Dodge/Render/List.hs 220;" f
|
||||
damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f
|
||||
damToExpBarrel src/Dodge/Barreloid.hs 57;" f
|
||||
damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f
|
||||
@@ -3890,7 +3891,7 @@ defaultCreatureTargeting src/Dodge/Default/Creature.hs 63;" f
|
||||
defaultCrystalWall src/Dodge/Default/Wall.hs 40;" f
|
||||
defaultDirtBlock src/Dodge/Default/Block.hs 19;" f
|
||||
defaultDirtWall src/Dodge/Default/Wall.hs 61;" f
|
||||
defaultDisplayInventory src/Dodge/Default/World.hs 162;" f
|
||||
defaultDisplayInventory src/Dodge/Default/World.hs 163;" f
|
||||
defaultDoor src/Dodge/Default/Door.hs 29;" f
|
||||
defaultDoorWall src/Dodge/Default/Wall.hs 32;" f
|
||||
defaultDrawButton src/Dodge/Button/Draw.hs 28;" f
|
||||
@@ -3946,7 +3947,7 @@ denormalEdges src/Polyhedra.hs 136;" f
|
||||
destroyAt src/Dodge/Bullet.hs 201;" f
|
||||
destroyBlock src/Dodge/Block.hs 56;" f
|
||||
destroyDoor src/Dodge/Block.hs 85;" f
|
||||
destroyInvItem src/Dodge/Inventory.hs 52;" f
|
||||
destroyInvItem src/Dodge/Inventory.hs 51;" f
|
||||
destroyLS src/Dodge/LightSource.hs 91;" f
|
||||
destroyLSFlashAt src/Dodge/LightSource.hs 101;" f
|
||||
destroyMachine src/Dodge/Machine/Destroy.hs 12;" f
|
||||
@@ -3976,7 +3977,8 @@ disconnectTerminal src/Dodge/Terminal.hs 217;" f
|
||||
displayConfig src/Dodge/Menu.hs 196;" f
|
||||
displayControls src/Dodge/Menu.hs 206;" f
|
||||
displayFrameTicks src/Dodge/Render/Picture.hs 39;" f
|
||||
displayFreeSlots src/Dodge/DisplayInventory.hs 202;" f
|
||||
displayFreeSlots src/Dodge/DisplayInventory.hs 207;" f
|
||||
displayIndents src/Dodge/DisplayInventory.hs 120;" f
|
||||
displaySectionsSizes src/Dodge/DisplayInventory.hs 115;" f
|
||||
displayTerminalLineString src/Dodge/Update.hs 422;" f
|
||||
dist src/Geometry/Vector.hs 179;" f
|
||||
@@ -4041,7 +4043,7 @@ doRoomOutPlacements src/Dodge/Layout.hs 107;" f
|
||||
doRoomPlacements src/Dodge/Layout.hs 122;" f
|
||||
doRoomShift src/Dodge/Room/Link.hs 33;" f
|
||||
doScopeZoom src/Dodge/Update/Camera.hs 141;" f
|
||||
doSectionSize src/Dodge/DisplayInventory.hs 224;" f
|
||||
doSectionSize src/Dodge/DisplayInventory.hs 229;" f
|
||||
doSideEffects appDodge/Main.hs 118;" f
|
||||
doStep src/Dodge/ArcStep.hs 9;" f
|
||||
doStrategyActions src/Dodge/Creature/ReaderUpdate.hs 164;" f
|
||||
@@ -4106,9 +4108,9 @@ drawDoubleLampCover src/Dodge/Prop/Draw.hs 81;" f
|
||||
drawDrag src/Dodge/Render/Picture.hs 164;" f
|
||||
drawDragDrop src/Dodge/Render/Picture.hs 175;" f
|
||||
drawDragPickup src/Dodge/Render/Picture.hs 184;" f
|
||||
drawDragSelect src/Dodge/Render/HUD.hs 145;" f
|
||||
drawDragSelect src/Dodge/Render/HUD.hs 143;" f
|
||||
drawDragSelect src/Dodge/Render/Picture.hs 161;" f
|
||||
drawDragSelected src/Dodge/Render/HUD.hs 134;" f
|
||||
drawDragSelected src/Dodge/Render/HUD.hs 130;" f
|
||||
drawEmptySet src/Dodge/Render/Picture.hs 112;" f
|
||||
drawEnergyBall src/Dodge/EnergyBall/Draw.hs 8;" f
|
||||
drawEquipment src/Dodge/Creature/Picture.hs 140;" f
|
||||
@@ -4121,19 +4123,18 @@ drawFooterText src/Dodge/Render/MenuScreen.hs 74;" f
|
||||
drawForceField src/Dodge/Wall/Draw.hs 11;" f
|
||||
drawGapPlus src/Dodge/Render/Picture.hs 224;" f
|
||||
drawGib src/Dodge/Prop/Draw.hs 28;" f
|
||||
drawHP src/Dodge/Render/HUD.hs 54;" f
|
||||
drawHUD src/Dodge/Render/HUD.hs 46;" f
|
||||
drawInputMenu src/Dodge/Render/MenuScreen.hs 21;" f
|
||||
drawInspectWall src/Dodge/Debug/Picture.hs 209;" f
|
||||
drawInspectWalls src/Dodge/Debug/Picture.hs 197;" f
|
||||
drawInventory src/Dodge/Render/HUD.hs 63;" f
|
||||
drawInventory src/Dodge/Render/HUD.hs 53;" f
|
||||
drawLabCrossCol src/Dodge/Render/Label.hs 8;" f
|
||||
drawLampCover src/Dodge/Prop/Draw.hs 44;" f
|
||||
drawLaser src/Dodge/Laser/Draw.hs 6;" f
|
||||
drawLightSource src/Dodge/LightSource/Draw.hs 7;" f
|
||||
drawLinearShockwave src/Dodge/LinearShockwave/Draw.hs 10;" f
|
||||
drawList src/Dodge/Render/List.hs 213;" f
|
||||
drawListElement src/Dodge/Render/List.hs 191;" f
|
||||
drawList src/Dodge/Render/List.hs 214;" f
|
||||
drawListElement src/Dodge/Render/List.hs 192;" f
|
||||
drawListYgapScaleYoff src/Dodge/Render/List.hs 99;" f
|
||||
drawListYoff src/Dodge/Render/List.hs 96;" f
|
||||
drawMachine src/Dodge/Machine/Draw.hs 17;" f
|
||||
@@ -4143,7 +4144,7 @@ drawMenuCursor src/Dodge/Render/Picture.hs 145;" f
|
||||
drawMenuOrHUD src/Dodge/Render/Picture.hs 57;" f
|
||||
drawMenuScreen src/Dodge/Render/MenuScreen.hs 15;" f
|
||||
drawMouseCursor src/Dodge/Render/Picture.hs 73;" f
|
||||
drawMouseOver src/Dodge/Render/HUD.hs 111;" f
|
||||
drawMouseOver src/Dodge/Render/HUD.hs 102;" f
|
||||
drawMousePosition src/Dodge/Debug/Picture.hs 319;" f
|
||||
drawMovingShape src/Dodge/Prop/Draw.hs 67;" f
|
||||
drawMovingShapeCol src/Dodge/Prop/Draw.hs 73;" f
|
||||
@@ -4157,13 +4158,13 @@ drawPointLabel src/Dodge/Render/Label.hs 13;" f
|
||||
drawProjectile src/Dodge/Projectile/Draw.hs 13;" f
|
||||
drawProp src/Dodge/Prop/Draw.hs 15;" f
|
||||
drawProp' src/Dodge/Prop/Draw.hs 12;" f
|
||||
drawRBOptions src/Dodge/Render/HUD.hs 222;" f
|
||||
drawRBOptions src/Dodge/Render/HUD.hs 223;" f
|
||||
drawRadarSweep src/Dodge/RadarSweep/Draw.hs 7;" f
|
||||
drawRemoteShell src/Dodge/Projectile/Draw.hs 30;" f
|
||||
drawReturn src/Dodge/Render/Picture.hs 118;" f
|
||||
drawRootCursor src/Dodge/Render/HUD.hs 78;" f
|
||||
drawSSCursor src/Dodge/SelectionSections/Draw.hs 30;" f
|
||||
drawSSMultiCursor src/Dodge/SelectionSections/Draw.hs 41;" f
|
||||
drawRootCursor src/Dodge/Render/HUD.hs 69;" f
|
||||
drawSSCursor src/Dodge/SelectionSections/Draw.hs 31;" f
|
||||
drawSSMultiCursor src/Dodge/SelectionSections/Draw.hs 42;" f
|
||||
drawSelect src/Dodge/Render/Picture.hs 203;" f
|
||||
drawSelectionList src/Dodge/Render/List.hs 35;" f
|
||||
drawSelectionListBackground src/Dodge/Render/List.hs 51;" f
|
||||
@@ -4182,7 +4183,7 @@ drawSwitch src/Dodge/Button/Draw.hs 15;" f
|
||||
drawSwitchWire src/Dodge/LevelGen/Switch.hs 28;" f
|
||||
drawTargetLaser src/Dodge/Particle/Draw.hs 6;" f
|
||||
drawTargeting src/Dodge/Targeting/Draw.hs 13;" f
|
||||
drawTerminalDisplay src/Dodge/Render/HUD.hs 340;" f
|
||||
drawTerminalDisplay src/Dodge/Render/HUD.hs 341;" f
|
||||
drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f
|
||||
drawText src/Picture/Base.hs 220;" f
|
||||
drawTitle src/Dodge/Render/MenuScreen.hs 57;" f
|
||||
@@ -4227,10 +4228,10 @@ encircle src/Dodge/Creature/Boid.hs 115;" f
|
||||
encircleCloseP src/Dodge/Creature/Boid.hs 35;" f
|
||||
encircleDistP src/Dodge/Creature/Boid.hs 21;" f
|
||||
encircleP src/Dodge/Creature/Boid.hs 27;" f
|
||||
enterCombineInv src/Dodge/DisplayInventory.hs 338;" f
|
||||
enterCombineInv src/Dodge/DisplayInventory.hs 343;" f
|
||||
eqConstr src/SameConstr.hs 17;" f
|
||||
eqPosText src/Dodge/Equipment/Text.hs 6;" f
|
||||
equipAllocString src/Dodge/Render/HUD.hs 280;" f
|
||||
equipAllocString src/Dodge/Render/HUD.hs 281;" f
|
||||
equipInfo src/Dodge/Item/Info.hs 103;" f
|
||||
equipItemSPic src/Dodge/Item/Draw/SPic.hs 65;" f
|
||||
equipPosition src/Dodge/Item/Draw.hs 30;" f
|
||||
@@ -4276,7 +4277,7 @@ fdiv src/ShortShow.hs 27;" f
|
||||
feet src/Dodge/Creature/Picture.hs 51;" f
|
||||
ffoldM src/Framebuffer/Update.hs 79;" f
|
||||
filter3 src/FoldableHelp.hs 76;" f
|
||||
filterSectionsPair src/Dodge/DisplayInventory.hs 169;" f
|
||||
filterSectionsPair src/Dodge/DisplayInventory.hs 174;" f
|
||||
findBlips src/Dodge/RadarSweep.hs 44;" f
|
||||
findBoundDists src/Dodge/Update/Camera.hs 235;" f
|
||||
findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f
|
||||
@@ -4322,7 +4323,7 @@ flockPointTarget src/Dodge/Creature/Boid.hs 199;" f
|
||||
flockPointTargetR src/Dodge/Creature/Boid.hs 266;" f
|
||||
flockToPointUsing src/Dodge/Creature/Boid.hs 214;" f
|
||||
flockToPointUsing' src/Dodge/Creature/Boid.hs 227;" f
|
||||
floorItemPickupInfo src/Dodge/Render/HUD.hs 209;" f
|
||||
floorItemPickupInfo src/Dodge/Render/HUD.hs 210;" f
|
||||
floorItemSPic src/Dodge/Render/ShapePicture.hs 119;" f
|
||||
floorWire src/Dodge/Wire.hs 13;" f
|
||||
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 412;" f
|
||||
@@ -4405,7 +4406,7 @@ getNodePos src/Dodge/Path.hs 31;" f
|
||||
getPretty src/AesonHelp.hs 7;" f
|
||||
getPrettyShort src/AesonHelp.hs 10;" f
|
||||
getPromptTM src/Dodge/Terminal/Type.hs 8;" f
|
||||
getRootItemBounds src/Dodge/Render/HUD.hs 101;" f
|
||||
getRootItemBounds src/Dodge/Render/HUD.hs 92;" f
|
||||
getSensor src/Dodge/Terminal.hs 189;" f
|
||||
getSmoothScrollValue src/Dodge/SmoothScroll.hs 17;" f
|
||||
getSplitString src/Dodge/Debug/Terminal.hs 123;" f
|
||||
@@ -4588,9 +4589,9 @@ interweave src/Justify.hs 17;" f
|
||||
intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f
|
||||
invAdj src/Dodge/Item/Grammar.hs 188;" f
|
||||
invCursorParams src/Dodge/ListDisplayParams.hs 38;" f
|
||||
invDimColor src/Dodge/DisplayInventory.hs 196;" f
|
||||
invDimColor src/Dodge/DisplayInventory.hs 201;" f
|
||||
invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f
|
||||
invHead src/Dodge/Render/HUD.hs 377;" f
|
||||
invHead src/Dodge/Render/HUD.hs 379;" f
|
||||
invLDT src/Dodge/Item/Grammar.hs 171;" f
|
||||
invRootMap src/Dodge/Item/Grammar.hs 180;" f
|
||||
invRootTrees src/Dodge/Item/Grammar.hs 210;" f
|
||||
@@ -4601,8 +4602,8 @@ invSideEff src/Dodge/Creature/State.hs 162;" f
|
||||
invSize src/Dodge/Inventory/CheckSlots.hs 30;" f
|
||||
invTrees src/Dodge/Item/Grammar.hs 198;" f
|
||||
invTrees' src/Dodge/Item/Grammar.hs 202;" f
|
||||
inventoryExtra src/Dodge/Render/HUD.hs 289;" f
|
||||
inventoryExtraH src/Dodge/Render/HUD.hs 300;" f
|
||||
inventoryExtra src/Dodge/Render/HUD.hs 290;" f
|
||||
inventoryExtraH src/Dodge/Render/HUD.hs 301;" f
|
||||
inventoryX src/Dodge/Creature.hs 115;" f
|
||||
inverseSelBoundaryDown src/Dodge/SelectionSections.hs 256;" f
|
||||
inverseSelBoundaryUp src/Dodge/SelectionSections.hs 243;" f
|
||||
@@ -4621,7 +4622,6 @@ isAnimate src/Dodge/Creature/Test.hs 136;" f
|
||||
isCognizant src/Dodge/Creature/Perception.hs 105;" f
|
||||
isConnected src/Dodge/Inventory.hs 254;" f
|
||||
isElectrical src/Dodge/Data/Damage.hs 42;" f
|
||||
isFilteringInv src/Dodge/Inventory.hs 315;" f
|
||||
isFrictionless src/Dodge/Creature/State.hs 341;" f
|
||||
isGas src/Dodge/Euse.hs 64;" f
|
||||
isInLnk src/Dodge/PlacementSpot.hs 160;" f
|
||||
@@ -4761,15 +4761,15 @@ linksAndPath' src/Dodge/Room/Path.hs 44;" f
|
||||
linksOnPath src/Dodge/Room/CheckConsistency.hs 7;" f
|
||||
listConfig src/Dodge/Menu.hs 199;" f
|
||||
listControls src/Dodge/Menu.hs 212;" f
|
||||
listCursorChooseBorderScale src/Dodge/Render/List.hs 139;" f
|
||||
listCursorChooseBorderScale src/Dodge/Render/List.hs 140;" f
|
||||
listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f
|
||||
listSelectionColorPicture src/Dodge/DisplayInventory.hs 330;" f
|
||||
listSelectionColorPicture src/Dodge/DisplayInventory.hs 335;" f
|
||||
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
|
||||
llleft src/Dodge/Item/Grammar.hs 107;" f
|
||||
llright src/Dodge/Item/Grammar.hs 114;" f
|
||||
lmt src/MatrixHelper.hs 43;" f
|
||||
lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f
|
||||
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 366;" f
|
||||
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 368;" f
|
||||
lnkPosDir src/Dodge/RoomLink.hs 97;" f
|
||||
loadDodgeConfig src/Dodge/Config/Load.hs 9;" f
|
||||
loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f
|
||||
@@ -5182,7 +5182,7 @@ placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f
|
||||
placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 70;" f
|
||||
placeString src/Dodge/Render/MenuScreen.hs 63;" f
|
||||
placeWallPoly src/Dodge/Placement/PlaceSpot.hs 162;" f
|
||||
plainRegex src/Dodge/DisplayInventory.hs 199;" f
|
||||
plainRegex src/Dodge/DisplayInventory.hs 204;" f
|
||||
plateCraft src/Dodge/Item/Craftable.hs 45;" f
|
||||
playIfFree src/Sound.hs 136;" f
|
||||
playPositionalSoundQueue src/Sound.hs 144;" f
|
||||
@@ -5412,7 +5412,7 @@ refract src/Dodge/Item/Weapon/LaserPath.hs 40;" f
|
||||
refreshOptionsSelectionList src/Dodge/Menu/Option.hs 39;" f
|
||||
regexCombs src/Dodge/DisplayInventory.hs 70;" f
|
||||
regexIn src/Regex.hs 4;" f
|
||||
regexList src/Dodge/DisplayInventory.hs 372;" f
|
||||
regexList src/Dodge/DisplayInventory.hs 377;" f
|
||||
regexList src/Regex.hs 7;" f
|
||||
reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 442;" f
|
||||
reloadLevelStart src/Dodge/Save.hs 71;" f
|
||||
@@ -5432,7 +5432,7 @@ renderInfoListAt src/Dodge/Render/InfoBox.hs 17;" f
|
||||
renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f
|
||||
renderLayer src/Render.hs 233;" f
|
||||
renderLightingNoShadows src/Render.hs 48;" f
|
||||
renderListAt src/Dodge/Render/List.hs 196;" f
|
||||
renderListAt src/Dodge/Render/List.hs 197;" f
|
||||
renderShadows src/Render.hs 117;" f
|
||||
replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 160;" f
|
||||
replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f
|
||||
@@ -5469,7 +5469,7 @@ rightPad src/Padding.hs 22;" f
|
||||
rightPadNoSquash src/Padding.hs 26;" f
|
||||
rlPosDir src/Dodge/RoomLink.hs 94;" f
|
||||
rmInLinks src/Dodge/RoomLink.hs 138;" f
|
||||
rmInvItem src/Dodge/Inventory.hs 65;" f
|
||||
rmInvItem src/Dodge/Inventory.hs 64;" f
|
||||
rmLinksOfType src/Dodge/RoomLink.hs 135;" f
|
||||
rmOutLinks src/Dodge/RoomLink.hs 138;" f
|
||||
roomC src/Dodge/Room/Room.hs 38;" f
|
||||
@@ -5562,8 +5562,8 @@ screenPolygon src/Dodge/Base/Window.hs 17;" f
|
||||
screenPolygonBord src/Dodge/Base/Window.hs 27;" f
|
||||
screenPosAbs src/Dodge/ScreenPos.hs 15;" f
|
||||
screenToWorldPos src/Dodge/Base/Coordinate.hs 53;" f
|
||||
scrollAugInvSel src/Dodge/Inventory.hs 284;" f
|
||||
scrollAugNextInSection src/Dodge/Inventory.hs 297;" f
|
||||
scrollAugInvSel src/Dodge/Inventory.hs 285;" f
|
||||
scrollAugNextInSection src/Dodge/Inventory.hs 298;" f
|
||||
scrollCommandStrings src/Dodge/Update/Scroll.hs 135;" f
|
||||
scrollCommands src/Dodge/Update/Scroll.hs 132;" f
|
||||
scrollDebugInfoInt src/Dodge/Debug.hs 47;" f
|
||||
@@ -5583,21 +5583,21 @@ seagullWhistle1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 372;" f
|
||||
seagullWhistleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 530;" f
|
||||
searchIfDamaged src/Dodge/Creature/ReaderUpdate.hs 203;" f
|
||||
secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f
|
||||
sectionsDesiredLines src/Dodge/DisplayInventory.hs 208;" f
|
||||
sectionsSizes src/Dodge/DisplayInventory.hs 213;" f
|
||||
sectionsDesiredLines src/Dodge/DisplayInventory.hs 213;" f
|
||||
sectionsSizes src/Dodge/DisplayInventory.hs 218;" f
|
||||
seedStartMenu src/Dodge/Menu.hs 79;" f
|
||||
seedStartOptions src/Dodge/Menu.hs 82;" f
|
||||
segOnCirc src/Geometry.hs 116;" f
|
||||
selNumPos src/Dodge/Render/HUD.hs 426;" f
|
||||
selNumPosCardinal src/Dodge/Render/HUD.hs 449;" f
|
||||
selSecDrawCursor src/Dodge/Render/List.hs 129;" f
|
||||
selNumPos src/Dodge/Render/HUD.hs 428;" f
|
||||
selNumPosCardinal src/Dodge/Render/HUD.hs 451;" f
|
||||
selSecDrawCursor src/Dodge/Render/List.hs 130;" f
|
||||
selSecDrawCursorAt src/Dodge/Render/List.hs 108;" f
|
||||
selSecSelCol src/Dodge/Render/HUD.hs 472;" f
|
||||
selSecSelCol src/Dodge/Render/HUD.hs 476;" f
|
||||
selSecSelSize src/Dodge/SelectionSections.hs 182;" f
|
||||
selSecYint src/Dodge/SelectionSections.hs 191;" f
|
||||
selectCreatureDebugItem src/Dodge/Debug.hs 39;" f
|
||||
selectUse src/Dodge/SelectUse.hs 10;" f
|
||||
selectedCloseObject src/Dodge/Inventory.hs 308;" f
|
||||
selectedCloseItem src/Dodge/Inventory.hs 309;" f
|
||||
sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f
|
||||
sensInsideDoor src/Dodge/Room/SensorDoor.hs 69;" f
|
||||
senseDamage src/Dodge/Machine/Update.hs 152;" f
|
||||
@@ -5871,11 +5871,11 @@ stripZ src/Geometry/Vector3D.hs 97;" f
|
||||
subInvX src/Dodge/ListDisplayParams.hs 50;" f
|
||||
subMap src/TreeHelp.hs 118;" f
|
||||
subZipWith src/Dodge/Placement/Instance/Wall.hs 115;" f
|
||||
swapAnyExtraSelection src/Dodge/Inventory.hs 236;" f
|
||||
swapAnyExtraSelection src/Dodge/Inventory.hs 235;" f
|
||||
swapInOutLinks src/Dodge/RoomLink.hs 80;" f
|
||||
swapIndices src/ListHelp.hs 50;" f
|
||||
swapInvItems src/Dodge/Inventory.hs 186;" f
|
||||
swapItemWith src/Dodge/Inventory.hs 260;" f
|
||||
swapInvItems src/Dodge/Inventory.hs 184;" f
|
||||
swapItemWith src/Dodge/Inventory.hs 261;" f
|
||||
swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f
|
||||
swarmUsingCenter src/Dodge/Creature/Boid.hs 171;" f
|
||||
switchDoor src/Dodge/Placement/Instance/Door.hs 96;" f
|
||||
@@ -5974,7 +5974,7 @@ toLabel src/Dodge/Cleat.hs 16;" f
|
||||
toLasgunUpdate src/Dodge/Item/Grammar.hs 119;" f
|
||||
toMultiset src/Multiset.hs 64;" f
|
||||
toOnward src/Dodge/Tree/Compose.hs 101;" f
|
||||
toTopLeft src/Dodge/Render/List.hs 223;" f
|
||||
toTopLeft src/Dodge/Render/List.hs 224;" f
|
||||
toV2 src/Geometry/Data.hs 36;" f
|
||||
toV3 src/Geometry/Data.hs 38;" f
|
||||
toV4 src/Geometry/Data.hs 40;" f
|
||||
@@ -6120,7 +6120,7 @@ updateCreatureGroups src/Dodge/Update.hs 492;" f
|
||||
updateCreatureSoundPositions src/Dodge/Update.hs 468;" f
|
||||
updateDebugMessageOffset src/Dodge/Update.hs 92;" f
|
||||
updateDelayedEvents src/Dodge/Update.hs 771;" f
|
||||
updateDisplaySections src/Dodge/DisplayInventory.hs 120;" f
|
||||
updateDisplaySections src/Dodge/DisplayInventory.hs 127;" f
|
||||
updateDistortion src/Dodge/Distortion.hs 5;" f
|
||||
updateDistortions src/Dodge/Update.hs 513;" f
|
||||
updateEnergyBall src/Dodge/EnergyBall.hs 46;" f
|
||||
@@ -6184,8 +6184,8 @@ updateRootItemID src/Dodge/Inventory/Location.hs 35;" f
|
||||
updateScopeZoom src/Dodge/Update/Camera.hs 127;" f
|
||||
updateScopeZoom' src/Dodge/Update/Camera.hs 132;" f
|
||||
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
|
||||
updateSection src/Dodge/DisplayInventory.hs 279;" f
|
||||
updateSectionsPositioning src/Dodge/DisplayInventory.hs 250;" f
|
||||
updateSection src/Dodge/DisplayInventory.hs 284;" f
|
||||
updateSectionsPositioning src/Dodge/DisplayInventory.hs 255;" f
|
||||
updateSeenWalls src/Dodge/Update.hs 660;" f
|
||||
updateShockwave src/Dodge/Shockwave/Update.hs 12;" f
|
||||
updateShockwaves src/Dodge/Update.hs 534;" f
|
||||
@@ -6363,7 +6363,7 @@ yV2 src/Geometry/Vector.hs 203;" f
|
||||
yellow src/Color.hs 17;" f
|
||||
you src/Dodge/Base/You.hs 18;" f
|
||||
youDropItem src/Dodge/Creature/Action.hs 186;" f
|
||||
yourAugmentedItem src/Dodge/Render/HUD.hs 216;" f
|
||||
yourAugmentedItem src/Dodge/Render/HUD.hs 217;" f
|
||||
yourControl src/Dodge/Creature/YourControl.hs 22;" f
|
||||
yourDefaultSpeed src/Dodge/Default/Creature.hs 134;" f
|
||||
yourDefaultStrideLength src/Dodge/Default/Creature.hs 137;" f
|
||||
|
||||
Reference in New Issue
Block a user