From cba0f36ac5ac7d7d18df417a508dbc89d38e0cfc Mon Sep 17 00:00:00 2001 From: justin Date: Thu, 23 Oct 2025 22:34:50 +0100 Subject: [PATCH] Simplify machine placement --- src/Dodge/Data/GenWorld.hs | 2 +- src/Dodge/Data/Wall.hs | 2 +- src/Dodge/Default/Wall.hs | 2 +- src/Dodge/Placement/Instance/Sensor.hs | 2 +- src/Dodge/Placement/Instance/Terminal.hs | 2 +- src/Dodge/Placement/Instance/Turret.hs | 2 - src/Dodge/Placement/PlaceSpot.hs | 32 +- tags | 576 +++++++++++------------ 8 files changed, 306 insertions(+), 314 deletions(-) diff --git a/src/Dodge/Data/GenWorld.hs b/src/Dodge/Data/GenWorld.hs index 50446ae6b..138e0de72 100644 --- a/src/Dodge/Data/GenWorld.hs +++ b/src/Dodge/Data/GenWorld.hs @@ -33,7 +33,7 @@ data PSType | PutMachine { _putMachinePoly :: [Point2] , _putMachineMachine :: Machine - , _putMachineWall :: Wall +-- , _putMachineWall :: Wall , _putMachineMaybeItem :: Maybe Item } | PutLS LightSource diff --git a/src/Dodge/Data/Wall.hs b/src/Dodge/Data/Wall.hs index 9437652eb..81d1b0f81 100644 --- a/src/Dodge/Data/Wall.hs +++ b/src/Dodge/Data/Wall.hs @@ -32,7 +32,7 @@ data Wall = Wall data Opacity = SeeThrough - | SeeAbove + | SeeAbove -- these are not drawn themselves, but the "owning" machine or block should draw them | DrawnWall {_opDraw :: WallDraw} -- Wall -> SPic | Opaque {_opTexture :: Int} deriving (Eq, Ord, Show, Read) --Generic, Flat) diff --git a/src/Dodge/Default/Wall.hs b/src/Dodge/Default/Wall.hs index ade8dffe6..ed955cdf5 100644 --- a/src/Dodge/Default/Wall.hs +++ b/src/Dodge/Default/Wall.hs @@ -19,7 +19,6 @@ defaultWall = Wall { _wlLine = (V2 0 0, V2 50 0) , _wlID = 0 --- , _wlColor = greyN 0.6 , _wlPathFlag = S.fromList [ WallBlockVisibility @@ -55,6 +54,7 @@ defaultMachineWall = , _wlRotateTo = False , _wlStructure = MachinePart 0 , _wlMaterial = Metal + , _wlTouchThrough = True } defaultSensorWall :: Wall diff --git a/src/Dodge/Placement/Instance/Sensor.hs b/src/Dodge/Placement/Instance/Sensor.hs index e5d3516d7..a99c4d5b8 100644 --- a/src/Dodge/Placement/Instance/Sensor.hs +++ b/src/Dodge/Placement/Instance/Sensor.hs @@ -29,7 +29,7 @@ damageSensor dt wdth mtrid ps = pContID ps (PutLS $ lsPosCol (V3 0 0 30) 0.1) $ (damageTypeThreshold dt) ) ) - defaultSensorWall +-- defaultMachineWall Nothing damageTypeThreshold :: SensorType -> Int diff --git a/src/Dodge/Placement/Instance/Terminal.hs b/src/Dodge/Placement/Instance/Terminal.hs index beebadd5c..4e1567538 100644 --- a/src/Dodge/Placement/Instance/Terminal.hs +++ b/src/Dodge/Placement/Instance/Terminal.hs @@ -36,7 +36,7 @@ putTerminalFull f col mc tm = ( mc & mcMounts . at OTButton ?~ fromJust (_plMID btpl) & mcMounts . at OTTerminal .~ _plMID tmpl ) - defaultSensorWall +-- defaultMachineWall Nothing ) $ \mcpl -> Just $ pt0 (PutWorldUpdate $ const $ const $ over gwWorld (setids tmpl btpl mcpl)) (\_ -> f tmpl btpl mcpl) diff --git a/src/Dodge/Placement/Instance/Turret.hs b/src/Dodge/Placement/Instance/Turret.hs index 820bb3d19..f4f571d17 100644 --- a/src/Dodge/Placement/Instance/Turret.hs +++ b/src/Dodge/Placement/Instance/Turret.hs @@ -18,7 +18,6 @@ putTurret itm rotSpeed = & mcType .~ (turret itm & _McTurret . tuTurnSpeed .~ rotSpeed) & mcHP .~ 50000 ) - defaultMachineWall (Just itm) putLasTurret :: Float -> Placement @@ -31,7 +30,6 @@ putLasTurret rotSpeed = & mcType .~ (lasTurret & _McTurret . tuTurnSpeed .~ rotSpeed) & mcHP .~ 50000 ) - defaultMachineWall (Just laser) turret :: Item -> MachineType diff --git a/src/Dodge/Placement/PlaceSpot.hs b/src/Dodge/Placement/PlaceSpot.hs index b37223619..fe8cbd873 100644 --- a/src/Dodge/Placement/PlaceSpot.hs +++ b/src/Dodge/Placement/PlaceSpot.hs @@ -6,6 +6,7 @@ -} module Dodge.Placement.PlaceSpot (placeSpot) where +import Dodge.Default.Wall import qualified Data.Set as S import Control.Monad.State import Data.Bifunctor @@ -130,7 +131,8 @@ placeSpotID rid ps pt w = case pt of fsID (mvFS p rot fs) w - PutMachine pps mc wl mitm -> plMachine (map doShift pps) mc wl mitm p rot w + --PutMachine pps mc wl mitm -> plMachine (map doShift pps) mc wl mitm p rot w + PutMachine pps mc mitm -> plMachine (map doShift pps) mc mitm p rot w PutLS ls -> plNewUpID (gwWorld . cWorld . lWorld . lightSources) lsID (mvLS p' rot ls) w RandPS _ -> error "RandPS should not be reachable here" --evaluateRandPS rid rgn ps w --PutDoor col eo f pss -> plDoor col eo f (map (bimap doShift doShift) pss) w @@ -206,29 +208,29 @@ mvFS p a = (fsDir +~ a) . (fsPos %~ ((p +.+) . rotateV a)) plMachine :: [Point2] -> Machine -> - Wall -> +-- Wall -> Maybe Item -> Point2 -> Float -> GenWorld -> (Int, GenWorld) -plMachine wallpoly mc wl = \case - Nothing -> plMachine' wallpoly mc wl - Just itm -> plTurret wallpoly mc wl itm +plMachine wallpoly mc = \case + Nothing -> plMachine' wallpoly mc + Just itm -> plTurret wallpoly mc itm plTurret :: [Point2] -> Machine -> - Wall -> +-- Wall -> Item -> Point2 -> Float -> GenWorld -> (Int, GenWorld) -plTurret wallpoly mc wl itm p rot gw = +plTurret wallpoly mc itm p rot gw = ( mcid , gw & gwWorld . cWorld . lWorld . machines %~ addMc - & gwWorld . cWorld . lWorld . walls %~ placeMachineWalls wl wallpoly mcid wlid + & gwWorld . cWorld . lWorld . walls %~ placeMachineWalls wallpoly mcid wlid & gwWorld . cWorld . lWorld . items . at itid ?~ itm' ) where @@ -246,11 +248,11 @@ plTurret wallpoly mc wl itm p rot gw = & mcType . mctTurret . tuWeapon .~ itid ) -plMachine' :: [Point2] -> Machine -> Wall -> Point2 -> Float -> GenWorld -> (Int, GenWorld) -plMachine' wallpoly mc wl p rot gw = +plMachine' :: [Point2] -> Machine -> Point2 -> Float -> GenWorld -> (Int, GenWorld) +plMachine' wallpoly mc p rot gw = ( mcid , gw & gwWorld . cWorld . lWorld . machines %~ addMc - & gwWorld . cWorld . lWorld . walls %~ placeMachineWalls wl wallpoly mcid wlid + & gwWorld . cWorld . lWorld . walls %~ placeMachineWalls wallpoly mcid wlid ) where mcid = IM.newKey $ gw ^. gwWorld . cWorld . lWorld . machines @@ -259,14 +261,12 @@ plMachine' wallpoly mc wl p rot gw = addMc = IM.insert mcid (mc{_mcPos = p, _mcDir = rot, _mcID = mcid, _mcWallIDs = wlids}) -- TODO correctly remove/shift pathfinding lines (removePathsCrossing) -placeMachineWalls :: - Wall -> [Point2] -> Int -> Int -> IM.IntMap Wall -> IM.IntMap Wall -placeMachineWalls wl poly mcid wlid = flip (foldr f) $ zip [wlid ..] $ loopPairs poly +placeMachineWalls :: [Point2] -> Int -> Int -> IM.IntMap Wall -> IM.IntMap Wall +placeMachineWalls poly mcid wlid = flip (foldr f) $ zip [wlid ..] $ loopPairs poly where f (wid, l) = IM.insert wid baseWall{_wlID = wid, _wlLine = l} baseWall = - wl --- & wlColor .~ col + defaultMachineWall & wlStructure . wsMachine .~ mcid & wlTouchThrough .~ True diff --git a/tags b/tags index f39c69c90..38ff14a29 100644 --- a/tags +++ b/tags @@ -38,7 +38,7 @@ AZURE src/Color/Data.hs 20;" C AccessTerminal src/Dodge/Data/WorldEffect.hs 25;" C Action src/Dodge/Data/ActionPlan.hs 65;" t ActionPlan src/Dodge/Data/ActionPlan.hs 14;" t -ActionUpdate src/Dodge/Creature/Action.hs 48;" t +ActionUpdate src/Dodge/Creature/Action.hs 49;" t AddGoal src/Dodge/Data/ActionPlan.hs 44;" C AimAt src/Dodge/Data/ActionPlan.hs 66;" C AimStance src/Dodge/Data/AimStance.hs 10;" t @@ -291,7 +291,7 @@ CreatureType src/Dodge/Data/Creature/Misc.hs 58;" t Crushing src/Dodge/Data/Damage.hs 19;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C CryostatisSS src/Dodge/Data/Scenario.hs 91;" C -Crystal src/Dodge/Data/Material.hs 9;" C +Crystal src/Dodge/Data/Material.hs 15;" C Cull_more_lights src/Dodge/Data/Config.hs 78;" C CursorDisplay src/Dodge/Data/SelectionList.hs 19;" t Cylinder src/Shape/Data.hs 14;" C @@ -328,7 +328,7 @@ DestroyBeing src/Dodge/Data/Scenario.hs 8;" C DestroyBullet src/Dodge/Data/Bullet.hs 27;" C DestroyItem src/Dodge/Data/Scenario.hs 7;" C Detector src/Dodge/Data/Item/Combine.hs 181;" t -Dirt src/Dodge/Data/Material.hs 9;" C +Dirt src/Dodge/Data/Material.hs 11;" C DisasterType src/Dodge/Data/Scenario.hs 24;" t DisplayTerminal src/Dodge/Data/HUD.hs 27;" C Display_debug src/Dodge/Data/Config.hs 68;" C @@ -348,14 +348,14 @@ DoReplicate src/Dodge/Data/ActionPlan.hs 106;" C DoReplicatePartial src/Dodge/Data/ActionPlan.hs 110;" C DockingBaySS src/Dodge/Data/Scenario.hs 92;" C Door src/Dodge/Data/Door.hs 29;" t -DoorLerp src/Dodge/Data/WorldEffect.hs 63;" C +DoorDoNothing src/Dodge/Data/Door.hs 43;" C +DoorLerp src/Dodge/Data/Door.hs 43;" C DoorPart src/Dodge/Data/Wall/Structure.hs 12;" C +DoorUpdate src/Dodge/Data/Door.hs 43;" t DoubleRes src/Dodge/Data/Config.hs 98;" C DoubleTreeNodeType src/Dodge/Data/DoubleTree.hs 14;" t -DrWdId src/Dodge/Data/WorldEffect.hs 63;" C -DrWdWd src/Dodge/Data/WorldEffect.hs 63;" t -DrawForceField src/Dodge/Data/Wall.hs 46;" C -DrawnWall src/Dodge/Data/Wall.hs 42;" C +DrawForceField src/Dodge/Data/Wall.hs 40;" C +DrawnWall src/Dodge/Data/Wall.hs 36;" C DroneAmmo src/Dodge/Data/AmmoType.hs 10;" C DropItem src/Dodge/Data/ActionPlan.hs 38;" C DudPayload src/Dodge/Data/Payload.hs 11;" C @@ -378,7 +378,7 @@ ElectricSpark src/Dodge/Data/Spark.hs 19;" C Electrical src/Dodge/Data/Damage.hs 24;" C ElectricalAmmo src/Dodge/Data/AmmoType.hs 9;" C ElectricalBall src/Dodge/Data/EnergyBall/Type.hs 13;" C -Electronics src/Dodge/Data/Material.hs 9;" C +Electronics src/Dodge/Data/Material.hs 17;" C EllShad src/Picture/Data.hs 37;" C EncircleFlock src/Dodge/Data/Creature/State.hs 15;" C EnergyBall src/Dodge/Data/EnergyBall.hs 15;" t @@ -439,7 +439,7 @@ FlatShieldParams src/Dodge/Data/Item/Params.hs 14;" C FlechetteTrajectory src/Dodge/Data/Bullet.hs 43;" C FlechetteTrajectoryType src/Dodge/Data/Bullet.hs 50;" C Flee src/Dodge/Data/ActionPlan.hs 143;" C -Flesh src/Dodge/Data/Material.hs 9;" C +Flesh src/Dodge/Data/Material.hs 16;" C FloatAbsCheckGreaterLess src/Dodge/Data/FloatFunction.hs 14;" C FloatConst src/Dodge/Data/FloatFunction.hs 15;" C FloatDistLinearNearFar src/Dodge/Data/FloatFunction.hs 13;" C @@ -455,6 +455,7 @@ Flying src/Dodge/Data/Creature/Stance.hs 26;" C FollowImpulses src/Dodge/Data/ActionPlan.hs 134;" C FootForward src/Dodge/Data/Creature/Stance.hs 30;" t FootstepSound src/Dodge/Data/SoundOrigin.hs 29;" C +ForceField src/Dodge/Data/Material.hs 18;" C ForceFieldType src/Dodge/Data/Item/Use/Consumption/Ammo.hs 11;" t ForegroundShape src/Dodge/Data/ForegroundShape.hs 12;" t FromEdge src/Dodge/Data/Room.hs 49;" C @@ -484,13 +485,13 @@ GasFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" t GasParams src/Dodge/Data/Item/Use.hs 52;" C GenFloat src/Dodge/Data/GenFloat.hs 9;" t GenParams src/Dodge/Data/GenParams.hs 13;" t -GenWorld src/Dodge/Data/GenWorld.hs 24;" t +GenWorld src/Dodge/Data/GenWorld.hs 23;" t GenericFaction src/Dodge/Data/Creature/State.hs 13;" C GeoObjShads src/Dodge/Data/Config.hs 102;" C GetTo src/Dodge/Data/ActionPlan.hs 141;" C GetToPoint src/Dodge/Data/Scenario.hs 12;" C Gib src/Dodge/Data/Prop.hs 25;" C -Glass src/Dodge/Data/Material.hs 9;" C +Glass src/Dodge/Data/Material.hs 13;" C GlassBreakSound src/Dodge/Data/SoundOrigin.hs 33;" C Goal src/Dodge/Data/ActionPlan.hs 149;" t GoesOnBack src/Dodge/Data/Equipment/Misc.hs 12;" C @@ -698,7 +699,7 @@ MODBlockedString src/Dodge/Data/Universe.hs 94;" C MODString src/Dodge/Data/Universe.hs 93;" C MODStringOption src/Dodge/Data/Universe.hs 95;" C MOTOR src/Dodge/Data/Item/Combine.hs 63;" C -MPO src/Dodge/Base/Collide.hs 99;" t +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 @@ -749,7 +750,7 @@ MenuOptionDisplay src/Dodge/Data/Universe.hs 92;" t MetaBranch src/Dodge/Data/MetaTree.hs 18;" t MetaNode src/Dodge/Data/MetaTree.hs 14;" t MetaTree src/Dodge/Data/MetaTree.hs 11;" t -Metal src/Dodge/Data/Material.hs 9;" C +Metal src/Dodge/Data/Material.hs 14;" C Metapysics src/Dodge/Data/Scenario.hs 17;" t Military src/Dodge/Data/Scenario.hs 45;" C Mine src/Dodge/Data/Scenario.hs 64;" C @@ -915,8 +916,8 @@ OnTurret src/Dodge/Data/Item/Location.hs 37;" C OnceSound src/Dodge/Data/SoundOrigin.hs 14;" C OneHand src/Dodge/Data/AimStance.hs 14;" C OnwardCluster src/Dodge/Data/RoomCluster.hs 13;" C -Opacity src/Dodge/Data/Wall.hs 39;" t -Opaque src/Dodge/Data/Wall.hs 43;" C +Opacity src/Dodge/Data/Wall.hs 33;" t +Opaque src/Dodge/Data/Wall.hs 37;" C OpticScope src/Dodge/Data/Item/Scope.hs 12;" C OptionScreen src/Dodge/Data/Universe.hs 80;" C OptionScreenFlag src/Dodge/Data/Universe.hs 70;" t @@ -946,11 +947,11 @@ POISONSPRAYER src/Dodge/Data/Item/Combine.hs 172;" C PORTABLEFUSION src/Dodge/Data/Item/Combine.hs 87;" C POWERLEGS src/Dodge/Data/Item/Combine.hs 128;" C PRISM src/Dodge/Data/Item/Combine.hs 65;" C -PS src/Dodge/Data/GenWorld.hs 96;" C -PSNoShiftCont src/Dodge/Data/GenWorld.hs 97;" C -PSPos src/Dodge/Data/GenWorld.hs 98;" C -PSRoomRand src/Dodge/Data/GenWorld.hs 103;" C -PSType src/Dodge/Data/GenWorld.hs 32;" t +PS src/Dodge/Data/GenWorld.hs 95;" C +PSNoShiftCont src/Dodge/Data/GenWorld.hs 96;" C +PSPos src/Dodge/Data/GenWorld.hs 97;" C +PSRoomRand src/Dodge/Data/GenWorld.hs 102;" C +PSType src/Dodge/Data/GenWorld.hs 31;" t PUMP src/Dodge/Data/Item/Combine.hs 62;" C PaletteColor src/Color/Data.hs 11;" t PathBetweenDebugV2s src/Dodge/Data/Universe.hs 54;" C @@ -969,8 +970,8 @@ PhysicalSensor src/Dodge/Data/Machine/Sensor.hs 16;" C Picture src/Picture/Data.hs 44;" t Piercing src/Dodge/Data/Damage.hs 16;" C PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C -Placement src/Dodge/Data/GenWorld.hs 109;" t -PlacementSpot src/Dodge/Data/GenWorld.hs 95;" t +Placement src/Dodge/Data/GenWorld.hs 108;" t +PlacementSpot src/Dodge/Data/GenWorld.hs 94;" t PlainBarrel src/Dodge/Data/Creature/Misc.hs 86;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlayStatus src/Sound/Data.hs 21;" t @@ -1034,28 +1035,28 @@ PulseStatus src/Dodge/Data/Creature/Misc.hs 52;" C PushSource src/Dodge/Data/Door.hs 23;" t PushedBy src/Dodge/Data/Door.hs 25;" C PushesItself src/Dodge/Data/Door.hs 24;" C -PutBlock src/Dodge/Data/GenWorld.hs 45;" C -PutButton src/Dodge/Data/GenWorld.hs 41;" C -PutChasm src/Dodge/Data/GenWorld.hs 64;" C -PutCoord src/Dodge/Data/GenWorld.hs 46;" C -PutCrit src/Dodge/Data/GenWorld.hs 33;" C -PutDoor src/Dodge/Data/GenWorld.hs 58;" C -PutFlIt src/Dodge/Data/GenWorld.hs 44;" C -PutForeground src/Dodge/Data/GenWorld.hs 60;" C -PutID src/Dodge/Data/GenWorld.hs 63;" C -PutLS src/Dodge/Data/GenWorld.hs 40;" C -PutLabel src/Dodge/Data/GenWorld.hs 65;" C -PutLineBlock src/Dodge/Data/GenWorld.hs 49;" C -PutMachine src/Dodge/Data/GenWorld.hs 34;" C -PutMod src/Dodge/Data/GenWorld.hs 47;" C -PutNothing src/Dodge/Data/GenWorld.hs 62;" C +PutBlock src/Dodge/Data/GenWorld.hs 44;" C +PutButton src/Dodge/Data/GenWorld.hs 40;" C +PutChasm src/Dodge/Data/GenWorld.hs 63;" C +PutCoord src/Dodge/Data/GenWorld.hs 45;" C +PutCrit src/Dodge/Data/GenWorld.hs 32;" C +PutDoor src/Dodge/Data/GenWorld.hs 57;" C +PutFlIt src/Dodge/Data/GenWorld.hs 43;" C +PutForeground src/Dodge/Data/GenWorld.hs 59;" C +PutID src/Dodge/Data/GenWorld.hs 62;" C +PutLS src/Dodge/Data/GenWorld.hs 39;" C +PutLabel src/Dodge/Data/GenWorld.hs 64;" C +PutLineBlock src/Dodge/Data/GenWorld.hs 48;" C +PutMachine src/Dodge/Data/GenWorld.hs 33;" C +PutMod src/Dodge/Data/GenWorld.hs 46;" C +PutNothing src/Dodge/Data/GenWorld.hs 61;" C PutOnEquipment src/Dodge/Data/RightButtonOptions.hs 19;" C -PutProp src/Dodge/Data/GenWorld.hs 42;" C -PutSlideDr src/Dodge/Data/GenWorld.hs 56;" C -PutTerminal src/Dodge/Data/GenWorld.hs 43;" C -PutTrigger src/Dodge/Data/GenWorld.hs 48;" C -PutWall src/Dodge/Data/GenWorld.hs 55;" C -PutWorldUpdate src/Dodge/Data/GenWorld.hs 61;" C +PutProp src/Dodge/Data/GenWorld.hs 41;" C +PutSlideDr src/Dodge/Data/GenWorld.hs 55;" C +PutTerminal src/Dodge/Data/GenWorld.hs 42;" C +PutTrigger src/Dodge/Data/GenWorld.hs 47;" C +PutWall src/Dodge/Data/GenWorld.hs 54;" C +PutWorldUpdate src/Dodge/Data/GenWorld.hs 60;" C QFloat src/Geometry/Data.hs 50;" t QuarterRes src/Dodge/Data/Config.hs 98;" C QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C @@ -1079,7 +1080,7 @@ RadialDistortion src/Dodge/Data/Distortion.hs 11;" C RandImpulse src/Dodge/Data/ActionPlan.hs 49;" t RandImpulseCircMove src/Dodge/Data/ActionPlan.hs 51;" C RandImpulseList src/Dodge/Data/ActionPlan.hs 50;" C -RandPS src/Dodge/Data/GenWorld.hs 59;" C +RandPS src/Dodge/Data/GenWorld.hs 58;" C RandomImpulse src/Dodge/Data/ActionPlan.hs 31;" C RandomTurn src/Dodge/Data/ActionPlan.hs 30;" C ReactorSS src/Dodge/Data/Scenario.hs 111;" C @@ -1115,7 +1116,7 @@ Rocket src/Dodge/Data/Projectile.hs 32;" C RocketHoming src/Dodge/Data/Projectile.hs 39;" t RocketSmoke src/Dodge/Data/Projectile.hs 52;" t RocketSmoke src/Dodge/Data/Cloud.hs 22;" C -Room src/Dodge/Data/GenWorld.hs 124;" t +Room src/Dodge/Data/GenWorld.hs 123;" t RoomClipping src/Dodge/Data/Config.hs 108;" t RoomInt src/Dodge/Tree/Shift.hs 26;" t RoomLink src/Dodge/Data/Room.hs 24;" t @@ -1154,8 +1155,8 @@ ScreenPos src/Dodge/Data/ScreenPos.hs 12;" t Search src/Dodge/Data/ActionPlan.hs 145;" C SecretCabal src/Dodge/Data/Scenario.hs 44;" C SectionCursor src/Dodge/Data/SelectionList.hs 23;" t -SeeAbove src/Dodge/Data/Wall.hs 41;" C -SeeThrough src/Dodge/Data/Wall.hs 40;" C +SeeAbove src/Dodge/Data/Wall.hs 35;" C +SeeThrough src/Dodge/Data/Wall.hs 34;" C Sel src/Dodge/Data/HUD.hs 39;" C SelCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 31;" C SelCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" C @@ -1254,7 +1255,7 @@ StandaloneWall src/Dodge/Data/Wall/Structure.hs 11;" C Standing src/Dodge/Data/Creature/Stance.hs 24;" C StartSentinelPost src/Dodge/Data/ActionPlan.hs 117;" C StayInArea src/Dodge/Data/Scenario.hs 13;" C -Stone src/Dodge/Data/Material.hs 9;" C +Stone src/Dodge/Data/Material.hs 12;" C StorageSS src/Dodge/Data/Scenario.hs 94;" C Strategy src/Dodge/Data/ActionPlan.hs 128;" t StrategyActions src/Dodge/Data/ActionPlan.hs 140;" C @@ -1436,10 +1437,10 @@ WRISTARMOUR src/Dodge/Data/Item/Combine.hs 123;" C WRIST_ECG src/Dodge/Data/Item/Combine.hs 135;" C WaitThen src/Dodge/Data/ActionPlan.hs 74;" C Walking src/Dodge/Data/Creature/Stance.hs 23;" C -Wall src/Dodge/Data/Wall.hs 19;" t +Wall src/Dodge/Data/Wall.hs 18;" t WallArcNode src/Dodge/Data/LWorld.hs 154;" C WallBlockVisibility src/Dodge/Data/Wall/Structure.hs 19;" C -WallDraw src/Dodge/Data/Wall.hs 46;" t +WallDraw src/Dodge/Data/Wall.hs 40;" t WallFlag src/Dodge/Data/Wall/Structure.hs 18;" t WallNotAutoOpen src/Dodge/Data/Wall/Structure.hs 20;" C WallNotDestrucable src/Dodge/Data/Wall/Structure.hs 21;" C @@ -1483,7 +1484,7 @@ WeaponTargetingSF src/Dodge/Data/ComposedItem.hs 20;" C West src/Dodge/Data/CardinalPoint.hs 9;" C West8 src/Dodge/Data/CardinalPoint.hs 26;" C WlID src/Dodge/Data/CrWlID.hs 10;" C -Wood src/Dodge/Data/Material.hs 9;" C +Wood src/Dodge/Data/Material.hs 10;" C World src/Dodge/Data/World.hs 34;" t WorldEffects src/Dodge/Data/WorldEffect.hs 23;" C WorldEventFlag src/Dodge/Data/World.hs 29;" t @@ -1759,13 +1760,13 @@ _drFootPrint src/Dodge/Data/Door.hs 36;" f _drHP src/Dodge/Data/Door.hs 37;" f _drID src/Dodge/Data/Door.hs 30;" f _drLerp src/Dodge/Data/Door.hs 35;" f -_drMech src/Dodge/Data/Door.hs 32;" f -_drMounts src/Dodge/Data/Door.hs 41;" f +_drLerpSpeed src/Dodge/Data/Door.hs 43;" f +_drMounts src/Dodge/Data/Door.hs 40;" f _drOnePos src/Dodge/Data/Door.hs 34;" f -_drPushedBy src/Dodge/Data/Door.hs 39;" f -_drPushes src/Dodge/Data/Door.hs 40;" f -_drSpeed src/Dodge/Data/Door.hs 38;" f +_drPushedBy src/Dodge/Data/Door.hs 38;" f +_drPushes src/Dodge/Data/Door.hs 39;" f _drTrigger src/Dodge/Data/Door.hs 31;" f +_drUpdate src/Dodge/Data/Door.hs 32;" f _drZeroPos src/Dodge/Data/Door.hs 33;" f _dsPos src/Dodge/Data/Cloud.hs 28;" f _dsTimer src/Dodge/Data/Cloud.hs 30;" f @@ -1817,9 +1818,9 @@ _fullscreenShader src/Data/Preload/Render.hs 20;" f _futureWorlds src/Dodge/Data/World.hs 67;" f _futureWorlds src/Dodge/Data/World.hs 73;" f _gameplay_rotate_to_wall src/Dodge/Data/Config.hs 55;" f -_genInts src/Dodge/Data/GenWorld.hs 28;" f -_genPmnt src/Dodge/Data/GenWorld.hs 27;" f -_genRooms src/Dodge/Data/GenWorld.hs 26;" f +_genInts src/Dodge/Data/GenWorld.hs 27;" f +_genPmnt src/Dodge/Data/GenWorld.hs 26;" f +_genRooms src/Dodge/Data/GenWorld.hs 25;" f _getAttentiveTo src/Dodge/Data/Creature/Perception.hs 59;" f _getCombAmount src/Dodge/Data/CombAmount.hs 10;" f _getFixated src/Dodge/Data/Creature/Perception.hs 60;" f @@ -1852,7 +1853,7 @@ _guPos src/Dodge/Data/Gust.hs 13;" f _guTime src/Dodge/Data/Gust.hs 15;" f _guVel src/Dodge/Data/Gust.hs 14;" f _gusts src/Dodge/Data/LWorld.hs 97;" f -_gwWorld src/Dodge/Data/GenWorld.hs 25;" f +_gwWorld src/Dodge/Data/GenWorld.hs 24;" f _heldPos src/Dodge/Data/Input.hs 43;" f _heldWorldPos src/Dodge/Data/Input.hs 45;" f _hotkeys src/Dodge/Data/LWorld.hs 139;" f @@ -2053,9 +2054,9 @@ _nzWalkSpeed src/Dodge/Data/Muzzle.hs 50;" f _offGridFromEdges src/Dodge/Data/Room.hs 82;" f _oldMagnets src/Dodge/Data/LWorld.hs 121;" f _onGridFromEdges src/Dodge/Data/Room.hs 81;" f -_opDraw src/Dodge/Data/Wall.hs 42;" f +_opDraw src/Dodge/Data/Wall.hs 36;" f _opSel src/Dodge/Data/RightButtonOptions.hs 15;" f -_opTexture src/Dodge/Data/Wall.hs 43;" f +_opTexture src/Dodge/Data/Wall.hs 37;" f _opticDefaultZoom src/Dodge/Data/Item/Scope.hs 18;" f _opticPos src/Dodge/Data/Item/Scope.hs 14;" f _opticZoom src/Dodge/Data/Item/Scope.hs 17;" f @@ -2083,11 +2084,11 @@ _pjSpin src/Dodge/Data/Projectile.hs 19;" f _pjTimer src/Dodge/Data/Projectile.hs 22;" f _pjType src/Dodge/Data/Projectile.hs 24;" f _pjVel src/Dodge/Data/Projectile.hs 17;" f -_plExternalID src/Dodge/Data/GenWorld.hs 113;" f -_plIDCont src/Dodge/Data/GenWorld.hs 114;" f -_plMID src/Dodge/Data/GenWorld.hs 112;" f -_plSpot src/Dodge/Data/GenWorld.hs 110;" f -_plType src/Dodge/Data/GenWorld.hs 111;" f +_plExternalID src/Dodge/Data/GenWorld.hs 112;" f +_plIDCont src/Dodge/Data/GenWorld.hs 113;" f +_plMID src/Dodge/Data/GenWorld.hs 111;" f +_plSpot src/Dodge/Data/GenWorld.hs 109;" f +_plType src/Dodge/Data/GenWorld.hs 110;" f _playStatus src/Sound/Data.hs 15;" f _playingSounds src/Dodge/Data/World.hs 40;" f _posture src/Dodge/Data/Creature/Stance.hs 17;" f @@ -2108,35 +2109,35 @@ _proxReqEquipment src/Dodge/Data/Machine/Sensor.hs 36;" f _proxReqMinHealth src/Dodge/Data/Machine/Sensor.hs 35;" f _proxSensorType src/Dodge/Data/Machine/Sensor.hs 26;" f _proxToggle src/Dodge/Data/Machine/Sensor.hs 27;" f -_psFallback src/Dodge/Data/GenWorld.hs 101;" f -_psPos src/Dodge/Data/GenWorld.hs 96;" f -_psRandShift src/Dodge/Data/GenWorld.hs 105;" f -_psRoomEff src/Dodge/Data/GenWorld.hs 100;" f -_psRoomRandPointNum src/Dodge/Data/GenWorld.hs 104;" f -_psRot src/Dodge/Data/GenWorld.hs 96;" f -_psSelect src/Dodge/Data/GenWorld.hs 99;" f +_psFallback src/Dodge/Data/GenWorld.hs 100;" f +_psPos src/Dodge/Data/GenWorld.hs 95;" f +_psRandShift src/Dodge/Data/GenWorld.hs 104;" f +_psRoomEff src/Dodge/Data/GenWorld.hs 99;" f +_psRoomRandPointNum src/Dodge/Data/GenWorld.hs 103;" f +_psRot src/Dodge/Data/GenWorld.hs 95;" f +_psSelect src/Dodge/Data/GenWorld.hs 98;" f _pulseBalls src/Dodge/Data/LWorld.hs 113;" f _pulseLasers src/Dodge/Data/LWorld.hs 112;" f _pulseProgress src/Dodge/Data/Creature/Misc.hs 54;" f _pulseRate src/Dodge/Data/Creature/Misc.hs 53;" f -_putBlock src/Dodge/Data/GenWorld.hs 45;" f -_putButton src/Dodge/Data/GenWorld.hs 41;" f -_putChasmPoly src/Dodge/Data/GenWorld.hs 64;" f -_putEndPoint src/Dodge/Data/GenWorld.hs 53;" f -_putID src/Dodge/Data/GenWorld.hs 63;" f -_putItem src/Dodge/Data/GenWorld.hs 44;" f -_putLabel src/Dodge/Data/GenWorld.hs 65;" f -_putMachineMachine src/Dodge/Data/GenWorld.hs 36;" f -_putMachineMaybeItem src/Dodge/Data/GenWorld.hs 38;" f -_putMachinePoly src/Dodge/Data/GenWorld.hs 35;" f -_putMachineWall src/Dodge/Data/GenWorld.hs 37;" f -_putPoly src/Dodge/Data/GenWorld.hs 45;" f -_putStartPoint src/Dodge/Data/GenWorld.hs 52;" f -_putWall src/Dodge/Data/GenWorld.hs 45;" f -_putWall src/Dodge/Data/GenWorld.hs 50;" f -_putWidth src/Dodge/Data/GenWorld.hs 51;" f -_pwPoly src/Dodge/Data/GenWorld.hs 55;" f -_pwWall src/Dodge/Data/GenWorld.hs 55;" f +_putBlock src/Dodge/Data/GenWorld.hs 44;" f +_putButton src/Dodge/Data/GenWorld.hs 40;" f +_putChasmPoly src/Dodge/Data/GenWorld.hs 63;" f +_putEndPoint src/Dodge/Data/GenWorld.hs 52;" f +_putID src/Dodge/Data/GenWorld.hs 62;" f +_putItem src/Dodge/Data/GenWorld.hs 43;" f +_putLabel src/Dodge/Data/GenWorld.hs 64;" f +_putMachineMachine src/Dodge/Data/GenWorld.hs 35;" f +_putMachineMaybeItem src/Dodge/Data/GenWorld.hs 37;" f +_putMachinePoly src/Dodge/Data/GenWorld.hs 34;" f +_putMachineWall src/Dodge/Data/GenWorld.hs 36;" f +_putPoly src/Dodge/Data/GenWorld.hs 44;" f +_putStartPoint src/Dodge/Data/GenWorld.hs 51;" f +_putWall src/Dodge/Data/GenWorld.hs 44;" f +_putWall src/Dodge/Data/GenWorld.hs 49;" f +_putWidth src/Dodge/Data/GenWorld.hs 50;" f +_pwPoly src/Dodge/Data/GenWorld.hs 54;" f +_pwWall src/Dodge/Data/GenWorld.hs 54;" f _pyFaces src/Polyhedra/Data.hs 14;" f _pzDamage src/Dodge/Data/PulseLaser.hs 15;" f _pzDir src/Dodge/Data/PulseLaser.hs 14;" f @@ -2164,28 +2165,28 @@ _rkSmoke src/Dodge/Data/Projectile.hs 34;" f _rlDir src/Dodge/Data/Room.hs 27;" f _rlPos src/Dodge/Data/Room.hs 26;" f _rlType src/Dodge/Data/Room.hs 25;" f -_rmBound src/Dodge/Data/GenWorld.hs 139;" f -_rmChildren src/Dodge/Data/GenWorld.hs 150;" f -_rmClusterStatus src/Dodge/Data/GenWorld.hs 152;" f -_rmConnectsTo src/Dodge/Data/GenWorld.hs 147;" f -_rmEndWires src/Dodge/Data/GenWorld.hs 146;" f -_rmFloor src/Dodge/Data/GenWorld.hs 140;" f +_rmBound src/Dodge/Data/GenWorld.hs 138;" f +_rmChildren src/Dodge/Data/GenWorld.hs 149;" f +_rmClusterStatus src/Dodge/Data/GenWorld.hs 151;" f +_rmConnectsTo src/Dodge/Data/GenWorld.hs 146;" f +_rmEndWires src/Dodge/Data/GenWorld.hs 145;" f +_rmFloor src/Dodge/Data/GenWorld.hs 139;" f _rmHeight src/Dodge/Data/Room.hs 39;" f -_rmInPmnt src/Dodge/Data/GenWorld.hs 138;" f -_rmLinkEff src/Dodge/Data/GenWorld.hs 128;" f -_rmLinks src/Dodge/Data/GenWorld.hs 126;" f -_rmMID src/Dodge/Data/GenWorld.hs 148;" f -_rmMParent src/Dodge/Data/GenWorld.hs 149;" f -_rmName src/Dodge/Data/GenWorld.hs 141;" f -_rmPath src/Dodge/Data/GenWorld.hs 136;" f -_rmPmnts src/Dodge/Data/GenWorld.hs 137;" f -_rmPolys src/Dodge/Data/GenWorld.hs 125;" f -_rmPos src/Dodge/Data/GenWorld.hs 135;" f -_rmRandPSs src/Dodge/Data/GenWorld.hs 144;" f -_rmShift src/Dodge/Data/GenWorld.hs 142;" f -_rmStartWires src/Dodge/Data/GenWorld.hs 145;" f -_rmType src/Dodge/Data/GenWorld.hs 151;" f -_rmViewpoints src/Dodge/Data/GenWorld.hs 143;" f +_rmInPmnt src/Dodge/Data/GenWorld.hs 137;" f +_rmLinkEff src/Dodge/Data/GenWorld.hs 127;" f +_rmLinks src/Dodge/Data/GenWorld.hs 125;" f +_rmMID src/Dodge/Data/GenWorld.hs 147;" f +_rmMParent src/Dodge/Data/GenWorld.hs 148;" f +_rmName src/Dodge/Data/GenWorld.hs 140;" f +_rmPath src/Dodge/Data/GenWorld.hs 135;" f +_rmPmnts src/Dodge/Data/GenWorld.hs 136;" f +_rmPolys src/Dodge/Data/GenWorld.hs 124;" f +_rmPos src/Dodge/Data/GenWorld.hs 134;" f +_rmRandPSs src/Dodge/Data/GenWorld.hs 143;" f +_rmShift src/Dodge/Data/GenWorld.hs 141;" f +_rmStartWires src/Dodge/Data/GenWorld.hs 144;" f +_rmType src/Dodge/Data/GenWorld.hs 150;" f +_rmViewpoints src/Dodge/Data/GenWorld.hs 142;" f _rmWidth src/Dodge/Data/Room.hs 38;" f _rpDir src/Dodge/Data/Room.hs 17;" f _rpFlags src/Dodge/Data/Room.hs 18;" f @@ -2379,12 +2380,12 @@ _unNInt src/NewInt.hs 16;" f _unNIntMap src/NewInt.hs 22;" f _unNIntSet src/NewInt.hs 19;" f _unPrimitiveMode src/Shader/Data.hs 99;" f -_unPutCrit src/Dodge/Data/GenWorld.hs 33;" f +_unPutCrit src/Dodge/Data/GenWorld.hs 32;" f _unST src/Dodge/Data/MetaTree.hs 20;" f _unTO src/Shader/Data.hs 59;" f _unfiredBarrels src/Dodge/Data/Item/Params.hs 17;" f _unpauseClock src/Dodge/Data/World.hs 56;" f -_unputTerminal src/Dodge/Data/GenWorld.hs 43;" f +_unputTerminal src/Dodge/Data/GenWorld.hs 42;" f _useExactly src/Dodge/Data/Muzzle.hs 62;" f _useMapperLines src/Dodge/Data/Item/Use.hs 38;" f _useMapperPoints src/Dodge/Data/Item/Use.hs 39;" f @@ -2453,23 +2454,17 @@ _windowPosY src/Dodge/Data/Config.hs 54;" f _windowShader src/Data/Preload/Render.hs 19;" f _windowX src/Dodge/Data/Config.hs 51;" f _windowY src/Dodge/Data/Config.hs 52;" f -_wlBouncy src/Dodge/Data/Wall.hs 26;" f -_wlColor src/Dodge/Data/Wall.hs 22;" f -_wlFireThrough src/Dodge/Data/Wall.hs 29;" f -_wlHeight src/Dodge/Data/Wall.hs 34;" f -_wlID src/Dodge/Data/Wall.hs 21;" f -_wlLine src/Dodge/Data/Wall.hs 20;" f -_wlMaterial src/Dodge/Data/Wall.hs 35;" f -_wlOpacity src/Dodge/Data/Wall.hs 23;" f -_wlPathFlag src/Dodge/Data/Wall.hs 24;" f -_wlPenetrable src/Dodge/Data/Wall.hs 25;" f -_wlReflect src/Dodge/Data/Wall.hs 30;" f -_wlRotateTo src/Dodge/Data/Wall.hs 32;" f +_wlHeight src/Dodge/Data/Wall.hs 28;" f +_wlID src/Dodge/Data/Wall.hs 20;" f +_wlLine src/Dodge/Data/Wall.hs 19;" f +_wlMaterial src/Dodge/Data/Wall.hs 29;" f +_wlOpacity src/Dodge/Data/Wall.hs 22;" f +_wlPathFlag src/Dodge/Data/Wall.hs 23;" f +_wlRotateTo src/Dodge/Data/Wall.hs 26;" f _wlStCreature src/Dodge/Data/Wall/Structure.hs 15;" f -_wlStructure src/Dodge/Data/Wall.hs 33;" f -_wlTouchThrough src/Dodge/Data/Wall.hs 28;" f -_wlUnshadowed src/Dodge/Data/Wall.hs 31;" f -_wlWalkable src/Dodge/Data/Wall.hs 27;" f +_wlStructure src/Dodge/Data/Wall.hs 27;" f +_wlTouchThrough src/Dodge/Data/Wall.hs 24;" f +_wlUnshadowed src/Dodge/Data/Wall.hs 25;" f _wlZoning src/Dodge/Data/World.hs 49;" f _worldEventFlags src/Dodge/Data/World.hs 45;" f _worldEvents src/Dodge/Data/LWorld.hs 127;" f @@ -2490,12 +2485,12 @@ activateDetonator src/Dodge/Creature/Impulse/UseItem.hs 62;" f activeTargetCursorPic src/Dodge/Targeting/Draw.hs 31;" f addArmour src/Dodge/Creature.hs 84;" f addBranchAt src/Dodge/Tree/GenerateStructure.hs 18;" f -addButtonSlowDoor src/Dodge/Room/LongDoor.hs 98;" f +addButtonSlowDoor src/Dodge/Room/LongDoor.hs 99;" f addCrGibs src/Dodge/Prop/Gib.hs 17;" f addDepth src/Picture/Base.hs 133;" f addDoorAtNthLinkToggleTerminal src/Dodge/Room/Warning.hs 40;" f addDoorToggleTerminal src/Dodge/Room/Warning.hs 37;" f -addDoorWall src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 55;" f +addDoorWall src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 50;" f addGib4 src/Dodge/Prop/Gib.hs 52;" f addGibAt src/Dodge/Prop/Gib.hs 63;" f addGibAtDir src/Dodge/Prop/Gib.hs 69;" f @@ -2510,7 +2505,7 @@ addGirderNS' src/Dodge/Room/Modify/Girder.hs 55;" f addHighGirder src/Dodge/Room/Modify/Girder.hs 132;" f addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f addIndefiniteArticle src/StringHelp.hs 17;" f -addPane src/Dodge/Placement/PlaceSpot.hs 186;" f +addPane src/Dodge/Placement/PlaceSpot.hs 185;" f addPlmnt src/Dodge/LevelGen/PlacementHelper.hs 87;" f addPointPolygon src/Geometry/Polygon.hs 134;" f addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f @@ -2518,7 +2513,7 @@ addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f addRandomGirderEW src/Dodge/Room/Girder.hs 9;" f addRandomGirderFrom src/Dodge/Room/Girder.hs 16;" f addSideEffect src/Dodge/Concurrent.hs 29;" f -addSouthPillars src/Dodge/Room/LongDoor.hs 90;" f +addSouthPillars src/Dodge/Room/LongDoor.hs 91;" f addTermSignal src/Dodge/Event/Input.hs 31;" f addToTrunk src/TreeHelp.hs 157;" f addWarningTerminal src/Dodge/Room/Warning.hs 61;" f @@ -2531,14 +2526,14 @@ aimDelaySweep src/Dodge/Render/Picture.hs 287;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f aimTurn src/Dodge/Creature/YourControl.hs 181;" f airlock src/Dodge/Room/Airlock.hs 24;" f -airlock0 src/Dodge/Room/Airlock.hs 72;" f +airlock0 src/Dodge/Room/Airlock.hs 74;" f airlock90 src/Dodge/Room/Airlock.hs 204;" f airlockCrystal src/Dodge/Room/Airlock.hs 249;" f -airlockDoor src/Dodge/Room/Airlock.hs 99;" f -airlockDoubleDoor src/Dodge/Room/Airlock.hs 102;" f -airlockSimple src/Dodge/Room/Airlock.hs 118;" f -airlockZ src/Dodge/Room/Airlock.hs 157;" f -allVisibleWalls src/Dodge/Base/Collide.hs 226;" f +airlockDoor src/Dodge/Room/Airlock.hs 102;" f +airlockDoubleDoor src/Dodge/Room/Airlock.hs 105;" f +airlockSimple src/Dodge/Room/Airlock.hs 120;" f +airlockZ src/Dodge/Room/Airlock.hs 158;" f +allVisibleWalls src/Dodge/Base/Collide.hs 223;" f alongSegBy src/Geometry.hs 40;" f alteRifle src/Dodge/Item/Held/Cane.hs 22;" f ammoMagInfo src/Dodge/Item/Info.hs 49;" f @@ -2556,7 +2551,7 @@ angleBetween src/Geometry.hs 158;" f angleVV src/Geometry/Vector.hs 58;" f angleVV3 src/Geometry/Vector3D.hs 122;" f anyUnusedSpot src/Dodge/PlacementSpot.hs 66;" f -anythingHitCirc src/Dodge/Base/Collide.hs 344;" f +anythingHitCirc src/Dodge/Base/Collide.hs 341;" f applyCME src/Dodge/HeldUse.hs 369;" f applyClip src/Dodge/Debug.hs 96;" f applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f @@ -2705,8 +2700,8 @@ blue src/Color.hs 16;" f blunderbuss src/Dodge/Item/Held/Cone.hs 14;" f bossKeyItems src/Dodge/LockAndKey.hs 12;" f bossRoom src/Dodge/Room/Boss.hs 61;" f -bounceDir src/Dodge/Bullet.hs 110;" f -bouncePoint src/Dodge/Base/Collide.hs 89;" f +bounceDir src/Dodge/Bullet.hs 111;" f +bouncePoint src/Dodge/Base/Collide.hs 86;" f bounceSound src/Dodge/Projectile/Update.hs 73;" f boundPoints src/Bound.hs 10;" f boundedGrid src/Grid.hs 19;" f @@ -2740,9 +2735,9 @@ cFilledRect src/Dodge/CharacterEnums.hs 6;" f cWireRect src/Dodge/CharacterEnums.hs 10;" f calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f calcTexCoord src/Tile.hs 19;" f -canSee src/Dodge/Base/Collide.hs 330;" f -canSeeIndirect src/Dodge/Base/Collide.hs 337;" f -cancelExamineInventory src/Dodge/Item/BackgroundEffect.hs 23;" f +canSee src/Dodge/Base/Collide.hs 327;" f +canSeeIndirect src/Dodge/Base/Collide.hs 334;" f +cancelExamineInventory src/Dodge/Item/BackgroundEffect.hs 22;" f capacitor src/Dodge/Item/Ammo.hs 69;" f cardEightVec src/Dodge/Base/CardinalPoint.hs 17;" f cardList src/Dodge/Base/CardinalPoint.hs 7;" f @@ -2772,7 +2767,7 @@ chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 193;" f chasmTest src/Dodge/Creature/Update.hs 132;" f -chasmWallToSurface src/Dodge/Base/Collide.hs 121;" f +chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkConnection src/Dodge/Inventory/Swap.hs 66;" f checkDeath src/Dodge/Creature/Update.hs 70;" f @@ -2795,12 +2790,12 @@ chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 35;" f chooseFreeSite src/Dodge/Inventory/RBList.hs 47;" f chooseMovementLtAuto src/Dodge/CreatureEffect.hs 77;" f chooseMovementSpreadGun src/Dodge/CreatureEffect.hs 60;" f -circHitWall src/Dodge/Base/Collide.hs 243;" f +circHitWall src/Dodge/Base/Collide.hs 240;" f circInPolygon src/Geometry/Polygon.hs 102;" f -circOnAnyCr src/Dodge/Base/Collide.hs 294;" f +circOnAnyCr src/Dodge/Base/Collide.hs 291;" f circOnSeg src/Geometry.hs 101;" f circOnSegNoEndpoints src/Geometry.hs 91;" f -circOnSomeWall src/Dodge/Base/Collide.hs 288;" f +circOnSomeWall src/Dodge/Base/Collide.hs 285;" f circle src/Picture/Base.hs 180;" f circleDecoration src/Dodge/Placement/TopDecoration.hs 56;" f circleSolid src/Picture/Base.hs 164;" f @@ -2846,18 +2841,18 @@ colCrWall src/Dodge/WallCreatureCollisions.hs 29;" f colCrsWalls src/Dodge/WallCreatureCollisions.hs 19;" f collectDamageTypes src/Dodge/Damage.hs 53;" f collectInvItems src/Dodge/Update/Input/InGame.hs 295;" f -collide3 src/Dodge/Base/Collide.hs 130;" f -collide3Chasm src/Dodge/Base/Collide.hs 114;" f -collide3Chasms src/Dodge/Base/Collide.hs 107;" f -collide3Creature src/Dodge/Base/Collide.hs 163;" f -collide3Floors src/Dodge/Base/Collide.hs 144;" f -collide3Wall src/Dodge/Base/Collide.hs 158;" f -collide3Walls src/Dodge/Base/Collide.hs 139;" f -collide3WallsFloor src/Dodge/Base/Collide.hs 101;" f -collideCircWalls src/Dodge/Base/Collide.hs 255;" f -collidePoint src/Dodge/Base/Collide.hs 55;" f -collidePointTestFilter src/Dodge/Base/Collide.hs 191;" f -collidePointWallsFilter src/Dodge/Base/Collide.hs 205;" f +collide3 src/Dodge/Base/Collide.hs 127;" f +collide3Chasm src/Dodge/Base/Collide.hs 111;" f +collide3Chasms src/Dodge/Base/Collide.hs 104;" f +collide3Creature src/Dodge/Base/Collide.hs 160;" f +collide3Floors src/Dodge/Base/Collide.hs 141;" f +collide3Wall src/Dodge/Base/Collide.hs 155;" f +collide3Walls src/Dodge/Base/Collide.hs 136;" f +collide3WallsFloor src/Dodge/Base/Collide.hs 98;" f +collideCircWalls src/Dodge/Base/Collide.hs 252;" f +collidePoint src/Dodge/Base/Collide.hs 52;" f +collidePointTestFilter src/Dodge/Base/Collide.hs 188;" f +collidePointWallsFilter src/Dodge/Base/Collide.hs 202;" f color src/Picture/Base.hs 108;" f colorLamp src/Dodge/Creature/Lamp.hs 10;" f colorSH src/Shape.hs 237;" f @@ -2919,8 +2914,8 @@ crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 39;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 53;" f crHasTarget src/Dodge/Creature/Test.hs 65;" f crHasTargetLOS src/Dodge/Creature/Test.hs 68;" f -crHeight src/Dodge/Base/Collide.hs 176;" f -crHit src/Dodge/WorldEvent/ThingsHit.hs 116;" f +crHeight src/Dodge/Base/Collide.hs 173;" f +crHit src/Dodge/WorldEvent/ThingsHit.hs 117;" f crIXsNearCirc src/Dodge/Zoning/Creature.hs 33;" f crIXsNearPoint src/Dodge/Zoning/Creature.hs 15;" f crInAimStance src/Dodge/Creature/Test.hs 93;" f @@ -2938,7 +2933,7 @@ crMvForward src/Dodge/Creature/Impulse/Movement.hs 57;" f crMvType src/Dodge/Creature/MoveType.hs 6;" f crNearPoint src/Dodge/Creature/Test.hs 131;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f -crOnWall src/Dodge/WallCreatureCollisions.hs 88;" f +crOnWall src/Dodge/WallCreatureCollisions.hs 89;" f crRad src/Dodge/Creature/Radius.hs 7;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 74;" f crSetRoots src/Dodge/Inventory/Location.hs 55;" f @@ -2951,7 +2946,7 @@ crUpdateInvidLocations src/Dodge/Inventory/Location.hs 66;" f crUpdateItemLocations src/Dodge/Inventory/Location.hs 48;" f crVocalizationSound src/Dodge/Creature/Vocalization.hs 13;" f crWarningSounds src/Dodge/Creature/Vocalization.hs 23;" f -crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 54;" f +crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 55;" f crZoneSize src/Dodge/Zoning/Creature.hs 42;" f craftInfo src/Dodge/Item/Info.hs 169;" f craftItemSPic src/Dodge/Item/Draw/SPic.hs 40;" f @@ -2965,7 +2960,7 @@ createPathGrid src/Dodge/Room/Path.hs 21;" f createProjectile src/Dodge/HeldUse.hs 1276;" f createProjectileR src/Dodge/HeldUse.hs 1225;" f createShell src/Dodge/Projectile/Create.hs 21;" f -createShieldWall src/Dodge/Item/BackgroundEffect.hs 40;" f +createShieldWall src/Dodge/Item/BackgroundEffect.hs 39;" f createUnusedLinkPos src/Dodge/Tree/Shift.hs 124;" f createWall src/Dodge/Wall/Create.hs 8;" f creatureDisplayText src/Dodge/Creature/Picture/Awareness.hs 12;" f @@ -2980,16 +2975,16 @@ critsRoom src/Dodge/Room/Room.hs 398;" f crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f crossPic src/Dodge/Render/Label.hs 27;" f crossProd src/Geometry/Vector3D.hs 41;" f -crsHit src/Dodge/WorldEvent/ThingsHit.hs 64;" f -crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 153;" f -crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 75;" f +crsHit src/Dodge/WorldEvent/ThingsHit.hs 65;" f +crsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 154;" f +crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 76;" f crsItmsUnused src/Dodge/Room/Containing.hs 45;" f crsNearCirc src/Dodge/Zoning/Creature.hs 36;" f crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f crsNearRect src/Dodge/Zoning/Creature.hs 39;" f crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f crystalLine src/Dodge/Placement/Instance/Wall.hs 55;" f -cubeShape src/Dodge/Block/Debris.hs 106;" f +cubeShape src/Dodge/Block/Debris.hs 117;" f cullPoint src/Dodge/Render/ShapePicture.hs 94;" f cullPretty src/AesonHelp.hs 14;" f cutPoly src/Dodge/LevelGen/StaticWalls.hs 77;" f @@ -3026,7 +3021,7 @@ damageInCircle src/Dodge/Damage.hs 61;" f damageMetal src/Dodge/Material/Damage.hs 56;" f damageSensor src/Dodge/Placement/Instance/Sensor.hs 14;" f damageStone src/Dodge/Material/Damage.hs 26;" f -damageThingHit src/Dodge/Bullet.hs 179;" f +damageThingHit src/Dodge/Bullet.hs 180;" f damageTypeThreshold src/Dodge/Placement/Instance/Sensor.hs 35;" f damageWall src/Dodge/Wall/Damage.hs 15;" f damsToExpBarrel src/Dodge/Barreloid.hs 50;" f @@ -3044,7 +3039,7 @@ deadScalp src/Dodge/Creature/Picture.hs 81;" f deadUpperBody src/Dodge/Creature/Picture.hs 113;" f debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 684;" f debrisSPic src/Dodge/Prop/Draw.hs 20;" f -debrisSize src/Dodge/Block/Debris.hs 80;" f +debrisSize src/Dodge/Block/Debris.hs 90;" f debugEvent src/Dodge/Debug.hs 36;" f debugEvents src/Dodge/Debug.hs 21;" f debugItem src/Dodge/Debug.hs 39;" f @@ -3072,7 +3067,7 @@ defSPic src/Dodge/Item/Draw/SPic.hs 309;" 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 -defaultAutoWall src/Dodge/Default/Door.hs 15;" f +defaultAutoWall src/Dodge/Default/Door.hs 14;" f defaultBlock src/Dodge/Default/Block.hs 5;" f defaultBounds src/Dodge/Data/Bounds.hs 18;" f defaultBullet src/Dodge/Item/Weapon/Bullet.hs 10;" f @@ -3086,11 +3081,11 @@ defaultConfig src/Dodge/Data/Config.hs 128;" f defaultCraftItem src/Dodge/Default/Item.hs 25;" f defaultCreature src/Dodge/Default/Creature.hs 12;" f defaultCreatureMemory src/Dodge/Default/Creature.hs 65;" f -defaultCrystalWall src/Dodge/Default/Wall.hs 45;" f +defaultCrystalWall src/Dodge/Default/Wall.hs 43;" f defaultDirtBlock src/Dodge/Default/Block.hs 19;" f -defaultDirtWall src/Dodge/Default/Wall.hs 66;" f -defaultDoor src/Dodge/Default/Door.hs 27;" f -defaultDoorWall src/Dodge/Default/Wall.hs 40;" f +defaultDirtWall src/Dodge/Default/Wall.hs 62;" f +defaultDoor src/Dodge/Default/Door.hs 26;" f +defaultDoorWall src/Dodge/Default/Wall.hs 37;" f defaultDrawButton src/Dodge/Button/Draw.hs 29;" f defaultEquipment src/Dodge/Default.hs 24;" f defaultFlIt src/Dodge/Default.hs 27;" f @@ -3104,17 +3099,17 @@ defaultInvSize src/Dodge/Default/Creature.hs 72;" f defaultLWorld src/Dodge/Default/World.hs 100;" f defaultListDisplayParams src/Dodge/ListDisplayParams.hs 18;" f defaultMachine src/Dodge/Default.hs 30;" f -defaultMachineWall src/Dodge/Default/Wall.hs 53;" f +defaultMachineWall src/Dodge/Default/Wall.hs 50;" f defaultPerceptionState src/Dodge/Default/Creature.hs 75;" f defaultProp src/Dodge/Default/Prop.hs 6;" f defaultProximitySensor src/Dodge/Default.hs 54;" f defaultRoom src/Dodge/Default/Room.hs 9;" f -defaultSensorWall src/Dodge/Default/Wall.hs 63;" f -defaultSwitchWall src/Dodge/Default/Door.hs 21;" f +defaultSensorWall src/Dodge/Default/Wall.hs 59;" f +defaultSwitchWall src/Dodge/Default/Door.hs 20;" f defaultTerminal src/Dodge/Default/Terminal.hs 10;" f defaultVision src/Dodge/Default/Creature.hs 85;" f -defaultWall src/Dodge/Default/Wall.hs 18;" f -defaultWindow src/Dodge/Default/Wall.hs 83;" f +defaultWall src/Dodge/Default/Wall.hs 17;" f +defaultWindow src/Dodge/Default/Wall.hs 73;" f defaultWorld src/Dodge/Default/World.hs 31;" f degToRad src/Geometry/Vector.hs 118;" f deleteIMInZone src/Dodge/Base.hs 70;" f @@ -3125,7 +3120,7 @@ deleteWallIDs src/Dodge/Wall/Delete.hs 28;" f denormalEdges src/Polyhedra.hs 136;" f destroyAllInvItems src/Dodge/Inventory.hs 53;" f destroyBlock src/Dodge/Block.hs 51;" f -destroyDoor src/Dodge/DrWdWd.hs 56;" f +destroyDoor src/Dodge/DrWdWd.hs 55;" f destroyInvItem src/Dodge/Inventory.hs 40;" f destroyItem src/Dodge/Inventory.hs 62;" f destroyLS src/Dodge/LightSource.hs 32;" f @@ -3133,8 +3128,8 @@ destroyLSFlashAt src/Dodge/LightSource.hs 42;" f destroyMachine src/Dodge/Machine/Destroy.hs 13;" f destroyMatS src/Dodge/Material/Sound.hs 7;" f destroyMcType src/Dodge/Machine/Destroy.hs 22;" f -destroyMount src/Dodge/DrWdWd.hs 74;" f -destroyMounts src/Dodge/DrWdWd.hs 71;" f +destroyMount src/Dodge/DrWdWd.hs 73;" f +destroyMounts src/Dodge/DrWdWd.hs 70;" f destroyProjectile src/Dodge/Projectile/Update.hs 108;" f detV src/Geometry/Vector.hs 94;" f detector src/Dodge/Item/Held/Utility.hs 27;" f @@ -3148,7 +3143,6 @@ difference src/Geometry.hs 127;" f digitalLine src/Geometry.hs 285;" f digitalRect src/Geometry.hs 302;" f dim src/Color.hs 112;" f -dirtColor src/Dodge/Default/Wall.hs 79;" f dirtPoly src/Dodge/Room/RoadBlock.hs 74;" f disconnectItemS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 650;" f displayConfig src/Dodge/Menu.hs 230;" f @@ -3173,7 +3167,7 @@ doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBarrelSpin src/Dodge/Projectile/Update.hs 157;" f doBlBl src/Dodge/BlBl.hs 5;" f doBlSh src/Dodge/Block/Draw.hs 14;" f -doBounce src/Dodge/Base/Collide.hs 70;" f +doBounce src/Dodge/Base/Collide.hs 67;" f doButtonEvent src/Dodge/Button/Event.hs 9;" f doConLoop src/Loop.hs 137;" f doConLoop' src/Loop.hs 226;" f @@ -3193,7 +3187,7 @@ doDebugTestF12 src/Dodge/Update/Input/DebugTest.hs 84;" f doDebugTestF6 src/Dodge/Update/Input/DebugTest.hs 41;" f doDebugTestF7 src/Dodge/Update/Input/DebugTest.hs 51;" f doDebugTestF8 src/Dodge/Update/Input/DebugTest.hs 59;" f -doDoorLerp src/Dodge/DrWdWd.hs 53;" f +doDoorLerp src/Dodge/DrWdWd.hs 52;" f doDrag src/Dodge/Update/Input/InGame.hs 127;" f doDrawing src/Dodge/Render.hs 34;" f doDrawing' src/Dodge/Render.hs 45;" f @@ -3234,7 +3228,7 @@ doWdP2f src/Dodge/WdP2f.hs 10;" f doWdWd src/Dodge/WorldEffect.hs 28;" f doWorldEvents src/Dodge/Update.hs 445;" f doWorldPos src/Dodge/WorldPos.hs 10;" f -door src/Dodge/Room/Door.hs 14;" f +door src/Dodge/Room/Door.hs 13;" f doorBetween src/Dodge/Placement/Instance/Door.hs 41;" f doorLerp src/Dodge/DrWdWd.hs 26;" f dotV src/Geometry/Vector.hs 76;" f @@ -3296,7 +3290,7 @@ drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f drawFarWallDetect src/Dodge/Debug/Picture.hs 276;" f drawFlame src/Dodge/Flame/Draw.hs 8;" f drawFlamelet src/Dodge/EnergyBall/Draw.hs 37;" f -drawForceField src/Dodge/Wall/Draw.hs 11;" f +drawForceField src/Dodge/Wall/Draw.hs 13;" f drawGapPlus src/Dodge/Render/Picture.hs 280;" f drawGib src/Dodge/Prop/Draw.hs 39;" f drawHUD src/Dodge/Render/HUD.hs 51;" f @@ -3369,7 +3363,7 @@ drawTractorBeam src/Dodge/TractorBeam/Draw.hs 7;" f drawTurret src/Dodge/Machine/Draw.hs 76;" f drawVerticalDoubleArrow src/Dodge/Render/Picture.hs 212;" f drawVerticalLampCover src/Dodge/Prop/Draw.hs 71;" f -drawWall src/Dodge/Wall/Draw.hs 7;" f +drawWall src/Dodge/Wall/Draw.hs 9;" f drawWallFace src/Dodge/Debug/Picture.hs 73;" f drawWallSearchRays src/Dodge/Debug/Picture.hs 318;" f drawWallsNearCursor src/Dodge/Debug/Picture.hs 230;" f @@ -3382,7 +3376,7 @@ drawZoneCol src/Dodge/Debug/Picture.hs 149;" f drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 291;" f dropAll src/Dodge/Creature/Update.hs 129;" f dropInventoryPath src/Dodge/HeldUse.hs 1351;" f -dropItem src/Dodge/Creature/Action.hs 154;" f +dropItem src/Dodge/Creature/Action.hs 155;" f dropper src/Dodge/Item/Scope.hs 76;" f drumMag src/Dodge/Item/Ammo.hs 34;" f dsZoneSize src/Dodge/Zoning/Cloud.hs 42;" f @@ -3457,7 +3451,7 @@ expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f 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 -expireAndDamage src/Dodge/Bullet.hs 187;" f +expireAndDamage src/Dodge/Bullet.hs 188;" f explodeShell src/Dodge/Projectile/Update.hs 228;" f explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 556;" f explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f @@ -3529,7 +3523,7 @@ foot2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 510;" f foot3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 622;" f forbidFlee src/Dodge/Creature/Boid.hs 45;" f forceElements src/StrictHelp.hs 10;" f -forceField src/Dodge/Wall/ForceField.hs 7;" f +forceField src/Dodge/Wall/ForceField.hs 6;" f forceFoldable src/StrictHelp.hs 7;" f forceSpine src/StrictHelp.hs 4;" f fourEmbossDecoration src/Dodge/Placement/TopDecoration.hs 29;" f @@ -3575,7 +3569,7 @@ getAmmoLinks src/Dodge/Item/Grammar.hs 104;" f getAttachedSFLink src/Dodge/HeldUse.hs 788;" f getAutoSpringLinks src/Dodge/Item/Grammar.hs 85;" f getAvailableListLines src/Dodge/SelectionList.hs 10;" f -getBulHitDams src/Dodge/Bullet.hs 172;" f +getBulHitDams src/Dodge/Bullet.hs 173;" f getBulletType src/Dodge/HeldUse.hs 910;" f getCloseObj src/Dodge/Update/Input/InGame.hs 533;" f getCommand src/Dodge/Terminal.hs 52;" f @@ -3608,7 +3602,7 @@ getSplitString src/Dodge/Debug/Terminal.hs 129;" f getTiles src/Dodge/Layout.hs 199;" f getViewpoints src/Dodge/Viewpoints.hs 29;" f getVolleyBurst src/Dodge/HeldUse.hs 126;" f -getWallSPic src/Dodge/Render/Walls.hs 51;" f +getWallSPic src/Dodge/Render/Walls.hs 53;" f getWindowSize src/Dodge/WindowSize.hs 5;" f gimbal src/Dodge/Item/Scope.hs 153;" f girder src/Dodge/Room/Foreground.hs 211;" f @@ -3670,10 +3664,10 @@ handleResizeEvent src/Dodge/Event.hs 53;" f handleTextInput src/Dodge/Event/Input.hs 19;" f handleWindowMoveEvent src/Dodge/Event.hs 44;" f hardQuit src/Dodge/Concurrent.hs 32;" f -hasButtonLOS src/Dodge/Base/Collide.hs 313;" f +hasButtonLOS src/Dodge/Base/Collide.hs 310;" f hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f -hasLOS src/Dodge/Base/Collide.hs 306;" f -hasLOSIndirect src/Dodge/Base/Collide.hs 322;" f +hasLOS src/Dodge/Base/Collide.hs 303;" f +hasLOSIndirect src/Dodge/Base/Collide.hs 319;" f hat src/Dodge/Item/Equipment.hs 76;" f head src/DoubleStack.hs 14;" f headLamp src/Dodge/Item/Equipment.hs 79;" f @@ -3709,7 +3703,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 580;" f -hitEffFromBul src/Dodge/Bullet.hs 155;" f +hitEffFromBul src/Dodge/Bullet.hs 156;" f hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 534;" f holdForm src/Dodge/Creature/Boid.hs 139;" f holsterWeapon src/Dodge/Creature/Volition.hs 15;" f @@ -3816,7 +3810,7 @@ isCognizant src/Dodge/Creature/Perception.hs 105;" f isConnected src/Dodge/Inventory/Swap.hs 77;" f isCornerLink src/Dodge/RoomLink.hs 65;" f isElectrical src/Dodge/Machine/Update.hs 84;" f -isFlyable src/Dodge/WorldEvent/ThingsHit.hs 161;" f +isFlyable src/Dodge/WorldEvent/ThingsHit.hs 162;" f isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 197;" f isInLnk src/Dodge/PlacementSpot.hs 161;" f isJust' src/MaybeHelp.hs 27;" f @@ -3830,19 +3824,19 @@ isOnSeg src/Geometry.hs 237;" f isOutLnk src/Dodge/PlacementSpot.hs 166;" f isOverTerminalScreen src/Dodge/Update.hs 416;" f isPulseLaser src/Dodge/IsPulseLaser.hs 10;" f -isPutID src/Dodge/Placement/Instance/Wall.hs 129;" f +isPutID src/Dodge/Placement/Instance/Wall.hs 127;" f isRHS src/Geometry/LHS.hs 32;" f isUnusedLnk src/Dodge/PlacementSpot.hs 61;" f isUnusedLnkType src/Dodge/PlacementSpot.hs 190;" f isUsedLnkUnplaced src/Dodge/PlacementSpot.hs 174;" f isValidCommand src/Dodge/Debug/Terminal.hs 134;" f isVowel src/StringHelp.hs 8;" f -isWalkable src/Dodge/WorldEvent/ThingsHit.hs 168;" f +isWalkable src/Dodge/WorldEvent/ThingsHit.hs 169;" f isoMatrix src/MatrixHelper.hs 30;" f isotriBWH src/Geometry/Polygon.hs 22;" f itDim src/Dodge/Item/InvSize.hs 21;" f -itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 68;" f -itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 65;" f +itEffectOnDrop src/Dodge/Item/BackgroundEffect.hs 67;" f +itEffectOnPickup src/Dodge/Item/BackgroundEffect.hs 64;" f itInvHeight src/Dodge/Item/InvSize.hs 11;" f itUseCondition src/Dodge/ItemUseCondition.hs 6;" f itemAboveAttachables src/Dodge/Item/Grammar.hs 37;" f @@ -4052,7 +4046,7 @@ main test/Spec.hs 12;" f makeArc src/Picture/Base.hs 157;" f makeAttach src/Dodge/Item/Attach.hs 10;" f makeBlip src/Dodge/RadarSweep.hs 70;" f -makeBlockDebris src/Dodge/Block/Debris.hs 37;" f +makeBlockDebris src/Dodge/Block/Debris.hs 40;" f makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f makeBullet src/Dodge/HeldUse.hs 979;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f @@ -4061,17 +4055,17 @@ makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f makeColorTermLine src/Dodge/Terminal.hs 111;" f makeColorTermPara src/Dodge/Terminal.hs 108;" f makeCorpse src/Dodge/Corpse/Make.hs 13;" f -makeDebris src/Dodge/Block/Debris.hs 48;" f -makeDebrisDirected src/Dodge/Block/Debris.hs 51;" f +makeDebris src/Dodge/Block/Debris.hs 55;" f +makeDebrisDirected src/Dodge/Block/Debris.hs 58;" f makeDoorDebris src/Dodge/Block/Debris.hs 26;" f makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f makeEnumOption src/Dodge/Menu/OptionType.hs 13;" f makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 73;" f -makeFlak src/Dodge/Bullet.hs 145;" f +makeFlak src/Dodge/Bullet.hs 146;" f makeFlame src/Dodge/Flame.hs 45;" f makeFlameExplosionAt src/Dodge/WorldEvent/Explosion.hs 56;" f makeFlamelet src/Dodge/EnergyBall.hs 21;" f -makeFragBullets src/Dodge/Bullet.hs 131;" f +makeFragBullets src/Dodge/Bullet.hs 132;" f makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 11;" f makeGrid src/Grid.hs 46;" f makeIntInterval src/Dodge/Zoning/Base.hs 37;" f @@ -4104,6 +4098,7 @@ makeTypeCraft src/Dodge/Item/Craftable.hs 18;" f makeTypeCraftNum src/Dodge/Item/Craftable.hs 12;" f mapper src/Dodge/Item/Scope.hs 70;" f materialColor src/Dodge/Material/Color.hs 8;" f +materialPenetrable src/Dodge/Bullet.hs 211;" f maxAmmo src/Dodge/Item/MaxAmmo.hs 6;" f maxDamageType src/Dodge/Damage.hs 58;" f maxInvSlots src/Dodge/Inventory/CheckSlots.hs 30;" f @@ -4199,11 +4194,11 @@ modTo src/Geometry/Zone.hs 10;" f mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 60;" f mouseCursorType src/Dodge/Render/Picture.hs 92;" f mouseWorldPos src/Dodge/Base/Coordinate.hs 25;" f -moveBullet src/Dodge/Bullet.hs 196;" f +moveBullet src/Dodge/Bullet.hs 197;" f moveCombineSel src/Dodge/Update/Scroll.hs 121;" f moveInverseShockwave src/Dodge/Shockwave/Update.hs 44;" f moveLSThen src/Dodge/Placement/Instance/LightSource.hs 43;" f -movePenBullet src/Dodge/Bullet.hs 202;" f +movePenBullet src/Dodge/Bullet.hs 203;" f moveProjectile src/Dodge/Projectile/Update.hs 209;" f moveRoomBy src/Dodge/Room/Link.hs 53;" f moveShockwave src/Dodge/Shockwave/Update.hs 13;" f @@ -4225,16 +4220,16 @@ muout src/Dodge/RoomLink.hs 144;" f muzFlareAt src/Dodge/HeldUse.hs 678;" f muzzlePos src/Dodge/HeldUse.hs 769;" f muzzleRandPos src/Dodge/HeldUse.hs 778;" f -mvButton src/Dodge/Placement/PlaceSpot.hs 194;" f -mvCr src/Dodge/Placement/PlaceSpot.hs 197;" f -mvFS src/Dodge/Placement/PlaceSpot.hs 204;" f +mvButton src/Dodge/Placement/PlaceSpot.hs 193;" f +mvCr src/Dodge/Placement/PlaceSpot.hs 196;" f +mvFS src/Dodge/Placement/PlaceSpot.hs 203;" f mvGust src/Dodge/Update.hs 801;" f -mvLS src/Dodge/Placement/PlaceSpot.hs 276;" f +mvLS src/Dodge/Placement/PlaceSpot.hs 272;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f mvPointToward src/Dodge/Base.hs 136;" f mvPointTowardAtSpeed src/Dodge/Base.hs 105;" f -mvProp src/Dodge/Placement/PlaceSpot.hs 191;" f +mvProp src/Dodge/Placement/PlaceSpot.hs 190;" f myIntersectLineLine src/Geometry/Intersect.hs 198;" f myIntersectSegSeg src/Geometry/Intersect.hs 176;" f myParams src/Dodge/Combine/Graph.hs 101;" f @@ -4315,10 +4310,10 @@ overPos src/Picture/Base.hs 303;" f overPosObj src/Shape.hs 277;" f overPosSH src/Shape.hs 261;" f overPosSP src/ShapePicture.hs 41;" f -overlapCircWalls src/Dodge/Base/Collide.hs 232;" f -overlapCircWallsClosest src/Dodge/Base/Collide.hs 274;" f -overlapSegCrs src/Dodge/Base/Collide.hs 62;" f -overlapSegWalls src/Dodge/Base/Collide.hs 214;" f +overlapCircWalls src/Dodge/Base/Collide.hs 229;" f +overlapCircWallsClosest src/Dodge/Base/Collide.hs 271;" f +overlapSegCrs src/Dodge/Base/Collide.hs 59;" f +overlapSegWalls src/Dodge/Base/Collide.hs 211;" f overrideInternal src/Dodge/Creature/ReaderUpdate.hs 179;" f overrideMeleeCloseTarget src/Dodge/Creature/ReaderUpdate.hs 35;" f overwriteLabel src/Dodge/Tree/Compose.hs 31;" f @@ -4342,17 +4337,17 @@ pauseMenuOptions src/Dodge/Menu.hs 66;" f pauseSound src/Dodge/SoundLogic.hs 42;" f pauseTime src/Dodge/Update.hs 185;" f pbFlicker src/Dodge/Update.hs 486;" f -pbsHit src/Dodge/WorldEvent/ThingsHit.hs 92;" f +pbsHit src/Dodge/WorldEvent/ThingsHit.hs 93;" f peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f pedestalRoom src/Dodge/Room/Containing.hs 50;" f -penThing src/Dodge/Bullet.hs 210;" f +penThing src/Dodge/Bullet.hs 214;" f perMat src/MatrixHelper.hs 49;" f perceptionUpdate src/Dodge/Creature/Perception.hs 24;" f -performAction src/Dodge/Creature/Action.hs 53;" f -performActions src/Dodge/Creature/Action.hs 38;" f -performAimAt src/Dodge/Creature/Action.hs 102;" f -performPathTo src/Dodge/Creature/Action.hs 115;" f -performTurnToA src/Dodge/Creature/Action.hs 127;" f +performAction src/Dodge/Creature/Action.hs 54;" f +performActions src/Dodge/Creature/Action.hs 39;" f +performAimAt src/Dodge/Creature/Action.hs 103;" f +performPathTo src/Dodge/Creature/Action.hs 116;" f +performTurnToA src/Dodge/Creature/Action.hs 128;" f perspectiveMatrixb src/MatrixHelper.hs 11;" f picFormat src/Polyhedra.hs 23;" f picMap src/Picture/Base.hs 67;" f @@ -4369,25 +4364,25 @@ pistol src/Dodge/Item/Held/Stick.hs 40;" f pistolerRoom src/Dodge/Room/Room.hs 330;" f pjRemoteSetDirection src/Dodge/Projectile/Update.hs 172;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 17;" f -plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 20;" f +plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 19;" f plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 49;" f -plMachine src/Dodge/Placement/PlaceSpot.hs 207;" f -plMachine' src/Dodge/Placement/PlaceSpot.hs 251;" f +plMachine src/Dodge/Placement/PlaceSpot.hs 206;" f +plMachine' src/Dodge/Placement/PlaceSpot.hs 249;" f plNew src/Dodge/Base/NewID.hs 19;" f plNewID src/Dodge/Base/NewID.hs 7;" f plNewUpID src/Dodge/Base/NewID.hs 13;" f plNewUsing src/Dodge/Base/NewID.hs 27;" f plRRpt src/Dodge/LevelGen/PlacementHelper.hs 33;" f -plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 82;" f -plTurret src/Dodge/Placement/PlaceSpot.hs 220;" f -placeChasm src/Dodge/Placement/PlaceSpot.hs 162;" f -placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 265;" f -placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 43;" f -placeSpot src/Dodge/Placement/PlaceSpot.hs 34;" f -placeSpotID src/Dodge/Placement/PlaceSpot.hs 105;" f -placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 90;" f -placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 68;" f -placeWallPoly src/Dodge/Placement/PlaceSpot.hs 180;" f +plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 77;" f +plTurret src/Dodge/Placement/PlaceSpot.hs 219;" f +placeChasm src/Dodge/Placement/PlaceSpot.hs 161;" f +placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 262;" f +placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 42;" f +placeSpot src/Dodge/Placement/PlaceSpot.hs 33;" f +placeSpotID src/Dodge/Placement/PlaceSpot.hs 104;" f +placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 89;" f +placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 67;" f +placeWallPoly src/Dodge/Placement/PlaceSpot.hs 179;" f plainRegex src/Dodge/DisplayInventory.hs 189;" f playIfFree src/Sound.hs 137;" f playPositionalSoundQueue src/Sound.hs 145;" f @@ -4531,20 +4526,20 @@ psposAddLabel src/Dodge/PlacementSpot.hs 69;" f pt0 src/Dodge/LevelGen/PlacementHelper.hs 54;" f ptCont src/Dodge/LevelGen/PlacementHelper.hs 21;" f pulseChecker src/Dodge/Item/Equipment.hs 103;" f -pushCreatureOutFromWalls src/Dodge/WallCreatureCollisions.hs 56;" f +pushCreatureOutFromWalls src/Dodge/WallCreatureCollisions.hs 57;" f pushL src/DoubleStack.hs 20;" f -pushOrCrush src/Dodge/WallCreatureCollisions.hs 76;" f -pushOutFromCorners src/Dodge/WallCreatureCollisions.hs 110;" f -pushOutFromWall src/Dodge/WallCreatureCollisions.hs 99;" f -pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 63;" f +pushOrCrush src/Dodge/WallCreatureCollisions.hs 77;" f +pushOutFromCorners src/Dodge/WallCreatureCollisions.hs 112;" f +pushOutFromWall src/Dodge/WallCreatureCollisions.hs 101;" f +pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 64;" f pushR src/DoubleStack.hs 24;" f pushScreen src/Dodge/Menu/PushPop.hs 9;" f putAutoDoor src/Dodge/Placement/Instance/Door.hs 80;" f -putBlockC src/Dodge/Placement/Instance/Wall.hs 159;" f -putBlockN src/Dodge/Placement/Instance/Wall.hs 166;" f -putBlockRect src/Dodge/Placement/Instance/Wall.hs 145;" f -putBlockRect' src/Dodge/Placement/Instance/Wall.hs 132;" f -putBlockV src/Dodge/Placement/Instance/Wall.hs 153;" f +putBlockC src/Dodge/Placement/Instance/Wall.hs 157;" f +putBlockN src/Dodge/Placement/Instance/Wall.hs 164;" f +putBlockRect src/Dodge/Placement/Instance/Wall.hs 143;" f +putBlockRect' src/Dodge/Placement/Instance/Wall.hs 130;" f +putBlockV src/Dodge/Placement/Instance/Wall.hs 151;" f putDoubleDoor src/Dodge/Placement/Instance/Door.hs 18;" f putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 23;" f putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 66;" f @@ -4630,9 +4625,9 @@ reflectAngle src/Geometry.hs 142;" f reflectIn src/Geometry.hs 136;" f reflectInNormal src/Geometry/Vector.hs 217;" f reflectInParam src/Geometry.hs 230;" f -reflectLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 16;" f -reflectPulseLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 69;" f -refract src/Dodge/Item/Weapon/LaserPath.hs 43;" f +reflectLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 17;" f +reflectPulseLaserAlong src/Dodge/Item/Weapon/LaserPath.hs 70;" f +refract src/Dodge/Item/Weapon/LaserPath.hs 44;" f refreshOptionsSelectionList src/Dodge/Menu/Option.hs 35;" f regexCombs src/Dodge/DisplayInventory.hs 71;" f regexList src/Dodge/DisplayInventory.hs 308;" f @@ -4647,7 +4642,7 @@ removeAmmoFromMag src/Dodge/HeldUse.hs 907;" f removeDot src/ShortShow.hs 44;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f removeLights src/Dodge/Room/Tutorial.hs 242;" f -removeShieldWall src/Dodge/Item/BackgroundEffect.hs 58;" f +removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f renderFlatLighting src/Render.hs 104;" f @@ -4658,7 +4653,7 @@ renderLightingNoShadows src/Render.hs 48;" f renderListAt src/Dodge/Render/List.hs 192;" f renderShadows src/Render.hs 117;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 167;" f -replacePutID src/Dodge/Placement/Instance/Wall.hs 102;" f +replacePutID src/Dodge/Placement/Instance/Wall.hs 100;" f resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 47;" f resetPLUse src/Dodge/PlacementSpot.hs 92;" f resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f @@ -4719,7 +4714,7 @@ roomShuriken src/Dodge/Room/Boss.hs 123;" f roomTwistCross src/Dodge/Room/Boss.hs 154;" f roomsContaining src/Dodge/Room/Containing.hs 20;" f roomsContaining' src/Dodge/Room/Containing.hs 25;" f -rootNotrootEff src/Dodge/Item/BackgroundEffect.hs 29;" f +rootNotrootEff src/Dodge/Item/BackgroundEffect.hs 28;" f rose src/Color.hs 20;" f rotD src/Padding.hs 44;" f rotMatr src/MatrixHelper.hs 66;" f @@ -4902,7 +4897,7 @@ shellHitWall src/Dodge/Projectile/Update.hs 59;" f shellMag src/Dodge/Item/Ammo.hs 49;" f shellModule src/Dodge/Item/Scope.hs 123;" f shellShape src/Dodge/Projectile/Draw.hs 35;" f -shieldWall src/Dodge/Item/BackgroundEffect.hs 78;" f +shieldWall src/Dodge/Item/BackgroundEffect.hs 77;" f shiftByV2 src/Dodge/PlacementSpot.hs 250;" f shiftChildren src/Dodge/Tree/Compose.hs 44;" f shiftDraw src/Dodge/Render/ShapePicture.hs 88;" f @@ -4975,8 +4970,8 @@ slap1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 670;" f slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 604;" f slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 688;" f slideWindow src/ListHelp.hs 80;" f -slowDoorRoom src/Dodge/Room/LongDoor.hs 155;" f -slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 172;" f +slowDoorRoom src/Dodge/Room/LongDoor.hs 157;" f +slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 174;" f smallBattery src/Dodge/Item/Ammo.hs 60;" f smallBranch src/Dodge/Tree/GenerateStructure.hs 32;" f smallChaseCrit src/Dodge/Creature/ChaseCrit.hs 14;" f @@ -5011,7 +5006,7 @@ soundToOnomato src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 150;" f soundToVol src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 4;" f soundWithStatus src/Dodge/SoundLogic.hs 104;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f -southPillarsRoom src/Dodge/Room/LongDoor.hs 87;" f +southPillarsRoom src/Dodge/Room/LongDoor.hs 88;" f spaceAction src/Dodge/Update/Input/InGame.hs 528;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 206;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 199;" f @@ -5043,7 +5038,7 @@ sps src/Dodge/LevelGen/PlacementHelper.hs 30;" f sps0 src/Dodge/LevelGen/PlacementHelper.hs 42;" f square src/Geometry/Polygon.hs 48;" f squareDecoration src/Dodge/Placement/TopDecoration.hs 41;" f -squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 114;" f +squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 116;" f squashNormalizeV src/Geometry/Vector.hs 158;" f ssLookupDown src/Dodge/SelectionSections.hs 82;" f ssLookupGE' src/Dodge/SelectionSections.hs 136;" f @@ -5083,8 +5078,8 @@ stone3S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 572;" f stone4S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 484;" f stone5S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 626;" f stopAllSounds src/Sound.hs 125;" f -stopBulletAt src/Dodge/Bullet.hs 199;" f -stopPushing src/Dodge/DrWdWd.hs 79;" f +stopBulletAt src/Dodge/Bullet.hs 200;" f +stopPushing src/Dodge/DrWdWd.hs 78;" f stopSoundFrom src/Dodge/SoundLogic.hs 220;" f strFromEquipment src/Dodge/Creature/Statistics.hs 53;" f strFromHeldItem src/Dodge/Creature/Statistics.hs 67;" f @@ -5096,7 +5091,7 @@ stringToListGrad src/Picture/Text.hs 12;" f stripZ src/Geometry/Vector3D.hs 97;" f subInvX src/Dodge/ListDisplayParams.hs 46;" f subMap src/TreeHelp.hs 119;" f -subZipWith src/Dodge/Placement/Instance/Wall.hs 115;" f +subZipWith src/Dodge/Placement/Instance/Wall.hs 113;" f succB src/Dodge/Debug.hs 79;" f swapAnyExtraSelection src/Dodge/Inventory/Swap.hs 57;" f swapInOutLinks src/Dodge/RoomLink.hs 98;" f @@ -5106,7 +5101,6 @@ swapItemWith src/Dodge/Inventory.hs 164;" f swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f swarmUsingCenter src/Dodge/Creature/Boid.hs 174;" f switchDoor src/Dodge/Placement/Instance/Door.hs 106;" f -switchWallCol src/Dodge/Default/Door.hs 12;" f switchWallObs src/Dodge/Data/PathGraph.hs 54;" f t src/ShortShow.hs 48;" f tEast src/Dodge/Room/Corridor.hs 90;" f @@ -5176,13 +5170,13 @@ thickCircle src/Picture/Base.hs 272;" f thickLine src/Picture/Base.hs 244;" f thickLineCol src/Picture/Base.hs 255;" f thinHighBar src/Dodge/Room/Foreground.hs 77;" f -thingHit src/Dodge/WorldEvent/ThingsHit.hs 113;" f -thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 101;" f -thingsHit src/Dodge/WorldEvent/ThingsHit.hs 39;" f -thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 122;" f -thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 47;" f +thingHit src/Dodge/WorldEvent/ThingsHit.hs 114;" f +thingHitFilt src/Dodge/WorldEvent/ThingsHit.hs 102;" f +thingsHit src/Dodge/WorldEvent/ThingsHit.hs 40;" f +thingsHitExceptCr src/Dodge/WorldEvent/ThingsHit.hs 123;" f +thingsHitZ src/Dodge/WorldEvent/ThingsHit.hs 48;" f threeLineDecoration src/Dodge/Placement/TopDecoration.hs 61;" f -throwItem src/Dodge/Creature/Action.hs 190;" f +throwItem src/Dodge/Creature/Action.hs 191;" f tileTexCoords src/Tile.hs 11;" f tilesFromRooms src/Dodge/Layout.hs 196;" f tilesToLine src/Shader/AuxAddition.hs 66;" f @@ -5273,7 +5267,7 @@ treePaths src/TreeHelp.hs 139;" f treePost src/TreeHelp.hs 46;" f treeToPotentialFunction src/Dodge/Item/Grammar.hs 143;" f triLootRoom src/Dodge/Room/Treasure.hs 22;" f -triggerDoorRoom src/Dodge/Room/Door.hs 31;" f +triggerDoorRoom src/Dodge/Room/Door.hs 30;" f triggerSwitch src/Dodge/Placement/Instance/Button.hs 47;" f triggerSwitchSPic src/Dodge/Placement/Instance/Button.hs 14;" f triggerSwitchSPicLight src/Dodge/Placement/Instance/Button.hs 31;" f @@ -5308,7 +5302,7 @@ tutRezBox src/Dodge/Room/Tutorial.hs 362;" f tutRoomTree src/Dodge/Floor.hs 21;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 386;" f tweenAngles src/Geometry/Vector.hs 190;" f -twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 81;" f +twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 82;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f twists src/Dodge/Creature/Test.hs 102;" f twoFlat src/Dodge/Creature/Test.hs 99;" f @@ -5366,8 +5360,8 @@ updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f updateDistortion src/Dodge/Distortion.hs 5;" f updateDistortions src/Dodge/Update.hs 575;" f updateDoor src/Dodge/DrWdWd.hs 20;" f -updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 74;" f -updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 71;" f +updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 69;" f +updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 66;" f updateDoors src/Dodge/Update.hs 326;" f updateDust src/Dodge/Update.hs 839;" f updateDusts src/Dodge/Update.hs 689;" f @@ -5477,7 +5471,7 @@ upperPrismPolyST src/Shape.hs 108;" f upperPrismPolySU src/Shape.hs 114;" f upperPrismPolyTS src/Shape.hs 120;" f upperRounded src/Shape.hs 185;" f -useBulletPayload src/Dodge/Bullet.hs 116;" f +useBulletPayload src/Dodge/Bullet.hs 117;" f useGasParams src/Dodge/HeldUse.hs 1091;" f useHotkey src/Dodge/Creature/YourControl.hs 77;" f useInventoryPath src/Dodge/HeldUse.hs 1382;" f @@ -5521,7 +5515,7 @@ viewClipBounds src/Dodge/Debug/Picture.hs 336;" f viewDistanceFromItems src/Dodge/Update/Camera.hs 194;" f viewTarget src/Dodge/Creature/ReaderUpdate.hs 154;" f violet src/Color.hs 21;" f -visibleWalls src/Dodge/Base/Collide.hs 218;" f +visibleWalls src/Dodge/Base/Collide.hs 215;" 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 @@ -5529,12 +5523,12 @@ volleyGunShape src/Dodge/Item/Draw/SPic.hs 357;" f walkNozzle src/Dodge/HeldUse.hs 809;" f walkableNodeNear src/Dodge/Path.hs 88;" f wallBlips src/Dodge/RadarSweep.hs 99;" f -wallBuffer src/Dodge/WallCreatureCollisions.hs 53;" f +wallBuffer src/Dodge/WallCreatureCollisions.hs 54;" f wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f wallLine src/Dodge/Placement/Instance/Wall.hs 71;" f -wallToSurface src/Dodge/Base/Collide.hs 183;" f +wallToSurface src/Dodge/Base/Collide.hs 180;" f wallsFromRooms src/Dodge/Layout.hs 137;" f -wallsToDraw src/Dodge/Render/Walls.hs 17;" f +wallsToDraw src/Dodge/Render/Walls.hs 16;" f warmupSound src/Dodge/HeldUse.hs 1376;" f warningRooms src/Dodge/Room/Warning.hs 30;" f wasdAim src/Dodge/Creature/YourControl.hs 133;" f @@ -5544,7 +5538,7 @@ wasdMovement src/Dodge/Creature/YourControl.hs 169;" f wasdWithAiming src/Dodge/Creature/YourControl.hs 126;" f watchCombinations src/Dodge/Combine/Combinations.hs 16;" f watchUpdateStrat src/Dodge/Creature/ReaderUpdate.hs 184;" f -weakenMatS src/Dodge/Material/Sound.hs 18;" f +weakenMatS src/Dodge/Material/Sound.hs 19;" f weaponBehindPillar src/Dodge/Room/Room.hs 186;" f weaponBetweenPillars src/Dodge/Room/Room.hs 202;" f weaponEmptyRoom src/Dodge/Room/Room.hs 147;" f @@ -5583,13 +5577,13 @@ wlIXsNearRect src/Dodge/Zoning/Wall.hs 29;" f wlIXsNearSeg src/Dodge/Zoning/Wall.hs 25;" f wlIsOpaque src/Dodge/Base/Wall.hs 6;" f wlIsSeeThrough src/Dodge/Base/Wall.hs 11;" f -wlOpaqueDraw src/Dodge/Render/Walls.hs 45;" f -wlSeeThroughDraw src/Dodge/Render/Walls.hs 48;" f +wlOpaqueDraw src/Dodge/Render/Walls.hs 47;" f +wlSeeThroughDraw src/Dodge/Render/Walls.hs 50;" f wlZoneSize src/Dodge/Zoning/Wall.hs 52;" f wlsFromIXs src/Dodge/Zoning/Wall.hs 35;" f -wlsHit src/Dodge/WorldEvent/ThingsHit.hs 136;" f -wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 146;" f -wlsHitUnsorted src/Dodge/WorldEvent/ThingsHit.hs 139;" f +wlsHit src/Dodge/WorldEvent/ThingsHit.hs 137;" f +wlsHitRadial src/Dodge/WorldEvent/ThingsHit.hs 147;" f +wlsHitUnsorted src/Dodge/WorldEvent/ThingsHit.hs 140;" f wlsNearCirc src/Dodge/Zoning/Wall.hs 49;" f wlsNearPoint src/Dodge/Zoning/Wall.hs 39;" f wlsNearRect src/Dodge/Zoning/Wall.hs 46;" f @@ -5614,7 +5608,7 @@ yIntercepts src/Dodge/Zoning/Base.hs 82;" f yV2 src/Geometry/Vector.hs 205;" f yellow src/Color.hs 17;" f you src/Dodge/Base/You.hs 13;" f -youDropItem src/Dodge/Creature/Action.hs 176;" f +youDropItem src/Dodge/Creature/Action.hs 177;" f yourAugmentedItem src/Dodge/Render/HUD.hs 238;" f yourControl src/Dodge/Creature/YourControl.hs 28;" f yourDefaultStrideLength src/Dodge/Default/Creature.hs 110;" f