This commit is contained in:
2025-10-25 10:17:59 +01:00
parent c2cc38a642
commit 0da3816664
5 changed files with 119 additions and 210 deletions
+8 -15
View File
@@ -1,17 +1,10 @@
module Dodge.LevelGen.DoorPane ( rectanglePairs) where module Dodge.LevelGen.DoorPane (mkRectangle) where
import Geometry.Vector
import Geometry.Data
rectanglePairs :: Float -> Point2 -> Point2 -> [(Point2,Point2)] import Geometry.Data
rectanglePairs wdth a b = import Geometry.Vector
[ (aup, ad) import Linear
, (ad, bd)
, (bd, bu) mkRectangle :: Float -> Point2 -> [ Point2]
, (bu, aup) mkRectangle wdth b = [ n , - n , b - n , b + n ]
]
where where
aup = a +.+ norm n = wdth *^ normalizeV (vNormal b)
ad = a -.- norm
bu = b +.+ norm
bd = b -.- norm
norm = wdth *.* normalizeV ( vNormal (b -.- a))
+1 -1
View File
@@ -134,7 +134,7 @@ placeSpotID rid ps pt w = case pt of
PutMachine pps mc mitm -> plMachine (map doShift pps) mc 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 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 RandPS _ -> error "RandPS should not be reachable here" --evaluateRandPS rid rgn ps w
PutDoor dr wl -> plDoor' (dr & drZeroPos %~ pashift & drOnePos %~ pashift) wl w PutDoor dr wl -> plDoor (dr & drZeroPos %~ pashift & drOnePos %~ pashift) wl w
PutCoord cp -> plNewID (gwWorld . coordinates) (doShift cp) w PutCoord cp -> plNewID (gwWorld . coordinates) (doShift cp) w
PutBlock bl wl ps' -> PutBlock bl wl ps' ->
plBlock plBlock
+2 -84
View File
@@ -1,27 +1,20 @@
module Dodge.Placement.PlaceSpot.TriggerDoor ( module Dodge.Placement.PlaceSpot.TriggerDoor (
plDoor',
plDoor, plDoor,
plSlideDoor,
) where ) where
import Dodge.Door.DoorLerp import Dodge.Door.DoorLerp
import Dodge.Data.GenWorld import Dodge.Data.GenWorld
import Dodge.Default.Door
import Dodge.Default.Wall
import Dodge.LevelGen.DoorPane
import Dodge.Placement.PlaceSpot.Block import Dodge.Placement.PlaceSpot.Block
import Dodge.ShiftPoint import Dodge.ShiftPoint
import Geometry
import qualified IntMapHelp as IM import qualified IntMapHelp as IM
import LensHelp import LensHelp
import Linear
plDoor' :: plDoor ::
Door -> Door ->
Wall -> Wall ->
GenWorld -> GenWorld ->
(Int, GenWorld) (Int, GenWorld)
plDoor' dr wl gw = plDoor dr wl gw =
( drid ( drid
, over gwWorld addWalls $ gw & gwWorld . cWorld . lWorld . doors . at drid ?~ newdr , over gwWorld addWalls $ gw & gwWorld . cWorld . lWorld . doors . at drid ?~ newdr
-- carefull with the ordering of addWalls -- carefull with the ordering of addWalls
@@ -42,78 +35,3 @@ plDoor' dr wl gw =
(map fst pps & each %~ shiftPointBy lerposa) (map fst pps & each %~ shiftPointBy lerposa)
drid drid
wlid wlid
plDoor ::
WdBl ->
Float ->
Point2A ->
Point2A ->
GenWorld ->
(Int, GenWorld)
plDoor cond l p1 p2 gw =
( drid
, over gwWorld addWalls $ gw & gwWorld . cWorld . lWorld . doors . at drid ?~ addDoor
-- carefull with the ordering of addWalls
)
where
isauto = case cond of
WdBlCrFilterNearPoint{} -> True
_ -> False
drid = IM.newKey $ _doors (_lWorld (_cWorld $ _gwWorld gw))
addDoor =
defaultDoor
{ _drID = drid
, _drTrigger = cond
, _drUpdate = DoorLerp 0.01
, _drZeroPos = p1
, _drOnePos = p2
, _drLerp = 0
, _drFootPrint = IM.fromList . zip wlids $ wlps'
}
wlids = take 4 [wlid ..]
wlid = IM.newKey $ gw ^. gwWorld . cWorld . lWorld . walls
wlps' = rectanglePairs 9 0 (V2 l 0)
addWalls =
insertStructureWalls
(`DoorPart` isauto)
defaultDoorWall
(map fst wlps' & each %~ shiftPointBy p1)
drid
wlid
plSlideDoor ::
Door ->
Wall ->
Float ->
Point2 ->
Point2 ->
GenWorld ->
(Int, GenWorld)
plSlideDoor dr wl shiftOffset a b gw =
(drid, over gwWorld addWalls $ gw & gwWorld . cWorld . lWorld . doors %~ addDoor)
where
isauto = case dr ^. drTrigger of
WdBlCrFilterNearPoint{} -> True
_ -> False
drid = IM.newKey $ _doors (_lWorld (_cWorld $ _gwWorld gw))
addDoor =
IM.insert drid $
dr
{ _drID = drid
, _drUpdate = DoorLerp $ 1 / distance a (shiftLeft a)
, _drZeroPos = (a, 0)
, _drOnePos = (shiftLeft a, 0)
, _drLerp = 0
, _drFootPrint = IM.fromList $ zip wlids $ rectanglePairs 9 0 (b - a)
}
pairs = rectanglePairs 9 a b
shiftLeft = (+.+ (a -.- b +.+ shiftOffset *.* normalizeV (b -.- a)))
wlids = take 4 [wlid ..]
wlid = IM.newKey $ gw ^. gwWorld . cWorld . lWorld . walls
addWalls =
insertStructureWalls
(`DoorPart` isauto)
wl
(map fst pairs)
drid
wlid
+1 -1
View File
@@ -121,7 +121,7 @@ putDoor cond l p1 p2 = PutDoor dr wl
& drZeroPos .~ p1 & drZeroPos .~ p1
& drOnePos .~ p2 & drOnePos .~ p2
& drFootPrint .~ IM.fromList (zip [0 ..] wlps') & drFootPrint .~ IM.fromList (zip [0 ..] wlps')
wlps' = rectanglePairs 9 0 (V2 l 0) wlps' = loopPairs $ mkRectangle 9 (V2 l 0)
airlockSimple :: RandomGen g => State g Room airlockSimple :: RandomGen g => State g Room
airlockSimple = do airlockSimple = do
+107 -109
View File
@@ -939,10 +939,10 @@ POISONSPRAYER src/Dodge/Data/Item/Combine.hs 172;" C
PORTABLEFUSION src/Dodge/Data/Item/Combine.hs 87;" C PORTABLEFUSION src/Dodge/Data/Item/Combine.hs 87;" C
POWERLEGS src/Dodge/Data/Item/Combine.hs 128;" C POWERLEGS src/Dodge/Data/Item/Combine.hs 128;" C
PRISM src/Dodge/Data/Item/Combine.hs 65;" C PRISM src/Dodge/Data/Item/Combine.hs 65;" C
PS src/Dodge/Data/GenWorld.hs 96;" C PS src/Dodge/Data/GenWorld.hs 92;" C
PSNoShiftCont src/Dodge/Data/GenWorld.hs 97;" C PSNoShiftCont src/Dodge/Data/GenWorld.hs 93;" C
PSPos src/Dodge/Data/GenWorld.hs 98;" C PSPos src/Dodge/Data/GenWorld.hs 94;" C
PSRoomRand src/Dodge/Data/GenWorld.hs 103;" C PSRoomRand src/Dodge/Data/GenWorld.hs 99;" C
PSType src/Dodge/Data/GenWorld.hs 31;" t PSType src/Dodge/Data/GenWorld.hs 31;" t
PUMP src/Dodge/Data/Item/Combine.hs 62;" C PUMP src/Dodge/Data/Item/Combine.hs 62;" C
PaletteColor src/Color/Data.hs 11;" t PaletteColor src/Color/Data.hs 11;" t
@@ -962,8 +962,8 @@ PhysicalSensor src/Dodge/Data/Machine/Sensor.hs 16;" C
Picture src/Picture/Data.hs 44;" t Picture src/Picture/Data.hs 44;" t
Piercing src/Dodge/Data/Damage.hs 16;" C Piercing src/Dodge/Data/Damage.hs 16;" C
PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C
Placement src/Dodge/Data/GenWorld.hs 109;" t Placement src/Dodge/Data/GenWorld.hs 105;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 95;" t PlacementSpot src/Dodge/Data/GenWorld.hs 91;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 86;" C PlainBarrel src/Dodge/Data/Creature/Misc.hs 86;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlayStatus src/Sound/Data.hs 21;" t PlayStatus src/Sound/Data.hs 21;" t
@@ -1029,25 +1029,25 @@ PushedBy src/Dodge/Data/Door.hs 25;" C
PushesItself src/Dodge/Data/Door.hs 24;" C PushesItself src/Dodge/Data/Door.hs 24;" C
PutBlock src/Dodge/Data/GenWorld.hs 44;" C PutBlock src/Dodge/Data/GenWorld.hs 44;" C
PutButton src/Dodge/Data/GenWorld.hs 40;" C PutButton src/Dodge/Data/GenWorld.hs 40;" C
PutChasm src/Dodge/Data/GenWorld.hs 63;" C PutChasm src/Dodge/Data/GenWorld.hs 61;" C
PutCoord src/Dodge/Data/GenWorld.hs 45;" C PutCoord src/Dodge/Data/GenWorld.hs 45;" C
PutCrit src/Dodge/Data/GenWorld.hs 32;" C PutCrit src/Dodge/Data/GenWorld.hs 32;" C
PutDoor' src/Dodge/Data/GenWorld.hs 56;" C PutDoor src/Dodge/Data/GenWorld.hs 55;" C
PutFlIt src/Dodge/Data/GenWorld.hs 43;" C PutFlIt src/Dodge/Data/GenWorld.hs 43;" C
PutForeground src/Dodge/Data/GenWorld.hs 59;" C PutForeground src/Dodge/Data/GenWorld.hs 57;" C
PutID src/Dodge/Data/GenWorld.hs 62;" C PutID src/Dodge/Data/GenWorld.hs 60;" C
PutLS src/Dodge/Data/GenWorld.hs 39;" C PutLS src/Dodge/Data/GenWorld.hs 39;" C
PutLabel src/Dodge/Data/GenWorld.hs 64;" C PutLabel src/Dodge/Data/GenWorld.hs 62;" C
PutLineBlock src/Dodge/Data/GenWorld.hs 48;" C PutLineBlock src/Dodge/Data/GenWorld.hs 48;" C
PutMachine src/Dodge/Data/GenWorld.hs 33;" C PutMachine src/Dodge/Data/GenWorld.hs 33;" C
PutMod src/Dodge/Data/GenWorld.hs 46;" C PutMod src/Dodge/Data/GenWorld.hs 46;" C
PutNothing src/Dodge/Data/GenWorld.hs 61;" C PutNothing src/Dodge/Data/GenWorld.hs 59;" C
PutOnEquipment src/Dodge/Data/RightButtonOptions.hs 19;" C PutOnEquipment src/Dodge/Data/RightButtonOptions.hs 19;" C
PutProp src/Dodge/Data/GenWorld.hs 41;" C PutProp src/Dodge/Data/GenWorld.hs 41;" C
PutTerminal src/Dodge/Data/GenWorld.hs 42;" C PutTerminal src/Dodge/Data/GenWorld.hs 42;" C
PutTrigger src/Dodge/Data/GenWorld.hs 47;" C PutTrigger src/Dodge/Data/GenWorld.hs 47;" C
PutWall src/Dodge/Data/GenWorld.hs 54;" C PutWall src/Dodge/Data/GenWorld.hs 54;" C
PutWorldUpdate src/Dodge/Data/GenWorld.hs 60;" C PutWorldUpdate src/Dodge/Data/GenWorld.hs 58;" C
QFloat src/Geometry/Data.hs 50;" t QFloat src/Geometry/Data.hs 50;" t
QuarterRes src/Dodge/Data/Config.hs 98;" C QuarterRes src/Dodge/Data/Config.hs 98;" C
QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C
@@ -1071,7 +1071,7 @@ RadialDistortion src/Dodge/Data/Distortion.hs 11;" C
RandImpulse src/Dodge/Data/ActionPlan.hs 49;" t RandImpulse src/Dodge/Data/ActionPlan.hs 49;" t
RandImpulseCircMove src/Dodge/Data/ActionPlan.hs 51;" C RandImpulseCircMove src/Dodge/Data/ActionPlan.hs 51;" C
RandImpulseList src/Dodge/Data/ActionPlan.hs 50;" C RandImpulseList src/Dodge/Data/ActionPlan.hs 50;" C
RandPS src/Dodge/Data/GenWorld.hs 58;" C RandPS src/Dodge/Data/GenWorld.hs 56;" C
RandomImpulse src/Dodge/Data/ActionPlan.hs 31;" C RandomImpulse src/Dodge/Data/ActionPlan.hs 31;" C
RandomTurn src/Dodge/Data/ActionPlan.hs 30;" C RandomTurn src/Dodge/Data/ActionPlan.hs 30;" C
ReactorSS src/Dodge/Data/Scenario.hs 111;" C ReactorSS src/Dodge/Data/Scenario.hs 111;" C
@@ -1107,7 +1107,7 @@ Rocket src/Dodge/Data/Projectile.hs 32;" C
RocketHoming src/Dodge/Data/Projectile.hs 39;" t RocketHoming src/Dodge/Data/Projectile.hs 39;" t
RocketSmoke src/Dodge/Data/Projectile.hs 52;" t RocketSmoke src/Dodge/Data/Projectile.hs 52;" t
RocketSmoke src/Dodge/Data/Cloud.hs 22;" C RocketSmoke src/Dodge/Data/Cloud.hs 22;" C
Room src/Dodge/Data/GenWorld.hs 124;" t Room src/Dodge/Data/GenWorld.hs 120;" t
RoomClipping src/Dodge/Data/Config.hs 108;" t RoomClipping src/Dodge/Data/Config.hs 108;" t
RoomInt src/Dodge/Tree/Shift.hs 26;" t RoomInt src/Dodge/Tree/Shift.hs 26;" t
RoomLink src/Dodge/Data/Room.hs 24;" t RoomLink src/Dodge/Data/Room.hs 24;" t
@@ -2073,11 +2073,11 @@ _pjSpin src/Dodge/Data/Projectile.hs 19;" f
_pjTimer src/Dodge/Data/Projectile.hs 22;" f _pjTimer src/Dodge/Data/Projectile.hs 22;" f
_pjType src/Dodge/Data/Projectile.hs 24;" f _pjType src/Dodge/Data/Projectile.hs 24;" f
_pjVel src/Dodge/Data/Projectile.hs 17;" f _pjVel src/Dodge/Data/Projectile.hs 17;" f
_plExternalID src/Dodge/Data/GenWorld.hs 113;" f _plExternalID src/Dodge/Data/GenWorld.hs 109;" f
_plIDCont src/Dodge/Data/GenWorld.hs 114;" f _plIDCont src/Dodge/Data/GenWorld.hs 110;" f
_plMID src/Dodge/Data/GenWorld.hs 112;" f _plMID src/Dodge/Data/GenWorld.hs 108;" f
_plSpot src/Dodge/Data/GenWorld.hs 110;" f _plSpot src/Dodge/Data/GenWorld.hs 106;" f
_plType src/Dodge/Data/GenWorld.hs 111;" f _plType src/Dodge/Data/GenWorld.hs 107;" f
_playStatus src/Sound/Data.hs 15;" f _playStatus src/Sound/Data.hs 15;" f
_playingSounds src/Dodge/Data/World.hs 40;" f _playingSounds src/Dodge/Data/World.hs 40;" f
_posture src/Dodge/Data/Creature/Stance.hs 17;" f _posture src/Dodge/Data/Creature/Stance.hs 17;" f
@@ -2098,24 +2098,24 @@ _proxReqEquipment src/Dodge/Data/Machine/Sensor.hs 36;" f
_proxReqMinHealth src/Dodge/Data/Machine/Sensor.hs 35;" f _proxReqMinHealth src/Dodge/Data/Machine/Sensor.hs 35;" f
_proxSensorType src/Dodge/Data/Machine/Sensor.hs 26;" f _proxSensorType src/Dodge/Data/Machine/Sensor.hs 26;" f
_proxToggle src/Dodge/Data/Machine/Sensor.hs 27;" f _proxToggle src/Dodge/Data/Machine/Sensor.hs 27;" f
_psFallback src/Dodge/Data/GenWorld.hs 101;" f _psFallback src/Dodge/Data/GenWorld.hs 97;" f
_psPos src/Dodge/Data/GenWorld.hs 96;" f _psPos src/Dodge/Data/GenWorld.hs 92;" f
_psRandShift src/Dodge/Data/GenWorld.hs 105;" f _psRandShift src/Dodge/Data/GenWorld.hs 101;" f
_psRoomEff src/Dodge/Data/GenWorld.hs 100;" f _psRoomEff src/Dodge/Data/GenWorld.hs 96;" f
_psRoomRandPointNum src/Dodge/Data/GenWorld.hs 104;" f _psRoomRandPointNum src/Dodge/Data/GenWorld.hs 100;" f
_psRot src/Dodge/Data/GenWorld.hs 96;" f _psRot src/Dodge/Data/GenWorld.hs 92;" f
_psSelect src/Dodge/Data/GenWorld.hs 99;" f _psSelect src/Dodge/Data/GenWorld.hs 95;" f
_pulseBalls src/Dodge/Data/LWorld.hs 113;" f _pulseBalls src/Dodge/Data/LWorld.hs 113;" f
_pulseLasers src/Dodge/Data/LWorld.hs 112;" f _pulseLasers src/Dodge/Data/LWorld.hs 112;" f
_pulseProgress src/Dodge/Data/Creature/Misc.hs 54;" f _pulseProgress src/Dodge/Data/Creature/Misc.hs 54;" f
_pulseRate src/Dodge/Data/Creature/Misc.hs 53;" f _pulseRate src/Dodge/Data/Creature/Misc.hs 53;" f
_putBlock src/Dodge/Data/GenWorld.hs 44;" f _putBlock src/Dodge/Data/GenWorld.hs 44;" f
_putButton src/Dodge/Data/GenWorld.hs 40;" f _putButton src/Dodge/Data/GenWorld.hs 40;" f
_putChasmPoly src/Dodge/Data/GenWorld.hs 63;" f _putChasmPoly src/Dodge/Data/GenWorld.hs 61;" f
_putEndPoint src/Dodge/Data/GenWorld.hs 52;" f _putEndPoint src/Dodge/Data/GenWorld.hs 52;" f
_putID src/Dodge/Data/GenWorld.hs 62;" f _putID src/Dodge/Data/GenWorld.hs 60;" f
_putItem src/Dodge/Data/GenWorld.hs 43;" f _putItem src/Dodge/Data/GenWorld.hs 43;" f
_putLabel src/Dodge/Data/GenWorld.hs 64;" f _putLabel src/Dodge/Data/GenWorld.hs 62;" f
_putMachineMachine src/Dodge/Data/GenWorld.hs 35;" f _putMachineMachine src/Dodge/Data/GenWorld.hs 35;" f
_putMachineMaybeItem src/Dodge/Data/GenWorld.hs 37;" f _putMachineMaybeItem src/Dodge/Data/GenWorld.hs 37;" f
_putMachinePoly src/Dodge/Data/GenWorld.hs 34;" f _putMachinePoly src/Dodge/Data/GenWorld.hs 34;" f
@@ -2153,28 +2153,28 @@ _rkSmoke src/Dodge/Data/Projectile.hs 34;" f
_rlDir src/Dodge/Data/Room.hs 27;" f _rlDir src/Dodge/Data/Room.hs 27;" f
_rlPos src/Dodge/Data/Room.hs 26;" f _rlPos src/Dodge/Data/Room.hs 26;" f
_rlType src/Dodge/Data/Room.hs 25;" f _rlType src/Dodge/Data/Room.hs 25;" f
_rmBound src/Dodge/Data/GenWorld.hs 139;" f _rmBound src/Dodge/Data/GenWorld.hs 135;" f
_rmChildren src/Dodge/Data/GenWorld.hs 150;" f _rmChildren src/Dodge/Data/GenWorld.hs 146;" f
_rmClusterStatus src/Dodge/Data/GenWorld.hs 152;" f _rmClusterStatus src/Dodge/Data/GenWorld.hs 148;" f
_rmConnectsTo src/Dodge/Data/GenWorld.hs 147;" f _rmConnectsTo src/Dodge/Data/GenWorld.hs 143;" f
_rmEndWires src/Dodge/Data/GenWorld.hs 146;" f _rmEndWires src/Dodge/Data/GenWorld.hs 142;" f
_rmFloor src/Dodge/Data/GenWorld.hs 140;" f _rmFloor src/Dodge/Data/GenWorld.hs 136;" f
_rmHeight src/Dodge/Data/Room.hs 39;" f _rmHeight src/Dodge/Data/Room.hs 39;" f
_rmInPmnt src/Dodge/Data/GenWorld.hs 138;" f _rmInPmnt src/Dodge/Data/GenWorld.hs 134;" f
_rmLinkEff src/Dodge/Data/GenWorld.hs 128;" f _rmLinkEff src/Dodge/Data/GenWorld.hs 124;" f
_rmLinks src/Dodge/Data/GenWorld.hs 126;" f _rmLinks src/Dodge/Data/GenWorld.hs 122;" f
_rmMID src/Dodge/Data/GenWorld.hs 148;" f _rmMID src/Dodge/Data/GenWorld.hs 144;" f
_rmMParent src/Dodge/Data/GenWorld.hs 149;" f _rmMParent src/Dodge/Data/GenWorld.hs 145;" f
_rmName src/Dodge/Data/GenWorld.hs 141;" f _rmName src/Dodge/Data/GenWorld.hs 137;" f
_rmPath src/Dodge/Data/GenWorld.hs 136;" f _rmPath src/Dodge/Data/GenWorld.hs 132;" f
_rmPmnts src/Dodge/Data/GenWorld.hs 137;" f _rmPmnts src/Dodge/Data/GenWorld.hs 133;" f
_rmPolys src/Dodge/Data/GenWorld.hs 125;" f _rmPolys src/Dodge/Data/GenWorld.hs 121;" f
_rmPos src/Dodge/Data/GenWorld.hs 135;" f _rmPos src/Dodge/Data/GenWorld.hs 131;" f
_rmRandPSs src/Dodge/Data/GenWorld.hs 144;" f _rmRandPSs src/Dodge/Data/GenWorld.hs 140;" f
_rmShift src/Dodge/Data/GenWorld.hs 142;" f _rmShift src/Dodge/Data/GenWorld.hs 138;" f
_rmStartWires src/Dodge/Data/GenWorld.hs 145;" f _rmStartWires src/Dodge/Data/GenWorld.hs 141;" f
_rmType src/Dodge/Data/GenWorld.hs 151;" f _rmType src/Dodge/Data/GenWorld.hs 147;" f
_rmViewpoints src/Dodge/Data/GenWorld.hs 143;" f _rmViewpoints src/Dodge/Data/GenWorld.hs 139;" f
_rmWidth src/Dodge/Data/Room.hs 38;" f _rmWidth src/Dodge/Data/Room.hs 38;" f
_rpDir src/Dodge/Data/Room.hs 17;" f _rpDir src/Dodge/Data/Room.hs 17;" f
_rpFlags src/Dodge/Data/Room.hs 18;" f _rpFlags src/Dodge/Data/Room.hs 18;" f
@@ -2492,8 +2492,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 132;" f
addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f addHighGirder' src/Dodge/Room/Modify/Girder.hs 142;" f
addIndefiniteArticle src/StringHelp.hs 17;" f addIndefiniteArticle src/StringHelp.hs 17;" f
addPane src/Dodge/Placement/PlaceSpot.hs 182;" f addPane src/Dodge/Placement/PlaceSpot.hs 180;" f
addPlmnt src/Dodge/LevelGen/PlacementHelper.hs 87;" f
addPointPolygon src/Geometry/Polygon.hs 134;" f addPointPolygon src/Geometry/Polygon.hs 134;" f
addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f addPolyWall src/Dodge/LevelGen/StaticWalls.hs 141;" f
addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f addPolyWalls src/Dodge/LevelGen/StaticWalls.hs 129;" f
@@ -2513,12 +2512,12 @@ aimDelaySweep src/Dodge/Render/Picture.hs 287;" f
aimStanceInfo src/Dodge/Item/Info.hs 243;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f
aimTurn src/Dodge/Creature/YourControl.hs 181;" f aimTurn src/Dodge/Creature/YourControl.hs 181;" f
airlock src/Dodge/Room/Airlock.hs 27;" f airlock src/Dodge/Room/Airlock.hs 27;" f
airlock0 src/Dodge/Room/Airlock.hs 75;" f airlock0 src/Dodge/Room/Airlock.hs 77;" f
airlock90 src/Dodge/Room/Airlock.hs 211;" f airlock90 src/Dodge/Room/Airlock.hs 189;" f
airlockCrystal src/Dodge/Room/Airlock.hs 256;" f airlockCrystal src/Dodge/Room/Airlock.hs 229;" f
airlockDoubleDoor src/Dodge/Room/Airlock.hs 101;" f airlockDoubleDoor src/Dodge/Room/Airlock.hs 101;" f
airlockSimple src/Dodge/Room/Airlock.hs 128;" f airlockSimple src/Dodge/Room/Airlock.hs 126;" f
airlockZ src/Dodge/Room/Airlock.hs 166;" f airlockZ src/Dodge/Room/Airlock.hs 154;" f
allVisibleWalls src/Dodge/Base/Collide.hs 223;" f allVisibleWalls src/Dodge/Base/Collide.hs 223;" f
alongSegBy src/Geometry.hs 40;" f alongSegBy src/Geometry.hs 40;" f
alteRifle src/Dodge/Item/Held/Cane.hs 22;" f alteRifle src/Dodge/Item/Held/Cane.hs 22;" f
@@ -2715,7 +2714,7 @@ bulletWeapons src/Dodge/Combine/Combinations.hs 248;" f
burstRifle src/Dodge/Item/Held/Cane.hs 30;" f burstRifle src/Dodge/Item/Held/Cane.hs 30;" f
buttonFlip src/Dodge/Button/Event.hs 17;" f buttonFlip src/Dodge/Button/Event.hs 17;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 702;" f
cChasm src/Dodge/Room/Tutorial.hs 136;" f cChasm src/Dodge/Room/Tutorial.hs 142;" f
cFilledRect src/Dodge/CharacterEnums.hs 6;" f cFilledRect src/Dodge/CharacterEnums.hs 6;" f
cWireRect src/Dodge/CharacterEnums.hs 10;" f cWireRect src/Dodge/CharacterEnums.hs 10;" f
calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f
@@ -2750,7 +2749,7 @@ chaseCritInternal src/Dodge/Humanoid.hs 7;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 120;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 120;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f
chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 203;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 209;" f
chasmTest src/Dodge/Creature/Update.hs 132;" f chasmTest src/Dodge/Creature/Update.hs 132;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
@@ -2969,7 +2968,7 @@ crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f
crsNearRect src/Dodge/Zoning/Creature.hs 39;" f crsNearRect src/Dodge/Zoning/Creature.hs 39;" f
crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f
crystalLine src/Dodge/Placement/Instance/Wall.hs 66;" f crystalLine src/Dodge/Placement/Instance/Wall.hs 66;" f
cubeShape src/Dodge/Block/Debris.hs 113;" f cubeShape src/Dodge/Block/Debris.hs 111;" f
cullPoint src/Dodge/Render/ShapePicture.hs 96;" f cullPoint src/Dodge/Render/ShapePicture.hs 96;" f
cullPretty src/AesonHelp.hs 14;" f cullPretty src/AesonHelp.hs 14;" f
cutPoly src/Dodge/LevelGen/StaticWalls.hs 77;" f cutPoly src/Dodge/LevelGen/StaticWalls.hs 77;" f
@@ -3024,7 +3023,7 @@ deadScalp src/Dodge/Creature/Picture.hs 81;" f
deadUpperBody src/Dodge/Creature/Picture.hs 113;" f deadUpperBody src/Dodge/Creature/Picture.hs 113;" f
debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 684;" f debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 684;" f
debrisSPic src/Dodge/Prop/Draw.hs 20;" f debrisSPic src/Dodge/Prop/Draw.hs 20;" f
debrisSize src/Dodge/Block/Debris.hs 86;" f debrisSize src/Dodge/Block/Debris.hs 84;" f
debugEvent src/Dodge/Debug.hs 36;" f debugEvent src/Dodge/Debug.hs 36;" f
debugEvents src/Dodge/Debug.hs 21;" f debugEvents src/Dodge/Debug.hs 21;" f
debugItem src/Dodge/Debug.hs 39;" f debugItem src/Dodge/Debug.hs 39;" f
@@ -3037,7 +3036,7 @@ debugWritableValues src/Dodge/Debug.hs 84;" f
decodeSensorType src/Dodge/Terminal.hs 72;" f decodeSensorType src/Dodge/Terminal.hs 72;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 61;" f decomposeSelfTree src/Dodge/Tree/Compose.hs 61;" f
decomposeTree src/Dodge/Tree/Compose.hs 58;" f decomposeTree src/Dodge/Tree/Compose.hs 58;" f
decontamRoom src/Dodge/Room/Airlock.hs 32;" f decontamRoom src/Dodge/Room/Airlock.hs 37;" f
decoratedBlock src/Dodge/Placement/Instance/Block.hs 11;" f decoratedBlock src/Dodge/Placement/Instance/Block.hs 11;" f
decorationToShape src/Dodge/Placement/TopDecoration.hs 9;" f decorationToShape src/Dodge/Placement/TopDecoration.hs 9;" f
decreaseAwareness src/Dodge/Creature/Perception.hs 118;" f decreaseAwareness src/Dodge/Creature/Perception.hs 118;" f
@@ -3068,7 +3067,7 @@ defaultCreature src/Dodge/Default/Creature.hs 12;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 65;" f defaultCreatureMemory src/Dodge/Default/Creature.hs 65;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f
defaultDirtBlock src/Dodge/Default/Block.hs 17;" f defaultDirtBlock src/Dodge/Default/Block.hs 17;" f
defaultDirtWall src/Dodge/Default/Wall.hs 48;" f defaultDirtWall src/Dodge/Default/Wall.hs 47;" f
defaultDoor src/Dodge/Default/Door.hs 5;" f defaultDoor src/Dodge/Default/Door.hs 5;" f
defaultDoorWall src/Dodge/Default/Wall.hs 29;" f defaultDoorWall src/Dodge/Default/Wall.hs 29;" f
defaultDrawButton src/Dodge/Button/Draw.hs 29;" f defaultDrawButton src/Dodge/Button/Draw.hs 29;" f
@@ -3092,7 +3091,7 @@ defaultRoom src/Dodge/Default/Room.hs 9;" f
defaultTerminal src/Dodge/Default/Terminal.hs 10;" f defaultTerminal src/Dodge/Default/Terminal.hs 10;" f
defaultVision src/Dodge/Default/Creature.hs 85;" f defaultVision src/Dodge/Default/Creature.hs 85;" f
defaultWall src/Dodge/Default/Wall.hs 15;" f defaultWall src/Dodge/Default/Wall.hs 15;" f
defaultWindow src/Dodge/Default/Wall.hs 56;" f defaultWindow src/Dodge/Default/Wall.hs 54;" f
defaultWorld src/Dodge/Default/World.hs 31;" f defaultWorld src/Dodge/Default/World.hs 31;" f
degToRad src/Geometry/Vector.hs 118;" f degToRad src/Geometry/Vector.hs 118;" f
deleteIMInZone src/Dodge/Base.hs 70;" f deleteIMInZone src/Dodge/Base.hs 70;" f
@@ -3139,7 +3138,7 @@ dist src/Geometry/Vector.hs 185;" f
dist3 src/Geometry/Vector3D.hs 101;" f dist3 src/Geometry/Vector3D.hs 101;" f
divTo src/Geometry/Zone.hs 6;" f divTo src/Geometry/Zone.hs 6;" f
divideCircle src/Geometry.hs 321;" f divideCircle src/Geometry.hs 321;" f
divideDoorPane src/Dodge/Placement/Instance/Door.hs 67;" f divideDoorPane src/Dodge/Placement/Instance/Door.hs 64;" f
divideLine src/Geometry.hs 248;" f divideLine src/Geometry.hs 248;" f
divideLineExact src/Geometry.hs 276;" f divideLineExact src/Geometry.hs 276;" f
divideLineOddNumPoints src/Geometry.hs 261;" f divideLineOddNumPoints src/Geometry.hs 261;" f
@@ -3211,7 +3210,7 @@ doWdWd src/Dodge/WorldEffect.hs 28;" f
doWorldEvents src/Dodge/Update.hs 428;" f doWorldEvents src/Dodge/Update.hs 428;" f
doWorldPos src/Dodge/WorldPos.hs 10;" f doWorldPos src/Dodge/WorldPos.hs 10;" f
door src/Dodge/Room/Door.hs 13;" f door src/Dodge/Room/Door.hs 13;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 46;" f doorBetween src/Dodge/Placement/Instance/Door.hs 44;" f
doorLerp src/Dodge/DrWdWd.hs 27;" f doorLerp src/Dodge/DrWdWd.hs 27;" f
dotV src/Geometry/Vector.hs 76;" f dotV src/Geometry/Vector.hs 76;" f
dotV3 src/Geometry/Vector3D.hs 119;" f dotV3 src/Geometry/Vector3D.hs 119;" f
@@ -3495,7 +3494,7 @@ floorItemSPic src/Dodge/Render/ShapePicture.hs 122;" f
floorWire src/Dodge/Wire.hs 13;" f floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 558;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 554;" f
foldMTRS src/Dodge/Room/Tutorial.hs 81;" f foldMTRS src/Dodge/Room/Tutorial.hs 87;" f
foldPairs src/ListHelp.hs 37;" f foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 110;" f foldrWhileArb src/ListHelp.hs 110;" f
followImpulse src/Dodge/Creature/Impulse.hs 24;" f followImpulse src/Dodge/Creature/Impulse.hs 24;" f
@@ -3556,8 +3555,8 @@ getCloseObj src/Dodge/Update/Input/InGame.hs 533;" f
getCommand src/Dodge/Terminal.hs 52;" f getCommand src/Dodge/Terminal.hs 52;" f
getCommands src/Dodge/Terminal.hs 49;" f getCommands src/Dodge/Terminal.hs 49;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 352;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 358;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 339;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 345;" f
getDebugMouseOver src/Dodge/Update.hs 376;" f getDebugMouseOver src/Dodge/Update.hs 376;" f
getDistortions src/Dodge/Render.hs 435;" f getDistortions src/Dodge/Render.hs 435;" f
getEdgesCrossing src/Dodge/Path.hs 49;" f getEdgesCrossing src/Dodge/Path.hs 49;" f
@@ -3574,7 +3573,7 @@ getNodePos src/Dodge/Path.hs 38;" f
getPJStabiliser src/Dodge/HeldUse.hs 1251;" f getPJStabiliser src/Dodge/HeldUse.hs 1251;" f
getPretty src/AesonHelp.hs 8;" f getPretty src/AesonHelp.hs 8;" f
getPromptTM src/Dodge/Terminal/Type.hs 3;" f getPromptTM src/Dodge/Terminal/Type.hs 3;" f
getRoomsFromInts src/Dodge/Room/Tutorial.hs 335;" f getRoomsFromInts src/Dodge/Room/Tutorial.hs 341;" f
getRootItemBounds src/Dodge/Render/HUD.hs 100;" f getRootItemBounds src/Dodge/Render/HUD.hs 100;" f
getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f getRootItemInvID src/Dodge/Inventory/Location.hs 35;" f
getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f
@@ -3725,9 +3724,9 @@ insertOneS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 514;" f
insertOver src/ListHelp.hs 47;" f insertOver src/ListHelp.hs 47;" f
insertS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 446;" f insertS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 446;" f
insertStructureWalls src/Dodge/Placement/PlaceSpot/Block.hs 37;" f insertStructureWalls src/Dodge/Placement/PlaceSpot/Block.hs 37;" f
insertWall src/Dodge/Placement/PlaceSpot/Block.hs 121;" f insertWall src/Dodge/Placement/PlaceSpot/Block.hs 120;" f
insertWallInZones src/Dodge/Wall/Zone.hs 20;" f insertWallInZones src/Dodge/Wall/Zone.hs 20;" f
insertWalls src/Dodge/Placement/PlaceSpot/Block.hs 118;" f insertWalls src/Dodge/Placement/PlaceSpot/Block.hs 117;" f
insertWithNewKeys src/IntMapHelp.hs 71;" f insertWithNewKeys src/IntMapHelp.hs 71;" f
intAnno src/Dodge/Floor.hs 111;" f intAnno src/Dodge/Floor.hs 111;" f
interactWithCloseObj src/Dodge/SelectedClose.hs 9;" f interactWithCloseObj src/Dodge/SelectedClose.hs 9;" f
@@ -3890,7 +3889,7 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 36;" f
keyPic src/Dodge/Item/Draw/SPic.hs 459;" f keyPic src/Dodge/Item/Draw/SPic.hs 459;" f
keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f keyholeCorridor src/Dodge/Room/Corridor.hs 39;" f
knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f
lChasm src/Dodge/Room/Tutorial.hs 145;" f lChasm src/Dodge/Room/Tutorial.hs 151;" f
lConnect src/Dodge/Render/Connectors.hs 42;" f lConnect src/Dodge/Render/Connectors.hs 42;" f
lConnectMulti src/Dodge/Render/Connectors.hs 46;" f lConnectMulti src/Dodge/Render/Connectors.hs 46;" f
lShape src/Dodge/Placement/Instance/LightSource.hs 89;" f lShape src/Dodge/Placement/Instance/LightSource.hs 89;" f
@@ -4038,8 +4037,8 @@ makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 111;" f makeColorTermLine src/Dodge/Terminal.hs 111;" f
makeColorTermPara src/Dodge/Terminal.hs 108;" f makeColorTermPara src/Dodge/Terminal.hs 108;" f
makeCorpse src/Dodge/Corpse/Make.hs 13;" f makeCorpse src/Dodge/Corpse/Make.hs 13;" f
makeDebris src/Dodge/Block/Debris.hs 51;" f makeDebris src/Dodge/Block/Debris.hs 49;" f
makeDebrisDirected src/Dodge/Block/Debris.hs 54;" f makeDebrisDirected src/Dodge/Block/Debris.hs 52;" f
makeDoorDebris src/Dodge/Block/Debris.hs 26;" f makeDoorDebris src/Dodge/Block/Debris.hs 26;" f
makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f
makeEnumOption src/Dodge/Menu/OptionType.hs 13;" f makeEnumOption src/Dodge/Menu/OptionType.hs 13;" f
@@ -4140,7 +4139,7 @@ mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 14;" f mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f
midBounds src/Dodge/Room/Foreground.hs 151;" f midBounds src/Dodge/Room/Foreground.hs 151;" f
midChasm src/Dodge/Room/Tutorial.hs 166;" f midChasm src/Dodge/Room/Tutorial.hs 172;" f
midPad src/Padding.hs 27;" f midPad src/Padding.hs 27;" f
midPadL src/Padding.hs 33;" f midPadL src/Padding.hs 33;" f
midPoint src/Geometry.hs 83;" f midPoint src/Geometry.hs 83;" f
@@ -4166,6 +4165,7 @@ mixColorsLinear src/Color.hs 95;" f
mkCustomLenses src/ThirdPartyLens.hs 7;" f mkCustomLenses src/ThirdPartyLens.hs 7;" f
mkGraphFromEdges src/GraphHelp.hs 4;" f mkGraphFromEdges src/GraphHelp.hs 4;" f
mkNode src/Dodge/Graph.hs 29;" f mkNode src/Dodge/Graph.hs 29;" f
mkRectangle src/Dodge/LevelGen/DoorPane.hs 7;" f
mntLS src/Dodge/Placement/Instance/LightSource.hs 136;" f mntLS src/Dodge/Placement/Instance/LightSource.hs 136;" f
mntLSCond src/Dodge/Placement/Instance/LightSource.hs 159;" f mntLSCond src/Dodge/Placement/Instance/LightSource.hs 159;" f
mntLSOn src/Dodge/Placement/Instance/LightSource.hs 66;" f mntLSOn src/Dodge/Placement/Instance/LightSource.hs 66;" f
@@ -4201,16 +4201,16 @@ muout src/Dodge/RoomLink.hs 144;" f
muzFlareAt src/Dodge/HeldUse.hs 678;" f muzFlareAt src/Dodge/HeldUse.hs 678;" f
muzzlePos src/Dodge/HeldUse.hs 769;" f muzzlePos src/Dodge/HeldUse.hs 769;" f
muzzleRandPos src/Dodge/HeldUse.hs 778;" f muzzleRandPos src/Dodge/HeldUse.hs 778;" f
mvButton src/Dodge/Placement/PlaceSpot.hs 190;" f mvButton src/Dodge/Placement/PlaceSpot.hs 188;" f
mvCr src/Dodge/Placement/PlaceSpot.hs 193;" f mvCr src/Dodge/Placement/PlaceSpot.hs 191;" f
mvFS src/Dodge/Placement/PlaceSpot.hs 200;" f mvFS src/Dodge/Placement/PlaceSpot.hs 198;" f
mvGust src/Dodge/Update.hs 784;" f mvGust src/Dodge/Update.hs 784;" f
mvLS src/Dodge/Placement/PlaceSpot.hs 235;" f mvLS src/Dodge/Placement/PlaceSpot.hs 233;" f
mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f mvPointAlongAtSpeed src/Dodge/Base.hs 121;" f
mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f mvPointMeleeTarg src/Dodge/Creature/Boid.hs 327;" f
mvPointToward src/Dodge/Base.hs 136;" f mvPointToward src/Dodge/Base.hs 136;" f
mvPointTowardAtSpeed src/Dodge/Base.hs 105;" f mvPointTowardAtSpeed src/Dodge/Base.hs 105;" f
mvProp src/Dodge/Placement/PlaceSpot.hs 187;" f mvProp src/Dodge/Placement/PlaceSpot.hs 185;" f
myIntersectLineLine src/Geometry/Intersect.hs 198;" f myIntersectLineLine src/Geometry/Intersect.hs 198;" f
myIntersectSegSeg src/Geometry/Intersect.hs 176;" f myIntersectSegSeg src/Geometry/Intersect.hs 176;" f
myParams src/Dodge/Combine/Graph.hs 101;" f myParams src/Dodge/Combine/Graph.hs 101;" f
@@ -4345,24 +4345,22 @@ pistol src/Dodge/Item/Held/Stick.hs 40;" f
pistolerRoom src/Dodge/Room/Room.hs 330;" f pistolerRoom src/Dodge/Room/Room.hs 330;" f
pjRemoteSetDirection src/Dodge/Projectile/Update.hs 172;" f pjRemoteSetDirection src/Dodge/Projectile/Update.hs 172;" f
plBlock src/Dodge/Placement/PlaceSpot/Block.hs 20;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 20;" f
plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 46;" f plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f
plDoor' src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 19;" f plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 53;" f
plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 54;" f plMachine src/Dodge/Placement/PlaceSpot.hs 201;" f
plMachine src/Dodge/Placement/PlaceSpot.hs 203;" f
plNew src/Dodge/Base/NewID.hs 19;" f plNew src/Dodge/Base/NewID.hs 19;" f
plNewID src/Dodge/Base/NewID.hs 7;" f plNewID src/Dodge/Base/NewID.hs 7;" f
plNewUpID src/Dodge/Base/NewID.hs 13;" f plNewUpID src/Dodge/Base/NewID.hs 13;" f
plNewUsing src/Dodge/Base/NewID.hs 27;" f plNewUsing src/Dodge/Base/NewID.hs 27;" f
plRRpt src/Dodge/LevelGen/PlacementHelper.hs 33;" f plRRpt src/Dodge/LevelGen/PlacementHelper.hs 33;" f
plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 84;" f placeChasm src/Dodge/Placement/PlaceSpot.hs 159;" f
placeChasm src/Dodge/Placement/PlaceSpot.hs 161;" f placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 228;" f
placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 230;" f
placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 43;" f placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 43;" f
placeSpot src/Dodge/Placement/PlaceSpot.hs 34;" f placeSpot src/Dodge/Placement/PlaceSpot.hs 34;" f
placeSpotID src/Dodge/Placement/PlaceSpot.hs 105;" f placeSpotID src/Dodge/Placement/PlaceSpot.hs 105;" f
placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 90;" f placeSpotRoomRand src/Dodge/Placement/PlaceSpot.hs 90;" f
placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 68;" f placeSpotUsingLink src/Dodge/Placement/PlaceSpot.hs 68;" f
placeWallPoly src/Dodge/Placement/PlaceSpot.hs 177;" f placeWallPoly src/Dodge/Placement/PlaceSpot.hs 175;" f
plainRegex src/Dodge/DisplayInventory.hs 189;" f plainRegex src/Dodge/DisplayInventory.hs 189;" f
playIfFree src/Sound.hs 137;" f playIfFree src/Sound.hs 137;" f
playPositionalSoundQueue src/Sound.hs 145;" f playPositionalSoundQueue src/Sound.hs 145;" f
@@ -4432,8 +4430,8 @@ pokeWall src/Shader/Poke.hs 78;" f
pokeWallsWindows src/Shader/Poke.hs 50;" f pokeWallsWindows src/Shader/Poke.hs 50;" f
poly3 src/Picture/Base.hs 84;" f poly3 src/Picture/Base.hs 84;" f
poly3Col src/Picture/Base.hs 88;" f poly3Col src/Picture/Base.hs 88;" f
polyChasm src/Dodge/Room/Tutorial.hs 187;" f polyChasm src/Dodge/Room/Tutorial.hs 193;" f
polyChasmC src/Dodge/Room/Tutorial.hs 196;" f polyChasmC src/Dodge/Room/Tutorial.hs 202;" f
polyCirc src/Shape.hs 46;" f polyCirc src/Shape.hs 46;" f
polyCircx src/Shape.hs 51;" f polyCircx src/Shape.hs 51;" f
polyCornerDist src/Geometry/Polygon.hs 61;" f polyCornerDist src/Geometry/Polygon.hs 61;" f
@@ -4514,13 +4512,13 @@ pushOutFromWall src/Dodge/WallCreatureCollisions.hs 101;" f
pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 64;" f pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 64;" f
pushR src/DoubleStack.hs 24;" f pushR src/DoubleStack.hs 24;" f
pushScreen src/Dodge/Menu/PushPop.hs 9;" f pushScreen src/Dodge/Menu/PushPop.hs 9;" f
putAutoDoor src/Dodge/Placement/Instance/Door.hs 87;" f putAutoDoor src/Dodge/Placement/Instance/Door.hs 83;" f
putBlockN src/Dodge/Placement/Instance/Wall.hs 169;" f putBlockN src/Dodge/Placement/Instance/Wall.hs 169;" f
putBlockRect src/Dodge/Placement/Instance/Wall.hs 148;" f putBlockRect src/Dodge/Placement/Instance/Wall.hs 148;" f
putBlockV src/Dodge/Placement/Instance/Wall.hs 156;" f putBlockV src/Dodge/Placement/Instance/Wall.hs 156;" f
putDoor src/Dodge/Room/Airlock.hs 116;" f putDoor src/Dodge/Room/Airlock.hs 113;" f
putDoubleDoor src/Dodge/Placement/Instance/Door.hs 17;" f putDoubleDoor src/Dodge/Placement/Instance/Door.hs 17;" f
putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 28;" f putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 27;" f
putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 65;" f putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 65;" f
putLamp src/Dodge/Placement/Instance/LightSource.hs 222;" f putLamp src/Dodge/Placement/Instance/LightSource.hs 222;" f
putLasTurret src/Dodge/Placement/Instance/Turret.hs 23;" f putLasTurret src/Dodge/Placement/Instance/Turret.hs 23;" f
@@ -4529,7 +4527,7 @@ putLitButOnPosExtTrig src/Dodge/Placement/Instance/Button.hs 103;" f
putLitButOnPosExtTrig' src/Dodge/Placement/Instance/Button.hs 106;" f putLitButOnPosExtTrig' src/Dodge/Placement/Instance/Button.hs 106;" f
putMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 57;" f putMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 57;" f
putShape src/Dodge/Room/Foreground.hs 134;" f putShape src/Dodge/Room/Foreground.hs 134;" f
putSlideDr src/Dodge/Door/PutSlideDoor.hs 11;" f putSlideDr src/Dodge/Door/PutSlideDoor.hs 12;" f
putStrLnAppend src/Dodge/LevelGen.hs 82;" f putStrLnAppend src/Dodge/LevelGen.hs 82;" f
putTerminal src/Dodge/Placement/Instance/Terminal.hs 54;" f putTerminal src/Dodge/Placement/Instance/Terminal.hs 54;" f
putTerminalFull src/Dodge/Placement/Instance/Terminal.hs 22;" f putTerminalFull src/Dodge/Placement/Instance/Terminal.hs 22;" f
@@ -4594,7 +4592,6 @@ rectVV src/Geometry/Polygon.hs 40;" f
rectWH src/Geometry/Polygon.hs 19;" f rectWH src/Geometry/Polygon.hs 19;" f
rectXH src/Geometry/Polygon.hs 34;" f rectXH src/Geometry/Polygon.hs 34;" f
rectXY src/Geometry/Polygon.hs 37;" f rectXY src/Geometry/Polygon.hs 37;" f
rectanglePairs src/Dodge/LevelGen/DoorPane.hs 5;" f
red src/Color.hs 14;" f red src/Color.hs 14;" f
reduceLocDT src/Dodge/DoubleTree.hs 398;" f reduceLocDT src/Dodge/DoubleTree.hs 398;" f
reduceLocLDT src/Dodge/DoubleTree.hs 393;" f reduceLocLDT src/Dodge/DoubleTree.hs 393;" f
@@ -4621,7 +4618,7 @@ removeAimPosture src/Dodge/Creature/YourControl.hs 159;" f
removeAmmoFromMag src/Dodge/HeldUse.hs 907;" f removeAmmoFromMag src/Dodge/HeldUse.hs 907;" f
removeDot src/ShortShow.hs 44;" f removeDot src/ShortShow.hs 44;" f
removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f removeInverseWalls src/Dodge/LevelGen/StaticWalls.hs 25;" f
removeLights src/Dodge/Room/Tutorial.hs 252;" f removeLights src/Dodge/Room/Tutorial.hs 258;" f
removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f
removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f
renderDataResizeUpdate src/Preload/Update.hs 26;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f
@@ -4800,7 +4797,7 @@ sensorReqToString src/Dodge/Machine/Update.hs 197;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f sensorRoom src/Dodge/Room/SensorDoor.hs 26;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 46;" f
sensorSPic src/Dodge/Machine/Draw.hs 81;" f sensorSPic src/Dodge/Machine/Draw.hs 81;" f
sensorTut src/Dodge/Room/Tutorial.hs 361;" f sensorTut src/Dodge/Room/Tutorial.hs 367;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 234;" f sensorTypeDamages src/Dodge/Machine/Update.hs 234;" f
sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f sentinelAI src/Dodge/Creature/SentinelAI.hs 20;" f
sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 81;" f sentinelExtraWatchUpdate src/Dodge/Creature/SentinelAI.hs 81;" f
@@ -4827,7 +4824,7 @@ setOutLinks src/Dodge/RoomLink.hs 50;" f
setOutLinksByType src/Dodge/RoomLink.hs 75;" f setOutLinksByType src/Dodge/RoomLink.hs 75;" f
setOutLinksPD src/Dodge/RoomLink.hs 95;" f setOutLinksPD src/Dodge/RoomLink.hs 95;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f setRBCreatureTargeting src/Dodge/Creature/State.hs 290;" f
setRoomInt src/Dodge/Room/Tutorial.hs 88;" f setRoomInt src/Dodge/Room/Tutorial.hs 94;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f setSelWhileDragging src/Dodge/Update/Input/InGame.hs 337;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f setShaderSource src/Shader/Compile.hs 290;" f
@@ -4837,7 +4834,7 @@ setTargetMv src/Dodge/Creature/ReaderUpdate.hs 82;" f
setTile src/Dodge/Layout.hs 70;" f setTile src/Dodge/Layout.hs 70;" f
setTiles src/Dodge/Layout.hs 67;" f setTiles src/Dodge/Layout.hs 67;" f
setToggle src/Dodge/Prop/Update.hs 44;" f setToggle src/Dodge/Prop/Update.hs 44;" f
setTreeInts src/Dodge/Room/Tutorial.hs 95;" f setTreeInts src/Dodge/Room/Tutorial.hs 101;" f
setViewDistance src/Dodge/Update/Camera.hs 236;" f setViewDistance src/Dodge/Update/Camera.hs 236;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f
setViewport src/Dodge/Render.hs 440;" f setViewport src/Dodge/Render.hs 440;" f
@@ -4948,8 +4945,8 @@ slap1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 670;" f
slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 604;" f slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 604;" f
slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 688;" f slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 688;" f
slideWindow src/ListHelp.hs 80;" f slideWindow src/ListHelp.hs 80;" f
slowDoorRoom src/Dodge/Room/LongDoor.hs 158;" f slowDoorRoom src/Dodge/Room/LongDoor.hs 156;" f
slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 175;" f slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 173;" f
smallBattery src/Dodge/Item/Ammo.hs 60;" f smallBattery src/Dodge/Item/Ammo.hs 60;" f
smallBranch src/Dodge/Tree/GenerateStructure.hs 32;" f smallBranch src/Dodge/Tree/GenerateStructure.hs 32;" f
smallChaseCrit src/Dodge/Creature/ChaseCrit.hs 14;" f smallChaseCrit src/Dodge/Creature/ChaseCrit.hs 14;" f
@@ -5270,12 +5267,12 @@ turnTo src/Dodge/Movement/Turn.hs 8;" f
turret src/Dodge/Placement/Instance/Turret.hs 35;" f turret src/Dodge/Placement/Instance/Turret.hs 35;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 43;" f tutAnoTree src/Dodge/Room/Tutorial.hs 43;" f
tutDrop src/Dodge/Room/Tutorial.hs 100;" f tutDrop src/Dodge/Room/Tutorial.hs 106;" f
tutHub src/Dodge/Room/Tutorial.hs 259;" f tutHub src/Dodge/Room/Tutorial.hs 265;" f
tutLight src/Dodge/Room/Tutorial.hs 224;" f tutLight src/Dodge/Room/Tutorial.hs 230;" f
tutRezBox src/Dodge/Room/Tutorial.hs 372;" f tutRezBox src/Dodge/Room/Tutorial.hs 378;" f
tutRoomTree src/Dodge/Floor.hs 21;" f tutRoomTree src/Dodge/Floor.hs 21;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 396;" f tutorialMessage1 src/Dodge/Room/Tutorial.hs 402;" f
tweenAngles src/Geometry/Vector.hs 190;" f tweenAngles src/Geometry/Vector.hs 190;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 84;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 84;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 31;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 31;" f
@@ -5573,6 +5570,7 @@ writeSaveSlot src/Dodge/Save.hs 36;" f
xCylinder src/Shape.hs 137;" f xCylinder src/Shape.hs 137;" f
xCylinderST src/Shape.hs 134;" f xCylinderST src/Shape.hs 134;" f
xIntercepts src/Dodge/Zoning/Base.hs 66;" f xIntercepts src/Dodge/Zoning/Base.hs 66;" f
xSwitch src/Dodge/Room/Airlock.hs 32;" f
xV2 src/Geometry/Vector.hs 201;" f xV2 src/Geometry/Vector.hs 201;" f
xyV3 src/Geometry/Vector.hs 213;" f xyV3 src/Geometry/Vector.hs 213;" f
xyzV4 src/Geometry/Vector.hs 209;" f xyzV4 src/Geometry/Vector.hs 209;" f
@@ -5589,7 +5587,7 @@ yourInv src/Dodge/Base/You.hs 28;" f
yourRootItem src/Dodge/Base/You.hs 22;" f yourRootItem src/Dodge/Base/You.hs 22;" f
yourSelectedItem src/Dodge/Base/You.hs 16;" f yourSelectedItem src/Dodge/Base/You.hs 16;" f
yourStatsInfo src/Dodge/Creature/Info.hs 27;" f yourStatsInfo src/Dodge/Creature/Info.hs 27;" f
zChasm src/Dodge/Room/Tutorial.hs 154;" f zChasm src/Dodge/Room/Tutorial.hs 160;" f
zConnect src/Dodge/Render/Connectors.hs 17;" f zConnect src/Dodge/Render/Connectors.hs 17;" f
zConnectCol src/Dodge/Render/Connectors.hs 28;" f zConnectCol src/Dodge/Render/Connectors.hs 28;" f
zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f