diff --git a/data/dodge.config.json b/data/dodge.config.json index 4df1a44c3..54808efa1 100644 --- a/data/dodge.config.json +++ b/data/dodge.config.json @@ -9,7 +9,7 @@ "_gameplay_rotate_to_wall": true, "_graphics_bloom": true, "_graphics_cloud_shadows": true, - "_graphics_distortion_resolution": "FullRes", + "_graphics_distortion_resolution": "HalfRes", "_graphics_distortions": true, "_graphics_downsize_resolution": "EighthRes", "_graphics_num_shadow_casters": "NumShadowCasters20", diff --git a/ghcidOutput b/ghcidOutput index 6e8878908..d583047a3 100644 --- a/ghcidOutput +++ b/ghcidOutput @@ -1,8 +1 @@ -/home/justin/Haskell/loop/src/Dodge/Reloading.hs:25:22-40: error: - • The constructor ‘ReloadAction’ should have 2 arguments, but has been given 3 - • In the pattern: ReloadAction x la j - In the pattern: SelItem i (ReloadAction x la j) - In the pattern: Just (SelItem i (ReloadAction x la j)) - | -25 | Just (SelItem i (ReloadAction x la)) - | ^^^^^^^^^^^^^^^^^^^ +All good (615 modules, at 22:22:36) diff --git a/src/Dodge/Creature/Impulse/UseItem.hs b/src/Dodge/Creature/Impulse/UseItem.hs index 9e26780a2..002e67b4f 100644 --- a/src/Dodge/Creature/Impulse/UseItem.hs +++ b/src/Dodge/Creature/Impulse/UseItem.hs @@ -106,10 +106,11 @@ useItemLeftClick cr w = fromMaybe w $ do invid <- cr ^? crManipulation . manObject . inInventory . ispItem ituse <- cr ^? crInv . ix invid . itUse case ituse of - HeldUse{} -> return $ hammerTest (cWorld . lWorld . creatures . ix (_crID cr) %~ crReload) + HeldUse{} -> return $ hammerTest (cWorld . lWorld . creatures . ix (_crID cr) %~ crReloadToggle) ConsumeUse{} -> return $ useItemRightClick cr w EquipUse{} -> return $ useItemRightClick cr w LeftUse{} -> return $ useItemRightClick cr w + AmmoMagUse{} -> return $ hammerTest (cWorld . lWorld . creatures . ix (_crID cr) %~ crReloadToggle) _ -> Nothing where hammerTest f = case _crHammerPosition cr of diff --git a/src/Dodge/Data/Item/Use/Consumption/LoadAction.hs b/src/Dodge/Data/Item/Use/Consumption/LoadAction.hs index ae4290a78..c679b881c 100644 --- a/src/Dodge/Data/Item/Use/Consumption/LoadAction.hs +++ b/src/Dodge/Data/Item/Use/Consumption/LoadAction.hs @@ -42,7 +42,7 @@ data InventoryManipulation data InvSelAction = NoInvSelAction - | ReloadAction {_actionProgress :: Int, _reloadAction :: LoadAction} + | ReloadAction {_actionProgress :: Int, _reloadAction :: LoadAction, _reloadInvID :: Int} deriving (Eq, Ord, Show, Read) --Generic, Flat) makeLenses ''LoadAction diff --git a/src/Dodge/Reloading.hs b/src/Dodge/Reloading.hs index 4ce517ee3..a56b8ee83 100644 --- a/src/Dodge/Reloading.hs +++ b/src/Dodge/Reloading.hs @@ -1,12 +1,14 @@ module Dodge.Reloading ( crCancelReloading, - crReload, + crReloadToggle, stepReloading, ) where import Control.Lens import Data.Maybe import Dodge.Data.Creature +import Control.Monad +--import Data.Monoid crCancelReloading :: Creature -> Creature crCancelReloading cr = @@ -22,13 +24,13 @@ crCancelReloading cr = stepReloading :: Creature -> Creature stepReloading cr = case cr ^? crManipulation . manObject . inInventory of - Just (SelItem i (ReloadAction x la)) + Just (SelItem _ (ReloadAction x la j)) | x > 0 -> cr & crManipulation . manObject . inInventory . iselAction . actionProgress -~ 1 | otherwise -> cr - & crInv . ix (i + 1) . itUse . amagLoadStatus %~ doLoadAction la - & crInv . ix (i + 1) . itUse . amagLoadStatus %~ rotateActionProgress + & crInv . ix j . itUse . amagLoadStatus %~ doLoadAction la + & crInv . ix j . itUse . amagLoadStatus %~ rotateActionProgress & tryNextLoadAction _ -> cr @@ -41,35 +43,51 @@ tryNextLoadAction cr = case cr ^? crManipulation . manObject . inInventory of & crManipulation . manObject . inInventory . iselAction . reloadAction .~ la _ -> cr -crReload :: Creature -> Creature -crReload cr = case cr ^? crManipulation . manObject . inInventory . iselAction of +crReloadToggle :: Creature -> Creature +crReloadToggle cr = case cr ^? crManipulation . manObject . inInventory . iselAction of Just NoInvSelAction -> cr & tryStartLoading _ -> cr & crManipulation . manObject . inInventory . iselAction .~ NoInvSelAction tryStartLoading :: Creature -> Creature tryStartLoading cr = fromMaybe cr $ do i <- cr ^? crManipulation . manObject . inInventory . ispItem - ia <- cr ^? crInv . ix (i + 1) . itUse . amagLoadStatus - return $ startLoading ia cr + magtypes <- cr ^? crInv . ix i . itUse . heldConsumption + --let mags = cr ^.. crInv . dropping (i + 1) traverse -- note this gets all items below the manipulated + let mags = cr ^.. crInv . dropping i traverse + iaj <- listToMaybe . catMaybes $ zipWith tryStartLoadMagazine mags magtypes + return $ startLoading iaj cr + +tryStartLoadMagazine :: Item -> AmmoType -> Maybe (ReloadStatus, Int) +tryStartLoadMagazine mag atype = do + magat <- mag ^? itUse . amagType + guard $ magat == atype + ia <- mag ^? itUse . amagLoadStatus + maxammo <- ia ^? iaMax + loadedammo <- ia ^? iaLoaded + guard $ loadedammo < maxammo + j <- mag ^? itLocation . ipInvID + return (ia, j) -- case as of -- InternalSource ia -> return $ startLoading ia cr -- AboveSource -> return cr -startLoading :: ReloadStatus -> Creature -> Creature -startLoading ic cr = case ic ^? iaProgress . _Just . ix 0 of - Just la -> cr & startLoadingStep la +startLoading :: (ReloadStatus,Int) -> Creature -> Creature +startLoading (ic,j) cr = case ic ^? iaProgress . _Just . ix 0 of + Just la -> cr & startLoadingStep la j Nothing -> case ic ^. iaCycle of [] -> error "item has empty load cycle" - _ | _iaLoaded ic >= _iaMax ic -> cr + _ | _iaLoaded ic >= _iaMax ic -> cr -- THIS SHOULD TRY PUSHING TO THE NEXT MAGAZINE (la : las) -> fromMaybe (error "item loading error") $ do i <- cr ^? crManipulation . manObject . inInventory . ispItem return $ - cr & startLoadingStep la + cr & startLoadingStep la i & crInv . ix i . itUse . amagLoadStatus . iaProgress ?~ (la : las) -startLoadingStep :: LoadAction -> Creature -> Creature -startLoadingStep la cr = cr & crManipulation . manObject . inInventory . iselAction .~ ReloadAction (_actionTime la) la +startLoadingStep :: LoadAction + -> Int -- i think this is the inventory position? + -> Creature -> Creature +startLoadingStep la j cr = cr & crManipulation . manObject . inInventory . iselAction .~ ReloadAction (_actionTime la) la j rotateActionProgress :: ReloadStatus -> ReloadStatus rotateActionProgress ic = case ic ^. iaProgress of diff --git a/src/Dodge/Update/Input/InGame.hs b/src/Dodge/Update/Input/InGame.hs index 251056a80..d331f02da 100644 --- a/src/Dodge/Update/Input/InGame.hs +++ b/src/Dodge/Update/Input/InGame.hs @@ -116,7 +116,7 @@ updateInitialPressInGame uv sc = case sc of ScancodeP -> pauseGame uv ScancodeF -> over uvWorld youDropItem uv ScancodeM -> toggleMap uv - ScancodeR -> over (uvWorld . cWorld . lWorld . creatures . ix 0) crReload uv + ScancodeR -> over (uvWorld . cWorld . lWorld . creatures . ix 0) crReloadToggle uv ScancodeT -> over uvWorld testEvent uv ScancodeX -> uv & uvWorld %~ toggleTweakInv ScancodeC -> toggleCombineInv uv diff --git a/tags b/tags index ff81d1325..f72c94bf2 100644 --- a/tags +++ b/tags @@ -54,11 +54,11 @@ AddGoal src/Dodge/Data/ActionPlan.hs 45;" C AddTile src/Dodge/Room/AddTile.hs 1;" m AesonHelp src/AesonHelp.hs 1;" m AimAt src/Dodge/Data/ActionPlan.hs 84;" C -AimParams src/Dodge/Data/Item/Use.hs 111;" t +AimParams src/Dodge/Data/Item/Use.hs 101;" t AimParams src/Dodge/Default/AimParams.hs 1;" m AimParams src/Dodge/Default/Item/Held/AimParams.hs 1;" m AimParams src/Dodge/Default/Item/Use/AimParams.hs 1;" m -AimStance src/Dodge/Data/Item/Use.hs 129;" t +AimStance src/Dodge/Data/Item/Use.hs 119;" t Aiming src/Dodge/Creature/Stance/Data.hs 42;" C Aiming src/Dodge/Data/Creature/Stance.hs 39;" C AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C @@ -465,7 +465,6 @@ Consumable src/Dodge/Item/Consumable.hs 1;" m ConsumableFamily src/Dodge/Item/Family.hs 7;" C ConsumableItemType src/Dodge/Data/Item/Combine.hs 118;" t ConsumeUse src/Dodge/Data/Item/Use.hs 46;" C -ConsumeUse' src/Dodge/Data/Item/Use.hs 109;" t Consumption src/Dodge/Data/Item/Consumption.hs 5;" m Consumption src/Dodge/Data/Item/Use/Consumption.hs 8;" m Consumption src/Dodge/Default/Item/Held/Consumption.hs 1;" m @@ -847,7 +846,6 @@ EquipPosition src/Dodge/Equipment/Data.hs 17;" t EquipSite src/Dodge/Data/Equipment/Misc.hs 11;" t EquipSite src/Dodge/Equipment/Data.hs 6;" t EquipUse src/Dodge/Data/Item/Use.hs 50;" C -EquipUse' src/Dodge/Data/Item/Use.hs 108;" t Equipment src/Dodge/Data/Equipment.hs 12;" t Equipment src/Dodge/Data/Equipment.hs 3;" m Equipment src/Dodge/Data/Item/Use/Equipment.hs 5;" m @@ -1132,7 +1130,6 @@ HeldTractor src/Dodge/Data/Item/HeldUse.hs 28;" C HeldUse src/Dodge/Data/Item/Use.hs 29;" C HeldUse src/Dodge/Data/Item/HeldUse.hs 6;" m HeldUse src/Dodge/HeldUse.hs 1;" m -HeldUse' src/Dodge/Data/Item/Use.hs 107;" t HeldUseAmmoParams src/Dodge/Data/Item/HeldUse.hs 17;" C HelpNum src/HelpNum.hs 1;" m HelperParticle src/Dodge/WorldEvent/HelperParticle.hs 2;" m @@ -1277,7 +1274,7 @@ ItInvEffect src/Dodge/Data/ItEffect.hs 13;" C ItInvEffectDrop src/Dodge/Data/ItEffect.hs 29;" C ItInvEffectID src/Dodge/Data/ItEffect.hs 25;" C ItRewindEffect src/Dodge/Data/ItEffect.hs 17;" C -ItZoom src/Dodge/Data/Item/Use.hs 138;" t +ItZoom src/Dodge/Data/Item/Use.hs 128;" t Item src/Dodge/Data/Item.hs 33;" t Item src/Dodge/Base/Item.hs 1;" m Item src/Dodge/Data/Item.hs 6;" m @@ -1289,12 +1286,8 @@ ItemAttachment src/Dodge/Data/Item.hs 50;" t ItemBaseType src/Dodge/Combine/Data.hs 81;" t ItemBaseType src/Dodge/Data/Item/Combine.hs 85;" t ItemClust src/Dodge/Combine/Graph.hs 18;" C -ItemConsume src/Dodge/Data/Item/Use.hs 104;" C -ItemCraft src/Dodge/Data/Item/Use.hs 105;" C ItemDimension src/Dodge/Data/Item/Misc.hs 13;" t -ItemEquip src/Dodge/Data/Item/Use.hs 103;" C ItemFamily src/Dodge/Item/Family.hs 3;" t -ItemHeld src/Dodge/Data/Item/Use.hs 102;" C ItemLocation src/Dodge/Data/Item/Location.hs 11;" t ItemModuleType src/Dodge/Combine/Data.hs 197;" t ItemModuleType src/Dodge/Data/Item/Combine.hs 206;" t @@ -1307,7 +1300,6 @@ ItemType src/Dodge/Combine/Data.hs 12;" t ItemType src/Dodge/Data/Item/Combine.hs 16;" t ItemUnlocker src/Dodge/Lock/Data.hs 13;" C ItemUse src/Dodge/Data/Item/Use.hs 28;" t -ItemUse' src/Dodge/Data/Item/Use.hs 101;" t JETPACK src/Dodge/Combine/Data.hs 116;" C JETPACK src/Dodge/Data/Item/Combine.hs 138;" C JGK src/Control/Foldl/JGK.hs 1;" m @@ -1657,7 +1649,7 @@ Music src/Music.hs 1;" m MusicData src/Music.hs 7;" t Mute src/Dodge/Data/Creature/Misc.hs 28;" C MuzFlare src/Dodge/Data/Flare.hs 15;" C -Muzzle src/Dodge/Data/Item/Use.hs 122;" t +Muzzle src/Dodge/Data/Item/Use.hs 112;" t MvForward src/Dodge/Data/ActionPlan.hs 35;" C MvPt src/Dodge/MvPt.hs 1;" m MvTurnToward src/Dodge/Data/ActionPlan.hs 34;" C @@ -1820,7 +1812,7 @@ OnSpecial src/Dodge/Equipment/Data.hs 24;" C OnTurret src/Dodge/Data/Item/Location.hs 13;" C OnceSound src/Dodge/Data/SoundOrigin.hs 15;" C OneArgument src/Dodge/Data/Terminal.hs 94;" C -OneHand src/Dodge/Data/Item/Use.hs 133;" C +OneHand src/Dodge/Data/Item/Use.hs 123;" C OnwardCluster src/Dodge/Data/RoomCluster.hs 14;" C OnwardCluster src/Dodge/RoomCluster/Data.hs 12;" C OnwardList src/Dodge/Annotation/Data.hs 15;" C @@ -2708,9 +2700,9 @@ TweakTractionPower src/Dodge/Data/Item/Tweak.hs 22;" C TweakType src/Dodge/Data/Item/Tweak.hs 20;" t Tweakable src/Dodge/Data/Item/Tweak.hs 15;" C TwistGoal src/Dodge/Data/Scenario.hs 15;" C -TwoHandFlat src/Dodge/Data/Item/Use.hs 132;" C -TwoHandOver src/Dodge/Data/Item/Use.hs 131;" C -TwoHandUnder src/Dodge/Data/Item/Use.hs 130;" C +TwoHandFlat src/Dodge/Data/Item/Use.hs 122;" C +TwoHandOver src/Dodge/Data/Item/Use.hs 121;" C +TwoHandUnder src/Dodge/Data/Item/Use.hs 120;" C Type src/Dodge/Data/Damage/Type.hs 6;" m Typical src/Shape/Data.hs 36;" C UPtLayer src/Dodge/Picture/Layer/Data.hs 16;" C @@ -2937,13 +2929,13 @@ _actionTime src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 14;" f _actionTime src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 17;" f _actionTime src/Dodge/Data/LoadAction.hs 11;" f _actionTime src/Dodge/Data/LoadAction.hs 14;" f -_aimHandlePos src/Dodge/Data/Item/Use.hs 117;" f -_aimMuzzles src/Dodge/Data/Item/Use.hs 118;" f -_aimRange src/Dodge/Data/Item/Use.hs 114;" f -_aimStance src/Dodge/Data/Item/Use.hs 116;" f -_aimTurnSpeed src/Dodge/Data/Item/Use.hs 113;" f -_aimWeight src/Dodge/Data/Item/Use.hs 112;" f -_aimZoom src/Dodge/Data/Item/Use.hs 115;" f +_aimHandlePos src/Dodge/Data/Item/Use.hs 107;" f +_aimMuzzles src/Dodge/Data/Item/Use.hs 108;" f +_aimRange src/Dodge/Data/Item/Use.hs 104;" f +_aimStance src/Dodge/Data/Item/Use.hs 106;" f +_aimTurnSpeed src/Dodge/Data/Item/Use.hs 103;" f +_aimWeight src/Dodge/Data/Item/Use.hs 102;" f +_aimZoom src/Dodge/Data/Item/Use.hs 105;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 21;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 24;" f _allocNewPos src/Dodge/Data/RightButtonOptions.hs 28;" f @@ -3528,9 +3520,9 @@ _iyBase src/Dodge/Data/Item/Combine.hs 17;" f _iyModules src/Dodge/Combine/Data.hs 14;" f _iyModules src/Dodge/Data/Item/Combine.hs 18;" f _iyStack src/Dodge/Combine/Data.hs 15;" f -_izFac src/Dodge/Data/Item/Use.hs 141;" f -_izMax src/Dodge/Data/Item/Use.hs 139;" f -_izMin src/Dodge/Data/Item/Use.hs 140;" f +_izFac src/Dodge/Data/Item/Use.hs 131;" f +_izMax src/Dodge/Data/Item/Use.hs 129;" f +_izMin src/Dodge/Data/Item/Use.hs 130;" f _killTarget src/Dodge/Data/ActionPlan.hs 198;" f _lClock src/Dodge/Data/LWorld.hs 145;" f _lWorld src/Dodge/Data/CWorld.hs 26;" f @@ -3655,9 +3647,9 @@ _mvSpeed src/Dodge/Data/Creature/Misc.hs 39;" f _mvToPoint src/Dodge/Data/Creature.hs 98;" f _mvTurnJit src/Dodge/Data/Creature/Misc.hs 43;" f _mvTurnRad src/Dodge/Data/Creature/Misc.hs 42;" f -_mzInaccuracy src/Dodge/Data/Item/Use.hs 125;" f -_mzPos src/Dodge/Data/Item/Use.hs 123;" f -_mzRot src/Dodge/Data/Item/Use.hs 124;" f +_mzInaccuracy src/Dodge/Data/Item/Use.hs 115;" f +_mzPos src/Dodge/Data/Item/Use.hs 113;" f +_mzRot src/Dodge/Data/Item/Use.hs 114;" f _newArcStep src/Dodge/Data/Item/Params.hs 57;" f _newBeams src/Dodge/Data/LWorld.hs 114;" f _noClip src/Dodge/Debug/Flag/Data.hs 7;" f @@ -3861,6 +3853,7 @@ _rboBaseBloom src/Data/Preload/Render.hs 38;" f _recoil src/Dodge/Data/Item/Use.hs 72;" f _reloadAction src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 45;" f _reloadAction src/Dodge/Data/LoadAction.hs 26;" f +_reloadInvID src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 45;" f _remotePos src/Dodge/Data/Item/Scope.hs 17;" f _remoteZoom src/Dodge/Data/Item/Scope.hs 18;" f _renderData src/Data/Preload.hs 11;" f @@ -4314,7 +4307,7 @@ aSound src/Dodge/SoundLogic.hs 68;" f aStaticBall src/Dodge/WorldEvent/SpawnParticle.hs 41;" f aTeslaArcAt src/Dodge/Particle/TeslaArc.hs 12;" f aTeslaArcAt src/Dodge/Tesla/Arc.hs 20;" f -aTractorBeam src/Dodge/Item/Weapon/BatteryGuns.hs 199;" f +aTractorBeam src/Dodge/Item/Weapon/BatteryGuns.hs 149;" f aTreeStrut src/Dodge/Layout/Tree/GenerateStructure.hs 39;" f aTreeStrut src/Dodge/Tree/GenerateStructure.hs 37;" f aWallPulse src/Dodge/Item/Weapon/UseEffect.hs 21;" f @@ -4469,7 +4462,6 @@ attachList' src/Dodge/Tree/Compose.hs 80;" f attachOnward src/Dodge/Tree/Compose.hs 95;" f attachOnward' src/Dodge/Tree/Compose.hs 98;" f attachTree src/Dodge/Tree/Compose.hs 38;" f -attachmentTree src/Dodge/Base/You.hs 39;" f attentionViewPoint src/Dodge/Creature/ReaderUpdate.hs 67;" f attribSize src/Shader/Compile.hs 352;" f autoAmr src/Dodge/Item/Held/Rod.hs 55;" f @@ -4507,7 +4499,7 @@ bangRod src/Dodge/Item/Weapon/BulletGun/Rod.hs 18;" f bangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 478;" f bangStick src/Dodge/Item/Held/Stick.hs 16;" f bangStick src/Dodge/Item/Weapon/BulletGun/Stick.hs 17;" f -bangStickSoundChoice src/Dodge/HeldUse.hs 494;" f +bangStickSoundChoice src/Dodge/HeldUse.hs 488;" f bangStickSoundChoice src/Dodge/HeldUse/BulletWeapon.hs 226;" f barPP src/Dodge/Room/Foreground.hs 236;" f barrel src/Dodge/Creature/Inanimate.hs 17;" f @@ -4533,7 +4525,7 @@ basicAttentionUpdate src/Dodge/Creature/AlertLevel.hs 50;" f basicAttentionUpdate src/Dodge/Creature/Perception.hs 127;" f basicAwarenessUpdate src/Dodge/Creature/AlertLevel.hs 25;" f basicAwarenessUpdate src/Dodge/Creature/Perception.hs 37;" f -basicBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 176;" f +basicBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 126;" f basicBulDams src/Dodge/Item/Weapon/Bullet.hs 26;" f basicCrPict src/Dodge/Creature/Picture.hs 25;" f basicCrShape src/Dodge/Creature/Picture.hs 32;" f @@ -4594,7 +4586,7 @@ boosterGun src/Dodge/Item/Weapon/Booster.hs 111;" f bossKeyItems src/Dodge/LockAndKey.hs 11;" f bossRoom src/Dodge/Room/Boss.hs 59;" f bounceBall src/Dodge/Base/Collide.hs 77;" f -bounceDir src/Dodge/Bullet.hs 89;" f +bounceDir src/Dodge/Bullet.hs 86;" f bounceModule src/Dodge/Item/Craftable.hs 29;" f bouncePoint src/Dodge/Base/Collide.hs 87;" f boundPoints src/Bound.hs 10;" f @@ -4625,7 +4617,7 @@ bulletBeltPack src/Dodge/Item/Equipment.hs 74;" f bulletBodyCraft src/Dodge/Item/Craftable.hs 24;" f bulletCombinations src/Dodge/Combine/Graph.hs 35;" f bulletMagazines src/Dodge/Combine/Combinations.hs 232;" f -bulletSpawn src/Dodge/Bullet.hs 94;" f +bulletSpawn src/Dodge/Bullet.hs 91;" f bulletTypes src/Dodge/TweakBullet.hs 26;" f bulletWeapons src/Dodge/Combine/Combinations.hs 240;" f burstRifle src/Dodge/Item/Held/Cane.hs 86;" f @@ -4638,7 +4630,7 @@ canAttachTargeting src/Dodge/Item/Display.hs 33;" f canHeldScrollAttach src/Dodge/HeldScroll.hs 75;" f canSee src/Dodge/Base/Collide.hs 228;" f canSeeIndirect src/Dodge/Base/Collide.hs 235;" f -caneStickSoundChoice src/Dodge/HeldUse.hs 489;" f +caneStickSoundChoice src/Dodge/HeldUse.hs 483;" f cardList src/Dodge/Base/CardinalPoint.hs 6;" f cardVec src/Dodge/Base/CardinalPoint.hs 9;" f cardinalVectors src/Dodge/FloorItem.hs 38;" f @@ -4696,7 +4688,7 @@ circOnSegNoEndpoints src/Geometry.hs 94;" f circOnSomeWall src/Dodge/Base/Collide.hs 182;" f circle src/Picture/Base.hs 180;" f circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f -circleLaser src/Dodge/Item/Weapon/BatteryGuns.hs 138;" f +circleLaser src/Dodge/Item/Weapon/BatteryGuns.hs 88;" f circleSolid src/Picture/Base.hs 164;" f circleSolidCol src/Picture/Base.hs 168;" f clClSpringVel src/Dodge/Update.hs 630;" f @@ -4792,8 +4784,8 @@ composeTree src/Dodge/Tree/Compose.hs 46;" f computerBeepingS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 458;" f conEffects src/Dodge/Concurrent.hs 17;" f concBall src/Dodge/WorldEvent/SpawnParticle.hs 27;" f -coneRandItemParams src/Dodge/HeldUse.hs 503;" f -coneRandItemUpdate src/Dodge/HeldUse.hs 497;" f +coneRandItemParams src/Dodge/HeldUse.hs 497;" f +coneRandItemUpdate src/Dodge/HeldUse.hs 491;" f connectRoom src/Dodge/Layout/Tree/Either.hs 48;" f connectTrunk src/Dodge/Layout/Tree/Either.hs 54;" f connectionBlurb src/Dodge/Terminal.hs 100;" f @@ -4822,7 +4814,7 @@ crBlips src/Dodge/Item/Weapon/UseEffect.hs 50;" f crBlips src/Dodge/RadarSweep.hs 68;" f crCanSeeCr src/Dodge/Creature/Test.hs 48;" f crCanShoot src/Dodge/Creature/Test.hs 85;" f -crCancelReloading src/Dodge/Reloading.hs 11;" f +crCancelReloading src/Dodge/Reloading.hs 12;" f crCrSpring src/Dodge/Update.hs 648;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 28;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 37;" f @@ -4850,7 +4842,7 @@ crNearPoint src/Dodge/Creature/Test.hs 135;" f crNearSeg src/Dodge/Creature/Property.hs 36;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 35;" f crOnWall src/Dodge/WallCreatureCollisions.hs 84;" f -crReload src/Dodge/Reloading.hs 44;" f +crReloadToggle src/Dodge/Reloading.hs 45;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 67;" f crShape src/Dodge/Render/Shape.hs 28;" f crSpring src/Dodge/Update.hs 643;" f @@ -4874,7 +4866,7 @@ createHeldLight src/Dodge/ItEffect.hs 70;" f createLightMap src/Render.hs 26;" f createNewArc src/Dodge/Tesla/Arc.hs 76;" f createPathGrid src/Dodge/Room/Path.hs 21;" f -createProjectile src/Dodge/Projectile/Create.hs 10;" f +createProjectile src/Dodge/Projectile/Create.hs 13;" f createPutItem src/Dodge/Inventory/Add.hs 52;" f createShieldWall src/Dodge/Euse.hs 134;" f createTorchLightOffset src/Dodge/LightSource/Torch.hs 9;" f @@ -4952,7 +4944,7 @@ damageSensor src/Dodge/Machine/Sensor.hs 16;" f damageSensor src/Dodge/Placement/Instance/Sensor.hs 15;" f damageSensor src/Dodge/Placements/Sensor.hs 15;" f damageStone src/Dodge/Material/Damage.hs 20;" f -damageThingHit src/Dodge/Bullet.hs 165;" f +damageThingHit src/Dodge/Bullet.hs 162;" f damageTypeThreshold src/Dodge/Placement/Instance/Sensor.hs 45;" f damageUsing src/Dodge/Machine/Update.hs 151;" f damageWall src/Dodge/Wall/Damage.hs 15;" f @@ -5111,7 +5103,7 @@ deleteWallFromZones src/Dodge/Wall/Zone.hs 23;" f deleteWallID src/Dodge/Wall/Delete.hs 13;" f deleteWallIDs src/Dodge/Wall/Delete.hs 28;" f denormalEdges src/Polyhedra.hs 135;" f -destroyAt src/Dodge/Bullet.hs 190;" f +destroyAt src/Dodge/Bullet.hs 187;" f destroyAt src/Dodge/WorldEvent/HitEffect.hs 24;" f destroyBlock src/Dodge/Block.hs 51;" f destroyDoor src/Dodge/Block.hs 79;" f @@ -5192,7 +5184,7 @@ doIntImp src/Dodge/CreatureEffect.hs 24;" f doInvEffect src/Dodge/ItEffect.hs 9;" f doItCrWdWd src/Dodge/WorldEffect.hs 43;" f doItemTimeScroll src/Dodge/Update.hs 180;" f -doLoadAction src/Dodge/Reloading.hs 80;" f +doLoadAction src/Dodge/Reloading.hs 93;" f doLoop src/Loop.hs 60;" f doMCrAc src/Dodge/CreatureEffect.hs 56;" f doMP2Ac src/Dodge/CreatureEffect.hs 72;" f @@ -5373,7 +5365,7 @@ dropItemKey src/Dodge/Config/KeyConfig.hs 24;" f drumMag src/Dodge/Item/Ammo.hs 36;" f dualBeam src/Dodge/Item/Held/BatteryGuns.hs 136;" f dualBeamPic src/Dodge/Item/Draw/SPic.hs 463;" f -dualRayAt src/Dodge/Item/Weapon/BatteryGuns.hs 194;" f +dualRayAt src/Dodge/Item/Weapon/BatteryGuns.hs 144;" f dummyMenuOption src/Dodge/Menu/Option.hs 81;" f duplicateItem src/Dodge/Item/Weapon/TriggerType.hs 712;" f duplicateLoaded src/Dodge/Item/Weapon/TriggerType.hs 663;" f @@ -5429,7 +5421,7 @@ expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f expandPolyCorners src/Dodge/LevelGen/StaticWalls.hs 103;" f expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f expandTreeBy src/Dodge/Layout/Tree/Either.hs 16;" f -expireAndDamage src/Dodge/Bullet.hs 172;" f +expireAndDamage src/Dodge/Bullet.hs 169;" f expireAndDamage src/Dodge/Particle/HitEffect/ExpireAndDamage.hs 11;" f expireAndDamageFL src/Dodge/Flame.hs 48;" f explodeRemoteRocket src/Dodge/Item/Weapon/Launcher.hs 10;" f @@ -5466,11 +5458,11 @@ findReverseEdgeList src/Polyhedra.hs 56;" f findWallFreeDropPoint src/Dodge/FloorItem.hs 46;" f findWallsInPolygon src/Dodge/LevelGen/StaticWalls/Deprecated.hs 78;" f fireLoudS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 504;" f -fireRemoteShell src/Dodge/HeldUse.hs 464;" f +fireRemoteShell src/Dodge/HeldUse.hs 457;" f fireS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 332;" f -fireShell src/Dodge/Projectile/Create.hs 17;" f +fireShell src/Dodge/Projectile/Create.hs 35;" f fireSound src/Dodge/SoundLogic/Synonyms.hs 4;" f -fireTrackingShell src/Dodge/Projectile/Create.hs 62;" f +fireTrackingShell src/Dodge/Projectile/Create.hs 81;" f firstBreather src/Dodge/Room/Breather.hs 9;" f firstWorldLoad appDodge/Main.hs 77;" f fixedCoordPictures src/Dodge/Render/Picture.hs 17;" f @@ -5576,7 +5568,7 @@ geometryQuickCheckTests test/Spec.hs 55;" f geometryTests test/Spec.hs 17;" f geometryUnitTests test/Spec.hs 22;" f geqConstr src/SameConstr.hs 21;" f -getAmmoMagazine src/Dodge/HeldUse.hs 441;" f +getAmmoMagazine src/Dodge/HeldUse.hs 435;" f getAmmoMags src/Dodge/Creature/Impulse/UseItem.hs 35;" f getArguments src/Dodge/Update/Scroll.hs 147;" f getArguments' src/Dodge/Update/Scroll.hs 135;" f @@ -5702,7 +5694,7 @@ highBar src/Dodge/Room/Foreground.hs 89;" f highDiagonalMesh src/Dodge/Room/Foreground.hs 35;" f highMesh src/Dodge/Room/Foreground.hs 25;" f hit1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 412;" f -hitEffFromBul src/Dodge/Bullet.hs 134;" f +hitEffFromBul src/Dodge/Bullet.hs 131;" f hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 382;" f hitSound src/Dodge/SoundLogic/Synonyms.hs 4;" f holdForm src/Dodge/Creature/Boid.hs 136;" f @@ -5939,11 +5931,11 @@ lasWide src/Dodge/Item/Held/BatteryGuns.hs 97;" f lasWideRate src/Dodge/HeldUse.hs 353;" f latchkey src/Dodge/Item/Held/Utility.hs 23;" f latchkey src/Dodge/Item/PassKey.hs 14;" f -launcher src/Dodge/Item/Held/Launcher.hs 11;" f +launcher src/Dodge/Item/Held/Launcher.hs 10;" f launcherCrit src/Dodge/Creature/LauncherCrit.hs 12;" f launcherPic src/Dodge/Item/Draw/SPic.hs 423;" f launcherSound src/Dodge/SoundLogic/Synonyms.hs 4;" f -launcherX src/Dodge/Item/Held/Launcher.hs 40;" f +launcherX src/Dodge/Item/Held/Launcher.hs 39;" f layerNum src/Picture/Data.hs 31;" f layoutLevelFromSeed src/Dodge/LevelGen.hs 47;" f ldpVerticalSelection src/Dodge/Update/Input/ScreenLayer.hs 90;" f @@ -6067,7 +6059,7 @@ makeDefaultCorpse src/Dodge/Corpse/Make.hs 14;" f makeDoorDebris src/Dodge/Block/Debris.hs 18;" f makeEnumOption src/Dodge/Menu/OptionType.hs 13;" f makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 79;" f -makeFlak src/Dodge/Bullet.hs 120;" f +makeFlak src/Dodge/Bullet.hs 117;" f makeFlame src/Dodge/Flame.hs 131;" f makeFlame src/Dodge/Particle/Flame.hs 9;" f makeFlameExplosionAt src/Dodge/WorldEvent/Explosion.hs 62;" f @@ -6075,7 +6067,7 @@ makeFlamelet src/Dodge/EnergyBall.hs 16;" f makeFlamerSmokeAt src/Dodge/WorldEvent/Cloud.hs 68;" f makeFlashBall src/Dodge/EnergyBall.hs 74;" f makeFootstepSound src/Dodge/Creature/State/WalkCycle.hs 32;" f -makeFragBullets src/Dodge/Bullet.hs 105;" f +makeFragBullets src/Dodge/Bullet.hs 102;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 80;" f makeGrid src/Grid.hs 46;" f makeIntInterval src/Dodge/Zoning/Base.hs 33;" f @@ -6093,7 +6085,7 @@ makeShaderProgram src/Shader/Compile.hs 287;" f makeShaderUsingVAO src/Shader/Compile.hs 155;" f makeShaderUsingVBO src/Shader/Compile.hs 78;" f makeShaderVBO src/Shader/Compile.hs 38;" f -makeShell src/Dodge/Projectile/Create.hs 37;" f +makeShell src/Dodge/Projectile/Create.hs 54;" f makeShockwaveAt src/Dodge/WorldEvent/Shockwave.hs 12;" f makeSourcedShader src/Shader/Compile.hs 203;" f makeStartCloudAt src/Dodge/WorldEvent/Cloud.hs 60;" f @@ -6144,7 +6136,7 @@ mcProximitySensorUpdate src/Dodge/Machine/Update.hs 104;" f mcSPic src/Dodge/Render/ShapePicture.hs 169;" f mcSensorTriggerUpdate src/Dodge/Machine/Update.hs 69;" f mcSensorUpdate src/Dodge/Machine/Update.hs 99;" f -mcShootLaser src/Dodge/HeldUse.hs 511;" f +mcShootLaser src/Dodge/HeldUse.hs 505;" f mcTriggerVal src/Dodge/Machine/Update.hs 75;" f mcTypeUpdate src/Dodge/Machine/Update.hs 24;" f mcUseHeld src/Dodge/HeldUse.hs 356;" f @@ -6245,7 +6237,7 @@ mouseCursorType src/Dodge/Render/Picture.hs 68;" f mouseOverSelectionList src/Dodge/Update/Input/ScreenLayer.hs 73;" f mousePlus src/Dodge/Render/Picture.hs 80;" f mouseWorldPos src/Dodge/Base/Coordinate.hs 48;" f -moveBullet src/Dodge/Bullet.hs 182;" f +moveBullet src/Dodge/Bullet.hs 179;" f moveCombineSel src/Dodge/Update/Scroll.hs 55;" f moveDoorToward src/Dodge/LevelGen/MoveDoor.hs 22;" f moveDownKey src/Dodge/Config/KeyConfig.hs 19;" f @@ -6255,7 +6247,7 @@ moveLSThen src/Dodge/Placement/Instance/LightSource.hs 31;" f moveLaser src/Dodge/Item/Weapon/Laser.hs 48;" f moveLeftKey src/Dodge/Config/KeyConfig.hs 20;" f moveOldHotkey src/Dodge/Hotkey.hs 32;" f -movePenBullet src/Dodge/Bullet.hs 200;" f +movePenBullet src/Dodge/Bullet.hs 197;" f moveRightKey src/Dodge/Config/KeyConfig.hs 21;" f moveRoomBy src/Dodge/Room/Link.hs 53;" f moveSelectionMapSelection src/SelectionIntMap.hs 47;" f @@ -6383,9 +6375,9 @@ overColObj src/Shape.hs 269;" f overColSH src/Shape.hs 237;" f overLnkPosDir src/Dodge/RoomLink.hs 100;" f overLnkType src/Dodge/RoomLink.hs 87;" f -overNozzle src/Dodge/HeldUse.hs 422;" f -overNozzles src/Dodge/HeldUse.hs 400;" f -overNozzles' src/Dodge/HeldUse.hs 409;" f +overNozzle src/Dodge/HeldUse.hs 416;" f +overNozzles src/Dodge/HeldUse.hs 394;" f +overNozzles' src/Dodge/HeldUse.hs 403;" f overPos src/Picture/Base.hs 302;" f overPosObj src/Shape.hs 273;" f overPosSH src/Shape.hs 257;" f @@ -6422,7 +6414,7 @@ pauseSound src/Dodge/SoundLogic.hs 41;" f pauseTime src/Dodge/Update.hs 171;" f peZoneSize src/Dodge/Zoning/Pathing.hs 46;" f pedestalRoom src/Dodge/Room/Containing.hs 49;" f -penThing src/Dodge/Bullet.hs 213;" f +penThing src/Dodge/Bullet.hs 210;" f penWalls src/Dodge/Particle/HitEffect.hs 15;" f penWalls src/Dodge/WorldEvent/HitEffect.hs 38;" f penetrate src/Dodge/Particle/HitEffect/Penetrate.hs 12;" f @@ -6888,7 +6880,7 @@ rotate3 src/Geometry/Vector3D.hs 48;" f rotate3x src/Geometry/Vector3D.hs 60;" f rotate3y src/Geometry/Vector3D.hs 66;" f rotate3z src/Geometry/Vector3D.hs 54;" f -rotateActionProgress src/Dodge/Reloading.hs 74;" f +rotateActionProgress src/Dodge/Reloading.hs 87;" f rotateCamera src/Dodge/Update/Camera.hs 221;" f rotateCameraBy src/Dodge/Update/Camera.hs 205;" f rotateCameraMinusKey src/Dodge/Config/KeyConfig.hs 30;" f @@ -7005,7 +6997,7 @@ setDepth src/Picture/Base.hs 128;" f setDirPS src/Dodge/PlacementSpot.hs 49;" f setFallback src/Dodge/PlacementSpot.hs 127;" f setFirstPosSelectionSections src/Dodge/SelectionSections.hs 23;" f -setFromToDams src/Dodge/Bullet.hs 160;" f +setFromToDams src/Dodge/Bullet.hs 157;" f setHotkey src/Dodge/Hotkey.hs 38;" f setInLinks src/Dodge/RoomLink.hs 51;" f setInLinksByType src/Dodge/RoomLink.hs 54;" f @@ -7100,17 +7092,17 @@ shootBangCone src/Dodge/HeldUse/BulletWeapon.hs 98;" f shootBangRod src/Dodge/HeldUse/BulletWeapon.hs 185;" f shootBangstick src/Dodge/HeldUse/BulletWeapon.hs 9;" f shootBezier src/Dodge/Item/Weapon/Bezier.hs 51;" f -shootBullet src/Dodge/Bullet.hs 61;" f +shootBullet src/Dodge/Bullet.hs 59;" f shootBurstRifle src/Dodge/HeldUse/BulletWeapon.hs 164;" f shootBurstRifleRepeat src/Dodge/HeldUse/BulletWeapon.hs 176;" f -shootDualLaser src/Dodge/Item/Weapon/BatteryGuns.hs 153;" f +shootDualLaser src/Dodge/Item/Weapon/BatteryGuns.hs 103;" f shootElephantGun src/Dodge/HeldUse/BulletWeapon.hs 196;" f shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f shootFlameSpitter src/Dodge/HeldUse/SprayWeapon.hs 9;" f shootFlameSpitterRepeat src/Dodge/HeldUse/SprayWeapon.hs 19;" f shootFlameThrower src/Dodge/HeldUse/SprayWeapon.hs 26;" f shootL src/Dodge/Item/Weapon/TriggerType.hs 403;" f -shootLaser src/Dodge/Item/Weapon/BatteryGuns.hs 127;" f +shootLaser src/Dodge/Item/Weapon/BatteryGuns.hs 77;" f shootMachineGun src/Dodge/HeldUse/BulletWeapon.hs 218;" f shootMachinePistol src/Dodge/HeldUse/BulletWeapon.hs 62;" f shootMiniGun src/Dodge/HeldUse/BulletWeapon.hs 113;" f @@ -7121,7 +7113,7 @@ shootRevolverXRepeat src/Dodge/HeldUse/BulletWeapon.hs 49;" f shootRifle src/Dodge/HeldUse/BulletWeapon.hs 140;" f shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f shootSmgMod src/Dodge/HeldUse/BulletWeapon.hs 86;" f -shootTeslaArc src/Dodge/HeldUse.hs 520;" f +shootTeslaArc src/Dodge/HeldUse.hs 514;" f shootTillEmpty src/Dodge/Creature/Volition.hs 18;" f shootVolleyGun src/Dodge/HeldUse/BulletWeapon.hs 128;" f shootersRoom src/Dodge/Room/Room.hs 317;" f @@ -7147,7 +7139,7 @@ showLoadActionType src/Dodge/Item/Display.hs 174;" f showPhaseV src/Dodge/Tweak/Show.hs 16;" f showReloadProgress src/Dodge/Item/Display.hs 155;" f showTerminalError src/Dodge/Debug/Terminal.hs 75;" f -showTimeFlow src/Dodge/TestString.hs 56;" f +showTimeFlow src/Dodge/TestString.hs 59;" f showTractionPower src/Dodge/Tweak/Show.hs 22;" f showTweak src/Dodge/Tweak/Show.hs 5;" f shrinkGun src/Dodge/Item/Weapon/Utility.hs 44;" f @@ -7285,20 +7277,20 @@ ssfold src/FoldableHelp.hs 104;" f stackPicturesAt src/Dodge/Render/List.hs 81;" f stackPicturesAtOff src/Dodge/Render/List.hs 84;" f stackText src/Picture/Base.hs 188;" f -stackedInventory src/Dodge/Creature.hs 259;" f +stackedInventory src/Dodge/Creature.hs 263;" f startCr src/Dodge/Creature.hs 91;" f startCrafts src/Dodge/Room/Start.hs 102;" f startInvList src/Dodge/Creature.hs 109;" f startInventory src/Dodge/Creature.hs 112;" f -startLoading src/Dodge/Reloading.hs 59;" f -startLoadingStep src/Dodge/Reloading.hs 71;" f +startLoading src/Dodge/Reloading.hs 72;" f +startLoadingStep src/Dodge/Reloading.hs 84;" f startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f startRoom src/Dodge/Room/Start.hs 62;" f startSeedGame src/Dodge/StartNewGame.hs 20;" f startSeedGameConc src/Dodge/StartNewGame.hs 27;" f stateUpdate src/Dodge/Creature/State.hs 55;" f statsModifier src/Dodge/Creature/Info.hs 14;" f -stepReloading src/Dodge/Reloading.hs 23;" f +stepReloading src/Dodge/Reloading.hs 24;" f stone1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 386;" f stone2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f stone3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 408;" f @@ -7399,7 +7391,7 @@ teslaParams src/Dodge/Tesla/ItemParams.hs 6;" f testCrossWalls src/Dodge/Room/Path.hs 47;" f testEvent src/Dodge/Event/Test.hs 10;" f testEventKey src/Dodge/Config/KeyConfig.hs 27;" f -testInventory src/Dodge/Creature.hs 236;" f +testInventory src/Dodge/Creature.hs 240;" f testPic src/Dodge/Render/ShapePicture.hs 153;" f testStringInit src/Dodge/TestString.hs 21;" f text src/Picture/Base.hs 192;" f @@ -7480,7 +7472,7 @@ torqueSideEffect src/Dodge/Item/Weapon/TriggerType.hs 639;" f torso src/Dodge/Creature/Picture.hs 132;" f tractCr src/Dodge/TractorBeam/Update.hs 27;" f tractFlIt src/Dodge/TractorBeam/Update.hs 22;" f -tractorBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 210;" f +tractorBeamAt src/Dodge/Item/Weapon/BatteryGuns.hs 160;" f tractorGun src/Dodge/Item/Held/BatteryGuns.hs 73;" f tractorGunPic src/Dodge/Item/Draw/SPic.hs 477;" f tractorGunTweak src/Dodge/Item/Held/BatteryGuns.hs 89;" f @@ -7562,13 +7554,14 @@ tryChargeBattery src/Dodge/Euse.hs 43;" f tryCombine src/Dodge/Update/Input/InGame.hs 252;" f tryGetChannel src/Sound.hs 96;" f tryMeleeAttack src/Dodge/Creature/ReaderUpdate.hs 37;" f -tryNextLoadAction src/Dodge/Reloading.hs 35;" f +tryNextLoadAction src/Dodge/Reloading.hs 36;" f tryPlay src/Sound.hs 83;" f tryPutItemInInv src/Dodge/Inventory/Add.hs 27;" f trySeedFromClipboard src/Dodge/Menu.hs 88;" f trySiphonFuel src/Dodge/Euse.hs 46;" f trySpinByCID src/Dodge/Projectile/Update.hs 124;" f -tryStartLoading src/Dodge/Reloading.hs 49;" f +tryStartLoadMagazine src/Dodge/Reloading.hs 57;" f +tryStartLoading src/Dodge/Reloading.hs 50;" f tryUseItem src/Dodge/Creature/Action/UseItem.hs 20;" f turnTo src/Dodge/Movement/Turn.hs 4;" f turnTo src/Dodge/Placements/Turret.hs 71;" f @@ -7608,7 +7601,6 @@ unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 139;" f unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 122;" f unusedSpotNearInLink src/Dodge/PlacementSpot.hs 191;" f upCT src/Dodge/Targeting.hs 34;" f -upDownAttachments src/Dodge/Base/You.hs 44;" f upHammer src/Dodge/Default.hs 77;" f upProjectile src/Dodge/Projectile/Update.hs 56;" f updateAllNodes src/TreeHelp.hs 85;" f @@ -7753,8 +7745,8 @@ useAmmoUpTo src/Dodge/Item/Weapon/TriggerType.hs 350;" f useC src/Dodge/Cuse.hs 6;" f useE src/Dodge/Euse.hs 24;" f useEquipment src/Dodge/Creature/State.hs 219;" f -useForceFieldGun src/Dodge/HeldUse.hs 533;" f -useGasParams src/Dodge/HeldUse.hs 450;" f +useForceFieldGun src/Dodge/HeldUse.hs 527;" f +useGasParams src/Dodge/HeldUse.hs 444;" f useHeld src/Dodge/HeldUse.hs 361;" f useHotKey src/Dodge/Creature/YourControl.hs 49;" f useItem src/Dodge/Creature/Action/UseItem.hs 14;" f @@ -7941,20 +7933,19 @@ xyzV4 src/Geometry/Vector.hs 207;" f yIntercepts' src/Dodge/Zoning/Base.hs 74;" f yV2 src/Geometry/Vector.hs 203;" f yellow src/Color.hs 17;" f -you src/Dodge/Base/You.hs 11;" f +you src/Dodge/Base/You.hs 17;" f youBox' src/Dodge/Creature/ShadowBox.hs 8;" f youDropItem src/Dodge/Creature/Action.hs 192;" f youSil src/Dodge/Creature/ShadowBox.hs 15;" f -youc src/Dodge/Base/You.hs 14;" f yourAugmentedItem src/Dodge/Render/HUD.hs 118;" 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 yourInfo src/Dodge/Creature/Info.hs 8;" f -yourInv src/Dodge/Base/You.hs 36;" f -yourItem src/Dodge/Base/You.hs 17;" f -yourScopeInvID src/Dodge/Base/You.hs 30;" f -yourScrollAttachment src/Dodge/Base/You.hs 22;" f +yourInv src/Dodge/Base/You.hs 39;" f +yourItem src/Dodge/Base/You.hs 20;" f +yourScopeInvID src/Dodge/Base/You.hs 33;" f +yourScrollAttachment src/Dodge/Base/You.hs 25;" f yourStatsInfo src/Dodge/Creature/Info.hs 25;" f zConnect src/Dodge/Render/Connectors.hs 9;" f zConnectCol src/Dodge/Render/Connectors.hs 16;" f