This commit is contained in:
2024-10-25 21:05:32 +01:00
parent 6424899afd
commit f6c136cfd6
25 changed files with 334 additions and 333 deletions
+1 -1
View File
@@ -1 +1 @@
All good (596 modules, at 17:39:13)
All good (0 modules, at 21:05:25)
+1 -1
View File
@@ -258,7 +258,7 @@ shineTorch cr itmtree (p, q) = fromMaybe id $ do
x = 10
isammolink AmmoInLink{} = True
isammolink _ = False
pos = (_crPos cr `v2z` 0 + rotate3 cdir p)
pos = _crPos cr `v2z` 0 + rotate3 cdir p
pos'' = pos + rotate3 d (V3 8 0 1.5)
cdir = _crDir cr
d = _crDir cr + argV (Q.qToV2 q)
+6 -10
View File
@@ -22,20 +22,17 @@ data ListDisplayParams = ListDisplayParams
, _ldpWidth :: SelectionWidth
}
data CursorDisplay = CursorDisplay
{ _cursSides :: [CardinalPoint]
}
data CursorDisplay
= BoundaryCursor
{ _cursSides :: [CardinalPoint]
}
| BackdropCursor
data SelectionList a = SelectionList
{ _slItems :: [SelectionItem a]
, _slSelPos :: Maybe Int
, _slRegex :: String
, _slRegexInput :: Bool
, _slRegexList :: [(SelectionItem a, Maybe Int)]
}
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data SelectionSections a = SelectionSections
{ _sssSections :: IntMap (SelectionSection a)
, _sssExtra :: SSSExtra
@@ -44,7 +41,7 @@ data SelectionSections a = SelectionSections
-- note that filters are arbitrary: the sssFilters point to the lower of
-- a pair of ints (i,i+1) such that the lower is the regex section, the higher
-- is the items section.
data SSSExtra = SSSExtra
newtype SSSExtra = SSSExtra
{ _sssFilters :: IntMap (Maybe String)
}
@@ -64,7 +61,6 @@ data SelectionSection a = SelectionSection
, _ssDescriptor :: String
}
data SelectionWidth
= FixedSelectionWidth Int
| VariableSelectionWidth (Int -> Int)
+3 -2
View File
@@ -13,6 +13,7 @@ import Dodge.Debug.Picture
import Dodge.WorldEvent.ThingsHit
import Geometry.Vector
import qualified SDL
import Data.Ord
debugEvents :: Universe -> Universe
debugEvents u = case dbools ^. at Enable_debug of
@@ -90,8 +91,8 @@ clickGetCreature u
closestCreatureID :: Universe -> Maybe Int
closestCreatureID u =
fmap (_crID . snd) . listToMaybe . reverse
. sortOn (dist mwp . fst)
fmap (_crID . snd) . listToMaybe
. sortOn (Down . dist mwp . fst)
. crsHitRadial mwp 100
$ _uvWorld u
where
-4
View File
@@ -6,8 +6,4 @@ defaultSelectionList :: SelectionList a
defaultSelectionList = SelectionList
{_slItems = mempty
, _slSelPos = Nothing
-- , _slLength = 0
, _slRegex = ""
, _slRegexInput = False
, _slRegexList = []
}
+3
View File
@@ -280,3 +280,6 @@ enterCombineInv cfig w = w & hud . hudElement . subInventory .~ CombineInventory
, _ssIndent = 0
, _ssDescriptor = "COMBINATIONS"
}
regexList :: String -> [String] -> Bool
regexList x = any (isInfixOf x)
+1 -1
View File
@@ -64,7 +64,7 @@ ildtPropagate lf rf x (LDT v l r) = LDT v (imap (go lf x) l) (imap (go rf x) r)
ldtPropagateIndices :: LabelDoubleTree b a -> LabelDoubleTree b (a, [Either Int Int])
ldtPropagateIndices (LDT x l r) = LDT (x,[]) (imap (f Left) l) (imap (f Right) r)
where
f e i (y,t) = (y, fmap (second (e i:)) $ ldtPropagateIndices t)
f e i (y,t) = (y, second (e i:) <$> ldtPropagateIndices t)
-- conceptually, in a tree growing from left to right,
-- bottom -> top is equated with left -> right.
+2 -1
View File
@@ -62,7 +62,8 @@ drawFlamelet pt =
. rotate (negate (rot + 0.2 * fromIntegral time))
. scale s2 s2
. polygon
$ (rectNSWE siz2 (- siz2) (- siz2) siz2)
. reverse
$ rectNSWE siz2 (- siz2) (- siz2) siz2
pic =
setDepth (z + 20)
. uncurryV translate ep
+1 -1
View File
@@ -371,7 +371,7 @@ shootBullet ::
World
shootBullet itmtree cr (mz, x, magtree) w = fromMaybe w $ do
thebullet <- getBulletType itmtree magtree mz cr w
return $ flip (foldl' (&)) (replicate x (makeBullet thebullet (itmtree ^. ldtValue) cr mz)) w
return $ foldl' (&) w (replicate x (makeBullet thebullet (itmtree ^. ldtValue) cr mz))
-- & makeMuzzleSmoke mz itm cr
+1 -1
View File
@@ -217,7 +217,7 @@ changeSwapWith f w = case w ^? hud . hudElement . diSelection . _Just of
augInvDirectSelect :: (Int, Int) -> World -> World
augInvDirectSelect (i, j) w =
w
& hud . hudElement . diSelection .~ Just (i, j)
& hud . hudElement . diSelection ?~ (i, j)
& worldEventFlags . at InventoryChange ?~ ()
& setInvPosFromSS
& cWorld . lWorld %~ crUpdateItemLocations 0
+2 -1
View File
@@ -103,7 +103,8 @@ laserLinkTest :: Item -> LinkTest
laserLinkTest itm = LTest (llleft itm) (llright itm)
llleft :: Item -> PartiallyComposedItem -> Maybe LinkUpdate
llleft itm pci = _tryLeftLink (uncurry useBreakL $ itemToBreakLists (CItem itm WeaponTargetingSF)) pci
llleft itm = _tryLeftLink
. uncurry useBreakL . itemToBreakLists $ CItem itm WeaponTargetingSF
llright :: Item -> PartiallyComposedItem -> Maybe LinkUpdate
llright itm pci = case pci ^. _1 . itType of
+2 -2
View File
@@ -30,7 +30,7 @@ heldItemRelativeOrient itm cr (p,q)
| isTwoHandFlat =
( V3 (_crRad cr) 0 handD
+ rotate3 (twoFlatHRot cr) (transToHandle itm p)
, (Q.axisAngle (V3 0 0 1) (twoFlatHRot cr)) * q
, Q.axisAngle (V3 0 0 1) (twoFlatHRot cr) * q
)
| isOneHand =
( V3 (_crRad cr * 0.7 + handPos) (_crRad cr * negate 0.7) handD
@@ -40,7 +40,7 @@ heldItemRelativeOrient itm cr (p,q)
| otherwise =
( V3 (_crRad cr) 0 handD
+ rotate3 (strideRot cr + 1.2) (V3 (-8) 0 0 + transToHandle itm p)
, (Q.axisAngle (V3 0 0 1) (strideRot cr + 1.2)) * q
, Q.axisAngle (V3 0 0 1) (strideRot cr + 1.2) * q
)
where
handD = 15
+11 -11
View File
@@ -1,12 +1,12 @@
{-# LANGUAGE LambdaCase#-}
module Dodge.Item.InventoryColor
( itemInvColor
) where
module Dodge.Item.InventoryColor (
itemInvColor,
) where
--import Dodge.Data.Item.Use.Consumption.Ammo
import Dodge.Data.ComposedItem
import Color
import Control.Lens
import Dodge.Data.ComposedItem
itemInvColor :: ComposedItem -> Color
itemInvColor ci = case ci ^. cItemFunction of
@@ -14,13 +14,13 @@ itemInvColor ci = case ci ^. cItemFunction of
WeaponScopeSF -> chartreuse
WeaponTargetingSF -> green
AugmentedHUDSF -> rose
AmmoMagSF {} -> red
AmmoMagSF{} -> red
RemoteScreenSF -> azure
UncomposableIsolateSF -> greyN 0.5
AmmoModifierSF {} -> orange
AmmoTargetingSF {} -> green
AmmoPayloadSF {} -> violet
AmmoEffectSF {} -> aquamarine
AmmoModifierSF{} -> orange
AmmoTargetingSF{} -> green
AmmoPayloadSF{} -> violet
AmmoEffectSF{} -> aquamarine
FunctionChangeSF -> yellow
--ammoTypeColor :: AmmoType -> Color
@@ -30,7 +30,7 @@ itemInvColor ci = case ci ^. cItemFunction of
-- BeltBulletAmmo -> orange
-- ElectricalAmmo -> blue
-- GasAmmo -> green
-- HELD {} -> white
-- LEFT {} -> cyan
-- EQUIP {} -> yellow
+1 -3
View File
@@ -1,4 +1,3 @@
{-# LANGUAGE LambdaCase #-}
module Dodge.Item.Scope (
zoomScope,
targetingScope,
@@ -21,8 +20,7 @@ zoomScope = defaultHeldItem
& itUse .~ UseScope OpticScope{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5}
targetingScope :: TargetingType -> Item
targetingScope tt= case tt of
_ -> defaultHeldItem
targetingScope tt = defaultHeldItem
& itType .~ TARGETING tt
& itUse .~ UseCraft
& itTargeting .~ ItTargeting
+23 -28
View File
@@ -1,55 +1,51 @@
module Dodge.ListDisplayParams
( invDisplayParams
, invCursorParams
, secondColumnParams
, subInvX
, defaultListDisplayParams
, optionListDisplayParams
) where
module Dodge.ListDisplayParams (
invDisplayParams,
invCursorParams,
secondColumnParams,
subInvX,
defaultListDisplayParams,
optionListDisplayParams,
) where
import Dodge.Data.ScreenPos
import Control.Lens
import qualified Data.Map.Strict as M
import Dodge.Data.CardinalPoint
import SDL (MouseButton (..))
import Dodge.Data.ScreenPos
import Dodge.Data.SelectionList
import Dodge.Data.World
import qualified Data.Map.Strict as M
import Control.Lens
import Linear
import SDL (MouseButton (..))
defaultListDisplayParams :: ListDisplayParams
defaultListDisplayParams =
ListDisplayParams
{ _ldpVerticalGap = 0
, _ldpScale = 1
, _ldpPos = ScreenPos {_spScreenOff = V2 (-0.5) 0.5 -- top left
, _spPixelOff = 0}
, _ldpPos =
ScreenPos
{ _spScreenOff = V2 (-0.5) 0.5 -- top left
, _spPixelOff = 0
}
, _ldpWidth = FixedSelectionWidth 15
}
invDisplayParams :: World -> ListDisplayParams
invDisplayParams w =
defaultListDisplayParams
-- & ldpCursorSides .~ selcursortype
& ldpWidth .~ FixedSelectionWidth (determineInvSelCursorWidth w)
& ldpPos . spPixelOff .~ V2 6 (-1)
-- where
-- selcursortype = case w ^? hud . hudElement . subInventory of
-- _ | ButtonRight `M.member` _mouseButtons (_input w) -> [North, South, East, West]
-- Just ExamineInventory{} -> [North, South, East, West]
-- Just CombineInventory{} -> []
-- _ -> [North, South, West]
invCursorParams :: World -> CursorDisplay
invCursorParams w = CursorDisplay $ case w ^? hud . hudElement . subInventory of
_ | ButtonRight `M.member` _mouseButtons (_input w) -> [North, South, East, West]
Just ExamineInventory{} -> [North, South, East, West]
Just CombineInventory{} -> []
_ -> [North, South, West]
invCursorParams w = BoundaryCursor $ case w ^? hud . hudElement . subInventory of
_ | ButtonRight `M.member` _mouseButtons (_input w) -> [North, South, East, West]
Just ExamineInventory{} -> [North, South, East, West]
Just CombineInventory{} -> []
_ -> [North, South, West]
secondColumnParams :: ListDisplayParams
secondColumnParams =
defaultListDisplayParams
& ldpPos . spPixelOff .~ V2 subInvX (-81)
-- & ldpCursorSides .~ [North, South, West]
subInvX :: Float
subInvX = 10 * fromIntegral topInvW + 70
@@ -77,4 +73,3 @@ optionListDisplayParams =
& ldpScale .~ 2
& ldpVerticalGap .~ 0
& ldpWidth .~ FixedSelectionWidth 50
-- & ldpCursorSides .~ [North, South, West]
+32 -13
View File
@@ -59,7 +59,7 @@ drawHP cfig =
drawInventory :: SelectionSections () -> World -> Configuration -> Picture
drawInventory sss w cfig =
drawSelectionSections sss ldp cfig
<> drawSSCursor sss (w ^? hud . hudElement . diSelection . _Just) ldp curs cfig
<> drawSSCursor sss (w ^? hud . hudElement . diSelection . _Just) ldp curs cfig
<> iextra
<> translateScreenPos
cfig
@@ -82,9 +82,9 @@ drawDIMouseOver w = fromMaybe mempty $ do
(_, i) <- w ^? hud . hudElement . subInventory . nsMouseOver . _Just
sss <- w ^? hud . hudElement . diSections
let idp = invDisplayParams w
return . color (withAlpha 0.5 white) $ selSecDrawCursorAt (0, i) 10 idp curs sss
return . color (withAlpha 0.5 white) $ selSecDrawCursorAt 10 idp curs sss (0, i)
where
curs = CursorDisplay [North,South]
curs = BoundaryCursor [North, South]
getMouseInvSel :: World -> Maybe ((Int, Int), (Int, Int))
getMouseInvSel w = case w ^? hud . hudElement . subInventory . nsSelected of
@@ -130,7 +130,7 @@ drawCombineInventory cfig sss w =
<> drawSSCursor sss msel secondColumnParams curs cfig
<> combineInventoryExtra sss msel cfig w
where
curs = CursorDisplay [North,South,West]
curs = BoundaryCursor [North, South, West]
msel = w ^? hud . hudElement . subInventory . ciSelection . _Just
drawExamineInventory :: Configuration -> World -> Picture
@@ -185,7 +185,9 @@ drawRBOptions :: Configuration -> World -> Picture
drawRBOptions cfig w = fromMaybe mempty $ do
guard $ ButtonRight `M.member` _mouseButtons (_input w)
invid <- you w ^? crManipulation . manObject . imSelectedItem
eslist <- fmap equipSiteToPositions $ you w ^? crInv . ix invid . itUse . uequipEffect . eeSite
eslist <-
fmap equipSiteToPositions $
you w ^? crInv . ix invid . itUse . uequipEffect . eeSite
i <- w ^? rbOptions . opSel
let ae = getEquipmentAllocation w
sss <- w ^? hud . hudElement . diSections
@@ -202,23 +204,36 @@ drawRBOptions cfig w = fromMaybe mempty $ do
return $
toTopLeft cfig $
translate 290 (-1) (ytext midstr)
<> translate 160 (-1) (listCursorChooseBorderScale 0 1 [North, South] curpos 0 white 21 1)
<> translate
160
(-1)
( listCursorChooseBorderScale
0
1
(BoundaryCursor [North, South])
curpos
0
white
21
1
)
<> translate
380
(-1)
( drawListYoff (curpos - i) (map (text . eqPosText) eslist)
<> listCursorChooseBorderScale 0 1 [East] (curpos - i) 0 white 7 (length eslist)
<> listCursorChooseBorderScale 0 1 [West] (curpos + 1) 0 white 7 (length eslist - (i + 1))
<> listCursorChooseBorderScale 0 1 [West] (curpos - i) 0 white 7 i
<> listCursorChooseBorderScale 0 1 (bc East) (curpos - i) 0 white 7 (length eslist)
<> listCursorChooseBorderScale 0 1 (bc West) (curpos + 1) 0 white 7 (length eslist - (i + 1))
<> listCursorChooseBorderScale 0 1 (bc West) (curpos - i) 0 white 7 i
<> maybetopborder i curpos
<> maybebottomborder i (length eslist) curpos
)
<> translate 460 (-1) (ytext extrastr)
where
maybetopborder 0 curpos = listCursorChooseBorderScale 0 1 [North] curpos 0 white 7 1
bc x = BoundaryCursor [x]
maybetopborder 0 curpos = listCursorChooseBorderScale 0 1 (bc North) curpos 0 white 7 1
maybetopborder _ _ = mempty
maybebottomborder a b curpos
| a == b - 1 = listCursorChooseBorderScale 0 1 [South] curpos 0 white 7 1
| a == b - 1 = listCursorChooseBorderScale 0 1 (bc South) curpos 0 white 7 1
| otherwise = mempty
otheritem j = fromMaybe "" $ do
itm <- you w ^? crInv . ix j
@@ -282,8 +297,12 @@ combineInventoryExtra sss msel cfig w = fromMaybe mempty $ do
let idp = invDisplayParams w
return $
translateScreenPos cfig (idp ^. ldpPos) $
selSecDrawCursor 17 idp (CursorDisplay [North, South, East, West])
sss' (Just (0, i))
selSecDrawCursor
17
idp
(BoundaryCursor [North, South, East, West])
sss'
(Just (0, i))
displayTerminal :: Int -> Configuration -> LWorld -> Picture
displayTerminal tid cfig w = fromMaybe mempty $ do
+27 -7
View File
@@ -1,22 +1,42 @@
module Dodge.Render.InfoBox
( renderInfoListAt
, renderInfoListsAt
) where
module Dodge.Render.InfoBox (
renderInfoListAt,
renderInfoListsAt,
) where
import Dodge.Data.CardinalPoint -- this should be imported implicitly
-- this should be imported implicitly
import Dodge.Base
import Dodge.Data.Camera
import Dodge.Data.CardinalPoint
import Dodge.Data.Config
import Dodge.Data.SelectionList
import Dodge.Render.Connectors
import Dodge.Render.List
import Geometry
import Picture
renderInfoListAt :: Float -> Float -> Configuration -> Camera -> (Point2, [String]) -> Picture
renderInfoListAt ::
Float ->
Float ->
Configuration ->
Camera ->
(Point2, [String]) ->
Picture
renderInfoListAt x y cfig cam (p, ss) =
toTopLeft cfig (renderListAt x y (zip ss (repeat white)))
<> color white (lConnect (V2 (x - hw) (hh -25 - y)) (worldPosToScreen cam p))
<> toTopLeft cfig (translate x (-y) $ listCursorChooseBorderScale 0 1 [North,South] 0 0 white 19 (length ss))
<> toTopLeft
cfig
( translate x (- y) $
listCursorChooseBorderScale
0
1
(BoundaryCursor [North, South])
0
0
white
19
(length ss)
)
where
hw = halfWidth cfig
hh = halfHeight cfig
+47 -53
View File
@@ -1,3 +1,4 @@
{-# LANGUAGE LambdaCase #-}
module Dodge.Render.List (
renderListAt,
drawList,
@@ -13,14 +14,13 @@ module Dodge.Render.List (
selSecDrawCursorAt,
) where
import Dodge.SelectionSections
import Data.Maybe
import Dodge.Base.Window
import Dodge.Data.CardinalPoint
import Dodge.Data.Config
import Dodge.Data.SelectionList
import Dodge.ScreenPos
import Dodge.SelectionList
import Dodge.SelectionSections
import Geometry
import LensHelp
import ListHelp
@@ -28,38 +28,29 @@ import Picture
drawSelectionList :: ListDisplayParams -> Configuration -> SelectionList a -> Picture
drawSelectionList ldps cfig sl =
translateScreenPos
cfig
(ldps ^. ldpPos)
$ drawListYgapScaleYoff
(_ldpVerticalGap ldps)
(_ldpScale ldps)
translateScreenPos cfig (ldps ^. ldpPos) $
drawListYgapScaleYoff
(ldps ^. ldpVerticalGap)
(ldps ^. ldpScale)
0
(makeSelectionListPictures sl)
<> drawSelectionCursor sl ldps (CursorDisplay [North,West,South])
drawSelectionCursor :: SelectionList a
-> ListDisplayParams
-> CursorDisplay
-> Picture
drawSelectionCursor sl = drawCursorAt (f $ sl ^. slSelPos) (getShownItems sl)
where
-- the following is quite hacky
f = case sl ^. slRegex of
_ | sl ^. slRegexInput -> const (Just 0)
"" | not (sl ^. slRegexInput) -> id
_ -> fmap (+ 1)
<> drawCursorAt
(sl ^. slSelPos)
(sl ^. slItems)
ldps
(BoundaryCursor [North, South])
makeSelectionListPictures :: SelectionList a -> [Picture]
makeSelectionListPictures = concatMap f . getShownItems
makeSelectionListPictures = concatMap f . _slItems
where
f si = map (color (_siColor si) . text) $ _siPictures si
--f si = map ((flip inverseText) ((_siColor si))) $ _siPictures si
drawCursorAt :: Maybe Int -> [SelectionItem a]
-> ListDisplayParams
-> CursorDisplay
-> Picture
drawCursorAt ::
Maybe Int ->
[SelectionItem a] ->
ListDisplayParams ->
CursorDisplay ->
Picture
drawCursorAt mi lis ldps curs = fromMaybe mempty $ do
i <- mi
selit <- lis !? i
@@ -67,7 +58,7 @@ drawCursorAt mi lis ldps curs = fromMaybe mempty $ do
listCursorChooseBorderScale
(_ldpVerticalGap ldps)
(_ldpScale ldps)
(curs ^. cursSides)
curs
(sum . map _siHeight $ take i lis)
(_siOffX selit)
(_siColor selit)
@@ -76,8 +67,8 @@ drawCursorAt mi lis ldps curs = fromMaybe mempty $ do
getLDPWidth :: ListDisplayParams -> Int
getLDPWidth ldps = case _ldpWidth ldps of
FixedSelectionWidth x -> x
_ -> 1
FixedSelectionWidth x -> x
_ -> 1
drawListYoff :: Int -> [Picture] -> Picture
drawListYoff = drawListYgapScaleYoff 0 1
@@ -91,14 +82,14 @@ stackPicturesAt = stackPicturesAtOff 0
stackPicturesAtOff :: Int -> [Picture] -> Picture
stackPicturesAtOff i = mconcat . zipWith (drawListElement 10 1 0) [i, i -1 ..]
selSecDrawCursorAt
:: (Int,Int)
-> Int
-> ListDisplayParams
-> CursorDisplay
-> SelectionSections a
-> Picture
selSecDrawCursorAt (i,j) xsize ldp curs sss = fromMaybe mempty $ do
selSecDrawCursorAt ::
Int ->
ListDisplayParams ->
CursorDisplay ->
SelectionSections a ->
(Int, Int) ->
Picture
selSecDrawCursorAt xsize ldp curs sss (i, j) = fromMaybe mempty $ do
yint <- selSecYint i j sss
xint <- sss ^? sssSections . ix i . ssIndent
si <- sss ^? sssSections . ix i . ssItems . ix j
@@ -106,45 +97,48 @@ selSecDrawCursorAt (i,j) xsize ldp curs sss = fromMaybe mempty $ do
listCursorChooseBorderScale
(ldp ^. ldpVerticalGap)
(ldp ^. ldpScale)
(curs ^. cursSides)
curs
yint
(xint + _siOffX si)
(_siColor si)
xsize
(_siHeight si)
selSecDrawCursor :: Int -> ListDisplayParams
-> CursorDisplay
-> SelectionSections a ->
Maybe (Int,Int) -> Picture
selSecDrawCursor xsize ldp curs sss msel = maybe mempty
(\x -> selSecDrawCursorAt x xsize ldp curs sss)
msel
selSecDrawCursor ::
Int ->
ListDisplayParams ->
CursorDisplay ->
SelectionSections a ->
Maybe (Int, Int) ->
Picture
selSecDrawCursor xsize ldp curs = maybe mempty . selSecDrawCursorAt xsize ldp curs
-- displays a cursor that should match up to list text pictures
listCursorChooseBorderScale ::
Float ->
Float ->
[CardinalPoint] ->
CursorDisplay ->
Int ->
Int ->
Color ->
Int ->
Int ->
Picture
listCursorChooseBorderScale ygap s borders yint xint col cursxsize cursysize =
listCursorChooseBorderScale ygap s curs yint xint col cursxsize cursysize =
translate
((10 * fromIntegral xint - 5) * s)
(- (ygap + (s * 20 + ygap) * fromIntegral yint ))
(- (ygap + (s * 20 + ygap) * fromIntegral yint))
. color col
$ chooseCursorBorders (s * wth) (s * hgt) borders
$ chooseCursorBorders (s * wth) (s * hgt) curs
where
wth = 10 * (fromIntegral cursxsize + 1)
hgt = 20 * fromIntegral cursysize + ygap * (fromIntegral cursysize - 1)
-- note we cannot simply scale lines because they are drawn as solid rectangles
chooseCursorBorders :: Float -> Float -> [CardinalPoint] -> Picture
chooseCursorBorders w h = foldMap (line . toLine)
chooseCursorBorders :: Float -> Float -> CursorDisplay -> Picture
chooseCursorBorders w h = \case
BoundaryCursor ps -> foldMap (line . toLine) ps
BackdropCursor -> polygon . reverse $ rectNSWE 0 h' 0 w
where
h' = negate h
toLine North = [V2 0 0, V2 w 0]
@@ -181,7 +175,7 @@ renderListAt :: Float -> Float -> [(String, Color)] -> Picture
renderListAt tx ty = translate tx (- ty) . drawList . map (\(str, col) -> color col $ text str)
--inverseText :: String -> Color -> Picture
--inverseText str col =
--inverseText str col =
-- translate3 (V3 0 0 (0.5))
-- (color (V4 0 1 0 0.1) ( text str))
-- <>
-6
View File
@@ -1,5 +1,4 @@
module Dodge.SelectionList (
getShownItems,
getAvailableListLines,
) where
@@ -17,8 +16,3 @@ getAvailableListLines ldps cfig = floor ((dToBot - vgap) / itmHeight)
dToBot =
winy / 2 + winy * (ldps ^. ldpPos . spScreenOff . _y)
+ (ldps ^. ldpPos . spPixelOff . _y)
getShownItems :: SelectionList a -> [SelectionItem a]
getShownItems sl = case sl ^. slRegexList of
[] -> sl ^. slItems
xs -> fmap fst xs
+19 -21
View File
@@ -3,7 +3,7 @@ module Dodge.SelectionSections (
ssLookupDown,
ssLookupGT,
ssSetCursor,
-- setFirstPosSelectionSections,
-- setFirstPosSelectionSections,
selSecYint,
selSecSelSize,
inverseSelSecYint,
@@ -23,13 +23,17 @@ import Dodge.Data.Config
import Dodge.Data.SelectionList
import Dodge.ScreenPos
import Geometry.Data
import Data.Foldable
scrollSelectionSections :: Int -> SelectionSections a -> Maybe (Int,Int)
-> Maybe (Int,Int)
scrollSelectionSections ::
Int ->
SelectionSections a ->
Maybe (Int, Int) ->
Maybe (Int, Int)
scrollSelectionSections yi sss msel
| yi == 0 = msel
| yi > 0 = foldr ($) msel $ replicate yi (ssScrollUsing ssLookupUp sss)
| otherwise = foldr ($) msel $ replicate (negate yi) (ssScrollUsing ssLookupDown sss)
| yi > 0 = foldl' (&) msel $ replicate yi (ssScrollUsing ssLookupUp sss)
| otherwise = foldl' (&) msel $ replicate (negate yi) (ssScrollUsing ssLookupDown sss)
--setFirstPosSelectionSections :: SelectionSections a -> SelectionSections a
--setFirstPosSelectionSections sss = fromMaybe sss $ do
@@ -39,21 +43,15 @@ scrollSelectionSections yi sss msel
ssScrollUsing ::
(Int -> Int -> SelectionSections a -> Maybe (Int, Int, SelectionItem a)) ->
SelectionSections a ->
Maybe (Int,Int) ->
Maybe (Int,Int)
ssScrollUsing g sss msel =
( ssScrollMinOnFail
g
(sss & sssSections %~ fmap (ssItems %~ IM.filter _siIsSelectable))
msel
)
Maybe (Int, Int) ->
Maybe (Int, Int)
ssScrollUsing g =
ssScrollMinOnFail
g
. (sssSections %~ fmap (ssItems %~ IM.filter _siIsSelectable))
ssScrollMinOnFail ::
( Int ->
Int ->
SelectionSections a ->
Maybe (Int, Int, SelectionItem a)
) ->
(Int -> Int -> SelectionSections a -> Maybe (Int, Int, SelectionItem a)) ->
SelectionSections a ->
Maybe (Int, Int) ->
Maybe (Int, Int)
@@ -66,8 +64,8 @@ ssScrollMinOnFail f sss msel = fmap (\(i, j, _) -> (i, j)) $ l <|> ssLookupMin s
ssSetCursor ::
(SelectionSections a -> Maybe (Int, Int, SelectionItem a)) ->
SelectionSections a ->
Maybe (Int,Int) ->
Maybe (Int,Int)
Maybe (Int, Int) ->
Maybe (Int, Int)
ssSetCursor f sss msel = fromMaybe msel $ do
(i, j, _) <- f sss
return $ Just (i, j)
@@ -205,7 +203,7 @@ inverseSelBoundaryUp cfig ldp sss (V2 _ y) = do
let mselup = inverseSelSecYint (posSelSecYint cfig ldp y - 1) sss
if Just sel == mselup
then return $ sel & _2 +~ 1
else return $ sel
else return sel
inverseSelBoundaryDown ::
Configuration ->
+2 -2
View File
@@ -363,7 +363,7 @@ shiftInvItemsUp :: (Int, Int) -> Int -> World -> World
shiftInvItemsUp (_, i) x w = foldl' f w [i .. i + x]
where
f w' i' = swapInvItems g i' w'
g i' m = fmap fst $ IM.lookupLT i' m
g i' m = fst <$> IM.lookupLT i' m
shiftInvItemsDown :: (Int, Int) -> Int -> World -> World
shiftInvItemsDown (_, i) x w = fromMaybe w $ do
@@ -372,7 +372,7 @@ shiftInvItemsDown (_, i) x w = fromMaybe w $ do
return $ foldl' f w $ reverse [i .. i + x]
where
f w' i' = swapInvItems g i' w'
g i' m = fmap fst $ IM.lookupGT i' m
g i' m = fst <$> IM.lookupGT i' m
updateMouseOverInventory :: Configuration -> World -> World
updateMouseOverInventory cfig w = fromMaybe w $ do
+2 -4
View File
@@ -2,6 +2,7 @@ module Dodge.Update.Input.InGame (
updateUseInputInGame,
) where
import Control.Applicative
import qualified Data.IntMap.Strict as IM
import Data.List (sort)
import qualified Data.Map.Strict as M
@@ -236,10 +237,7 @@ updateEnterRegex w = case w ^? hud . hudElement . subInventory of
secfocus a b = fromMaybe False $ do
i <- di ^? diSelection . _Just . _1
return $ i == a || i == b
enterregex x sss =
sss & sssExtra . sssFilters . ix x %~ f
f Nothing = Just ""
f x = x
enterregex x = sssExtra . sssFilters . ix x %~ (<|> Just "")
pauseGame :: Universe -> Universe
pauseGame u = u & uvScreenLayers .~ [pauseMenu u]
+2 -4
View File
@@ -15,10 +15,8 @@ module IntMapHelp
unsafeSwapKeys,
safeSwapKeys,
findIndex,
cycleGT,
cycleLT,
invertIntMap,
) where
@@ -99,7 +97,7 @@ cycleLT :: Int -> IntMap a -> Maybe (Int, a)
cycleLT i m = lookupLT i m <|> lookupMax m
invertIntMap :: Ord a => IntMap a -> M.Map a [Int]
invertIntMap = foldrWithKey
invertIntMap =
foldrWithKey
(\k xs -> M.insertWith (++) xs [k])
mempty
-8
View File
@@ -1,8 +0,0 @@
module Regex where
import Data.List
regexIn :: String -> String -> Bool
regexIn = isInfixOf
regexList :: String -> [String] -> Bool
regexList x = any (isInfixOf x)
+145 -148
View File
@@ -128,6 +128,7 @@ BULLETBELTPACK src/Dodge/Data/Item/Combine.hs 113;" C
BULLETMOD src/Dodge/Data/Item/Combine.hs 24;" C
BULLETSYNTHESIZER src/Dodge/Data/Item/Combine.hs 80;" C
BURSTRIFLE src/Dodge/Data/Item/Combine.hs 142;" C
BackdropCursor src/Dodge/Data/SelectionList.hs 29;" C
BackgroundSound src/Dodge/Data/SoundOrigin.hs 14;" C
Ball src/Dodge/Tesla/Ball.hs 1;" m
Bark src/Dodge/Data/ActionPlan.hs 40;" C
@@ -196,6 +197,7 @@ BottomEscapeMenuOption src/Dodge/Data/Universe.hs 73;" C
BounceBullet src/Dodge/Data/Bullet.hs 38;" C
Bound src/Bound.hs 1;" m
Bound_box_screen src/Dodge/Data/Config.hs 81;" C
BoundaryCursor src/Dodge/Data/SelectionList.hs 26;" C
Bounds src/Dodge/Data/Bounds.hs 12;" t
Bounds src/Dodge/Data/Bounds.hs 6;" m
Branch src/Dodge/Room/Branch.hs 4;" m
@@ -689,7 +691,7 @@ FetchItem src/Dodge/Data/Scenario.hs 11;" C
Fixated src/Dodge/Data/Creature/Perception.hs 62;" C
FixedCoordLayer src/Picture/Data.hs 28;" C
FixedRate src/Dodge/Data/Item/HeldDelay.hs 15;" C
FixedSelectionWidth src/Dodge/Data/SelectionList.hs 69;" C
FixedSelectionWidth src/Dodge/Data/SelectionList.hs 65;" C
FlIt src/Dodge/Data/FloorItem.hs 16;" C
Flame src/Dodge/Data/Flame.hs 14;" t
Flame src/Dodge/Data/Flame.hs 6;" m
@@ -921,7 +923,7 @@ IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 105;" C
InvInt src/Dodge/Data/Item/Location.hs 18;" t
Inventory src/Dodge/Inventory.hs 2;" m
InventoryChange src/Dodge/Data/World.hs 33;" C
InventoryColor src/Dodge/Item/InventoryColor.hs 2;" m
InventoryColor src/Dodge/Item/InventoryColor.hs 1;" m
InventorySound src/Dodge/Data/SoundOrigin.hs 13;" C
Investigate src/Dodge/Data/ActionPlan.hs 184;" C
Invisible src/Dodge/Data/CamouflageStatus.hs 13;" C
@@ -971,7 +973,7 @@ LBlink src/Dodge/Data/Item/HeldUse.hs 43;" C
LBoost src/Dodge/Data/Item/HeldUse.hs 45;" C
LDT src/Dodge/Data/DoubleTree.hs 39;" C
LDTBottomNode src/Dodge/Data/DoubleTree.hs 27;" C
LDTComb src/Dodge/Item/Grammar.hs 124;" t
LDTComb src/Dodge/Item/Grammar.hs 125;" t
LDTMidAboveNode src/Dodge/Data/DoubleTree.hs 25;" C
LDTMidBelowNode src/Dodge/Data/DoubleTree.hs 26;" C
LDTRootNode src/Dodge/Data/DoubleTree.hs 23;" C
@@ -1635,7 +1637,7 @@ SPRING src/Dodge/Data/Item/Combine.hs 31;" C
SPic src/ShapePicture/Data.hs 7;" t
SPic src/Dodge/Item/Draw/SPic.hs 3;" m
SQUARE src/Dodge/Data/GenParams.hs 20;" C
SSSExtra src/Dodge/Data/SelectionList.hs 47;" t
SSSExtra src/Dodge/Data/SelectionList.hs 44;" t
ST src/Dodge/Tree/Compose/Data.hs 12;" C
STEELDRUM src/Dodge/Data/Item/Combine.hs 36;" C
STOPWATCH src/Dodge/Data/Item/Combine.hs 121;" C
@@ -1649,7 +1651,7 @@ Scenario src/Dodge/Scenario.hs 1;" m
ScodeToChar src/Dodge/ScodeToChar.hs 1;" m
Scope src/Dodge/Data/Item/Scope.hs 13;" t
Scope src/Dodge/Data/Item/Scope.hs 6;" m
Scope src/Dodge/Item/Scope.hs 2;" m
Scope src/Dodge/Item/Scope.hs 1;" m
ScreenLayer src/Dodge/Data/Universe.hs 77;" t
ScreenLayer src/Dodge/Update/Input/ScreenLayer.hs 1;" m
ScreenPos src/Dodge/Data/ScreenPos.hs 9;" t
@@ -1658,7 +1660,7 @@ ScreenPos src/Dodge/ScreenPos.hs 1;" m
Scroll src/Dodge/Update/Scroll.hs 1;" m
ScrollValue src/Dodge/ScrollValue.hs 1;" m
SecretCabal src/Dodge/Data/Scenario.hs 44;" C
SectionCursor src/Dodge/Data/SelectionList.hs 51;" t
SectionCursor src/Dodge/Data/SelectionList.hs 48;" t
SeeAbove src/Dodge/Data/Wall.hs 40;" C
SeeThrough src/Dodge/Data/Wall.hs 39;" C
SelCloseObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" C
@@ -1666,17 +1668,17 @@ SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" C
SelectUse src/Dodge/SelectUse.hs 1;" m
Select_creature src/Dodge/Data/Config.hs 92;" C
SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" C
SelectionInfo src/Dodge/Data/SelectionList.hs 82;" C
SelectionItem src/Dodge/Data/SelectionList.hs 73;" t
SelectionList src/Dodge/Data/SelectionList.hs 29;" t
SelectionInfo src/Dodge/Data/SelectionList.hs 78;" C
SelectionItem src/Dodge/Data/SelectionList.hs 69;" t
SelectionList src/Dodge/Data/SelectionList.hs 31;" t
SelectionList src/Dodge/Data/SelectionList.hs 6;" m
SelectionList src/Dodge/Default/SelectionList.hs 1;" m
SelectionList src/Dodge/Inventory/SelectionList.hs 2;" m
SelectionList src/Dodge/SelectionList.hs 1;" m
SelectionSection src/Dodge/Data/SelectionList.hs 57;" t
SelectionSections src/Dodge/Data/SelectionList.hs 39;" t
SelectionSection src/Dodge/Data/SelectionList.hs 54;" t
SelectionSections src/Dodge/Data/SelectionList.hs 36;" t
SelectionSections src/Dodge/SelectionSections.hs 1;" m
SelectionWidth src/Dodge/Data/SelectionList.hs 68;" t
SelectionWidth src/Dodge/Data/SelectionList.hs 64;" t
SelfTree src/Dodge/Tree/Compose/Data.hs 12;" t
Sensor src/Dodge/Data/Machine/Sensor.hs 16;" t
Sensor src/Dodge/Data/Machine/Sensor.hs 6;" m
@@ -2018,7 +2020,7 @@ UseHeld src/Dodge/Data/Item/Use.hs 36;" C
UseHotkey src/Dodge/Data/Item/Use.hs 44;" C
UseItem src/Dodge/Data/ActionPlan.hs 37;" C
UseItem src/Dodge/Creature/Impulse/UseItem.hs 1;" m
UseMaxSelectionItemWidth src/Dodge/Data/SelectionList.hs 71;" C
UseMaxSelectionItemWidth src/Dodge/Data/SelectionList.hs 67;" C
UseMvTargetPos src/Dodge/Data/ActionPlan.hs 163;" C
UseScope src/Dodge/Data/Item/Use.hs 60;" C
UseSelf src/Dodge/Data/ActionPlan.hs 157;" C
@@ -2032,7 +2034,7 @@ VBO src/Shader/Data.hs 81;" t
VF src/Polyhedra/Data.hs 21;" t
VIOLET src/Color/Data.hs 22;" C
VOLLEYGUN src/Dodge/Data/Item/Combine.hs 139;" C
VariableSelectionWidth src/Dodge/Data/SelectionList.hs 70;" C
VariableSelectionWidth src/Dodge/Data/SelectionList.hs 66;" C
Vector src/Geometry/Vector.hs 3;" m
Vector3D src/Geometry/Vector3D.hs 2;" m
VertexAttribute src/Shader/Data.hs 68;" t
@@ -2389,7 +2391,7 @@ _ctPos src/Dodge/Data/Creature.hs 85;" f
_ctType src/Dodge/Data/Creature.hs 86;" f
_currentArc src/Dodge/Data/Item/Params.hs 22;" f
_currentFoot src/Dodge/Data/Creature/Stance.hs 23;" f
_cursSides src/Dodge/Data/SelectionList.hs 26;" f
_cursSides src/Dodge/Data/SelectionList.hs 27;" f
_cwGen src/Dodge/Data/CWorld.hs 27;" f
_cwTiles src/Dodge/Data/CWorld.hs 30;" f
_cwgGameRooms src/Dodge/Data/CWorld.hs 38;" f
@@ -2988,9 +2990,9 @@ _scrollSmoothing src/Dodge/Data/World.hs 63;" f
_scrollSmoothing src/Dodge/Data/World.hs 69;" f
_scrollTestFloat src/Dodge/Data/Input.hs 31;" f
_scrollTestInt src/Dodge/Data/Input.hs 32;" f
_scurColor src/Dodge/Data/SelectionList.hs 54;" f
_scurPos src/Dodge/Data/SelectionList.hs 52;" f
_scurSize src/Dodge/Data/SelectionList.hs 53;" f
_scurColor src/Dodge/Data/SelectionList.hs 51;" f
_scurPos src/Dodge/Data/SelectionList.hs 49;" f
_scurSize src/Dodge/Data/SelectionList.hs 50;" f
_seenLocations src/Dodge/Data/LWorld.hs 139;" f
_seenWalls src/Dodge/Data/CWorld.hs 29;" f
_selLocation src/Dodge/Data/LWorld.hs 140;" f
@@ -3016,17 +3018,17 @@ _shapeHalfSize src/Shape/Data.hs 18;" f
_shapeShader src/Data/Preload/Render.hs 25;" f
_shockwaves src/Dodge/Data/LWorld.hs 114;" f
_shrinkGunStatus src/Dodge/Data/Item/Params.hs 18;" f
_siColor src/Dodge/Data/SelectionList.hs 78;" f
_siColor src/Dodge/Data/SelectionList.hs 86;" f
_siHeight src/Dodge/Data/SelectionList.hs 76;" f
_siHeight src/Dodge/Data/SelectionList.hs 84;" f
_siIsSelectable src/Dodge/Data/SelectionList.hs 77;" f
_siIsSelectable src/Dodge/Data/SelectionList.hs 85;" f
_siOffX src/Dodge/Data/SelectionList.hs 79;" f
_siOffX src/Dodge/Data/SelectionList.hs 87;" f
_siPayload src/Dodge/Data/SelectionList.hs 80;" f
_siPictures src/Dodge/Data/SelectionList.hs 75;" f
_siPictures src/Dodge/Data/SelectionList.hs 83;" f
_siColor src/Dodge/Data/SelectionList.hs 74;" f
_siColor src/Dodge/Data/SelectionList.hs 82;" f
_siHeight src/Dodge/Data/SelectionList.hs 72;" f
_siHeight src/Dodge/Data/SelectionList.hs 80;" f
_siIsSelectable src/Dodge/Data/SelectionList.hs 73;" f
_siIsSelectable src/Dodge/Data/SelectionList.hs 81;" f
_siOffX src/Dodge/Data/SelectionList.hs 75;" f
_siOffX src/Dodge/Data/SelectionList.hs 83;" f
_siPayload src/Dodge/Data/SelectionList.hs 76;" f
_siPictures src/Dodge/Data/SelectionList.hs 71;" f
_siPictures src/Dodge/Data/SelectionList.hs 79;" f
_sideEffect src/Loop/Data.hs 13;" f
_sideImpulses src/Dodge/Data/ActionPlan.hs 170;" f
_sidePush src/Dodge/Data/Item/Use.hs 87;" f
@@ -3041,11 +3043,8 @@ _skWidth src/Dodge/Data/Spark.hs 20;" f
_skinHead src/Dodge/Data/Creature/Misc.hs 66;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 68;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 67;" f
_slItems src/Dodge/Data/SelectionList.hs 30;" f
_slRegex src/Dodge/Data/SelectionList.hs 32;" f
_slRegexInput src/Dodge/Data/SelectionList.hs 33;" f
_slRegexList src/Dodge/Data/SelectionList.hs 34;" f
_slSelPos src/Dodge/Data/SelectionList.hs 31;" f
_slItems src/Dodge/Data/SelectionList.hs 32;" f
_slSelPos src/Dodge/Data/SelectionList.hs 33;" f
_smoothScrollAmount src/Dodge/Data/Input.hs 25;" f
_soundAngDist src/Sound/Data.hs 53;" f
_soundChannel src/Sound/Data.hs 52;" f
@@ -3061,16 +3060,16 @@ _spPixelOff src/Dodge/Data/ScreenPos.hs 11;" f
_spScreenOff src/Dodge/Data/ScreenPos.hs 10;" f
_sparks src/Dodge/Data/LWorld.hs 110;" f
_spawnEBT src/Dodge/Data/Bullet.hs 43;" f
_ssCursor src/Dodge/Data/SelectionList.hs 59;" f
_ssDescriptor src/Dodge/Data/SelectionList.hs 64;" f
_ssIndent src/Dodge/Data/SelectionList.hs 63;" f
_ssItems src/Dodge/Data/SelectionList.hs 58;" f
_ssMinSize src/Dodge/Data/SelectionList.hs 60;" f
_ssOffset src/Dodge/Data/SelectionList.hs 61;" f
_ssShownItems src/Dodge/Data/SelectionList.hs 62;" f
_sssExtra src/Dodge/Data/SelectionList.hs 41;" f
_sssFilters src/Dodge/Data/SelectionList.hs 48;" f
_sssSections src/Dodge/Data/SelectionList.hs 40;" f
_ssCursor src/Dodge/Data/SelectionList.hs 56;" f
_ssDescriptor src/Dodge/Data/SelectionList.hs 61;" f
_ssIndent src/Dodge/Data/SelectionList.hs 60;" f
_ssItems src/Dodge/Data/SelectionList.hs 55;" f
_ssMinSize src/Dodge/Data/SelectionList.hs 57;" f
_ssOffset src/Dodge/Data/SelectionList.hs 58;" f
_ssShownItems src/Dodge/Data/SelectionList.hs 59;" f
_sssExtra src/Dodge/Data/SelectionList.hs 38;" f
_sssFilters src/Dodge/Data/SelectionList.hs 45;" f
_sssSections src/Dodge/Data/SelectionList.hs 37;" f
_strength src/Dodge/Data/Creature/Misc.hs 21;" f
_strideAmount src/Dodge/Data/Creature/Stance.hs 22;" f
_strideLength src/Dodge/Data/Creature/Stance.hs 16;" f
@@ -3343,7 +3342,7 @@ airlockDoubleDoor src/Dodge/Room/Airlock.hs 54;" f
airlockSimple src/Dodge/Room/Airlock.hs 66;" f
airlockZ src/Dodge/Room/Airlock.hs 91;" f
allHotkeys src/Dodge/Creature/YourControl.hs 51;" f
allInvLocs src/Dodge/Item/Grammar.hs 213;" f
allInvLocs src/Dodge/Item/Grammar.hs 214;" f
allVisibleWalls src/Dodge/Base/Collide.hs 131;" f
alongSegBy src/Geometry.hs 43;" f
ammoMagSPic src/Dodge/Item/Draw/SPic.hs 45;" f
@@ -3416,7 +3415,7 @@ 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 217;" f
augmentedHUD src/Dodge/Item/Scope.hs 49;" f
augmentedHUD src/Dodge/Item/Scope.hs 47;" f
autoAmr src/Dodge/Item/Held/Rod.hs 51;" f
autoBS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 350;" f
autoCrit src/Dodge/Creature/AutoCrit.hs 13;" f
@@ -3526,10 +3525,10 @@ bufferShaderLayers src/Shader/Bind.hs 36;" f
bulletBeltBracer src/Dodge/Item/Equipment.hs 80;" f
bulletBeltPack src/Dodge/Item/Equipment.hs 72;" f
bulletCombinations src/Dodge/Combine/Graph.hs 34;" f
bulletModule src/Dodge/Item/Scope.hs 37;" f
bulletPayloadModule src/Dodge/Item/Scope.hs 46;" f
bulletModule src/Dodge/Item/Scope.hs 35;" f
bulletPayloadModule src/Dodge/Item/Scope.hs 44;" f
bulletSynthesizer src/Dodge/Item/Ammo.hs 124;" f
bulletTargetingModule src/Dodge/Item/Scope.hs 43;" f
bulletTargetingModule src/Dodge/Item/Scope.hs 41;" f
bulletWeapons src/Dodge/Combine/Combinations.hs 246;" f
burstRifle src/Dodge/Item/Held/Cane.hs 74;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 502;" f
@@ -3575,7 +3574,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 146;" f
chooseCursorBorders src/Dodge/Render/List.hs 138;" 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
@@ -3605,16 +3604,16 @@ cleatOnward src/Dodge/Cleat.hs 24;" f
cleatSide src/Dodge/Cleat.hs 27;" f
click1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 414;" f
clickDetector src/Dodge/Item/Held/Utility.hs 36;" f
clickGetCreature src/Dodge/Debug.hs 82;" f
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
closeObjEq src/Dodge/Inventory/CloseObject.hs 15;" f
closeObjPos src/Dodge/Inventory/CloseObject.hs 10;" f
closeObjectInfo src/Dodge/Render/HUD.hs 162;" f
closeObjectInfo src/Dodge/Render/HUD.hs 166;" f
closeObjectToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f
closeObjectToTextPictures src/Dodge/Inventory/SelectionList.hs 69;" f
closestCreatureID src/Dodge/Debug.hs 91;" f
closestCreatureID src/Dodge/Debug.hs 92;" f
closestPointOnLine src/Geometry/Intersect.hs 251;" f
closestPointOnLineParam src/Geometry/Intersect.hs 267;" f
closestPointOnSeg src/Geometry/Intersect.hs 282;" f
@@ -3637,7 +3636,7 @@ collideCircWalls src/Dodge/Base/Collide.hs 149;" f
collidePoint src/Dodge/Base/Collide.hs 48;" f
collidePointTestFilter src/Dodge/Base/Collide.hs 93;" f
collidePointWallsFilter src/Dodge/Base/Collide.hs 107;" f
collisionDebugItem src/Dodge/Debug.hs 30;" f
collisionDebugItem src/Dodge/Debug.hs 31;" f
color src/Picture/Base.hs 108;" f
colorLamp src/Dodge/Creature/Lamp.hs 10;" f
colorSH src/Shape.hs 235;" f
@@ -3647,7 +3646,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 251;" f
combineInventoryExtra src/Dodge/Render/HUD.hs 270;" f
combineItemListYouX src/Dodge/Combine.hs 33;" f
combineList src/Dodge/Combine.hs 20;" f
combineRooms src/Dodge/Room/Procedural.hs 152;" f
@@ -3778,7 +3777,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 201;" f
dShadCol src/Dodge/Render/List.hs 195;" f
damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f
damToExpBarrel src/Dodge/Barreloid.hs 57;" f
damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f
@@ -3814,14 +3813,14 @@ deadUpperBody src/Dodge/Creature/Picture.hs 126;" f
debrisSize src/Dodge/Block/Debris.hs 111;" f
debugDraw src/Dodge/Debug/Picture.hs 124;" f
debugDraw' src/Dodge/Debug/Picture.hs 135;" f
debugEvent src/Dodge/Debug.hs 24;" f
debugEvents src/Dodge/Debug.hs 17;" f
debugList src/Dodge/Debug.hs 78;" f
debugEvent src/Dodge/Debug.hs 25;" f
debugEvents src/Dodge/Debug.hs 18;" f
debugList src/Dodge/Debug.hs 79;" f
debugMenu src/Dodge/Menu.hs 116;" f
debugMenuOptions src/Dodge/Menu.hs 119;" f
debugOn src/Dodge/Data/Config.hs 149;" f
debugSelectCreatureList src/Dodge/Debug.hs 61;" f
debugSelectCreatureMessage src/Dodge/Debug.hs 52;" f
debugSelectCreatureList src/Dodge/Debug.hs 62;" f
debugSelectCreatureMessage src/Dodge/Debug.hs 53;" f
decTimMvVel src/Dodge/Projectile/Update.hs 142;" f
decodedtmap src/Dodge/Terminal.hs 203;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 60;" f
@@ -3898,7 +3897,7 @@ defaultLWorld src/Dodge/Default/World.hs 92;" f
defaultLeftItem src/Dodge/Default/Item.hs 38;" f
defaultLeftLoadable src/Dodge/Default/Item/Use/Consumption.hs 8;" f
defaultLeftUse src/Dodge/Default/Item/Use.hs 14;" f
defaultListDisplayParams src/Dodge/ListDisplayParams.hs 18;" f
defaultListDisplayParams src/Dodge/ListDisplayParams.hs 19;" f
defaultMachine src/Dodge/Default.hs 33;" f
defaultMachineWall src/Dodge/Default/Wall.hs 48;" f
defaultPP src/Dodge/Default.hs 66;" f
@@ -3944,7 +3943,7 @@ detV src/Geometry/Vector.hs 93;" f
detectorColor src/Dodge/Item/Draw/SPic.hs 391;" f
detectorEffect src/Dodge/Item/Weapon/Radar.hs 20;" f
detectorInfo src/Dodge/Item/Info.hs 190;" f
determineInvSelCursorWidth src/Dodge/ListDisplayParams.hs 58;" f
determineInvSelCursorWidth src/Dodge/ListDisplayParams.hs 56;" f
determineProjectileTracking src/Dodge/HeldUse.hs 485;" f
diagonalLinesRect src/Dodge/Room/Foreground.hs 52;" f
diffAngles src/Geometry.hs 196;" f
@@ -3961,7 +3960,7 @@ displayConfig src/Dodge/Menu.hs 196;" f
displayControls src/Dodge/Menu.hs 206;" f
displayFrameTicks src/Dodge/Render/Picture.hs 33;" f
displayFreeSlots src/Dodge/DisplayInventory.hs 148;" f
displayTerminal src/Dodge/Render/HUD.hs 283;" f
displayTerminal src/Dodge/Render/HUD.hs 307;" f
displayTerminalLineString src/Dodge/Update.hs 422;" f
dist src/Geometry/Vector.hs 179;" f
dist3 src/Geometry/Vector3D.hs 101;" f
@@ -4072,7 +4071,7 @@ drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f
drawCarte src/Dodge/Render/HUD/Carte.hs 14;" f
drawCircFlare src/Dodge/Flare.hs 25;" f
drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f
drawCombineInventory src/Dodge/Render/HUD.hs 123;" f
drawCombineInventory src/Dodge/Render/HUD.hs 126;" f
drawConcurrentMessage src/Dodge/Render/Picture.hs 58;" f
drawCorpse src/Dodge/Corpse/Draw.hs 6;" f
drawCrInfo src/Dodge/Debug/Picture.hs 342;" f
@@ -4080,16 +4079,16 @@ drawCreature src/Dodge/Render/ShapePicture.hs 82;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 165;" f
drawCross src/Dodge/Render/Label.hs 24;" f
drawCrossCol src/Dodge/Render/Label.hs 21;" f
drawCursorAt src/Dodge/Render/List.hs 59;" f
drawCursorAt src/Dodge/Render/List.hs 47;" f
drawDDATest src/Dodge/Debug/Picture.hs 256;" f
drawDIMouseOver src/Dodge/Render/HUD.hs 79;" f
drawDISelections src/Dodge/Render/HUD.hs 97;" f
drawDISelections' src/Dodge/Render/HUD.hs 106;" f
drawDIMouseOver src/Dodge/Render/HUD.hs 80;" f
drawDISelections src/Dodge/Render/HUD.hs 100;" f
drawDISelections' src/Dodge/Render/HUD.hs 109;" f
drawDoorPaths src/Dodge/Debug/Picture.hs 217;" f
drawDoubleLampCover src/Dodge/Prop/Draw.hs 81;" f
drawEnergyBall src/Dodge/EnergyBall/Draw.hs 8;" f
drawEquipment src/Dodge/Creature/Picture.hs 140;" f
drawExamineInventory src/Dodge/Render/HUD.hs 132;" f
drawExamineInventory src/Dodge/Render/HUD.hs 136;" f
drawFarWallDetect src/Dodge/Debug/Picture.hs 234;" f
drawFlame src/Dodge/Flame/Draw.hs 7;" f
drawFlamelet src/Dodge/EnergyBall/Draw.hs 23;" f
@@ -4108,10 +4107,10 @@ 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 195;" f
drawListElement src/Dodge/Render/List.hs 175;" f
drawListYgapScaleYoff src/Dodge/Render/List.hs 85;" f
drawListYoff src/Dodge/Render/List.hs 82;" f
drawList src/Dodge/Render/List.hs 189;" f
drawListElement src/Dodge/Render/List.hs 169;" f
drawListYgapScaleYoff src/Dodge/Render/List.hs 75;" f
drawListYoff src/Dodge/Render/List.hs 72;" f
drawMachine src/Dodge/Machine/Draw.hs 14;" f
drawMapWall src/Dodge/Render/HUD/Carte.hs 33;" f
drawMenuOrHUD src/Dodge/Render/Picture.hs 53;" f
@@ -4130,12 +4129,11 @@ 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 180;" f
drawRBOptions src/Dodge/Render/HUD.hs 184;" f
drawRadarSweep src/Dodge/RadarSweep/Draw.hs 7;" f
drawRemoteShell src/Dodge/Projectile/Draw.hs 30;" f
drawSSCursor src/Dodge/SelectionSections/Draw.hs 26;" f
drawSelectionCursor src/Dodge/Render/List.hs 41;" f
drawSelectionList src/Dodge/Render/List.hs 29;" f
drawSelectionList src/Dodge/Render/List.hs 28;" f
drawSelectionSections src/Dodge/SelectionSections/Draw.hs 13;" f
drawSensor src/Dodge/Machine/Draw.hs 21;" f
drawShader src/Shader.hs 27;" f
@@ -4145,7 +4143,7 @@ drawShell src/Dodge/Projectile/Draw.hs 20;" f
drawShockwave src/Dodge/Shockwave/Draw.hs 7;" f
drawSpark src/Dodge/Spark/Draw.hs 6;" f
drawStaticBall src/Dodge/EnergyBall/Draw.hs 14;" f
drawSubInventory src/Dodge/Render/HUD.hs 115;" f
drawSubInventory src/Dodge/Render/HUD.hs 118;" f
drawSweep src/Dodge/Render/ShapePicture.hs 63;" f
drawSwitch src/Dodge/Button/Draw.hs 15;" f
drawSwitchWire src/Dodge/LevelGen/Switch.hs 28;" f
@@ -4197,7 +4195,7 @@ encircleP src/Dodge/Creature/Boid.hs 27;" f
enterCombineInv src/Dodge/DisplayInventory.hs 243;" f
eqConstr src/SameConstr.hs 17;" f
eqPosText src/Dodge/Equipment/Text.hs 6;" f
equipAllocString src/Dodge/Render/HUD.hs 223;" f
equipAllocString src/Dodge/Render/HUD.hs 242;" f
equipInfo src/Dodge/Item/Info.hs 103;" f
equipItemSPic src/Dodge/Item/Draw/SPic.hs 65;" f
equipPosition src/Dodge/Item/Draw.hs 29;" f
@@ -4289,7 +4287,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 167;" f
floorItemPickupInfo src/Dodge/Render/HUD.hs 171;" f
floorItemSPic src/Dodge/Render/ShapePicture.hs 165;" f
floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 398;" f
@@ -4350,7 +4348,7 @@ geqConstr src/SameConstr.hs 21;" f
getAmmoLinks src/Dodge/Item/Grammar.hs 73;" f
getArguments src/Dodge/Update/Scroll.hs 154;" f
getArguments' src/Dodge/Update/Scroll.hs 142;" f
getAvailableListLines src/Dodge/SelectionList.hs 11;" f
getAvailableListLines src/Dodge/SelectionList.hs 10;" f
getBulletTrajectory src/Dodge/HeldUse.hs 347;" f
getBulletType src/Dodge/HeldUse.hs 321;" f
getCommands src/Dodge/Terminal.hs 115;" f
@@ -4362,18 +4360,17 @@ getDamageCoding src/Dodge/Terminal.hs 175;" f
getDistortions src/Dodge/Render.hs 382;" f
getEquipmentAllocation src/Dodge/Inventory/RBList.hs 47;" f
getItem src/Dodge/Item/Location.hs 15;" f
getLDPWidth src/Dodge/Render/List.hs 77;" f
getLDPWidth src/Dodge/Render/List.hs 67;" f
getLaserColor src/Dodge/HeldUse.hs 196;" f
getLaserDamage src/Dodge/HeldUse.hs 193;" f
getLaserPhaseV src/Dodge/HeldUse.hs 190;" f
getLinksOfType src/Dodge/RoomLink.hs 39;" f
getMouseInvSel src/Dodge/Render/HUD.hs 86;" f
getMouseInvSel' src/Dodge/Render/HUD.hs 91;" f
getMouseInvSel src/Dodge/Render/HUD.hs 89;" f
getMouseInvSel' src/Dodge/Render/HUD.hs 94;" f
getNodePos src/Dodge/Path.hs 31;" f
getPretty src/AesonHelp.hs 7;" f
getPrettyShort src/AesonHelp.hs 10;" f
getSensor src/Dodge/Terminal.hs 187;" f
getShownItems src/Dodge/SelectionList.hs 21;" f
getSmoothScrollValue src/Dodge/SmoothScroll.hs 17;" f
getSplitString src/Dodge/Debug/Terminal.hs 123;" f
getTiles src/Dodge/Layout.hs 208;" f
@@ -4475,7 +4472,7 @@ hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 382;" f
holdForm src/Dodge/Creature/Boid.hs 136;" f
holsterWeapon src/Dodge/Creature/Volition.hs 14;" f
homingDrawType src/Dodge/Projectile/Create.hs 12;" f
homingModule src/Dodge/Item/Scope.hs 34;" f
homingModule src/Dodge/Item/Scope.hs 32;" f
horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 54;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 39;" f
@@ -4554,29 +4551,29 @@ intersectSegsSeg src/Geometry/Intersect.hs 232;" f
intervalList src/Geometry.hs 315;" f
interweave src/Justify.hs 17;" f
intsToPos src/Dodge/Room/Modify/Girder.hs 160;" f
invAdj src/Dodge/Item/Grammar.hs 181;" f
invCursorParams src/Dodge/ListDisplayParams.hs 40;" f
invAdj src/Dodge/Item/Grammar.hs 182;" f
invCursorParams src/Dodge/ListDisplayParams.hs 38;" f
invDimColor src/Dodge/DisplayInventory.hs 142;" f
invDisplayParams src/Dodge/ListDisplayParams.hs 28;" f
invHead src/Dodge/Render/HUD.hs 319;" f
invLDT src/Dodge/Item/Grammar.hs 165;" f
invRootMap src/Dodge/Item/Grammar.hs 174;" f
invRootTrees src/Dodge/Item/Grammar.hs 206;" f
invDisplayParams src/Dodge/ListDisplayParams.hs 32;" f
invHead src/Dodge/Render/HUD.hs 343;" f
invLDT src/Dodge/Item/Grammar.hs 166;" f
invRootMap src/Dodge/Item/Grammar.hs 175;" f
invRootTrees src/Dodge/Item/Grammar.hs 207;" f
invSelectionItem src/Dodge/Inventory/SelectionList.hs 22;" f
invSelectionItem' src/Dodge/Inventory/SelectionList.hs 19;" f
invShiftPointBy src/Dodge/ShiftPoint.hs 8;" f
invSideEff src/Dodge/Creature/State.hs 162;" f
invSize src/Dodge/Inventory/CheckSlots.hs 41;" f
invTrees src/Dodge/Item/Grammar.hs 194;" f
invTrees' src/Dodge/Item/Grammar.hs 198;" f
inventoryExtra src/Dodge/Render/HUD.hs 232;" f
inventoryExtraH src/Dodge/Render/HUD.hs 243;" f
invTrees src/Dodge/Item/Grammar.hs 195;" f
invTrees' src/Dodge/Item/Grammar.hs 199;" f
inventoryExtra src/Dodge/Render/HUD.hs 251;" f
inventoryExtraH src/Dodge/Render/HUD.hs 262;" f
inventoryX src/Dodge/Creature.hs 115;" f
inverseSelBoundaryDown src/Dodge/SelectionSections.hs 210;" f
inverseSelBoundaryUp src/Dodge/SelectionSections.hs 197;" f
inverseSelNumPos src/Dodge/SelectionSections.hs 188;" f
inverseSelSecYint src/Dodge/SelectionSections.hs 158;" f
inverseSelSecYintXPosCheck src/Dodge/SelectionSections.hs 169;" f
inverseSelBoundaryDown src/Dodge/SelectionSections.hs 211;" f
inverseSelBoundaryUp src/Dodge/SelectionSections.hs 198;" f
inverseSelNumPos src/Dodge/SelectionSections.hs 189;" f
inverseSelSecYint src/Dodge/SelectionSections.hs 159;" f
inverseSelSecYintXPosCheck src/Dodge/SelectionSections.hs 170;" f
inverseShockwaveAt src/Dodge/WorldEvent/Shockwave.hs 43;" f
invertEncircleDistP src/Dodge/Creature/Boid.hs 13;" f
invertIntMap src/IntMapHelp.hs 101;" f
@@ -4645,7 +4642,7 @@ itmSpaceInfo src/Dodge/Item/Info.hs 17;" f
itmUsageInfo src/Dodge/Item/Info.hs 196;" f
jShape src/Dodge/Placement/Instance/LightSource.hs 86;" f
jaggedShape src/Dodge/Block/Debris.hs 191;" f
joinItemsInList src/Dodge/Item/Grammar.hs 156;" f
joinItemsInList src/Dodge/Item/Grammar.hs 157;" f
jps0' src/Dodge/LevelGen/PlacementHelper.hs 60;" f
jps0PushPS src/Dodge/LevelGen/PlacementHelper.hs 63;" f
jsps src/Dodge/LevelGen/PlacementHelper.hs 36;" f
@@ -4698,10 +4695,10 @@ ldtToIndentList src/Dodge/DoubleTree.hs 146;" f
ldtToLoc src/Dodge/DoubleTree.hs 187;" f
left src/DoubleStack.hs 16;" f
leftInfo src/Dodge/Item/Info.hs 93;" f
leftIsParentCombine src/Dodge/Item/Grammar.hs 126;" f
leftIsParentCombine src/Dodge/Item/Grammar.hs 127;" f
leftItemSPic src/Dodge/Item/Draw/SPic.hs 97;" f
leftPad src/Padding.hs 14;" f
leftRightCombine src/Dodge/Item/Grammar.hs 140;" f
leftRightCombine src/Dodge/Item/Grammar.hs 141;" f
legsSPic src/Dodge/Item/Draw/SPic.hs 415;" f
liShape src/Dodge/Placement/Instance/LightSource.hs 99;" f
light src/Color.hs 104;" f
@@ -4726,15 +4723,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 125;" f
listCursorChooseBorderScale src/Dodge/Render/List.hs 117;" f
listGuard src/Dodge/Creature/ReaderUpdate.hs 188;" f
listSelectionColorPicture src/Dodge/DisplayInventory.hs 235;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
llleft src/Dodge/Item/Grammar.hs 105;" f
llright src/Dodge/Item/Grammar.hs 108;" f
llright src/Dodge/Item/Grammar.hs 109;" f
lmt src/MatrixHelper.hs 43;" f
lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 308;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 332;" f
lnkPosDir src/Dodge/RoomLink.hs 97;" f
loadDodgeConfig src/Dodge/Config/Load.hs 9;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 21;" f
@@ -4824,7 +4821,7 @@ makePathBetween src/Dodge/Path.hs 35;" f
makePathBetweenPs src/Dodge/Path.hs 54;" f
makePoisonExplosionAt src/Dodge/WorldEvent/Explosion.hs 26;" f
makeRect src/Grid.hs 82;" f
makeSelectionListPictures src/Dodge/Render/List.hs 53;" f
makeSelectionListPictures src/Dodge/Render/List.hs 42;" f
makeShaderEBO src/Shader/Compile.hs 53;" f
makeShaderProgram src/Shader/Compile.hs 241;" f
makeShaderUsingVAO src/Shader/Compile.hs 146;" f
@@ -5036,7 +5033,7 @@ onRemoveWristShield src/Dodge/Euse.hs 92;" f
onXY src/Geometry/Vector3D.hs 130;" f
oneH src/Dodge/Creature/Test.hs 97;" f
openCursorAt src/Dodge/Render/HUD/Carte.hs 54;" f
optionListDisplayParams src/Dodge/ListDisplayParams.hs 71;" f
optionListDisplayParams src/Dodge/ListDisplayParams.hs 69;" f
optionMenu src/Dodge/Menu.hs 105;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 50;" f
optionScreenUpdate src/Dodge/Update/Input/ScreenLayer.hs 39;" f
@@ -5235,7 +5232,7 @@ polysToPic src/Polyhedra.hs 130;" f
popScreen src/Dodge/Menu/PushPop.hs 6;" f
posEventEffect src/Dodge/PosEvent.hs 16;" f
posRms src/Dodge/Tree/Shift.hs 44;" f
posSelSecYint src/Dodge/SelectionSections.hs 139;" f
posSelSecYint src/Dodge/SelectionSections.hs 140;" f
positionRoomsFromTree src/Dodge/Tree/Shift.hs 35;" f
postGenerationProcessing src/Dodge/LevelGen.hs 33;" f
postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 11;" f
@@ -5383,7 +5380,7 @@ reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 428;" f
reloadLevelStart src/Dodge/Save.hs 71;" f
reloadS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 426;" f
rememberSounds src/Dodge/Creature/Perception.hs 177;" f
remoteScreen src/Dodge/Item/Scope.hs 52;" f
remoteScreen src/Dodge/Item/Scope.hs 50;" f
remoteShellShape src/Dodge/Projectile/Draw.hs 42;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 308;" f
removeDot src/ShortShow.hs 30;" f
@@ -5393,11 +5390,11 @@ removeShieldWall src/Dodge/Euse.hs 152;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 26;" f
renderFlatLighting src/Render.hs 104;" f
renderInfoListAt src/Dodge/Render/InfoBox.hs 15;" f
renderInfoListsAt src/Dodge/Render/InfoBox.hs 24;" f
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 180;" f
renderListAt src/Dodge/Render/List.hs 174;" f
renderShadows src/Render.hs 117;" f
replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 160;" f
replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f
@@ -5429,7 +5426,7 @@ rezText' src/Dodge/Story.hs 17;" f
rhombus src/Polyhedra.hs 72;" f
rifle src/Dodge/Item/Held/Cane.hs 51;" f
right src/DoubleStack.hs 16;" f
rightIsParentCombine src/Dodge/Item/Grammar.hs 133;" f
rightIsParentCombine src/Dodge/Item/Grammar.hs 134;" f
rightPad src/Padding.hs 22;" f
rightPadNoSquash src/Padding.hs 26;" f
rlPosDir src/Dodge/RoomLink.hs 94;" f
@@ -5530,7 +5527,7 @@ screenToWorldPos src/Dodge/Base/Coordinate.hs 53;" f
scrollAugInvSel src/Dodge/Inventory.hs 225;" f
scrollCommandStrings src/Dodge/Update/Scroll.hs 137;" f
scrollCommands src/Dodge/Update/Scroll.hs 134;" f
scrollDebugInfoInt src/Dodge/Debug.hs 46;" f
scrollDebugInfoInt src/Dodge/Debug.hs 47;" f
scrollRBOption src/Dodge/Update/Scroll.hs 111;" f
scrollSelectionSections src/Dodge/SelectionSections.hs 27;" f
scrollTimeBack src/Dodge/Update.hs 200;" f
@@ -5545,18 +5542,18 @@ seagullCryS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 418;" f
seagullWhistle1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 360;" f
seagullWhistleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 512;" f
searchIfDamaged src/Dodge/Creature/ReaderUpdate.hs 203;" f
secondColumnParams src/Dodge/ListDisplayParams.hs 46;" f
secondColumnParams src/Dodge/ListDisplayParams.hs 45;" f
seedStartMenu src/Dodge/Menu.hs 79;" f
seedStartOptions src/Dodge/Menu.hs 82;" f
segOnCirc src/Geometry.hs 116;" f
selNumPos src/Dodge/Render/HUD.hs 379;" f
selNumPosCardinal src/Dodge/Render/HUD.hs 402;" f
selSecDrawCursor src/Dodge/Render/List.hs 116;" f
selSecDrawCursorAt src/Dodge/Render/List.hs 94;" f
selSecSelCol src/Dodge/Render/HUD.hs 425;" f
selSecSelSize src/Dodge/SelectionSections.hs 135;" f
selSecYint src/Dodge/SelectionSections.hs 144;" f
selectCreatureDebugItem src/Dodge/Debug.hs 38;" f
selNumPos src/Dodge/Render/HUD.hs 403;" f
selNumPosCardinal src/Dodge/Render/HUD.hs 426;" f
selSecDrawCursor src/Dodge/Render/List.hs 106;" f
selSecDrawCursorAt src/Dodge/Render/List.hs 84;" f
selSecSelCol src/Dodge/Render/HUD.hs 449;" f
selSecSelSize src/Dodge/SelectionSections.hs 136;" f
selSecYint src/Dodge/SelectionSections.hs 145;" f
selectCreatureDebugItem src/Dodge/Debug.hs 39;" f
selectUse src/Dodge/SelectUse.hs 11;" f
selectedCloseObject src/Dodge/Inventory.hs 238;" f
sensAboveDoor src/Dodge/Room/SensorDoor.hs 63;" f
@@ -5780,22 +5777,22 @@ square src/Geometry/Polygon.hs 46;" f
squareDecoration src/Dodge/Placement/TopDecoration.hs 41;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 110;" f
squashNormalizeV src/Geometry/Vector.hs 146;" f
ssLookupDown src/Dodge/SelectionSections.hs 85;" f
ssLookupGE' src/Dodge/SelectionSections.hs 128;" f
ssLookupGT src/Dodge/SelectionSections.hs 115;" f
ssLookupGT' src/Dodge/SelectionSections.hs 121;" f
ssLookupLE' src/Dodge/SelectionSections.hs 103;" f
ssLookupLT src/Dodge/SelectionSections.hs 90;" f
ssLookupLT' src/Dodge/SelectionSections.hs 96;" f
ssLookupMax src/Dodge/SelectionSections.hs 75;" f
ssLookupMin src/Dodge/SelectionSections.hs 110;" f
ssLookupUp src/Dodge/SelectionSections.hs 80;" f
ssScrollMinOnFail src/Dodge/SelectionSections.hs 51;" f
ssScrollUsing src/Dodge/SelectionSections.hs 39;" f
ssSetCursor src/Dodge/SelectionSections.hs 66;" f
ssLookupDown src/Dodge/SelectionSections.hs 86;" f
ssLookupGE' src/Dodge/SelectionSections.hs 129;" f
ssLookupGT src/Dodge/SelectionSections.hs 116;" f
ssLookupGT' src/Dodge/SelectionSections.hs 122;" f
ssLookupLE' src/Dodge/SelectionSections.hs 104;" f
ssLookupLT src/Dodge/SelectionSections.hs 91;" f
ssLookupLT' src/Dodge/SelectionSections.hs 97;" f
ssLookupMax src/Dodge/SelectionSections.hs 76;" f
ssLookupMin src/Dodge/SelectionSections.hs 111;" f
ssLookupUp src/Dodge/SelectionSections.hs 81;" f
ssScrollMinOnFail src/Dodge/SelectionSections.hs 52;" f
ssScrollUsing src/Dodge/SelectionSections.hs 42;" f
ssSetCursor src/Dodge/SelectionSections.hs 67;" f
ssfold src/FoldableHelp.hs 105;" f
stackPicturesAt src/Dodge/Render/List.hs 88;" f
stackPicturesAtOff src/Dodge/Render/List.hs 91;" f
stackPicturesAt src/Dodge/Render/List.hs 78;" f
stackPicturesAtOff src/Dodge/Render/List.hs 81;" f
stackText src/Picture/Base.hs 188;" f
stackedInventory src/Dodge/Creature.hs 282;" f
startCr src/Dodge/Creature.hs 91;" f
@@ -5827,7 +5824,7 @@ strideRot src/Dodge/Item/HeldOffset.hs 64;" f
stringToList src/Picture/Base.hs 313;" f
stringToListGrad src/Picture/Text.hs 12;" f
stripZ src/Geometry/Vector3D.hs 97;" f
subInvX src/Dodge/ListDisplayParams.hs 52;" f
subInvX src/Dodge/ListDisplayParams.hs 50;" f
subMap src/TreeHelp.hs 118;" f
subZipWith src/Dodge/Placement/Instance/Wall.hs 115;" f
swapInOutLinks src/Dodge/RoomLink.hs 80;" f
@@ -5864,7 +5861,7 @@ targetYouCognizant src/Dodge/Creature/ChooseTarget.hs 13;" f
targetYouLOS src/Dodge/Creature/ChooseTarget.hs 7;" f
targetYouWhenCognizant src/Dodge/Creature/ReaderUpdate.hs 194;" f
targetYouWhenCognizant src/Dodge/Creature/SetTarget.hs 9;" f
targetingScope src/Dodge/Item/Scope.hs 23;" f
targetingScope src/Dodge/Item/Scope.hs 22;" f
telRoomLev src/Dodge/Room/Teleport.hs 14;" f
teleS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 378;" f
teleportModule src/Dodge/Item/Craftable.hs 30;" f
@@ -5926,10 +5923,10 @@ toColor8 src/Color.hs 148;" f
toCombNodeLabel src/Dodge/Combine/Graph.hs 81;" f
toFloatVAs src/Shader/Compile.hs 211;" f
toLabel src/Dodge/Cleat.hs 16;" f
toLasgunUpdate src/Dodge/Item/Grammar.hs 113;" f
toLasgunUpdate src/Dodge/Item/Grammar.hs 114;" f
toMultiset src/Multiset.hs 64;" f
toOnward src/Dodge/Tree/Compose.hs 101;" f
toTopLeft src/Dodge/Render/List.hs 205;" f
toTopLeft src/Dodge/Render/List.hs 199;" f
toV2 src/Geometry/Data.hs 36;" f
toV3 src/Geometry/Data.hs 38;" f
toV4 src/Geometry/Data.hs 40;" f
@@ -5943,7 +5940,7 @@ togglesToEffects src/Dodge/Terminal.hs 245;" f
tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 460;" f
tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 430;" f
tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 320;" f
topInvW src/Dodge/ListDisplayParams.hs 55;" f
topInvW src/Dodge/ListDisplayParams.hs 53;" f
topPrismEdgeIndices src/Shader/Poke.hs 327;" f
topPrismIndices src/Shader/Poke.hs 402;" f
topTestPart src/Dodge/TestString.hs 39;" f
@@ -6311,7 +6308,7 @@ yV2 src/Geometry/Vector.hs 203;" f
yellow src/Color.hs 17;" f
you src/Dodge/Base/You.hs 18;" f
youDropItem src/Dodge/Creature/Action.hs 184;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 174;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 178;" 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
@@ -6352,5 +6349,5 @@ zoomFloatingCamera src/Dodge/Update/Camera.hs 64;" f
zoomFromItem src/Dodge/Update/Camera.hs 211;" f
zoomInLongGun src/Dodge/Update/Camera.hs 155;" f
zoomOutLongGun src/Dodge/Update/Camera.hs 163;" f
zoomScope src/Dodge/Item/Scope.hs 18;" f
zoomScope src/Dodge/Item/Scope.hs 17;" f
zoomSpeed src/Dodge/Update/Camera.hs 152;" f