This commit is contained in:
2025-06-05 22:19:20 +01:00
parent 9a699e70ed
commit bae75a1e60
10 changed files with 54 additions and 218 deletions
-2
View File
@@ -27,8 +27,6 @@ import Dodge.Default
import Dodge.FloatFunction
import Dodge.FloorItem
import Dodge.Inventory
import Dodge.ItEffect
--import Dodge.Inventory.Add
import Dodge.Path
import Dodge.SoundLogic
import Dodge.WallCreatureCollisions
-1
View File
@@ -24,7 +24,6 @@ import Dodge.Data.DoubleTree
import Dodge.Data.World
import Dodge.DoubleTree
import Dodge.Euse
import Dodge.ItEffect
import Dodge.Item.Grammar
import Dodge.Item.HeldOffset
import Dodge.Prop.Gib
+2 -2
View File
@@ -3,7 +3,7 @@
module Dodge.Data.Item (
module Dodge.Data.Item,
module Dodge.Data.Item.Effect,
--module Dodge.Data.Item.Effect,
module Dodge.Data.Item.Misc,
module Dodge.Data.Item.Params,
module Dodge.Data.Item.Use,
@@ -18,7 +18,7 @@ import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import Dodge.Data.Item.Combine
import Dodge.Data.Item.Effect
--import Dodge.Data.Item.Effect
import Dodge.Data.Item.Location
import Dodge.Data.Item.Misc
import Dodge.Data.Item.Params
-43
View File
@@ -1,43 +0,0 @@
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.Item.Effect (
module Dodge.Data.Item.Effect,
module Dodge.Data.BlBl,
) where
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import Dodge.Data.BlBl
data ItEffect = ItEffect
{ _ieInv :: ItInvEffect --Item -> Creature -> World -> World
, _ieOnInsert :: ItInvEffect
, _ieOnDrop :: ItInvEffect --Item -> Creature -> World -> World
}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data ItInvEffect
= NoInvEffect
| EffectRootNotroot ItInvEffect ItInvEffect
| CreateShieldWall
| RemoveShieldWall
| EffectWhileRoot ItInvEffect
| EffectWhileAttached ItInvEffect
| ItemUseToggle BlBl
| ItemCancelExamineInventory
| ItemCopierUpdate
| ItemReduceWarmTime
| ItemSetWarmTime Int
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data ItDropEffect = NoDropEffect
deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''ItEffect
deriveJSON defaultOptions ''ItInvEffect
deriveJSON defaultOptions ''ItDropEffect
deriveJSON defaultOptions ''ItEffect
-2
View File
@@ -55,7 +55,5 @@ data AmmoParams
makeLenses ''ItemUse
makeLenses ''AttachParams
makeLenses ''AmmoParams
--makeLenses ''UseFocus
--deriveJSON defaultOptions ''AmmoParams
deriveJSON defaultOptions ''AttachParams
deriveJSON defaultOptions ''ItemUse
-8
View File
@@ -24,11 +24,3 @@ defaultHeldItem =
defaultCraftItem :: Item
defaultCraftItem = defaultHeldItem & itUse .~ UseNothing
defaultItEffect :: ItEffect
defaultItEffect =
ItEffect
{ _ieInv = NoInvEffect
, _ieOnInsert = NoInvEffect
, _ieOnDrop = NoInvEffect
}
-93
View File
@@ -1,93 +0,0 @@
{-# LANGUAGE LambdaCase #-}
module Dodge.ItEffect (
doInvEffect,
) where
import Control.Lens
import Data.Maybe
import Dodge.BlBl
import Dodge.Data.World
import Dodge.Euse
import Dodge.Inventory.Path
import Dodge.Inventory.SelectionList
import Dodge.Item.Location
doInvEffect :: ItInvEffect -> Item -> Creature -> World -> World
doInvEffect = \case
NoInvEffect -> const $ const id
EffectRootNotroot f g -> rootNotrootEff f g
CreateShieldWall -> createShieldWall
RemoveShieldWall -> removeShieldWall
EffectWhileRoot f -> rootNotrootEff f NoInvEffect
EffectWhileAttached f -> effectWhileAttached f
ItemUseToggle f -> \itm _ ->
pointerToItemID (itm ^. itID) . itUse . useToggle %~ doBlBl f
ItemCancelExamineInventory -> \_ _ -> cancelExamineInventory
ItemCopierUpdate -> copierItemUpdate
--ItemReduceWarmTime -> \itm _ -> pointerToItem itm . itUse . heldDelay . warmTime
ItemReduceWarmTime -> \itm _ -> pointerToItem itm . itParams . wTime
%~ (max 0 . subtract 1)
-- use of pointerToItemID rather than pointerToItem because the item
-- location is changing
--ItemSetWarmTime x -> \itm _ -> pointerToItemID (_itID itm) . itUse . heldDelay . warmTime
ItemSetWarmTime x -> \itm _ -> pointerToItemID (_itID itm) . itParams . wTime
.~ x
copierItemUpdate :: Item -> Creature -> World -> World
copierItemUpdate itm cr w = fromMaybe w $ do
x <- itm ^? itScroll . itsInt
invid <- itm ^? itLocation . ilInvID
ip <- itm ^? itType . ibtPathing
i <- getInventoryPath x ip invid cr
itm' <- cr ^? crInv . ix i
v <- getItemValue itm' w cr
return $ w & pointerToItem itm . itUse . uValue .~ v
cancelExamineInventory :: World -> World
cancelExamineInventory = hud . hudElement . subInventory %~ f
where
f ExamineInventory = NoSubInventory
f x = x
rootNotrootEff :: ItInvEffect -> ItInvEffect -> Item -> Creature -> World -> World
rootNotrootEff f g it
| it ^? itLocation . ilIsRoot == Just True = doInvEffect f it
| otherwise = doInvEffect g it
effectWhileAttached :: ItInvEffect -> Item -> Creature -> World -> World
effectWhileAttached f it
| it ^? itLocation . ilIsAttached == Just True = doInvEffect f it
| otherwise = const id
--timeScrollEffect :: Item -> Creature -> World -> World
--timeScrollEffect itm _ w = w & timeFlow .~ ScrollTimeFlow
-- { _scrollSmoothing = 0
-- , _reverseAmount = itm ^?! itUse . leftConsumption . wpCharge
-- , _futureWorlds = []
-- }
--setItemCharge :: Int -> Item -> Creature -> World -> World
--setItemCharge i itm cr w =
-- w & ptrWpCharge %~ const i
-- where
-- invid = _ilInvID $ _itLocation itm
-- ptrWpCharge = cWorld . lWorld . creatures . ix (_crID cr) . crInv . ix invid . itUse . leftConsumption . wpCharge
--
--chargeIfInInventory :: Item -> Creature -> World -> World
--chargeIfInInventory itm cr w =
-- w & ptrWpCharge %~ (min maxcharge . (+ 1))
-- where
-- invid = _ilInvID $ _itLocation itm
-- ptrWpCharge = cWorld . lWorld . creatures . ix (_crID cr) . crInv . ix invid . itUse . leftConsumption . wpCharge
-- maxcharge = itm ^?! itUse . leftConsumption . wpMaxCharge
--
--chargeIfEquipped :: Item -> Creature -> World -> World
--chargeIfEquipped itm cr w
-- | invid `IM.member` (w ^. cWorld . lWorld . imHotkeys) = w &
-- ptrWpCharge %~ (min maxcharge . (+ 1))
-- | otherwise = w & ptrWpCharge .~ 0
-- where
-- invid = _ilInvID $ _itLocation itm
-- ptrWpCharge = cWorld . lWorld . creatures . ix (_crID cr) . crInv . ix invid . itUse . leftConsumption . wpCharge
-- maxcharge = itm ^?! itUse . leftConsumption . wpMaxCharge
+5 -23
View File
@@ -13,23 +13,15 @@ module Dodge.Item.Held.Utility (
import Control.Lens
import Dodge.Data.Item
import Dodge.Default.Item
--import Linear
flatShield :: Item
flatShield =
defaultHeldItem
-- & itEffect . ieInv .~ EffectRootNotroot CreateShieldWall RemoveShieldWall
& itType .~ HELD FLATSHIELD
flatShield = defaultHeldItem & itType .~ HELD FLATSHIELD
keyCard :: Int -> Item
keyCard n = defaultHeldItem & itType .~ HELD (KEYCARD n)
torch :: Item
torch =
defaultHeldItem
& itType .~ HELD TORCH
-- & itUse . heldMuzzles . ix 0 . mzPos . _x .~ 10
-- & itAmmoSlots .~ singleAmmo ElectricalAmmo
torch = defaultHeldItem & itType .~ HELD TORCH
-- | Sends out pulses that display walls.
detector :: Detector -> Item
@@ -42,20 +34,10 @@ unsafeBlinker :: Item
unsafeBlinker = blinker & itType .~ HELD BLINKERUNSAFE
rewinder :: Item
rewinder =
blinker
& itType .~ HELD REWINDER
-- & itUse . heldMuzzles . ix 0 . mzEffect .~ MuzzleRewind
-- & itUse . heldMuzzles . ix 0 . mzAmmoPerShot .~ UseExactly 100000
rewinder = blinker & itType .~ HELD REWINDER
timeStopper :: Item
timeStopper =
blinker
& itType .~ HELD TIMESTOPPER
-- & itUse . heldMuzzles . ix 0 . mzEffect .~ MuzzleStopper
timeStopper = blinker & itType .~ HELD TIMESTOPPER
timeScroller :: Item
timeScroller =
timeStopper
& itType .~ HELD TIMESCROLLER
-- & itUse . heldMuzzles . ix 0 . mzEffect .~ MuzzleScroller
timeScroller = timeStopper & itType .~ HELD TIMESCROLLER
+1
View File
@@ -1,6 +1,7 @@
--{-# LANGUAGE TupleSections #-}
module Dodge.Room.Warning where
import Dodge.Data.BlBl
import Color
import qualified Data.Map.Strict as M
import Data.Maybe
+46 -44
View File
@@ -1383,7 +1383,7 @@ OptionScreen src/Dodge/Data/Universe.hs 82;" C
OptionScreenFlag src/Dodge/Data/Universe.hs 72;" t
OptionType src/Dodge/Menu/OptionType.hs 2;" m
Orientation src/Dodge/Item/Orientation.hs 1;" m
OutAction src/Dodge/Creature/Action.hs 46;" t
OutAction src/Dodge/Creature/Action.hs 45;" t
OutLink src/Dodge/Data/Room.hs 43;" C
OutPlacement src/Dodge/Data/GenWorld.hs 126;" t
Outline src/Dodge/Render/Outline.hs 1;" m
@@ -3522,7 +3522,7 @@ blinkActionFail src/Dodge/Creature/Action/Blink.hs 88;" f
blinkActionMousePos src/Dodge/Creature/Action/Blink.hs 22;" f
blinkDistortions src/Dodge/Creature/Action/Blink.hs 43;" f
blinkShockwave src/Dodge/Creature/Action/Blink.hs 79;" f
blinker src/Dodge/Item/Held/Utility.hs 38;" f
blinker src/Dodge/Item/Held/Utility.hs 30;" f
blinker src/Dodge/Item/Weapon/Utility.hs 14;" f
blipAt src/Dodge/RadarSweep.hs 77;" f
blockLine src/Dodge/Placement/Instance/Wall.hs 41;" f
@@ -3578,6 +3578,7 @@ calcTexCoord src/Tile.hs 19;" f
canSee src/Dodge/Base/Collide.hs 232;" f
canSeeIndirect src/Dodge/Base/Collide.hs 239;" f
cancelExamineInventory src/Dodge/ItEffect.hs 47;" f
cancelExamineInventory' src/Dodge/Item/BackgroundEffect.hs 42;" f
cardEightVec src/Dodge/Base/CardinalPoint.hs 16;" f
cardList src/Dodge/Base/CardinalPoint.hs 6;" f
cardVec src/Dodge/Base/CardinalPoint.hs 9;" f
@@ -3590,7 +3591,7 @@ centerVaultRoom src/Dodge/Room/Procedural.hs 289;" f
centroid src/Geometry/Polygon.hs 130;" f
centroidNum src/Geometry/Polygon.hs 133;" f
chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f
chainLinkOrientation src/Dodge/Creature/State.hs 274;" f
chainLinkOrientation src/Dodge/Creature/State.hs 275;" f
chainPairs src/Geometry.hs 359;" f
changeSwapOther src/Dodge/Inventory.hs 144;" f
changeSwapSel src/Dodge/Inventory.hs 137;" f
@@ -3721,6 +3722,7 @@ convexHullSafe src/Geometry/Polygon.hs 111;" f
convexPolysOverlap src/Geometry/ConvexPoly.hs 50;" f
copier src/Dodge/Item/Scope.hs 88;" f
copierItemUpdate src/Dodge/ItEffect.hs 37;" f
copierItemUpdate' src/Dodge/Item/BackgroundEffect.hs 32;" f
copyItemToFloor src/Dodge/FloorItem.hs 18;" f
copyItemToFloorID src/Dodge/FloorItem.hs 22;" f
corDoor src/Dodge/Room/Room.hs 376;" f
@@ -3778,7 +3780,7 @@ createProjectile src/Dodge/HeldUse.hs 1275;" f
createProjectileR src/Dodge/HeldUse.hs 1240;" f
createShell src/Dodge/Projectile/Create.hs 23;" f
createShieldWall src/Dodge/Euse.hs 77;" f
createShieldWall' src/Dodge/Item/BackgroundEffect.hs 22;" f
createShieldWall' src/Dodge/Item/BackgroundEffect.hs 59;" f
createUnusedLinkPos src/Dodge/Tree/Shift.hs 117;" f
createWall src/Dodge/Wall/Create.hs 8;" f
creatureDisplayText src/Dodge/Creature/Picture/Awareness.hs 10;" f
@@ -3927,7 +3929,6 @@ defaultInanimate src/Dodge/Default/Creature.hs 64;" f
defaultInput src/Dodge/Default/World.hs 14;" f
defaultIntention src/Dodge/Default/Creature.hs 100;" f
defaultInvSize src/Dodge/Default/Creature.hs 74;" f
defaultItEffect src/Dodge/Default/Item.hs 28;" f
defaultLS src/Dodge/Default/LightSource.hs 8;" f
defaultLWorld src/Dodge/Default/World.hs 95;" f
defaultLeftLoadable src/Dodge/Default/Item/Use/Consumption.hs 8;" f
@@ -3968,7 +3969,7 @@ destroyMount src/Dodge/Block.hs 102;" f
destroyMounts src/Dodge/Block.hs 99;" f
destroyProjectile src/Dodge/Projectile/Update.hs 139;" f
detV src/Geometry/Vector.hs 93;" f
detector src/Dodge/Item/Held/Utility.hs 35;" f
detector src/Dodge/Item/Held/Utility.hs 27;" f
detectorColor src/Dodge/Item/Draw/SPic.hs 453;" f
detectorEffect src/Dodge/Item/Weapon/Radar.hs 20;" f
detectorInfo src/Dodge/Item/Info.hs 224;" f
@@ -4004,7 +4005,7 @@ divideLineOddNumPoints src/Geometry.hs 260;" f
doAfterPlacement src/Dodge/Layout.hs 86;" f
doAfterPlacements src/Dodge/Layout.hs 83;" f
doAimTwist src/Dodge/Creature/YourControl.hs 139;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 190;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 191;" f
doArcStep src/Dodge/Tesla/Arc.hs 135;" f
doBackspace src/Dodge/Update/Input/Text.hs 31;" f
doBlBl src/Dodge/BlBl.hs 5;" f
@@ -4102,7 +4103,7 @@ doublePair src/Geometry.hs 161;" f
doublePairSet src/Geometry.hs 165;" f
doubleTreeToIndentList src/Dodge/DoubleTree.hs 72;" f
doubleV2 src/Geometry.hs 168;" f
drawARHUD src/Dodge/Creature/State.hs 301;" f
drawARHUD src/Dodge/Creature/State.hs 302;" f
drawAimSweep src/Dodge/Render/Picture.hs 271;" f
drawAllShadows src/Dodge/Shadows.hs 5;" f
drawBaseMachine src/Dodge/Machine/Draw.hs 57;" f
@@ -4229,9 +4230,9 @@ drawZoneCol src/Dodge/Debug/Picture.hs 142;" f
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 279;" f
droneLauncher src/Dodge/Item/Weapon/Drone.hs 11;" f
dropByState src/Dodge/Creature/State.hs 131;" f
dropExcept src/Dodge/Creature/Action.hs 167;" f
dropExcept src/Dodge/Creature/Action.hs 166;" f
dropInventoryPath src/Dodge/HeldUse.hs 1354;" f
dropItem src/Dodge/Creature/Action.hs 173;" f
dropItem src/Dodge/Creature/Action.hs 172;" f
dropper src/Dodge/Item/Scope.hs 76;" f
drumMag src/Dodge/Item/Ammo.hs 33;" f
dtIL src/Dodge/DoubleTree.hs 75;" f
@@ -4343,7 +4344,7 @@ flamerPic src/Dodge/Item/Draw/SPic.hs 387;" f
flareCircleAt src/Dodge/HeldUse.hs 689;" f
flatItemCombinations src/Dodge/Combine/Combinations.hs 50;" f
flatLookupItems src/Dodge/Combine.hs 38;" f
flatShield src/Dodge/Item/Held/Utility.hs 18;" f
flatShield src/Dodge/Item/Held/Utility.hs 17;" f
flatShieldEquipSPic src/Dodge/Item/Draw/SPic.hs 440;" f
fleeFrom src/Dodge/CreatureEffect.hs 120;" f
fleeFromTarget src/Dodge/CreatureEffect.hs 66;" f
@@ -4648,9 +4649,9 @@ invCursorParams src/Dodge/ListDisplayParams.hs 36;" f
invDP src/Dodge/ListDisplayParams.hs 30;" f
invDimColor src/Dodge/DisplayInventory.hs 192;" f
invHead src/Dodge/Render/HUD.hs 405;" f
invItemLocUpdate src/Dodge/Creature/State.hs 179;" f
invItemLocUpdate src/Dodge/Creature/State.hs 180;" f
invLDT src/Dodge/Item/Grammar.hs 279;" f
invRootItemEffs src/Dodge/Creature/State.hs 172;" f
invRootItemEffs src/Dodge/Creature/State.hs 173;" f
invRootMap src/Dodge/Item/Grammar.hs 288;" f
invRootTrees src/Dodge/Item/Grammar.hs 309;" f
invSelectionItem src/Dodge/Inventory/SelectionList.hs 31;" f
@@ -4675,7 +4676,7 @@ isAnimate src/Dodge/Creature/Test.hs 141;" f
isCognizant src/Dodge/Creature/Perception.hs 105;" f
isConnected src/Dodge/Inventory/Swap.hs 74;" f
isElectrical src/Dodge/Data/Damage.hs 42;" f
isFrictionless src/Dodge/Creature/State.hs 436;" f
isFrictionless src/Dodge/Creature/State.hs 437;" f
isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 191;" f
isInLnk src/Dodge/PlacementSpot.hs 160;" f
isJust' src/MaybeHelp.hs 29;" f
@@ -4696,10 +4697,10 @@ isVowel src/StringHelp.hs 8;" f
isWalkable src/Dodge/Base/Collide.hs 225;" f
isoMatrix src/MatrixHelper.hs 30;" f
isotriBWH src/Geometry/Polygon.hs 20;" f
itBackgroundEffect src/Dodge/Item/BackgroundEffect.hs 8;" f
itBackgroundEffect src/Dodge/Item/BackgroundEffect.hs 22;" f
itDim src/Dodge/Item/InvSize.hs 21;" f
itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 50;" f
itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 47;" f
itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 87;" f
itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 84;" f
itInvHeight src/Dodge/Item/InvSize.hs 11;" f
itUseCondition src/Dodge/ItemUseCondition.hs 6;" f
itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 12;" f
@@ -4757,7 +4758,7 @@ jumpLegs src/Dodge/Item/Equipment.hs 93;" f
justify src/Justify.hs 9;" f
k src/ShortShow.hs 33;" f
k' src/ShortShow.hs 33;" f
keyCard src/Dodge/Item/Held/Utility.hs 24;" f
keyCard src/Dodge/Item/Held/Utility.hs 20;" f
keyCardAnalyserByDoor src/Dodge/Room/LasTurret.hs 71;" f
keyCardRoomRunPast src/Dodge/Room/LasTurret.hs 59;" f
keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f
@@ -5193,11 +5194,11 @@ pedestalRoom src/Dodge/Room/Containing.hs 50;" f
penThing src/Dodge/Bullet.hs 204;" f
perMat src/MatrixHelper.hs 49;" f
perceptionUpdate src/Dodge/Creature/Perception.hs 22;" f
performAction src/Dodge/Creature/Action.hs 92;" f
performActions src/Dodge/Creature/Action.hs 38;" f
performAimAt src/Dodge/Creature/Action.hs 48;" f
performPathTo src/Dodge/Creature/Action.hs 61;" f
performTurnToA src/Dodge/Creature/Action.hs 79;" f
performAction src/Dodge/Creature/Action.hs 91;" f
performActions src/Dodge/Creature/Action.hs 37;" f
performAimAt src/Dodge/Creature/Action.hs 47;" f
performPathTo src/Dodge/Creature/Action.hs 60;" f
performTurnToA src/Dodge/Creature/Action.hs 78;" f
perspectiveMatrixb src/MatrixHelper.hs 11;" f
pesNearCirc src/Dodge/Zoning/Pathing.hs 43;" f
pesNearPoint src/Dodge/Zoning/Pathing.hs 33;" f
@@ -5491,7 +5492,7 @@ removeAmmoFromMag src/Dodge/HeldUse.hs 866;" f
removeDot src/ShortShow.hs 29;" f
removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f
removeShieldWall src/Dodge/Euse.hs 95;" f
removeShieldWall' src/Dodge/Item/BackgroundEffect.hs 40;" f
removeShieldWall' src/Dodge/Item/BackgroundEffect.hs 77;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 26;" f
renderFlatLighting src/Render.hs 104;" f
@@ -5517,7 +5518,7 @@ retreatActionsPistol src/Dodge/Humanoid.hs 248;" f
retreatFireLauncher src/Dodge/Humanoid.hs 269;" f
retreatPointForFrom src/Dodge/Creature/Impulse/Flee.hs 7;" f
reversePair src/Dodge/LevelGen.hs 82;" f
rewinder src/Dodge/Item/Held/Utility.hs 44;" f
rewinder src/Dodge/Item/Held/Utility.hs 36;" f
rewinder src/Dodge/Item/Weapon/Utility.hs 34;" f
rezBox src/Dodge/Room/RezBox.hs 23;" f
rezBox' src/Dodge/Room/RezBox.hs 31;" f
@@ -5561,7 +5562,7 @@ roomTwistCross src/Dodge/Room/Boss.hs 152;" f
roomsContaining src/Dodge/Room/Containing.hs 20;" f
roomsContaining' src/Dodge/Room/Containing.hs 25;" f
rootNotrootEff src/Dodge/ItEffect.hs 53;" f
rootNotrootEff' src/Dodge/Item/BackgroundEffect.hs 15;" f
rootNotrootEff' src/Dodge/Item/BackgroundEffect.hs 48;" f
rose src/Color.hs 20;" f
rotD src/Padding.hs 44;" f
rotMatr src/MatrixHelper.hs 66;" f
@@ -5692,14 +5693,14 @@ setInvPosFromSS src/Dodge/Inventory/Location.hs 82;" f
setLayer src/Picture/Base.hs 139;" f
setLinkType src/Dodge/RoomLink.hs 60;" f
setLinkTypePD src/Dodge/RoomLink.hs 67;" f
setMinInvSize src/Dodge/Creature/Action.hs 145;" f
setMinInvSize src/Dodge/Creature/Action.hs 144;" f
setMusicVolume src/Sound.hs 162;" f
setMvPos src/Dodge/Creature/ReaderUpdate.hs 51;" f
setOldPos src/Dodge/Update.hs 465;" f
setOutLinks src/Dodge/RoomLink.hs 48;" f
setOutLinksByType src/Dodge/RoomLink.hs 57;" f
setOutLinksPD src/Dodge/RoomLink.hs 77;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 405;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 406;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 334;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f
@@ -5747,6 +5748,7 @@ shellModule src/Dodge/Item/Scope.hs 124;" f
shellShape src/Dodge/Projectile/Draw.hs 34;" f
shellTrailCloud src/Dodge/WorldEvent/Cloud.hs 65;" f
shieldWall src/Dodge/Euse.hs 57;" f
shieldWall' src/Dodge/Item/BackgroundEffect.hs 92;" f
shiftByV2 src/Dodge/PlacementSpot.hs 239;" f
shiftChildren src/Dodge/Tree/Compose.hs 43;" f
shiftDraw src/Dodge/Render/ShapePicture.hs 65;" f
@@ -5767,8 +5769,8 @@ shiftRoomBy src/Dodge/Room/Link.hs 37;" f
shiftRoomShiftBy src/Dodge/Room/Link.hs 81;" f
shiftRoomShiftToLink src/Dodge/Room/Link.hs 70;" f
shiftedGrid src/Grid.hs 25;" f
shineTargetLaser src/Dodge/Creature/State.hs 307;" f
shineTorch src/Dodge/Creature/State.hs 348;" f
shineTargetLaser src/Dodge/Creature/State.hs 308;" f
shineTorch src/Dodge/Creature/State.hs 349;" f
shootBullet src/Dodge/HeldUse.hs 936;" f
shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f
shootLaser src/Dodge/HeldUse.hs 845;" f
@@ -5814,7 +5816,7 @@ singleLDT src/Dodge/DoubleTree.hs 12;" f
singleton src/DoubleStack.hs 11;" f
singletonTrie src/SimpleTrie.hs 19;" f
sizeFBOs src/Framebuffer/Update.hs 22;" f
sizeSelf src/Dodge/Creature/Action.hs 208;" f
sizeSelf src/Dodge/Creature/Action.hs 207;" f
skwareFadeTwoSecS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 390;" f
slap1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 514;" f
slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 456;" f
@@ -6026,14 +6028,14 @@ thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 53;" f
thingsHit src/Dodge/WorldEvent/ThingsHit.hs 29;" f
thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 73;" f
threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f
throwItem src/Dodge/Creature/Action.hs 205;" f
throwItem src/Dodge/Creature/Action.hs 204;" f
tileTexCoords src/Tile.hs 11;" f
tilesFromRooms src/Dodge/Layout.hs 205;" f
tilesToLine src/Shader/AuxAddition.hs 66;" f
timeFlowUpdate src/Dodge/Update.hs 170;" f
timeScroller src/Dodge/Item/Held/Utility.hs 57;" f
timeScroller src/Dodge/Item/Held/Utility.hs 42;" f
timeScroller src/Dodge/Item/Weapon/Utility.hs 47;" f
timeStopper src/Dodge/Item/Held/Utility.hs 51;" f
timeStopper src/Dodge/Item/Held/Utility.hs 39;" f
timeStopper src/Dodge/Item/Weapon/Utility.hs 41;" f
timerTLS src/Dodge/LightSource/Update.hs 22;" f
tinMag src/Dodge/Item/Ammo.hs 27;" f
@@ -6070,7 +6072,7 @@ topInvW src/Dodge/ListDisplayParams.hs 51;" f
topPrismEdgeIndices src/Shader/Poke.hs 335;" f
topPrismIndices src/Shader/Poke.hs 410;" f
topTestPart src/Dodge/TestString.hs 62;" f
torch src/Dodge/Item/Held/Utility.hs 27;" f
torch src/Dodge/Item/Held/Utility.hs 23;" f
torchShape src/Dodge/Item/Draw/SPic.hs 269;" f
torqueAmount src/Dodge/HeldUse.hs 576;" f
torqueCr src/Dodge/WorldEffect.hs 74;" f
@@ -6146,8 +6148,8 @@ tryPutItemInInvAt src/Dodge/Inventory/Add.hs 32;" f
trySeedFromClipboard src/Dodge/Menu.hs 91;" f
tryShellBounce src/Dodge/Projectile/Update.hs 103;" f
trySpinByCID src/Dodge/Projectile/Update.hs 178;" f
trySynthBullet src/Dodge/Creature/State.hs 204;" f
tryUseParent src/Dodge/Creature/State.hs 197;" f
trySynthBullet src/Dodge/Creature/State.hs 205;" f
tryUseParent src/Dodge/Creature/State.hs 198;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f
turret src/Dodge/Placement/Instance/Turret.hs 35;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 18;" f
@@ -6172,7 +6174,7 @@ unitVectorAtAngle src/Geometry/Vector.hs 100;" f
unlockInv src/Dodge/Inventory/Lock.hs 12;" f
unpause src/Dodge/Menu.hs 195;" f
unsafeBlinkAction src/Dodge/Creature/Action/Blink.hs 55;" f
unsafeBlinker src/Dodge/Item/Held/Utility.hs 41;" f
unsafeBlinker src/Dodge/Item/Held/Utility.hs 33;" f
unsafeBlinker src/Dodge/Item/Weapon/Utility.hs 27;" f
unsafeSwapKeys src/IntMapHelp.hs 74;" f
unshadowBlock src/Dodge/Block.hs 43;" f
@@ -6187,7 +6189,7 @@ updateAimPos src/Dodge/Update.hs 304;" f
updateAllNodes src/TreeHelp.hs 85;" f
updateArc src/Dodge/Tesla.hs 44;" f
updateArc src/Dodge/Tesla/Arc.hs 100;" f
updateAttachedItems src/Dodge/Creature/State.hs 264;" f
updateAttachedItems src/Dodge/Creature/State.hs 265;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 453;" f
updateBarrel src/Dodge/Barreloid.hs 45;" f
updateBarreloid src/Dodge/Barreloid.hs 13;" f
@@ -6222,15 +6224,15 @@ updateFloatingCamera src/Dodge/Update/Camera.hs 33;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 364;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 357;" f
updateGusts src/Dodge/Update.hs 721;" f
updateHeldRootItem src/Dodge/Creature/State.hs 258;" f
updateHeldRootItem src/Dodge/Creature/State.hs 259;" f
updateHumanoid src/Dodge/Humanoid.hs 13;" f
updateIMl src/Dodge/Update.hs 501;" f
updateIMl' src/Dodge/Update.hs 506;" f
updateInGameCamera src/Dodge/Update/Camera.hs 77;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 400;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f
updateItemTargeting src/Dodge/Creature/State.hs 374;" f
updateItemWithOrientation src/Dodge/Creature/State.hs 284;" f
updateItemTargeting src/Dodge/Creature/State.hs 375;" f
updateItemWithOrientation src/Dodge/Creature/State.hs 285;" f
updateKeyInGame src/Dodge/Update/Input/InGame.hs 394;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 382;" f
updateLampoid src/Dodge/Lampoid.hs 12;" f
@@ -6246,7 +6248,7 @@ updateMouseContextGame src/Dodge/Update.hs 326;" f
updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 95;" f
updateMouseInGame src/Dodge/Update/Input/InGame.hs 85;" f
updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 158;" f
updateMovement src/Dodge/Creature/State.hs 426;" f
updateMovement src/Dodge/Creature/State.hs 427;" f
updateObjCatMaybes src/Dodge/Update.hs 523;" f
updateObjMapMaybe src/Dodge/Update.hs 516;" f
updatePastWorlds src/Dodge/Update.hs 420;" f
@@ -6447,7 +6449,7 @@ yIntercepts' src/Dodge/Zoning/Base.hs 75;" f
yV2 src/Geometry/Vector.hs 210;" f
yellow src/Color.hs 17;" f
you src/Dodge/Base/You.hs 12;" f
youDropItem src/Dodge/Creature/Action.hs 191;" f
youDropItem src/Dodge/Creature/Action.hs 190;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 236;" f
yourControl src/Dodge/Creature/YourControl.hs 27;" f
yourDefaultSpeed src/Dodge/Default/Creature.hs 129;" f