From f9f4fc02ea2d6167fa42f62d24b3aba6c8928403 Mon Sep 17 00:00:00 2001 From: justin Date: Fri, 21 Nov 2025 11:02:37 +0000 Subject: [PATCH] Cleanup --- src/Dodge/Creature.hs | 2 - src/Dodge/Creature/ChainUpdates.hs | 9 --- src/Dodge/Creature/SentinelAI.hs | 96 +++++++++++++++-------------- src/Dodge/Humanoid.hs | 7 ++- src/Dodge/Render.hs | 1 - tags | 98 ++++++++++++++---------------- 6 files changed, 101 insertions(+), 112 deletions(-) delete mode 100644 src/Dodge/Creature/ChainUpdates.hs diff --git a/src/Dodge/Creature.hs b/src/Dodge/Creature.hs index 5e8997e01..2b8307fad 100644 --- a/src/Dodge/Creature.hs +++ b/src/Dodge/Creature.hs @@ -10,7 +10,6 @@ module Dodge.Creature ( armourChaseCrit, module Dodge.Creature.Action, module Dodge.Creature.Boid, - module Dodge.Creature.ChainUpdates, module Dodge.Creature.Impulse, module Dodge.Creature.Perception, module Dodge.Creature.ReaderUpdate, @@ -31,7 +30,6 @@ import Dodge.Creature.Action import Dodge.Creature.ArmourChase import Dodge.Creature.AutoCrit import Dodge.Creature.Boid -import Dodge.Creature.ChainUpdates import Dodge.Creature.ChaseCrit import Dodge.Creature.Impulse import Dodge.Creature.Inanimate diff --git a/src/Dodge/Creature/ChainUpdates.hs b/src/Dodge/Creature/ChainUpdates.hs deleted file mode 100644 index 51d8f3e74..000000000 --- a/src/Dodge/Creature/ChainUpdates.hs +++ /dev/null @@ -1,9 +0,0 @@ -module Dodge.Creature.ChainUpdates (chainCreatureUpdates) where - -import Data.Foldable -import Dodge.Data.World - -chainCreatureUpdates :: [World -> Creature -> Creature] -> World -> Creature -> Creature -chainCreatureUpdates ls w cr = foldl' unf cr ls - where - unf cr' g = g w cr' diff --git a/src/Dodge/Creature/SentinelAI.hs b/src/Dodge/Creature/SentinelAI.hs index 03098dc1c..929378361 100644 --- a/src/Dodge/Creature/SentinelAI.hs +++ b/src/Dodge/Creature/SentinelAI.hs @@ -4,13 +4,13 @@ module Dodge.Creature.SentinelAI ( sentinelExtraWatchUpdate, ) where -import Control.Lens +--import Control.Lens import Data.Maybe --import Dodge.Creature.Action -import Dodge.Creature.ChainUpdates -import Dodge.Creature.Perception -import Dodge.Creature.ReaderUpdate -import Dodge.Creature.Strategy +--import Dodge.Creature.ChainUpdates +--import Dodge.Creature.Perception +--import Dodge.Creature.ReaderUpdate +--import Dodge.Creature.Strategy import Dodge.Creature.Test import Dodge.Creature.Volition import Dodge.Data.CreatureEffect @@ -47,54 +47,56 @@ sentinelAI = --chainCreatureUpdates ls w cr = foldr (\f -> f w) cr ls sentinelFireType :: (Int -> Action) -> World -> Creature -> Creature -sentinelFireType f = - chainCreatureUpdates - [ watchUpdateStrat - [ - ( crHasTargetLOS - , \_ _ -> - StrategyActions - (ShootAt 0) - [ drawwp `DoActionThen` f 0 `DoActionThen` DoImpulses [ChangeStrategy WatchAndWait] - , aiming - ] - ) - , (const crAwayFromPost, const goToPostStrat) - ] - , perceptionUpdate [0] - , -- , Left $ perceptionUp 0 - const doStrategyActions - , targetYouWhenCognizant - , const $ - overrideInternal - (\cr -> crHasTarget cr && crStratConMatches (GetTo (V2 0 0)) cr) - (crActionPlan . apStrategy .~ WatchAndWait) - ] - where - drawwp = DoActionIfElse NoAction (WdCrBlfromCrBl CrIsAiming) (DoActionThen drawWeapon (WaitThen 50 NoAction)) - aiming = - AimAt - { _targetID = 0 - , _targetSeenAt = V2 0 0 -- hack - } +sentinelFireType _ = undefined +--sentinelFireType f = +-- chainCreatureUpdates +-- [ watchUpdateStrat +-- [ +-- ( crHasTargetLOS +-- , \_ _ -> +-- StrategyActions +-- (ShootAt 0) +-- [ drawwp `DoActionThen` f 0 `DoActionThen` DoImpulses [ChangeStrategy WatchAndWait] +-- , aiming +-- ] +-- ) +-- , (const crAwayFromPost, const goToPostStrat) +-- ] +-- , perceptionUpdate [0] +-- , -- , Left $ perceptionUp 0 +-- const doStrategyActions +-- , targetYouWhenCognizant +-- , const $ +-- overrideInternal +-- (\cr -> crHasTarget cr && crStratConMatches (GetTo (V2 0 0)) cr) +-- (crActionPlan . apStrategy .~ WatchAndWait) +-- ] +-- where +-- drawwp = DoActionIfElse NoAction (WdCrBlfromCrBl CrIsAiming) (DoActionThen drawWeapon (WaitThen 50 NoAction)) +-- aiming = +-- AimAt +-- { _targetID = 0 +-- , _targetSeenAt = V2 0 0 -- hack +-- } sentinelExtraWatchUpdate :: [(World -> Creature -> Bool, World -> Creature -> Strategy)] -> World -> Creature -> Creature -sentinelExtraWatchUpdate xs = - chainCreatureUpdates - [ watchUpdateStrat - (xs ++ [(const crAwayFromPost, const goToPostStrat)]) - , perceptionUpdate [0] - , const doStrategyActions - , targetYouWhenCognizant - , const $ - overrideInternal - (\cr -> crHasTarget cr && crStratConMatches (GetTo (V2 0 0)) cr) - (crActionPlan . apStrategy .~ WatchAndWait) - ] +sentinelExtraWatchUpdate _ = undefined +--sentinelExtraWatchUpdate xs = +-- chainCreatureUpdates +-- [ watchUpdateStrat +-- (xs ++ [(const crAwayFromPost, const goToPostStrat)]) +-- , perceptionUpdate [0] +-- , const doStrategyActions +-- , targetYouWhenCognizant +-- , const $ +-- overrideInternal +-- (\cr -> crHasTarget cr && crStratConMatches (GetTo (V2 0 0)) cr) +-- (crActionPlan . apStrategy .~ WatchAndWait) +-- ] --shootAtAdvance :: Int -> [Action] --shootAtAdvance tcid = diff --git a/src/Dodge/Humanoid.hs b/src/Dodge/Humanoid.hs index b4d07cf68..a2db5155e 100644 --- a/src/Dodge/Humanoid.hs +++ b/src/Dodge/Humanoid.hs @@ -1,12 +1,15 @@ module Dodge.Humanoid (chaseCritInternal) where +import Data.Foldable import Dodge.Creature import Dodge.Data.World import LensHelp chaseCritInternal :: World -> Creature -> Creature -chaseCritInternal = - chainCreatureUpdates +chaseCritInternal w cr = + foldl' + (\c f -> f w c) + cr [ const doStrategyActions , overrideMeleeCloseTarget , setViewPos diff --git a/src/Dodge/Render.hs b/src/Dodge/Render.hs index d8df4c43d..32b4d382f 100644 --- a/src/Dodge/Render.hs +++ b/src/Dodge/Render.hs @@ -202,7 +202,6 @@ doDrawing' win pdata u = do glDrawArrays GL_TRIANGLES 0 (fromIntegral nCloudVs * 6) --setup downscale viewport for blurring bloom - --setViewportSize (round winx `div` (2 * resFact)) (round winy `div` (2 * resFact)) setViewport _gr_downsize_res cfig glBindFramebuffer GL_FRAMEBUFFER (_unFBO (fst (_fboHalf1 pdata))) glDepthFunc GL_ALWAYS diff --git a/tags b/tags index 5f479643d..35eae559c 100644 --- a/tags +++ b/tags @@ -132,7 +132,6 @@ BlockDegradeSound src/Dodge/Data/SoundOrigin.hs 30;" C BlockPart src/Dodge/Data/Wall/Structure.hs 14;" C BlockedLink src/Dodge/Data/Room.hs 50;" C BloomLayer src/Picture/Data.hs 21;" C -BloomNoZWrite src/Picture/Data.hs 22;" C Blunt src/Dodge/Data/Damage.hs 17;" C Boosting src/Dodge/Data/Creature/Stance.hs 27;" C BottomMenuOption src/Dodge/Data/Universe.hs 77;" C @@ -2475,7 +2474,7 @@ aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f accessTerminal src/Dodge/WorldEffect.hs 59;" f activateDetonator src/Dodge/Creature/Impulse/UseItem.hs 62;" f activeTargetCursorPic src/Dodge/Targeting/Draw.hs 31;" f -addArmour src/Dodge/Creature.hs 84;" f +addArmour src/Dodge/Creature.hs 82;" f addBranchAt src/Dodge/Tree/GenerateStructure.hs 18;" f addButtonSlowDoor src/Dodge/Room/LongDoor.hs 96;" f addCrGibs src/Dodge/Prop/Gib.hs 17;" f @@ -2613,10 +2612,10 @@ bQuadToF src/Geometry/Bezier.hs 37;" f bQuadToLine src/Geometry/Bezier.hs 30;" f backPQ src/Dodge/Creature/HandPos.hs 127;" f backpackCombinations src/Dodge/Combine/Combinations.hs 27;" f -backpackShape src/Dodge/Item/Draw/SPic.hs 186;" f +backpackShape src/Dodge/Item/Draw/SPic.hs 187;" f backspaceInputted src/Dodge/Update/Input/Text.hs 25;" f bangCone src/Dodge/Item/Held/Cone.hs 11;" f -bangConeShape src/Dodge/Item/Draw/SPic.hs 303;" f +bangConeShape src/Dodge/Item/Draw/SPic.hs 304;" f bangEchoS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 516;" f bangRod src/Dodge/Item/Held/Rod.hs 18;" f bangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 668;" f @@ -2624,24 +2623,23 @@ bangStick src/Dodge/Item/Held/Stick.hs 15;" f barPP src/Dodge/Room/Foreground.hs 231;" f barrel src/Dodge/Creature/Inanimate.hs 17;" f barrelShape src/Dodge/Render/ShapePicture.hs 80;" f -baseAMRShape src/Dodge/Item/Draw/SPic.hs 406;" f +baseAMRShape src/Dodge/Item/Draw/SPic.hs 407;" f baseBlockPane src/Dodge/Placement/Instance/Wall.hs 98;" f baseCI src/Dodge/Item/Grammar.hs 158;" f -baseCaneShape src/Dodge/Item/Draw/SPic.hs 323;" f +baseCaneShape src/Dodge/Item/Draw/SPic.hs 324;" f baseFloorTileSize src/Tile.hs 45;" f baseItemTriggerType src/Dodge/BaseTriggerType.hs 21;" f -baseRifleShape src/Dodge/Item/Draw/SPic.hs 326;" f -baseRodShape src/Dodge/Item/Draw/SPic.hs 403;" f -baseSMGShape src/Dodge/Item/Draw/SPic.hs 391;" f +baseRifleShape src/Dodge/Item/Draw/SPic.hs 327;" f +baseRodShape src/Dodge/Item/Draw/SPic.hs 404;" f +baseSMGShape src/Dodge/Item/Draw/SPic.hs 392;" f baseShoulder src/Dodge/Creature/Picture.hs 117;" f -baseStickShape src/Dodge/Item/Draw/SPic.hs 300;" f -baseStickShapeX src/Dodge/Item/Draw/SPic.hs 292;" f +baseStickShape src/Dodge/Item/Draw/SPic.hs 301;" f +baseStickShapeX src/Dodge/Item/Draw/SPic.hs 293;" f baseStickSpread src/Dodge/HeldUse.hs 319;" f basicAttentionUpdate src/Dodge/Creature/Perception.hs 127;" f basicAwarenessUpdate src/Dodge/Creature/Perception.hs 39;" f basicCrPict src/Dodge/Creature/Picture.hs 30;" f basicCrShape src/Dodge/Creature/Picture.hs 36;" f -basicDrawBeam src/Dodge/Beam/Draw.hs 11;" f basicItemDisplay src/Dodge/Item/Display.hs 23;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineUpdate src/Dodge/Machine.hs 14;" f @@ -2710,7 +2708,7 @@ brightX src/Color.hs 116;" f btSPic src/Dodge/Render/ShapePicture.hs 129;" f btText src/Dodge/Inventory/SelectionList.hs 237;" f bufferEBO src/Shader/Bind.hs 28;" f -bufferPerspectiveMatrixUBO src/Dodge/Render.hs 396;" f +bufferPerspectiveMatrixUBO src/Dodge/Render.hs 394;" f bufferPokedVBO src/Shader/Bind.hs 19;" f bufferShaderLayers src/Shader/Bind.hs 32;" f bulletBeltBracer src/Dodge/Item/Equipment.hs 67;" f @@ -2744,7 +2742,6 @@ centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f centerVaultRoom src/Dodge/Room/Procedural.hs 269;" f centroid src/Geometry/Polygon.hs 169;" f centroidNum src/Geometry/Polygon.hs 172;" f -chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f chainPairs src/Geometry.hs 360;" f changeSwapOther src/Dodge/Inventory.hs 141;" f changeSwapSel src/Dodge/Inventory.hs 134;" f @@ -2754,7 +2751,7 @@ charToTupleGrad src/Picture/Text.hs 18;" f chartreuse src/Color.hs 24;" f chaseCrit src/Dodge/Creature/ChaseCrit.hs 27;" f chaseCritAwarenessUpdate src/Dodge/Creature/Perception.hs 65;" f -chaseCritInternal src/Dodge/Humanoid.hs 7;" f +chaseCritInternal src/Dodge/Humanoid.hs 8;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 121;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f @@ -3058,7 +3055,7 @@ dededumS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 628;" f dedumS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 444;" f defDamageMaterial src/Dodge/Material/Damage.hs 30;" f defLSPic src/Dodge/LightSource/Draw.hs 10;" f -defSPic src/Dodge/Item/Draw/SPic.hs 309;" f +defSPic src/Dodge/Item/Draw/SPic.hs 310;" f defaultAimMvType src/Dodge/Creature/MoveType.hs 16;" f defaultAimingCrit src/Dodge/Default/Creature.hs 107;" f defaultAudition src/Dodge/Default/Creature.hs 92;" f @@ -3123,7 +3120,7 @@ destroyMounts src/Dodge/Wall/Damage.hs 72;" f destroyProjectile src/Dodge/Projectile/Update.hs 109;" f detV src/Geometry/Vector.hs 94;" f detector src/Dodge/Item/Held/Utility.hs 27;" f -detectorColor src/Dodge/Item/Draw/SPic.hs 453;" f +detectorColor src/Dodge/Item/Draw/SPic.hs 432;" f detectorInfo src/Dodge/Item/Info.hs 224;" f determineProjectileTracking src/Dodge/HeldUse.hs 1196;" f diagonalLinesRect src/Dodge/Room/Foreground.hs 52;" f @@ -3238,7 +3235,6 @@ drawAllShadows src/Dodge/Shadows.hs 5;" f drawAnySelectionBox src/Dodge/Render/Picture.hs 132;" f drawArrowDown src/Dodge/Render/Picture.hs 221;" f drawBaseMachine src/Dodge/Machine/Draw.hs 68;" f -drawBeam src/Dodge/Beam/Draw.hs 6;" f drawBlip src/Dodge/RadarBlip.hs 16;" f drawBoundingBox src/Dodge/Debug/Picture.hs 358;" f drawBullet src/Dodge/Render/ShapePicture.hs 135;" f @@ -3277,7 +3273,7 @@ drawExamineInventory src/Dodge/Render/HUD.hs 199;" f drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f drawFarWallDetect src/Dodge/Debug/Picture.hs 270;" f drawFlame src/Dodge/Flame/Draw.hs 8;" f -drawFlamelet src/Dodge/EnergyBall/Draw.hs 37;" f +drawFlamelet src/Dodge/EnergyBall/Draw.hs 34;" f drawForceField src/Dodge/Wall/Draw.hs 15;" f drawGapPlus src/Dodge/Render/Picture.hs 280;" f drawGib src/Dodge/Prop/Draw.hs 26;" f @@ -3416,7 +3412,7 @@ equipAllocString src/Dodge/Render/HUD.hs 311;" f equipAttachPos src/Dodge/Item/Draw.hs 30;" f equipBackgroundEffect src/Dodge/Euse.hs 14;" f equipInfo src/Dodge/Item/Info.hs 141;" f -equipItemSPic src/Dodge/Item/Draw/SPic.hs 157;" f +equipItemSPic src/Dodge/Item/Draw/SPic.hs 158;" f equipPosition src/Dodge/Item/Draw.hs 38;" f equipSiteInfo src/Dodge/Item/Info.hs 253;" f equipSitePQ src/Dodge/Creature/HandPos.hs 26;" f @@ -3481,12 +3477,12 @@ flameSpitter src/Dodge/Item/Held/SprayGuns.hs 23;" f flameThrower src/Dodge/Item/Held/SprayGuns.hs 64;" f flameTorrent src/Dodge/Item/Held/SprayGuns.hs 32;" f flameWall src/Dodge/Item/Held/SprayGuns.hs 48;" f -flamerPic src/Dodge/Item/Draw/SPic.hs 394;" f +flamerPic src/Dodge/Item/Draw/SPic.hs 395;" f flareCircleAt src/Dodge/HeldUse.hs 691;" f flatItemCombinations src/Dodge/Combine/Combinations.hs 51;" f flatLookupItems src/Dodge/Combine.hs 38;" f flatShield src/Dodge/Item/Held/Utility.hs 17;" f -flatShieldEquipSPic src/Dodge/Item/Draw/SPic.hs 440;" f +flatShieldEquipSPic src/Dodge/Item/Draw/SPic.hs 419;" f fleeFrom src/Dodge/CreatureEffect.hs 92;" f flickerMod src/Dodge/Placement/Instance/LightSource/Flicker.hs 10;" f flickerUpdate src/Dodge/Placement/Instance/LightSource/Flicker.hs 24;" f @@ -3515,7 +3511,7 @@ forceFoldable src/StrictHelp.hs 7;" f forceSpine src/StrictHelp.hs 4;" f fourEmbossDecoration src/Dodge/Placement/TopDecoration.hs 29;" f fpsText src/Dodge/Render/Picture.hs 59;" f -fractionLoadedAmmo src/Dodge/Item/Draw/SPic.hs 145;" f +fractionLoadedAmmo src/Dodge/Item/Draw/SPic.hs 146;" f frag src/Shader/Data.hs 110;" f fridgeHumS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 500;" f fromJust' src/MaybeHelp.hs 22;" f @@ -3564,7 +3560,7 @@ getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 357;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 344;" f getDebugMouseOver src/Dodge/Update.hs 374;" f -getDistortions src/Dodge/Render.hs 408;" f +getDistortions src/Dodge/Render.hs 406;" f getEdgesCrossing src/Dodge/Path.hs 37;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f getInventoryPath src/Dodge/Inventory/Path.hs 9;" f @@ -3604,7 +3600,7 @@ glassShat3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 458;" f glassShat4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 612;" f glassSwitchBack src/Dodge/Room/Room.hs 72;" f glassSwitchBackCrits src/Dodge/Room/Room.hs 106;" f -glauncherPic src/Dodge/Item/Draw/SPic.hs 400;" f +glauncherPic src/Dodge/Item/Draw/SPic.hs 401;" f gluintSize src/Shader/Parameters.hs 25;" f goToPostStrat src/Dodge/Creature/Strategy.hs 10;" f goToTarget src/Dodge/Creature/ReaderUpdate.hs 150;" f @@ -3656,7 +3652,7 @@ hasLOSIndirect src/Dodge/Base/Collide.hs 320;" f hat src/Dodge/Item/Equipment.hs 76;" f head src/DoubleStack.hs 14;" f headLamp src/Dodge/Item/Equipment.hs 79;" f -headLampShape src/Dodge/Item/Draw/SPic.hs 443;" f +headLampShape src/Dodge/Item/Draw/SPic.hs 422;" f headMap src/Dodge/DoubleTree.hs 249;" f headPQ src/Dodge/Creature/HandPos.hs 115;" f healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 492;" f @@ -3675,7 +3671,7 @@ heldItemInvLock src/Dodge/HeldUse.hs 442;" f heldItemMuzVel src/Dodge/HeldUse.hs 1000;" f heldItemMuzzles src/Dodge/HeldUse.hs 176;" f heldItemRifling src/Dodge/HeldUse.hs 1043;" f -heldItemSPic src/Dodge/Item/Draw/SPic.hs 233;" f +heldItemSPic src/Dodge/Item/Draw/SPic.hs 234;" f heldItemWeight src/Dodge/Creature/Statistics.hs 80;" f heldPositionInfo src/Dodge/Item/Info.hs 240;" f heldTorqueAmount src/Dodge/HeldUse.hs 586;" f @@ -3778,7 +3774,7 @@ invSetSelection src/Dodge/Inventory.hs 180;" f invSetSelectionPos src/Dodge/Inventory.hs 188;" f invShiftPointBy src/Dodge/ShiftPoint.hs 17;" f invSize src/Dodge/Inventory/CheckSlots.hs 33;" f -inventoryX src/Dodge/Creature.hs 113;" f +inventoryX src/Dodge/Creature.hs 111;" f inverseSelNumPos src/Dodge/SelectionSections.hs 193;" f inverseSelSecYint src/Dodge/SelectionSections.hs 164;" f inverseSelSecYintXPosCheck src/Dodge/SelectionSections.hs 177;" f @@ -3890,7 +3886,7 @@ keyCard src/Dodge/Item/Held/Utility.hs 20;" f keyCardAnalyserByDoor src/Dodge/Room/LasTurret.hs 78;" f keyCardRoomRunPast src/Dodge/Room/LasTurret.hs 66;" f keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f -keyPic src/Dodge/Item/Draw/SPic.hs 459;" f +keyPic src/Dodge/Item/Draw/SPic.hs 438;" f keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f lChasm src/Dodge/Room/Tutorial.hs 148;" f @@ -3900,7 +3896,7 @@ lShape src/Dodge/Placement/Instance/LightSource.hs 54;" f lamp src/Dodge/Creature/Lamp.hs 21;" f lampCrSPic src/Dodge/Render/ShapePicture.hs 85;" f lasCenSensEdge src/Dodge/Room/LasTurret.hs 141;" f -lasGunPic src/Dodge/Item/Draw/SPic.hs 412;" f +lasGunPic src/Dodge/Item/Draw/SPic.hs 413;" f lasPulseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 526;" f lasSensorTurretTest src/Dodge/Room/LasTurret.hs 134;" f lasTunnel src/Dodge/Room/LasTurret.hs 153;" f @@ -3933,7 +3929,7 @@ leftLegPQ src/Dodge/Creature/HandPos.hs 84;" f leftPad src/Padding.hs 15;" f leftRightCombine src/Dodge/Item/Grammar.hs 197;" f leftWristPQ src/Dodge/Creature/HandPos.hs 81;" f -legsSPic src/Dodge/Item/Draw/SPic.hs 468;" f +legsSPic src/Dodge/Item/Draw/SPic.hs 447;" f lerpP2A src/Dodge/ShiftPoint.hs 14;" f liShape src/Dodge/Placement/Instance/LightSource.hs 79;" f light src/Color.hs 104;" f @@ -3995,7 +3991,7 @@ logMenu src/Dodge/Menu.hs 127;" f logOptions src/Dodge/Menu.hs 142;" f logistic src/Dodge/Base.hs 98;" f longBlockedCorridor src/Dodge/Room/RoadBlock.hs 58;" f -longCrit src/Dodge/Creature.hs 70;" f +longCrit src/Dodge/Creature.hs 68;" f longRoom src/Dodge/Room/LongRoom.hs 22;" f longRoomRunPast src/Dodge/Room/LongRoom.hs 48;" f longestCommonPrefix src/Dodge/Debug/Terminal.hs 145;" f @@ -4142,10 +4138,10 @@ minAndMax src/FoldableHelp.hs 109;" f minCrIXOn src/Dodge/Zoning/Creature.hs 49;" f minOn src/FoldableHelp.hs 35;" f mini1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 452;" f -miniGunCrit src/Dodge/Creature.hs 63;" f +miniGunCrit src/Dodge/Creature.hs 61;" f miniGunX src/Dodge/Item/Held/Cane.hs 33;" f -miniGunXPict src/Dodge/Item/Draw/SPic.hs 372;" f -miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 369;" f +miniGunXPict src/Dodge/Item/Draw/SPic.hs 373;" f +miniGunXPictItem src/Dodge/Item/Draw/SPic.hs 370;" f miniS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 716;" f miniTree2 src/Dodge/Room/Room.hs 113;" f minimumOn src/FoldlHelp.hs 14;" f @@ -4188,7 +4184,7 @@ mtTopLabels src/Dodge/Tree/Compose.hs 50;" f mtUnderLabels src/Dodge/Tree/Compose.hs 53;" f muchWlDustAt src/Dodge/Wall/Dust.hs 10;" f muin src/Dodge/RoomLink.hs 147;" f -multGunCrit src/Dodge/Creature.hs 77;" f +multGunCrit src/Dodge/Creature.hs 75;" f multiArrow src/Picture/Composite.hs 11;" f multiLookupTrie src/SimpleTrie.hs 57;" f multiLookupTrieI src/SimpleTrie.hs 66;" f @@ -4560,7 +4556,7 @@ randomTreeStructure src/Dodge/Layout/Generate.hs 18;" f randsOnCirc src/RandomHelp.hs 127;" f randsSpread src/RandomHelp.hs 120;" f ratIntersectLineLine src/Geometry/Intersect.hs 216;" f -rdToVec2s src/Dodge/Render.hs 391;" f +rdToVec2s src/Dodge/Render.hs 389;" f readSaveSlot src/Dodge/Save.hs 45;" f recoilAmount src/Dodge/HeldUse.hs 467;" f rectNSWE src/Geometry/Polygon.hs 15;" f @@ -4645,7 +4641,7 @@ rightPad src/Padding.hs 19;" f rightPadNoSquash src/Padding.hs 23;" f rightWristPQ src/Dodge/Creature/HandPos.hs 57;" f rlPosDir src/Dodge/RoomLink.hs 112;" f -rlauncherPic src/Dodge/Item/Draw/SPic.hs 397;" f +rlauncherPic src/Dodge/Item/Draw/SPic.hs 398;" f rmInLinks src/Dodge/RoomLink.hs 153;" f rmInvItem src/Dodge/Inventory.hs 74;" f rmLinksOfType src/Dodge/RoomLink.hs 150;" f @@ -4777,7 +4773,7 @@ sensorSPic src/Dodge/Machine/Draw.hs 81;" f sensorTut src/Dodge/Room/Tutorial.hs 366;" f sensorTypeDamages src/Dodge/Machine/Update.hs 234;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f -sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 81;" f +sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 82;" f sentinelFireType src/Dodge/Creature/SentinelAI.hs 49;" f setAimPosture src/Dodge/Creature/YourControl.hs 145;" f setChannelPos src/Sound.hs 150;" f @@ -4813,7 +4809,7 @@ setTiles src/Dodge/Layout.hs 67;" f setTreeInts src/Dodge/Room/Tutorial.hs 98;" f setViewDistance src/Dodge/Update/Camera.hs 241;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f -setViewport src/Dodge/Render.hs 413;" f +setViewport src/Dodge/Render.hs 411;" f setVol src/Dodge/Config.hs 47;" f setWindowColor src/Dodge/Render/Walls.hs 32;" f setWristShieldPos src/Dodge/Equipment.hs 49;" f @@ -4833,7 +4829,7 @@ shapeBounds src/Dodge/Room/Foreground.hs 147;" f shapePoints src/Dodge/Room/Foreground.hs 144;" f shapeVerxSize src/Shape/Parameters.hs 5;" f shatterGun src/Dodge/Item/Held/Weapons.hs 8;" f -shatterGunSPic src/Dodge/Item/Draw/SPic.hs 312;" f +shatterGunSPic src/Dodge/Item/Draw/SPic.hs 313;" f shellExplosionCheck src/Dodge/Projectile/Update.hs 50;" f shellHitCreature src/Dodge/Projectile/Update.hs 81;" f shellHitFloor src/Dodge/Projectile/Update.hs 95;" f @@ -4960,7 +4956,7 @@ sparkGun src/Dodge/Item/Held/BatteryGuns.hs 13;" f sparkRandDir src/Dodge/Spark.hs 116;" f sparkToDamage src/Dodge/Spark.hs 39;" f spawnAt src/Dodge/SpawnAt.hs 15;" f -spawnerCrit src/Dodge/Creature.hs 56;" f +spawnerCrit src/Dodge/Creature.hs 54;" f spawnerRoom src/Dodge/Room/Room.hs 369;" f speedLegs src/Dodge/Item/Equipment.hs 90;" f splashMenu src/Dodge/Menu.hs 33;" f @@ -5001,12 +4997,12 @@ ssfold src/FoldableHelp.hs 105;" f stackPicturesAt src/Dodge/Render/List.hs 99;" f stackPicturesAtOff src/Dodge/Render/List.hs 102;" f stackText src/Picture/Base.hs 188;" f -stackedInventory src/Dodge/Creature.hs 311;" f -startCr src/Dodge/Creature.hs 92;" f +stackedInventory src/Dodge/Creature.hs 309;" f +startCr src/Dodge/Creature.hs 90;" f startCrafts src/Dodge/Room/Start.hs 93;" f startDrag src/Dodge/Update/Input/InGame.hs 280;" f -startInvList src/Dodge/Creature.hs 107;" f -startInventory src/Dodge/Creature.hs 110;" f +startInvList src/Dodge/Creature.hs 105;" f +startInventory src/Dodge/Creature.hs 108;" f startNewGameInSlot src/Dodge/StartNewGame.hs 15;" f startRoom src/Dodge/Room/Start.hs 53;" f startSeedGame src/Dodge/StartNewGame.hs 20;" f @@ -5083,10 +5079,10 @@ terminalScreenGlow src/Dodge/Machine/Update.hs 40;" f terminalShape src/Dodge/Machine/Draw.hs 43;" f terminalWheelEvent src/Dodge/Update/Scroll.hs 131;" f teslaGun src/Dodge/Item/Held/BatteryGuns.hs 19;" f -teslaGunPic src/Dodge/Item/Draw/SPic.hs 409;" f +teslaGunPic src/Dodge/Item/Draw/SPic.hs 410;" f teslaParams src/Dodge/Item/Held/BatteryGuns.hs 25;" f testEvent src/Dodge/Event/Test.hs 11;" f -testInventory src/Dodge/Creature.hs 292;" f +testInventory src/Dodge/Creature.hs 290;" f testStringInit src/Dodge/TestString.hs 34;" f text src/Picture/Base.hs 193;" f textGrad src/Picture/Text.hs 5;" f @@ -5161,7 +5157,7 @@ topInvW src/Dodge/ListDisplayParams.hs 49;" f topPrismEdgeIndices src/Shader/Poke.hs 334;" f topPrismIndices src/Shader/Poke.hs 409;" f topTestPart src/Dodge/TestString.hs 48;" f -torchShape src/Dodge/Item/Draw/SPic.hs 276;" f +torchShape src/Dodge/Item/Draw/SPic.hs 277;" f torqueAmount src/Dodge/HeldUse.hs 581;" f torqueCr src/Dodge/WorldEffect.hs 77;" f torso src/Dodge/Creature/Picture.hs 103;" f @@ -5169,7 +5165,7 @@ tractCr src/Dodge/TractorBeam/Update.hs 28;" f tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f tractorBeamAt src/Dodge/HeldUse.hs 833;" f tractorGun src/Dodge/Item/Held/BatteryGuns.hs 53;" f -tractorGunPic src/Dodge/Item/Draw/SPic.hs 437;" f +tractorGunPic src/Dodge/Item/Draw/SPic.hs 416;" f tractorPullPos src/Dodge/TractorBeam/Update.hs 33;" f tractorSPic src/Dodge/TractorBeam/Draw.hs 10;" f tranRot src/Picture/Base.hs 124;" f @@ -5456,7 +5452,7 @@ visibleWalls src/Dodge/Base/Collide.hs 216;" f visionCheck src/Dodge/Creature/Perception.hs 152;" f vocalizationTest src/Dodge/Creature/Vocalization.hs 42;" f volleyGun src/Dodge/Item/Held/Cane.hs 15;" f -volleyGunShape src/Dodge/Item/Draw/SPic.hs 357;" f +volleyGunShape src/Dodge/Item/Draw/SPic.hs 358;" f walkNozzle src/Dodge/HeldUse.hs 809;" f walkableNodeNear src/Dodge/Path.hs 69;" f wallBlips src/Dodge/RadarSweep.hs 99;" f