From 23949b02afe352cf1c4d2450097f91f34e4dbd3d Mon Sep 17 00:00:00 2001 From: justin Date: Tue, 9 Dec 2025 10:04:45 +0000 Subject: [PATCH] Simplify analysers --- src/Dodge/Room/LasTurret.hs | 64 +++++++++------- src/Dodge/Room/Tutorial.hs | 2 +- tags | 145 ++++++++++++++++++------------------ 3 files changed, 112 insertions(+), 99 deletions(-) diff --git a/src/Dodge/Room/LasTurret.hs b/src/Dodge/Room/LasTurret.hs index 65286aadb..a3d6533fe 100644 --- a/src/Dodge/Room/LasTurret.hs +++ b/src/Dodge/Room/LasTurret.hs @@ -1,5 +1,14 @@ {-# LANGUAGE TupleSections #-} -module Dodge.Room.LasTurret where + +module Dodge.Room.LasTurret ( + analyserByNthLinkWithPrompt, + analyserByDoor, + lasCenSensEdge, + lasTunnelRunPast, + keyCardRoomRunPast, + lasSensorTurretTest, + healthTest, +) where --import Dodge.Item.Held.Cane import qualified Data.Set as S @@ -61,7 +70,7 @@ lightSensByDoor i rm = -- & rmOutPmnt . at i ?~ sensAboveDoor LaserSensor 20 (atFstLnkOutShiftBy sensorshift) covershape = rectNSWE 10 (-10) (-20) 20 - sensorshift (p, a) = ((p +.+ rotateV a (V2 60 (-20)), a),S.singleton UsedPosLow) + sensorshift (p, a) = ((p +.+ rotateV a (V2 60 (-20)), a), S.singleton UsedPosLow) keyCardRoomRunPast :: RandomGen g => Int -> Int -> State g (MetaTree Room String) keyCardRoomRunPast keyid rmid = do @@ -81,43 +90,48 @@ keyCardAnalyserByDoor keyid = analyserByDoor (RequireEquipment (HELD (KEYCARD ke healthAnalyserByDoor :: Int -> Room -> Room healthAnalyserByDoor = analyserByDoor (RequireHealth 1100) -analyserByNthLink :: Int -> ProximityRequirement -> Int -> Room -> Room -analyserByNthLink n proxreq i rm = - rm - & rmPmnts - .++~ [ psPt (atNthLinkOut n) $ PutForeground $ verticalWire (V2 20 0) 0 80 - , analyser +analyserByNthLink :: Int -> ProximityRequirement -> Int -> Placement +analyserByNthLink n proxreq i = + analyser (SensorWithRequirement proxreq) - (atNthLnkOutShiftBy n (\(p, a) -> - ((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow))) + ( atNthLnkOutShiftBy + n + ( \(p, a) -> + ((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow) + ) + ) (atNthLnkOutShiftBy n sensorshift) & plExternalID ?~ i - ] where sensorshift (p, a) = ((p +.+ rotateV a (V2 (-30) (-10)), a), S.singleton UsedPosLow) analyserByNthLinkWithPrompt :: Int -> [TerminalLine] -> ProximityRequirement -> Int -> Placement analyserByNthLinkWithPrompt n l proxreq i = --- rm --- & rmPmnts --- .++~ [-- psPt (atNthLinkOut n) $ PutForeground $ verticalWire (V2 20 0) 0 80 - analyserWithPrompt - l - (SensorWithRequirement proxreq) - (atNthLnkOutShiftBy n (\(p, a) -> - ((p +.+ rotateV a (V2 18.5 (-2.5)), a),S.singleton UsedPosLow))) - (atNthLnkOutShiftBy n sensorshift) - & plExternalID ?~ i --- ] + -- rm + -- & rmPmnts + -- .++~ [-- psPt (atNthLinkOut n) $ PutForeground $ verticalWire (V2 20 0) 0 80 + analyserWithPrompt + l + (SensorWithRequirement proxreq) + ( atNthLnkOutShiftBy + n + ( \(p, a) -> + ((p +.+ rotateV a (V2 18.5 (-2.5)), a), S.singleton UsedPosLow) + ) + ) + (atNthLnkOutShiftBy n sensorshift) + & plExternalID ?~ i where + -- ] + sensorshift (p, a) = ((p +.+ rotateV a (V2 (-30) (-10)), a), S.singleton UsedPosLow) analyserByDoor :: ProximityRequirement -> Int -> Room -> Room -analyserByDoor = analyserByNthLink 0 +analyserByDoor pr i = rmPmnts .:~ analyserByNthLink 0 pr i -analyserByDoorWithPrompt :: [TerminalLine] -> ProximityRequirement -> Int -> Room -> Room -analyserByDoorWithPrompt s x i = rmPmnts .:~ analyserByNthLinkWithPrompt 0 s x i +--analyserByDoorWithPrompt :: [TerminalLine] -> ProximityRequirement -> Int -> Room -> Room +--analyserByDoorWithPrompt s x i = rmPmnts .:~ analyserByNthLinkWithPrompt 0 s x i healthTest :: RandomGen g => Int -> State g (Tree Room) healthTest n = do diff --git a/src/Dodge/Room/Tutorial.hs b/src/Dodge/Room/Tutorial.hs index c5a6bf603..95bb23aea 100644 --- a/src/Dodge/Room/Tutorial.hs +++ b/src/Dodge/Room/Tutorial.hs @@ -266,7 +266,7 @@ tutHub = do k x <- shuffleLinks - . analyserByDoorWithPrompt [] (RequireEquipment (AMMOMAG DRUMMAG)) i + . analyserByDoor (RequireEquipment (AMMOMAG DRUMMAG)) i . (rmInPmnt .:~ (0, a)) . addDoorAtNthLinkToggleTerminal 1 ss j =<< roomNgon 6 100 diff --git a/tags b/tags index 54fbebd35..193059e30 100644 --- a/tags +++ b/tags @@ -701,11 +701,11 @@ MOTOR src/Dodge/Data/Item/Combine.hs 63;" C MPO src/Dodge/Base/Collide.hs 96;" t MTRS src/Dodge/Data/MTRS.hs 6;" t MTree src/Dodge/Data/MetaTree.hs 11;" C -Machine src/Dodge/Data/Machine.hs 28;" t +Machine src/Dodge/Data/Machine.hs 30;" t MachineAltSound src/Dodge/Data/SoundOrigin.hs 22;" C MachinePart src/Dodge/Data/Wall/Structure.hs 13;" C MachineSound src/Dodge/Data/SoundOrigin.hs 21;" C -MachineType src/Dodge/Data/Machine.hs 41;" t +MachineType src/Dodge/Data/Machine.hs 42;" t MagBelow src/Dodge/Data/Muzzle.hs 22;" C Magnet src/Dodge/Data/Magnet.hs 21;" t MagnetAlign src/Dodge/Data/Magnet.hs 15;" C @@ -730,13 +730,13 @@ MapperSF src/Dodge/Data/ComposedItem.hs 39;" C Material src/Dodge/Data/Material.hs 10;" t MaterialSound src/Dodge/Data/SoundOrigin.hs 34;" C Maybe' src/MaybeHelp.hs 11;" t -McDamSensor src/Dodge/Data/Machine.hs 44;" C -McDistributer src/Dodge/Data/Machine.hs 48;" C -McProxSensor src/Dodge/Data/Machine.hs 45;" C -McStatic src/Dodge/Data/Machine.hs 42;" C -McStorage src/Dodge/Data/Machine.hs 47;" C -McTerminal src/Dodge/Data/Machine.hs 43;" C -McTurret src/Dodge/Data/Machine.hs 46;" C +McDamSensor src/Dodge/Data/Machine.hs 45;" C +McDistributer src/Dodge/Data/Machine.hs 49;" C +McProxSensor src/Dodge/Data/Machine.hs 46;" C +McStatic src/Dodge/Data/Machine.hs 43;" C +McStorage src/Dodge/Data/Machine.hs 48;" C +McTerminal src/Dodge/Data/Machine.hs 44;" C +McTurret src/Dodge/Data/Machine.hs 47;" C MdFlickerUpdate src/Dodge/Data/WorldEffect.hs 54;" C MdSetLSCol src/Dodge/Data/WorldEffect.hs 53;" C MdTrigIf src/Dodge/Data/WorldEffect.hs 52;" C @@ -1360,7 +1360,7 @@ TurnTo src/Dodge/Data/ActionPlan.hs 35;" C TurnToPoint src/Dodge/Data/ActionPlan.hs 71;" C TurnToward src/Dodge/Data/ActionPlan.hs 32;" C TurnTowardCr src/Dodge/Data/CreatureEffect.hs 9;" C -Turret src/Dodge/Data/Machine.hs 51;" t +Turret src/Dodge/Data/Machine.hs 62;" t TurretInt src/Dodge/Data/Item/Location.hs 19;" t TwistGoal src/Dodge/Data/Scenario.hs 15;" C TwoHandFlat src/Dodge/Data/AimStance.hs 13;" C @@ -1971,16 +1971,16 @@ _mapInvZoom src/Dodge/Data/HUD.hs 19;" f _matUBO src/Data/Preload/Render.hs 42;" f _mbAttach src/Dodge/Data/MetaTree.hs 18;" f _mbTree src/Dodge/Data/MetaTree.hs 18;" f -_mcDamage src/Dodge/Data/Machine.hs 36;" f -_mcDir src/Dodge/Data/Machine.hs 33;" f -_mcHP src/Dodge/Data/Machine.hs 35;" f -_mcID src/Dodge/Data/Machine.hs 29;" f -_mcMaterial src/Dodge/Data/Machine.hs 31;" f -_mcMounts src/Dodge/Data/Machine.hs 38;" f -_mcPos src/Dodge/Data/Machine.hs 32;" f -_mcType src/Dodge/Data/Machine.hs 37;" f -_mcWallIDs src/Dodge/Data/Machine.hs 30;" f -_mcdStorageMachine src/Dodge/Data/Machine.hs 48;" f +_mcDamage src/Dodge/Data/Machine.hs 37;" f +_mcDir src/Dodge/Data/Machine.hs 35;" f +_mcHP src/Dodge/Data/Machine.hs 36;" f +_mcID src/Dodge/Data/Machine.hs 31;" f +_mcMaterial src/Dodge/Data/Machine.hs 33;" f +_mcMounts src/Dodge/Data/Machine.hs 39;" f +_mcPos src/Dodge/Data/Machine.hs 34;" f +_mcType src/Dodge/Data/Machine.hs 38;" f +_mcWallIDs src/Dodge/Data/Machine.hs 32;" f +_mcdStorageMachine src/Dodge/Data/Machine.hs 49;" f _mcoCombCombine src/Dodge/Data/Input.hs 24;" f _mcoCombSelect src/Dodge/Data/Input.hs 23;" f _mcoDBBool src/Dodge/Data/Input.hs 30;" f @@ -1994,9 +1994,9 @@ _mcoSecSelStart src/Dodge/Data/Input.hs 20;" f _mcoSelEnd src/Dodge/Data/Input.hs 20;" f _mcoTermID src/Dodge/Data/Input.hs 27;" f _mcoTermStatus src/Dodge/Data/Input.hs 27;" f -_mcsAmount src/Dodge/Data/Machine.hs 47;" f -_mcsType src/Dodge/Data/Machine.hs 47;" f -_mctTurret src/Dodge/Data/Machine.hs 46;" f +_mcsAmount src/Dodge/Data/Machine.hs 48;" f +_mcsType src/Dodge/Data/Machine.hs 48;" f +_mctTurret src/Dodge/Data/Machine.hs 47;" f _mdBool src/Dodge/Data/Modification.hs 19;" f _mdExternalID src/Dodge/Data/Modification.hs 15;" f _mdExternalID1 src/Dodge/Data/Modification.hs 23;" f @@ -2377,10 +2377,10 @@ _trieMVal src/SimpleTrie.hs 11;" f _triggers src/Dodge/Data/LWorld.hs 127;" f _ttDeathEffect src/Dodge/Data/Terminal.hs 43;" f _ttTriggerID src/Dodge/Data/Terminal.hs 42;" f -_tuDir src/Dodge/Data/Machine.hs 55;" f -_tuFireTime src/Dodge/Data/Machine.hs 54;" f -_tuTurnSpeed src/Dodge/Data/Machine.hs 53;" f -_tuWeapon src/Dodge/Data/Machine.hs 52;" f +_tuDir src/Dodge/Data/Machine.hs 66;" f +_tuFireTime src/Dodge/Data/Machine.hs 65;" f +_tuTurnSpeed src/Dodge/Data/Machine.hs 64;" f +_tuWeapon src/Dodge/Data/Machine.hs 63;" f _turnToPoint src/Dodge/Data/ActionPlan.hs 71;" f _uInt src/Dodge/Data/Item/Use.hs 31;" f _uScope src/Dodge/Data/Item/Use.hs 34;" f @@ -2557,10 +2557,9 @@ ammoMagSPic src/Dodge/Item/Draw/SPic.hs 128;" f amr src/Dodge/Item/Held/Rod.hs 34;" f anRoom src/Dodge/Floor.hs 117;" f analyser src/Dodge/Placement/Instance/Analyser.hs 11;" f -analyserByDoor src/Dodge/Room/LasTurret.hs 116;" f -analyserByDoorWithPrompt src/Dodge/Room/LasTurret.hs 119;" f -analyserByNthLink src/Dodge/Room/LasTurret.hs 84;" f -analyserByNthLinkWithPrompt src/Dodge/Room/LasTurret.hs 99;" f +analyserByDoor src/Dodge/Room/LasTurret.hs 134;" f +analyserByNthLink src/Dodge/Room/LasTurret.hs 93;" f +analyserByNthLinkWithPrompt src/Dodge/Room/LasTurret.hs 112;" f analyserWithPrompt src/Dodge/Placement/Instance/Analyser.hs 14;" f andOrRegex src/Dodge/DisplayInventory.hs 78;" f angleBetween src/Geometry.hs 158;" f @@ -2730,7 +2729,7 @@ boxXYZ src/Polyhedra.hs 94;" f boxXYZnobase src/Polyhedra.hs 80;" f brainHat src/Dodge/Item/Equipment.hs 73;" f branchRectWith src/Dodge/Room/Branch.hs 15;" f -branchWith src/Dodge/Room/Room.hs 73;" f +branchWith src/Dodge/Room/Room.hs 77;" f bright src/Color.hs 120;" f brightX src/Color.hs 116;" f btSPic src/Dodge/Render/ShapePicture.hs 131;" f @@ -2764,7 +2763,7 @@ cardinalBetweenAdj src/Dodge/Base/CardinalPoint.hs 28;" f cardinalVectors src/Dodge/FloorItem.hs 24;" f cdtPropagateFold src/Dodge/DoubleTree.hs 407;" f ceilingTo src/Geometry/Zone.hs 15;" f -cenLasTur src/Dodge/Room/LasTurret.hs 25;" f +cenLasTur src/Dodge/Room/LasTurret.hs 34;" f centerText src/Picture/Base.hs 184;" f centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f centerVaultRoom src/Dodge/Room/Procedural.hs 269;" f @@ -2910,7 +2909,7 @@ coolMinigun src/Dodge/Creature/State.hs 95;" f copier src/Dodge/Item/Scope.hs 88;" f copierItemUpdate src/Dodge/Creature/State.hs 131;" f copyItemToFloor src/Dodge/FloorItem.hs 14;" f -corDoor src/Dodge/Room/Room.hs 389;" f +corDoor src/Dodge/Room/Room.hs 393;" f cornerList src/Preload/Render.hs 236;" f corpseOrGib src/Dodge/Creature/Update.hs 88;" f corridor src/Dodge/Room/Corridor.hs 17;" f @@ -2983,9 +2982,9 @@ creatureShootPulseLaser src/Dodge/HeldUse.hs 873;" f creatureTurnTo src/Dodge/Creature/Impulse/Movement.hs 68;" f creatureTurnToward src/Dodge/Creature/Impulse/Movement.hs 89;" f creatureTurnTowardDir src/Dodge/Creature/Impulse/Movement.hs 78;" f -critInDeadEnd src/Dodge/Room/Room.hs 247;" f -critsPillarRoom src/Dodge/Room/Room.hs 394;" f -critsRoom src/Dodge/Room/Room.hs 402;" f +critInDeadEnd src/Dodge/Room/Room.hs 251;" f +critsPillarRoom src/Dodge/Room/Room.hs 398;" f +critsRoom src/Dodge/Room/Room.hs 406;" f crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f crossPic src/Dodge/Render/Label.hs 27;" f crossProd src/Geometry/Vector3D.hs 41;" f @@ -3050,7 +3049,7 @@ dbArgChain src/Dodge/Base.hs 170;" f dbwMuzzles src/Dodge/HeldUse.hs 322;" f deZoneIX src/Dodge/Zoning/Base.hs 91;" f deZoneWall src/Dodge/Zoning/Wall.hs 70;" f -deadEndRoom src/Dodge/Room/Room.hs 250;" f +deadEndRoom src/Dodge/Room/Room.hs 254;" f deadFeet src/Dodge/Creature/Picture.hs 68;" f deadRot src/Dodge/Creature/Picture.hs 84;" f deadScalp src/Dodge/Creature/Picture.hs 81;" f @@ -3171,7 +3170,7 @@ displayPulse src/Dodge/Inventory/SelectionList.hs 179;" f displayTerminalLineString src/Dodge/Update.hs 480;" f dist src/Geometry/Vector.hs 185;" f dist3 src/Geometry/Vector3D.hs 101;" f -distributerRoom src/Dodge/Room/Room.hs 411;" f +distributerRoom src/Dodge/Room/Room.hs 415;" f divTo src/Geometry/Zone.hs 8;" f divideCircle src/Geometry.hs 321;" f divideDoorPane src/Dodge/Placement/Instance/Door.hs 65;" f @@ -3251,7 +3250,7 @@ doorBetween src/Dodge/Placement/Instance/Door.hs 38;" f doorLerp src/Dodge/Door.hs 40;" f dotV src/Geometry/Vector.hs 76;" f dotV3 src/Geometry/Vector3D.hs 119;" f -doubleCorridorBarrels src/Dodge/Room/Room.hs 280;" f +doubleCorridorBarrels src/Dodge/Room/Room.hs 284;" f doubleFindMax src/Dodge/Update/Scroll.hs 181;" f doubleFindMin src/Dodge/Update/Scroll.hs 160;" f doubleFindPred src/Dodge/Update/Scroll.hs 188;" f @@ -3631,8 +3630,8 @@ glassShat1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 686;" f glassShat2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 652;" f glassShat3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 482;" f glassShat4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 646;" f -glassSwitchBack src/Dodge/Room/Room.hs 76;" f -glassSwitchBackCrits src/Dodge/Room/Room.hs 110;" f +glassSwitchBack src/Dodge/Room/Room.hs 80;" f +glassSwitchBackCrits src/Dodge/Room/Room.hs 114;" 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 @@ -3689,8 +3688,8 @@ 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 516;" f -healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 81;" f -healthTest src/Dodge/Room/LasTurret.hs 122;" f +healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 90;" f +healthTest src/Dodge/Room/LasTurret.hs 140;" f heightWallPS src/Dodge/Placement/Instance/Wall.hs 24;" f heldAimStance src/Dodge/Item/AimStance.hs 24;" f heldAimZoom src/Dodge/Update/Camera.hs 156;" f @@ -3916,8 +3915,8 @@ justify src/Justify.hs 9;" f k src/ShortShow.hs 48;" f k' src/ShortShow.hs 48;" f 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 +keyCardAnalyserByDoor src/Dodge/Room/LasTurret.hs 87;" f +keyCardRoomRunPast src/Dodge/Room/LasTurret.hs 75;" f keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f keyPic src/Dodge/Item/Draw/SPic.hs 438;" f keyholeCorridor src/Dodge/Room/Corridor.hs 40;" f @@ -3928,12 +3927,12 @@ lConnectMulti src/Dodge/Render/Connectors.hs 46;" f lShape src/Dodge/Placement/Instance/LightSource.hs 54;" f lamp src/Dodge/Creature/Lamp.hs 18;" f lampCrSPic src/Dodge/Render/ShapePicture.hs 87;" f -lasCenSensEdge src/Dodge/Room/LasTurret.hs 141;" f +lasCenSensEdge src/Dodge/Room/LasTurret.hs 159;" f lasGunPic src/Dodge/Item/Draw/SPic.hs 413;" f lasPulseS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 552;" f -lasSensorTurretTest src/Dodge/Room/LasTurret.hs 134;" f -lasTunnel src/Dodge/Room/LasTurret.hs 153;" f -lasTunnelRunPast src/Dodge/Room/LasTurret.hs 194;" f +lasSensorTurretTest src/Dodge/Room/LasTurret.hs 152;" f +lasTunnel src/Dodge/Room/LasTurret.hs 171;" f +lasTunnelRunPast src/Dodge/Room/LasTurret.hs 212;" f lasTurret src/Dodge/Placement/Instance/Turret.hs 35;" f laser src/Dodge/Item/Held/BatteryGuns.hs 34;" f lastMap src/Dodge/DoubleTree.hs 253;" f @@ -3966,8 +3965,8 @@ 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 -lightSensByDoor src/Dodge/Room/LasTurret.hs 51;" f -lightSensInsideDoor src/Dodge/Room/LasTurret.hs 39;" f +lightSensByDoor src/Dodge/Room/LasTurret.hs 60;" f +lightSensInsideDoor src/Dodge/Room/LasTurret.hs 48;" f lightSensor src/Dodge/Placement/Instance/Sensor.hs 40;" f lightsToRender src/Dodge/Render/Lights.hs 14;" f lightx4 src/Color.hs 145;" f @@ -4182,7 +4181,7 @@ miniGunX src/Dodge/Item/Held/Cane.hs 33;" 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 756;" f -miniTree2 src/Dodge/Room/Room.hs 117;" f +miniTree2 src/Dodge/Room/Room.hs 121;" f minimumOn src/FoldlHelp.hs 14;" f mirrorXAxis src/Geometry/Polygon.hs 68;" f mirrorxz src/Picture/Base.hs 335;" f @@ -4374,7 +4373,7 @@ pincerP''' src/Dodge/Creature/Boid.hs 77;" f pingPongBetween src/Render.hs 210;" f pipe src/Dodge/Item/Craftable.hs 32;" f pistol src/Dodge/Item/Held/Stick.hs 40;" f -pistolerRoom src/Dodge/Room/Room.hs 334;" f +pistolerRoom src/Dodge/Room/Room.hs 338;" f pjRemoteSetDirection src/Dodge/Projectile/Update.hs 173;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 24;" f plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f @@ -4689,15 +4688,15 @@ rmInLinks src/Dodge/RoomLink.hs 153;" f rmInvItem src/Dodge/Inventory.hs 74;" f rmLinksOfType src/Dodge/RoomLink.hs 150;" f rmOutLinks src/Dodge/RoomLink.hs 153;" f -roomC src/Dodge/Room/Room.hs 44;" f -roomCCrits src/Dodge/Room/Room.hs 275;" f -roomCenterPillar src/Dodge/Room/Room.hs 130;" f +roomC src/Dodge/Room/Room.hs 48;" f +roomCCrits src/Dodge/Room/Room.hs 279;" f +roomCenterPillar src/Dodge/Room/Room.hs 134;" f roomCritLS src/Dodge/Room/RunPast.hs 24;" f roomCross src/Dodge/Room/Boss.hs 79;" f roomGlassOctogon src/Dodge/Room/Boss.hs 22;" f -roomMiniIntro src/Dodge/Room/Room.hs 125;" f +roomMiniIntro src/Dodge/Room/Room.hs 129;" f roomNgon src/Dodge/Room/Ngon.hs 16;" f -roomPadCut src/Dodge/Room/Room.hs 65;" f +roomPadCut src/Dodge/Room/Room.hs 69;" f roomPillars src/Dodge/Room/Pillar.hs 106;" f roomPillarsContaining src/Dodge/Room/Containing.hs 39;" f roomPillarsPassage src/Dodge/Room/Pillar.hs 93;" f @@ -4911,10 +4910,10 @@ shootShatter src/Dodge/Item/Weapon/Shatter.hs 12;" f shootTeslaArc src/Dodge/HeldUse.hs 1186;" f shootTillEmpty src/Dodge/Creature/Volition.hs 19;" f shootTractorBeam src/Dodge/HeldUse.hs 821;" f -shootersRoom src/Dodge/Room/Room.hs 328;" f -shootersRoom' src/Dodge/Room/Room.hs 295;" f -shootersRoom1 src/Dodge/Room/Room.hs 318;" f -shootingRange src/Dodge/Room/Room.hs 345;" f +shootersRoom src/Dodge/Room/Room.hs 332;" f +shootersRoom' src/Dodge/Room/Room.hs 299;" f +shootersRoom1 src/Dodge/Room/Room.hs 322;" f +shootingRange src/Dodge/Room/Room.hs 349;" f shortPoint2 src/Dodge/ShortShow.hs 4;" f shortShow src/ShortShow.hs 7;" f shotgunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 748;" f @@ -4925,9 +4924,9 @@ showEquipItem src/Dodge/Item/Display.hs 107;" f showInt src/Dodge/Item/Info.hs 75;" f showIntsString src/Dodge/Tree/Compose.hs 129;" f showInventoryPathing src/Dodge/Item/Display.hs 86;" f -showManObj src/Dodge/TestString.hs 48;" f +showManObj src/Dodge/TestString.hs 53;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f -showTimeFlow src/Dodge/TestString.hs 71;" f +showTimeFlow src/Dodge/TestString.hs 76;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 175;" f shrinkVert src/Geometry/Polygon.hs 179;" f shuffle src/RandomHelp.hs 49;" f @@ -5000,7 +4999,7 @@ sparkRandDir src/Dodge/Spark.hs 116;" f sparkToDamage src/Dodge/Spark.hs 39;" f spawnAt src/Dodge/SpawnAt.hs 14;" f spawnerCrit src/Dodge/Creature.hs 54;" f -spawnerRoom src/Dodge/Room/Room.hs 373;" f +spawnerRoom src/Dodge/Room/Room.hs 377;" f speedLegs src/Dodge/Item/Equipment.hs 90;" f splashMenu src/Dodge/Menu.hs 33;" f splashMenuOptions src/Dodge/Menu.hs 38;" f @@ -5201,7 +5200,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 472;" f topInvW src/Dodge/ListDisplayParams.hs 49;" f topPrismEdgeIndices src/Shader/Poke.hs 335;" f topPrismIndices src/Shader/Poke.hs 410;" f -topTestPart src/Dodge/TestString.hs 44;" f +topTestPart src/Dodge/TestString.hs 49;" f torchShape src/Dodge/Item/Draw/SPic.hs 277;" f torqueAmount src/Dodge/HeldUse.hs 581;" f torqueCr src/Dodge/WorldEffect.hs 78;" f @@ -5515,12 +5514,12 @@ wasdWithAiming src/Dodge/Creature/YourControl.hs 126;" f watchCombinations src/Dodge/Combine/Combinations.hs 16;" f watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 185;" f weakenMatS src/Dodge/Material/Sound.hs 19;" f -weaponBehindPillar src/Dodge/Room/Room.hs 190;" f -weaponBetweenPillars src/Dodge/Room/Room.hs 206;" f -weaponEmptyRoom src/Dodge/Room/Room.hs 151;" f -weaponLongCorridor src/Dodge/Room/Room.hs 231;" f -weaponRoom src/Dodge/Room/Room.hs 264;" f -weaponUnderCrits src/Dodge/Room/Room.hs 169;" f +weaponBehindPillar src/Dodge/Room/Room.hs 194;" f +weaponBetweenPillars src/Dodge/Room/Room.hs 210;" f +weaponEmptyRoom src/Dodge/Room/Room.hs 155;" f +weaponLongCorridor src/Dodge/Room/Room.hs 235;" f +weaponRoom src/Dodge/Room/Room.hs 268;" f +weaponUnderCrits src/Dodge/Room/Room.hs 173;" f wedgeGeom src/Dodge/Base.hs 42;" f wedgeOfThickness src/Dodge/Picture.hs 9;" f whirS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 752;" f