This commit is contained in:
2025-08-27 01:06:04 +01:00
parent 7581c86d93
commit 1ef5534bc2
4 changed files with 75 additions and 87 deletions
+15 -20
View File
@@ -68,43 +68,38 @@ toggleEquipmentAt invid cr w = case equipmentDesignation invid w of
DoNotMoveEquipment -> w DoNotMoveEquipment -> w
PutOnEquipment{_allocNewPos = newp} -> PutOnEquipment{_allocNewPos = newp} ->
w w
& crpoint . crEquipment . at newp ?~ NInt itid & toequipment . at newp ?~ NInt itid
& toitems . ix itid . itLocation . ilEquipSite ?~ newp & toitems . ix itid . itLocation . ilEquipSite ?~ newp
& onequip itm cr & effectOnEquip itm cr
MoveEquipment{_allocNewPos = newp, _allocOldPos = oldp} -> MoveEquipment{_allocNewPos = newp, _allocOldPos = oldp} ->
w w
& crpoint . crEquipment . at newp ?~ NInt itid & toequipment . at newp ?~ NInt itid
& crpoint . crEquipment . at oldp .~ Nothing & toequipment . at oldp .~ Nothing
& toitems . ix itid . itLocation . ilEquipSite ?~ newp & toitems . ix itid . itLocation . ilEquipSite ?~ newp
SwapEquipment{_allocNewPos = newp, _allocOldPos = oldp, _allocSwapID = sid} -> SwapEquipment{_allocNewPos = newp, _allocOldPos = oldp, _allocSwapID = sid} ->
w w
& crpoint . crEquipment . at newp ?~ NInt itid & toequipment . at newp ?~ NInt itid
& crpoint . crEquipment . at oldp ?~ sid & toequipment . at oldp ?~ sid
& toitems . ix itid . itLocation . ilEquipSite ?~ newp & toitems . ix itid . itLocation . ilEquipSite ?~ newp
& toitems . ix (_unNInt sid) . itLocation . ilEquipSite ?~ oldp & toitems . ix (_unNInt sid) . itLocation . ilEquipSite ?~ oldp
ReplaceEquipment{_allocNewPos = newp, _allocRemoveID = rid} -> ReplaceEquipment{_allocNewPos = newp, _allocRemoveID = rid} ->
w w
& crpoint . crEquipment . at newp ?~ NInt itid & toequipment . at newp ?~ NInt itid
& toitems . ix itid . itLocation . ilEquipSite ?~ newp & toitems . ix itid . itLocation . ilEquipSite ?~ newp
& toitems . ix (_unNInt rid) . itLocation . ilEquipSite .~ Nothing & toitems . ix (_unNInt rid) . itLocation . ilEquipSite .~ Nothing
& onremove (itmat' rid) cr & effectOnRemove (itmat rid) cr
& onequip itm cr & effectOnEquip itm cr
RemoveEquipment{_allocOldPos = oldp} -> RemoveEquipment{_allocOldPos = oldp} ->
w w
& crpoint . crEquipment . at oldp .~ Nothing & toequipment . at oldp .~ Nothing
& toitems . ix itid . itLocation . ilEquipSite .~ Nothing & toitems . ix itid . itLocation . ilEquipSite .~ Nothing
& onremove itm cr & effectOnRemove itm cr
where where
invidtoitid :: NewInt InvInt -> Int
invidtoitid i = cr ^?! crInv . ix i -- _crInv cr IM.! i
toitems = cWorld . lWorld . items toitems = cWorld . lWorld . items
itid = invidtoitid invid itid = cr ^?! crInv . ix invid
crpoint = cWorld . lWorld . creatures . ix (_crID cr) toequipment = cWorld . lWorld . creatures . ix (_crID cr) . crEquipment
itmat i = w ^?! cWorld . lWorld . items . ix (invidtoitid i) itmat i = w ^?! cWorld . lWorld . items . ix (_unNInt i)
itmat' i = w ^?! cWorld . lWorld . items . ix (_unNInt i) itm = w ^?! cWorld . lWorld . items . ix itid
itm = itmat invid
onequip itm' = effectOnEquip itm'
onremove itm' = effectOnRemove itm'
toggleExamineInv :: World -> World toggleExamineInv :: World -> World
toggleExamineInv w = case w ^? hud . subInventory of toggleExamineInv w = case w ^? hud . subInventory of
+6 -12
View File
@@ -1,27 +1,24 @@
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-} {-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.RightButtonOptions where module Dodge.Data.RightButtonOptions where
import Dodge.Data.Item.Location
import NewInt
import Control.Lens import Control.Lens
import Data.Aeson import Data.Aeson
import Data.Aeson.TH import Data.Aeson.TH
import Dodge.Data.Equipment.Misc import Dodge.Data.Equipment.Misc
import Dodge.Data.Item.Location
import NewInt
data RightButtonState data RightButtonState
= NoRightButtonState = NoRightButtonState
| EquipOptions { _opSel :: Int } | EquipOptions {_opSel :: Int}
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data EquipmentAllocation data EquipmentAllocation
= DoNotMoveEquipment = DoNotMoveEquipment
| PutOnEquipment | PutOnEquipment {_allocNewPos :: EquipSite}
{ _allocNewPos :: EquipSite
}
| MoveEquipment | MoveEquipment
{ _allocNewPos :: EquipSite { _allocNewPos :: EquipSite
, _allocOldPos :: EquipSite , _allocOldPos :: EquipSite
@@ -35,10 +32,7 @@ data EquipmentAllocation
{ _allocNewPos :: EquipSite { _allocNewPos :: EquipSite
, _allocRemoveID :: NewInt ItmInt , _allocRemoveID :: NewInt ItmInt
} }
| RemoveEquipment | RemoveEquipment {_allocOldPos :: EquipSite}
{ _allocOldPos :: EquipSite
}
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''RightButtonState makeLenses ''RightButtonState
makeLenses ''EquipmentAllocation makeLenses ''EquipmentAllocation
+20 -20
View File
@@ -1,21 +1,22 @@
{-# LANGUAGE TupleSections #-} {-# LANGUAGE TupleSections #-}
module Dodge.Inventory.RBList ( module Dodge.Inventory.RBList (
updateRBList, updateRBList,
equipmentDesignation, equipmentDesignation,
eqTypeToSites, eqTypeToSites,
) where ) where
import NewInt
--import qualified Data.IntMap.Strict as IM --import qualified Data.IntMap.Strict as IM
import Dodge.Data.Equipment.Misc
import Dodge.Data.EquipType
--import Control.Applicative --import Control.Applicative
import Control.Lens import Control.Lens
import Data.List (elemIndex, findIndex) import Data.List (elemIndex, findIndex)
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
import Data.Maybe import Data.Maybe
import Dodge.Base.You import Dodge.Base.You
import Dodge.Data.EquipType
import Dodge.Data.World import Dodge.Data.World
import NewInt
import qualified SDL import qualified SDL
updateRBList :: World -> World updateRBList :: World -> World
@@ -27,8 +28,9 @@ updateRBList w = case w ^. rbState of
itid <- cr ^? crInv . ix i itid <- cr ^? crInv . ix i
itm <- w ^? cWorld . lWorld . items . ix itid itm <- w ^? cWorld . lWorld . items . ix itid
etype <- equipType itm etype <- equipType itm
return $ w & rbState return $
.~ EquipOptions (chooseEquipPosition itm cr (eqTypeToSites etype)) w & rbState
.~ EquipOptions (chooseEquipPosition itm cr (eqTypeToSites etype))
where where
--norightclick = not $ SDL.ButtonRight `M.member` (w ^. input . mouseButtons) --norightclick = not $ SDL.ButtonRight `M.member` (w ^. input . mouseButtons)
norightclick = null $ w ^. input . mouseButtons . at SDL.ButtonRight norightclick = null $ w ^. input . mouseButtons . at SDL.ButtonRight
@@ -40,6 +42,7 @@ chooseEquipPosition :: Item -> Creature -> [EquipSite] -> Int
chooseEquipPosition itm cr eps = fromMaybe (chooseFreeSite cr eps) $ do chooseEquipPosition itm cr eps = fromMaybe (chooseFreeSite cr eps) $ do
ep <- itm ^? itLocation . ilEquipSite . _Just ep <- itm ^? itLocation . ilEquipSite . _Just
elemIndex ep eps elemIndex ep eps
-- (elemIndex <$> (itm ^? itLocation . ilEquipSite . _Just)) ?? eps
chooseFreeSite :: Creature -> [EquipSite] -> Int chooseFreeSite :: Creature -> [EquipSite] -> Int
chooseFreeSite cr = fromMaybe 0 . findIndex hasnoequipment chooseFreeSite cr = fromMaybe 0 . findIndex hasnoequipment
@@ -52,27 +55,24 @@ equipmentDesignation invid w = fromMaybe DoNotMoveEquipment $ do
etype <- w ^? cWorld . lWorld . items . ix itid >>= equipType etype <- w ^? cWorld . lWorld . items . ix itid >>= equipType
let mesite = w ^? cWorld . lWorld . items . ix itid . itLocation . ilEquipSite . _Just let mesite = w ^? cWorld . lWorld . items . ix itid . itLocation . ilEquipSite . _Just
i <- w ^? rbState . opSel i <- w ^? rbState . opSel
es <- eqTypeToSites etype ^? ix i new <- eqTypeToSites etype ^? ix i
return $ case mesite of return $ case mesite of
Just epos | es == epos -> RemoveEquipment{_allocOldPos = epos} Just old | new == old -> RemoveEquipment{_allocOldPos = old}
Just epos | isJust (you w ^? crEquipment . ix es) -> Just old
| isJust (you w ^? crEquipment . ix new) ->
SwapEquipment SwapEquipment
{ _allocOldPos = epos { _allocOldPos = old
, _allocNewPos = es , _allocNewPos = new
, _allocSwapID = _crEquipment (you w) M.! es , _allocSwapID = _crEquipment (you w) M.! new
} }
Just epos -> Just old -> MoveEquipment{_allocOldPos = old, _allocNewPos = new}
MoveEquipment
{ _allocOldPos = epos
, _allocNewPos = es
}
Nothing Nothing
| isJust (you w ^? crEquipment . ix es) -> | isJust (you w ^? crEquipment . ix new) ->
ReplaceEquipment ReplaceEquipment
{ _allocNewPos = es { _allocNewPos = new
, _allocRemoveID = _crEquipment (you w) M.! es , _allocRemoveID = _crEquipment (you w) M.! new
} }
Nothing -> PutOnEquipment{_allocNewPos = es} Nothing -> PutOnEquipment{_allocNewPos = new}
eqTypeToSites :: EquipType -> [EquipSite] eqTypeToSites :: EquipType -> [EquipSite]
eqTypeToSites es = case es of eqTypeToSites es = case es of
+34 -35
View File
@@ -355,7 +355,7 @@ DoActionWhilePartial src/Dodge/Data/ActionPlan.hs 111;" C
DoActions src/Dodge/Data/ActionPlan.hs 130;" C DoActions src/Dodge/Data/ActionPlan.hs 130;" C
DoImpulses src/Dodge/Data/ActionPlan.hs 100;" C DoImpulses src/Dodge/Data/ActionPlan.hs 100;" C
DoImpulsesAlongside src/Dodge/Data/ActionPlan.hs 169;" C DoImpulsesAlongside src/Dodge/Data/ActionPlan.hs 169;" C
DoNotMoveEquipment src/Dodge/Data/RightButtonOptions.hs 21;" C DoNotMoveEquipment src/Dodge/Data/RightButtonOptions.hs 22;" C
DoReplicate src/Dodge/Data/ActionPlan.hs 140;" C DoReplicate src/Dodge/Data/ActionPlan.hs 140;" C
DoReplicatePartial src/Dodge/Data/ActionPlan.hs 144;" C DoReplicatePartial src/Dodge/Data/ActionPlan.hs 144;" C
DockingBaySS src/Dodge/Data/Scenario.hs 92;" C DockingBaySS src/Dodge/Data/Scenario.hs 92;" C
@@ -411,7 +411,7 @@ EquipItemType src/Dodge/Data/Item/Combine.hs 121;" t
EquipOptions src/Dodge/Data/RightButtonOptions.hs 17;" C EquipOptions src/Dodge/Data/RightButtonOptions.hs 17;" C
EquipSite src/Dodge/Data/Equipment/Misc.hs 21;" t EquipSite src/Dodge/Data/Equipment/Misc.hs 21;" t
EquipType src/Dodge/Data/Equipment/Misc.hs 11;" t EquipType src/Dodge/Data/Equipment/Misc.hs 11;" t
EquipmentAllocation src/Dodge/Data/RightButtonOptions.hs 20;" t EquipmentAllocation src/Dodge/Data/RightButtonOptions.hs 21;" t
EquipmentPlatformSF src/Dodge/Data/ComposedItem.hs 17;" C EquipmentPlatformSF src/Dodge/Data/ComposedItem.hs 17;" C
Escape src/Dodge/Data/Scenario.hs 10;" C Escape src/Dodge/Data/Scenario.hs 10;" C
EscapeMenuOption src/Dodge/Data/Universe.hs 76;" t EscapeMenuOption src/Dodge/Data/Universe.hs 76;" t
@@ -797,7 +797,7 @@ MouseMenuClick src/Dodge/Data/Input.hs 18;" C
MouseMenuCursor src/Dodge/Data/Input.hs 19;" C MouseMenuCursor src/Dodge/Data/Input.hs 19;" C
Mouse_position src/Dodge/Data/Config.hs 73;" C Mouse_position src/Dodge/Data/Config.hs 73;" C
Move src/Dodge/Data/ActionPlan.hs 28;" C Move src/Dodge/Data/ActionPlan.hs 28;" C
MoveEquipment src/Dodge/Data/RightButtonOptions.hs 25;" C MoveEquipment src/Dodge/Data/RightButtonOptions.hs 24;" C
MoveForward src/Dodge/Data/ActionPlan.hs 29;" C MoveForward src/Dodge/Data/ActionPlan.hs 29;" C
MultGunAI src/Dodge/Data/Creature/Misc.hs 51;" C MultGunAI src/Dodge/Data/Creature/Misc.hs 51;" C
Mute src/Dodge/Data/Creature/Misc.hs 21;" C Mute src/Dodge/Data/Creature/Misc.hs 21;" C
@@ -863,7 +863,7 @@ NoMvType src/Dodge/Data/Creature/Misc.hs 29;" C
NoObjShads src/Dodge/Data/Config.hs 102;" C NoObjShads src/Dodge/Data/Config.hs 102;" C
NoParams src/Dodge/Data/Item/Params.hs 15;" C NoParams src/Dodge/Data/Item/Params.hs 15;" C
NoResurrection src/Dodge/Data/Corpse.hs 14;" C NoResurrection src/Dodge/Data/Corpse.hs 14;" C
NoRightButtonOptions src/Dodge/Data/RightButtonOptions.hs 16;" C NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 16;" C
NoRoomClipBoundaries src/Dodge/Data/Config.hs 107;" C NoRoomClipBoundaries src/Dodge/Data/Config.hs 107;" C
NoSF src/Dodge/Data/ComposedItem.hs 29;" C NoSF src/Dodge/Data/ComposedItem.hs 29;" C
NoShadowFidelity src/Shape/Data.hs 25;" C NoShadowFidelity src/Shape/Data.hs 25;" C
@@ -1087,7 +1087,7 @@ PutLineBlock src/Dodge/Data/GenWorld.hs 48;" C
PutMachine src/Dodge/Data/GenWorld.hs 32;" C PutMachine src/Dodge/Data/GenWorld.hs 32;" C
PutMod src/Dodge/Data/GenWorld.hs 46;" C PutMod src/Dodge/Data/GenWorld.hs 46;" C
PutNothing src/Dodge/Data/GenWorld.hs 60;" C PutNothing src/Dodge/Data/GenWorld.hs 60;" C
PutOnEquipment src/Dodge/Data/RightButtonOptions.hs 22;" C PutOnEquipment src/Dodge/Data/RightButtonOptions.hs 23;" C
PutPPlate src/Dodge/Data/GenWorld.hs 43;" C PutPPlate src/Dodge/Data/GenWorld.hs 43;" C
PutProp src/Dodge/Data/GenWorld.hs 40;" C PutProp src/Dodge/Data/GenWorld.hs 40;" C
PutSlideDr src/Dodge/Data/GenWorld.hs 55;" C PutSlideDr src/Dodge/Data/GenWorld.hs 55;" C
@@ -1132,10 +1132,10 @@ Religion src/Dodge/Data/Scenario.hs 47;" C
Reload src/Dodge/Data/ActionPlan.hs 190;" C Reload src/Dodge/Data/ActionPlan.hs 190;" C
RemoteDetonatorSF src/Dodge/Data/ComposedItem.hs 27;" C RemoteDetonatorSF src/Dodge/Data/ComposedItem.hs 27;" C
RemoteScreenSF src/Dodge/Data/ComposedItem.hs 25;" C RemoteScreenSF src/Dodge/Data/ComposedItem.hs 25;" C
RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 38;" C RemoveEquipment src/Dodge/Data/RightButtonOptions.hs 37;" C
Remove_LOS src/Dodge/Data/Config.hs 77;" C Remove_LOS src/Dodge/Data/Config.hs 77;" C
RenderData src/Data/Preload/Render.hs 13;" t RenderData src/Data/Preload/Render.hs 13;" t
ReplaceEquipment src/Dodge/Data/RightButtonOptions.hs 34;" C ReplaceEquipment src/Dodge/Data/RightButtonOptions.hs 33;" C
RequireEquipment src/Dodge/Data/Machine/Sensor.hs 38;" C RequireEquipment src/Dodge/Data/Machine/Sensor.hs 38;" C
RequireHealth src/Dodge/Data/Machine/Sensor.hs 37;" C RequireHealth src/Dodge/Data/Machine/Sensor.hs 37;" C
ResFactor src/Dodge/Data/Config.hs 97;" t ResFactor src/Dodge/Data/Config.hs 97;" t
@@ -1147,7 +1147,7 @@ RetiredProjectile src/Dodge/Data/Projectile.hs 38;" C
Revenge src/Dodge/Data/Scenario.hs 6;" C Revenge src/Dodge/Data/Scenario.hs 6;" C
RewindLeftClick src/Dodge/Data/World.hs 73;" C RewindLeftClick src/Dodge/Data/World.hs 73;" C
RezBaySS src/Dodge/Data/Scenario.hs 105;" C RezBaySS src/Dodge/Data/Scenario.hs 105;" C
RightButtonOptions src/Dodge/Data/RightButtonOptions.hs 15;" t RightButtonState src/Dodge/Data/RightButtonOptions.hs 15;" t
RightForward src/Dodge/Data/Creature/Stance.hs 31;" C RightForward src/Dodge/Data/Creature/Stance.hs 31;" C
RightwardDT src/Dodge/Data/DoubleTree.hs 93;" C RightwardDT src/Dodge/Data/DoubleTree.hs 93;" C
RightwardLDT src/Dodge/Data/DoubleTree.hs 52;" C RightwardLDT src/Dodge/Data/DoubleTree.hs 52;" C
@@ -1300,7 +1300,7 @@ Superfluous src/Shape/Data.hs 38;" C
Surface src/Shape/Data.hs 41;" t Surface src/Shape/Data.hs 41;" t
Survive src/Dodge/Data/Scenario.hs 5;" C Survive src/Dodge/Data/Scenario.hs 5;" C
Suspicious src/Dodge/Data/Creature/Perception.hs 66;" C Suspicious src/Dodge/Data/Creature/Perception.hs 66;" C
SwapEquipment src/Dodge/Data/RightButtonOptions.hs 29;" C SwapEquipment src/Dodge/Data/RightButtonOptions.hs 28;" C
Swarm src/Dodge/Data/Creature/State.hs 27;" C Swarm src/Dodge/Data/Creature/State.hs 27;" C
SwarmAI src/Dodge/Data/Creature/Misc.hs 46;" C SwarmAI src/Dodge/Data/Creature/Misc.hs 46;" C
SwarmCrit src/Dodge/Data/Creature/Misc.hs 71;" C SwarmCrit src/Dodge/Data/Creature/Misc.hs 71;" C
@@ -1529,14 +1529,13 @@ __Just' src/MaybeHelp.hs 13;" f
_actAction src/Dodge/Data/ActionPlan.hs 81;" f _actAction src/Dodge/Data/ActionPlan.hs 81;" f
_actLabel src/Dodge/Data/ActionPlan.hs 80;" f _actLabel src/Dodge/Data/ActionPlan.hs 80;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 23;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 23;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 26;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 29;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 30;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 34;" f
_allocNewPos src/Dodge/Data/RightButtonOptions.hs 35;" f _allocOldPos src/Dodge/Data/RightButtonOptions.hs 26;" f
_allocOldPos src/Dodge/Data/RightButtonOptions.hs 27;" f _allocOldPos src/Dodge/Data/RightButtonOptions.hs 30;" f
_allocOldPos src/Dodge/Data/RightButtonOptions.hs 31;" f _allocOldPos src/Dodge/Data/RightButtonOptions.hs 37;" f
_allocOldPos src/Dodge/Data/RightButtonOptions.hs 39;" f _allocRemoveID src/Dodge/Data/RightButtonOptions.hs 35;" f
_allocRemoveID src/Dodge/Data/RightButtonOptions.hs 36;" f _allocSwapID src/Dodge/Data/RightButtonOptions.hs 31;" f
_allocSwapID src/Dodge/Data/RightButtonOptions.hs 32;" f
_alphaDivideShader src/Data/Preload/Render.hs 18;" f _alphaDivideShader src/Data/Preload/Render.hs 18;" f
_alteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" f _alteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" f
_ambushTarget src/Dodge/Data/ActionPlan.hs 178;" f _ambushTarget src/Dodge/Data/ActionPlan.hs 178;" f
@@ -2229,9 +2228,9 @@ _radarSweeps src/Dodge/Data/LWorld.hs 110;" f
_randGen src/Dodge/Data/World.hs 39;" f _randGen src/Dodge/Data/World.hs 39;" f
_rbColor src/Dodge/Data/RadarBlip.hs 15;" f _rbColor src/Dodge/Data/RadarBlip.hs 15;" f
_rbMaxTime src/Dodge/Data/RadarBlip.hs 17;" f _rbMaxTime src/Dodge/Data/RadarBlip.hs 17;" f
_rbOptions src/Dodge/Data/World.hs 44;" f
_rbPos src/Dodge/Data/RadarBlip.hs 19;" f _rbPos src/Dodge/Data/RadarBlip.hs 19;" f
_rbRad src/Dodge/Data/RadarBlip.hs 18;" f _rbRad src/Dodge/Data/RadarBlip.hs 18;" f
_rbState src/Dodge/Data/World.hs 44;" f
_rbTime src/Dodge/Data/RadarBlip.hs 16;" f _rbTime src/Dodge/Data/RadarBlip.hs 16;" f
_rboBaseBloom src/Data/Preload/Render.hs 38;" f _rboBaseBloom src/Data/Preload/Render.hs 38;" f
_renderData src/Data/Preload.hs 11;" f _renderData src/Data/Preload.hs 11;" f
@@ -2871,9 +2870,9 @@ checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f
chemFuelPouch src/Dodge/Item/Ammo.hs 75;" f chemFuelPouch src/Dodge/Item/Ammo.hs 75;" f
chestPQ src/Dodge/Creature/HandPos.hs 128;" f chestPQ src/Dodge/Creature/HandPos.hs 128;" f
chooseCursorBorders src/Dodge/Render/List.hs 156;" f chooseCursorBorders src/Dodge/Render/List.hs 156;" f
chooseEquipPosition src/Dodge/Inventory/RBList.hs 39;" f chooseEquipPosition src/Dodge/Inventory/RBList.hs 41;" f
chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 34;" f chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 34;" f
chooseFreeSite src/Dodge/Inventory/RBList.hs 46;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 47;" f
chooseMovementLtAuto src/Dodge/CreatureEffect.hs 105;" f chooseMovementLtAuto src/Dodge/CreatureEffect.hs 105;" f
chooseMovementPistol src/Dodge/Humanoid.hs 203;" f chooseMovementPistol src/Dodge/Humanoid.hs 203;" f
chooseMovementPistol' src/Dodge/Humanoid.hs 208;" f chooseMovementPistol' src/Dodge/Humanoid.hs 208;" f
@@ -2954,7 +2953,7 @@ combinationsOf src/Multiset.hs 46;" f
combinationsTrie src/Dodge/Combine.hs 43;" f combinationsTrie src/Dodge/Combine.hs 43;" f
combineAwareness src/Dodge/Creature/Perception.hs 110;" f combineAwareness src/Dodge/Creature/Perception.hs 110;" f
combineFloors src/Dodge/Room/Procedural.hs 172;" f combineFloors src/Dodge/Room/Procedural.hs 172;" f
combineInventoryExtra src/Dodge/Render/HUD.hs 337;" f combineInventoryExtra src/Dodge/Render/HUD.hs 338;" f
combineItemListYouX src/Dodge/Combine.hs 35;" f combineItemListYouX src/Dodge/Combine.hs 35;" f
combineList src/Dodge/Combine.hs 21;" f combineList src/Dodge/Combine.hs 21;" f
combineRooms src/Dodge/Room/Procedural.hs 152;" f combineRooms src/Dodge/Room/Procedural.hs 152;" f
@@ -3408,8 +3407,8 @@ drawInputMenu src/Dodge/Render/MenuScreen.hs 22;" f
drawInspectWall src/Dodge/Debug/Picture.hs 244;" f drawInspectWall src/Dodge/Debug/Picture.hs 244;" f
drawInspectWalls src/Dodge/Debug/Picture.hs 232;" f drawInspectWalls src/Dodge/Debug/Picture.hs 232;" f
drawInventory src/Dodge/Render/HUD.hs 55;" f drawInventory src/Dodge/Render/HUD.hs 55;" f
drawItemChildrenConnect src/Dodge/Render/HUD.hs 324;" f drawItemChildrenConnect src/Dodge/Render/HUD.hs 325;" f
drawItemConnections src/Dodge/Render/HUD.hs 314;" f drawItemConnections src/Dodge/Render/HUD.hs 315;" f
drawJumpDown src/Dodge/Render/Picture.hs 191;" f drawJumpDown src/Dodge/Render/Picture.hs 191;" f
drawLabCrossCol src/Dodge/Render/Label.hs 8;" f drawLabCrossCol src/Dodge/Render/Label.hs 8;" f
drawLampCover src/Dodge/Prop/Draw.hs 55;" f drawLampCover src/Dodge/Prop/Draw.hs 55;" f
@@ -3465,7 +3464,7 @@ drawSubInventory src/Dodge/Render/HUD.hs 159;" f
drawSwitch src/Dodge/Button/Draw.hs 16;" f drawSwitch src/Dodge/Button/Draw.hs 16;" f
drawSwitchWire src/Dodge/LevelGen/Switch.hs 24;" f drawSwitchWire src/Dodge/LevelGen/Switch.hs 24;" f
drawTargetingAR src/Dodge/Targeting/Draw.hs 20;" f drawTargetingAR src/Dodge/Targeting/Draw.hs 20;" f
drawTerminalDisplay src/Dodge/Render/HUD.hs 360;" f drawTerminalDisplay src/Dodge/Render/HUD.hs 361;" f
drawTeslaArc src/Dodge/Tesla/Draw.hs 9;" f drawTeslaArc src/Dodge/Tesla/Draw.hs 9;" f
drawText src/Picture/Base.hs 220;" f drawText src/Picture/Base.hs 220;" f
drawTitle src/Dodge/Render/MenuScreen.hs 55;" f drawTitle src/Dodge/Render/MenuScreen.hs 55;" f
@@ -3536,8 +3535,8 @@ enterCombineInv src/Dodge/DisplayInventory.hs 322;" f
epText src/Dodge/Inventory/SelectionList.hs 76;" f epText src/Dodge/Inventory/SelectionList.hs 76;" f
eqConstr src/SameConstr.hs 17;" f eqConstr src/SameConstr.hs 17;" f
eqPosText src/Dodge/Equipment/Text.hs 5;" f eqPosText src/Dodge/Equipment/Text.hs 5;" f
eqSiteToPositions src/Dodge/Inventory/RBList.hs 84;" f eqTypeToSites src/Dodge/Inventory/RBList.hs 77;" f
equipAllocString src/Dodge/Render/HUD.hs 305;" f equipAllocString src/Dodge/Render/HUD.hs 306;" f
equipAttachPos src/Dodge/Item/Draw.hs 33;" f equipAttachPos src/Dodge/Item/Draw.hs 33;" f
equipBackgroundEffect src/Dodge/Euse.hs 15;" f equipBackgroundEffect src/Dodge/Euse.hs 15;" f
equipInfo src/Dodge/Item/Info.hs 141;" f equipInfo src/Dodge/Item/Info.hs 141;" f
@@ -3545,7 +3544,7 @@ equipItemSPic src/Dodge/Item/Draw/SPic.hs 171;" f
equipPosition src/Dodge/Item/Draw.hs 41;" f equipPosition src/Dodge/Item/Draw.hs 41;" f
equipSiteInfo src/Dodge/Item/Info.hs 254;" f equipSiteInfo src/Dodge/Item/Info.hs 254;" f
equipType src/Dodge/Data/EquipType.hs 10;" f equipType src/Dodge/Data/EquipType.hs 10;" f
equipmentDesignation src/Dodge/Inventory/RBList.hs 51;" f equipmentDesignation src/Dodge/Inventory/RBList.hs 52;" f
equipmentStrValue src/Dodge/Creature/Statistics.hs 52;" f equipmentStrValue src/Dodge/Creature/Statistics.hs 52;" f
errorAngleVV src/Geometry.hs 60;" f errorAngleVV src/Geometry.hs 60;" f
errorClosestPointOnLine src/Geometry.hs 72;" f errorClosestPointOnLine src/Geometry.hs 72;" f
@@ -3898,7 +3897,7 @@ invDP src/Dodge/ListDisplayParams.hs 30;" f
invDT src/Dodge/Item/Grammar.hs 216;" f invDT src/Dodge/Item/Grammar.hs 216;" f
invDT' src/Dodge/Item/Grammar.hs 221;" f invDT' src/Dodge/Item/Grammar.hs 221;" f
invDimColor src/Dodge/DisplayInventory.hs 191;" f invDimColor src/Dodge/DisplayInventory.hs 191;" f
invHead src/Dodge/Render/HUD.hs 400;" f invHead src/Dodge/Render/HUD.hs 401;" f
invIMDT src/Dodge/Item/Grammar.hs 245;" f invIMDT src/Dodge/Item/Grammar.hs 245;" f
invIndents src/Dodge/Item/Grammar.hs 252;" f invIndents src/Dodge/Item/Grammar.hs 252;" f
invItemEffs src/Dodge/Creature/State.hs 62;" f invItemEffs src/Dodge/Creature/State.hs 62;" f
@@ -4080,7 +4079,7 @@ listSelectionColorPicture src/Dodge/DisplayInventory.hs 307;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
lmt src/MatrixHelper.hs 43;" f lmt src/MatrixHelper.hs 43;" f
lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f lnkBothAnd src/Dodge/Room/Procedural.hs 121;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 389;" f lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 390;" f
lnkPosDir src/Dodge/RoomLink.hs 97;" f lnkPosDir src/Dodge/RoomLink.hs 97;" f
loadDodgeConfig src/Dodge/Config/Load.hs 9;" f loadDodgeConfig src/Dodge/Config/Load.hs 9;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f
@@ -4919,11 +4918,11 @@ sectionsSizes src/Dodge/DisplayInventory.hs 206;" f
seedStartMenu src/Dodge/Menu.hs 82;" f seedStartMenu src/Dodge/Menu.hs 82;" f
seedStartOptions src/Dodge/Menu.hs 85;" f seedStartOptions src/Dodge/Menu.hs 85;" f
segOnCirc src/Geometry.hs 114;" f segOnCirc src/Geometry.hs 114;" f
selNumPos src/Dodge/Render/HUD.hs 449;" f selNumPos src/Dodge/Render/HUD.hs 450;" f
selNumPosCardinal src/Dodge/Render/HUD.hs 472;" f selNumPosCardinal src/Dodge/Render/HUD.hs 473;" f
selSecDrawCursor src/Dodge/Render/List.hs 126;" f selSecDrawCursor src/Dodge/Render/List.hs 126;" f
selSecDrawCursorAt src/Dodge/Render/List.hs 104;" f selSecDrawCursorAt src/Dodge/Render/List.hs 104;" f
selSecSelCol src/Dodge/Render/HUD.hs 503;" f selSecSelCol src/Dodge/Render/HUD.hs 504;" f
selSecSelSize src/Dodge/SelectionSections.hs 143;" f selSecSelSize src/Dodge/SelectionSections.hs 143;" f
selSecYint src/Dodge/SelectionSections.hs 152;" f selSecYint src/Dodge/SelectionSections.hs 152;" f
selectCreatureDebugItem src/Dodge/Debug.hs 55;" f selectCreatureDebugItem src/Dodge/Debug.hs 55;" f
@@ -5319,9 +5318,9 @@ toV4 src/Geometry/Data.hs 60;" f
toggleCombineInv src/Dodge/DisplayInventory.hs 316;" f toggleCombineInv src/Dodge/DisplayInventory.hs 316;" f
toggleCommands src/Dodge/Terminal.hs 100;" f toggleCommands src/Dodge/Terminal.hs 100;" f
toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 66;" f toggleEquipmentAt src/Dodge/Creature/Impulse/UseItem.hs 66;" f
toggleExamineInv src/Dodge/Creature/Impulse/UseItem.hs 109;" f toggleExamineInv src/Dodge/Creature/Impulse/UseItem.hs 104;" f
toggleJust src/MaybeHelp.hs 41;" f toggleJust src/MaybeHelp.hs 41;" f
toggleMapperInv src/Dodge/Creature/Impulse/UseItem.hs 114;" f toggleMapperInv src/Dodge/Creature/Impulse/UseItem.hs 109;" f
tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 642;" f tone440S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 642;" f
tone440raiseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 664;" f tone440raiseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 664;" f
tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 606;" f tone440sawtoothS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 606;" f
@@ -5522,7 +5521,7 @@ updatePulse src/Dodge/Creature/Update.hs 136;" f
updatePulseBall src/Dodge/Update.hs 458;" f updatePulseBall src/Dodge/Update.hs 458;" f
updatePulseLaser src/Dodge/Update.hs 623;" f updatePulseLaser src/Dodge/Update.hs 623;" f
updatePulseLasers src/Dodge/Update.hs 453;" f updatePulseLasers src/Dodge/Update.hs 453;" f
updateRBList src/Dodge/Inventory/RBList.hs 21;" f updateRBList src/Dodge/Inventory/RBList.hs 22;" f
updateRadarBlip src/Dodge/RadarBlip.hs 11;" f updateRadarBlip src/Dodge/RadarBlip.hs 11;" f
updateRadarBlips src/Dodge/Update.hs 572;" f updateRadarBlips src/Dodge/Update.hs 572;" f
updateRadarSweep src/Dodge/RadarSweep.hs 39;" f updateRadarSweep src/Dodge/RadarSweep.hs 39;" f