Single source of truth for wall pathing

This commit is contained in:
2025-10-24 14:25:19 +01:00
parent 0eeae7e6bc
commit 488428b1ef
19 changed files with 156 additions and 121 deletions
+38 -37
View File
@@ -2456,7 +2456,6 @@ _wlID src/Dodge/Data/Wall.hs 20;" f
_wlLine src/Dodge/Data/Wall.hs 19;" f
_wlMaterial src/Dodge/Data/Wall.hs 28;" f
_wlOpacity src/Dodge/Data/Wall.hs 21;" f
_wlPathFlag src/Dodge/Data/Wall.hs 22;" f
_wlRotateTo src/Dodge/Data/Wall.hs 25;" f
_wlStCreature src/Dodge/Data/Wall/Structure.hs 15;" f
_wlStructure src/Dodge/Data/Wall.hs 26;" f
@@ -2467,6 +2466,7 @@ _worldEventFlags src/Dodge/Data/World.hs 45;" f
_worldEvents src/Dodge/Data/LWorld.hs 127;" f
_wsBlock src/Dodge/Data/Wall/Structure.hs 14;" f
_wsDoor src/Dodge/Data/Wall/Structure.hs 12;" f
_wsIsAutoDoor src/Dodge/Data/Wall/Structure.hs 12;" f
_wsMachine src/Dodge/Data/Wall/Structure.hs 13;" f
_xNum src/Dodge/Data/Item/Combine.hs 139;" f
_xNum src/Dodge/Data/Item/Combine.hs 149;" f
@@ -2482,12 +2482,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 99;" f
addButtonSlowDoor src/Dodge/Room/LongDoor.hs 100;" 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 50;" f
addDoorWall src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 54;" 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 +2510,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 91;" f
addSouthPillars src/Dodge/Room/LongDoor.hs 92;" f
addTermSignal src/Dodge/Event/Input.hs 31;" f
addToTrunk src/TreeHelp.hs 157;" f
addWarningTerminal src/Dodge/Room/Warning.hs 61;" f
@@ -2744,7 +2744,7 @@ cdtPropagateFold src/Dodge/DoubleTree.hs 407;" f
cenLasTur src/Dodge/Room/LasTurret.hs 25;" f
centerText src/Picture/Base.hs 184;" f
centerVaultExplosiveExit src/Dodge/Room/NoNeedWeapon.hs 20;" f
centerVaultRoom src/Dodge/Room/Procedural.hs 291;" f
centerVaultRoom src/Dodge/Room/Procedural.hs 292;" f
centroid src/Geometry/Polygon.hs 168;" f
centroidNum src/Geometry/Polygon.hs 171;" f
chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f
@@ -2800,7 +2800,7 @@ clAlt src/Dodge/Cloud.hs 5;" f
clClSpringVel src/Dodge/Update.hs 841;" f
clColor src/Shader/Poke/Cloud.hs 35;" f
clZoneSize src/Dodge/Zoning/Cloud.hs 21;" f
clampPath src/Dodge/Room/Procedural.hs 168;" f
clampPath src/Dodge/Room/Procedural.hs 169;" f
clang1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 560;" f
clang2S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 676;" f
clangS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 542;" f
@@ -2857,11 +2857,11 @@ combinationsGraph src/Dodge/Combine/Graph.hs 72;" f
combinationsOf src/Multiset.hs 46;" f
combinationsTrie src/Dodge/Combine.hs 43;" f
combineAwareness src/Dodge/Creature/Perception.hs 109;" f
combineFloors src/Dodge/Room/Procedural.hs 174;" f
combineFloors src/Dodge/Room/Procedural.hs 175;" f
combineInventoryExtra src/Dodge/Render/HUD.hs 337;" f
combineItemListYouX src/Dodge/Combine.hs 35;" f
combineList src/Dodge/Combine.hs 21;" f
combineRooms src/Dodge/Room/Procedural.hs 154;" f
combineRooms src/Dodge/Room/Procedural.hs 155;" f
combineS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 480;" f
combineTree src/Dodge/Tree/Compose.hs 67;" f
commandColor src/Dodge/Terminal.hs 114;" f
@@ -3063,7 +3063,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/Wall.hs 43;" f
defaultAutoWall src/Dodge/Default/Wall.hs 40;" 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
@@ -3077,11 +3077,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 51;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 47;" f
defaultDirtBlock src/Dodge/Default/Block.hs 17;" f
defaultDirtWall src/Dodge/Default/Wall.hs 64;" f
defaultDoor src/Dodge/Default/Door.hs 7;" f
defaultDoorWall src/Dodge/Default/Wall.hs 37;" f
defaultDoor src/Dodge/Default/Door.hs 5;" f
defaultDoorWall src/Dodge/Default/Wall.hs 33;" f
defaultDrawButton src/Dodge/Button/Draw.hs 29;" f
defaultEquipment src/Dodge/Default.hs 24;" f
defaultFlIt src/Dodge/Default.hs 27;" f
@@ -3095,7 +3095,7 @@ 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 54;" f
defaultMachineWall src/Dodge/Default/Wall.hs 52;" f
defaultPerceptionState src/Dodge/Default/Creature.hs 75;" f
defaultProp src/Dodge/Default/Prop.hs 6;" f
defaultProximitySensor src/Dodge/Default.hs 54;" f
@@ -3150,7 +3150,7 @@ dist src/Geometry/Vector.hs 185;" f
dist3 src/Geometry/Vector3D.hs 101;" f
divTo src/Geometry/Zone.hs 6;" f
divideCircle src/Geometry.hs 321;" f
divideDoorPane src/Dodge/Placement/Instance/Door.hs 63;" f
divideDoorPane src/Dodge/Placement/Instance/Door.hs 71;" f
divideLine src/Geometry.hs 248;" f
divideLineExact src/Geometry.hs 276;" f
divideLineOddNumPoints src/Geometry.hs 261;" f
@@ -3223,7 +3223,7 @@ doWdWd src/Dodge/WorldEffect.hs 28;" f
doWorldEvents src/Dodge/Update.hs 428;" f
doWorldPos src/Dodge/WorldPos.hs 10;" f
door src/Dodge/Room/Door.hs 13;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 43;" f
doorBetween src/Dodge/Placement/Instance/Door.hs 50;" f
doorLerp src/Dodge/DrWdWd.hs 26;" f
dotV src/Geometry/Vector.hs 76;" f
dotV3 src/Geometry/Vector3D.hs 119;" f
@@ -3596,6 +3596,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
getWallPathing src/Dodge/Wall/Pathing.hs 7;" f
getWallSPic src/Dodge/Render/Walls.hs 53;" f
getWindowSize src/Dodge/WindowSize.hs 5;" f
gimbal src/Dodge/Item/Scope.hs 153;" f
@@ -3971,7 +3972,7 @@ listGuard src/Dodge/Creature/ReaderUpdate.hs 195;" f
listSelectionColorPicture src/Dodge/DisplayInventory.hs 302;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
lmt src/MatrixHelper.hs 43;" f
lnkBothAnd src/Dodge/Room/Procedural.hs 124;" f
lnkBothAnd src/Dodge/Room/Procedural.hs 125;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 387;" f
loadDodgeConfig src/Dodge/Config.hs 30;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f
@@ -4014,7 +4015,7 @@ lookupTrie src/SimpleTrie.hs 30;" f
loopPairs src/ListHelp.hs 30;" f
lootRoom src/Dodge/Room/Treasure.hs 58;" f
lorem src/Lorem.hs 3;" f
lowBlock src/Dodge/Placement/Instance/Block.hs 24;" f
lowBlock src/Dodge/Placement/Instance/Block.hs 26;" f
lsColPos src/Dodge/LightSource.hs 23;" f
lsColPosID src/Dodge/LightSource.hs 20;" f
lsColPosRad src/Dodge/LightSource.hs 29;" f
@@ -4356,7 +4357,7 @@ 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 19;" f
plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 20;" f
plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 49;" f
plMachine src/Dodge/Placement/PlaceSpot.hs 206;" f
plNew src/Dodge/Base/NewID.hs 19;" f
@@ -4364,7 +4365,7 @@ 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 76;" f
plSlideDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 87;" f
placeChasm src/Dodge/Placement/PlaceSpot.hs 161;" f
placeMachineWalls src/Dodge/Placement/PlaceSpot.hs 234;" f
placePlainPSSpot src/Dodge/Placement/PlaceSpot.hs 43;" f
@@ -4524,12 +4525,12 @@ 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 82;" f
putAutoDoor src/Dodge/Placement/Instance/Door.hs 91;" f
putBlockN src/Dodge/Placement/Instance/Wall.hs 166;" f
putBlockRect src/Dodge/Placement/Instance/Wall.hs 145;" f
putBlockV src/Dodge/Placement/Instance/Wall.hs 153;" f
putDoubleDoor src/Dodge/Placement/Instance/Door.hs 20;" f
putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 25;" f
putDoubleDoor src/Dodge/Placement/Instance/Door.hs 19;" f
putDoubleDoorThen src/Dodge/Placement/Instance/Door.hs 31;" f
putImmediateMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 65;" f
putLamp src/Dodge/Placement/Instance/LightSource.hs 222;" f
putLasTurret src/Dodge/Placement/Instance/Turret.hs 23;" f
@@ -4549,8 +4550,8 @@ qID src/Quaternion.hs 58;" f
qToAng src/Quaternion.hs 55;" f
qToV2 src/Quaternion.hs 52;" f
qToV3 src/Quaternion.hs 49;" f
quarterRoomSquare src/Dodge/Room/Procedural.hs 215;" f
quarterRoomTri src/Dodge/Room/Procedural.hs 179;" f
quarterRoomSquare src/Dodge/Room/Procedural.hs 216;" f
quarterRoomTri src/Dodge/Room/Procedural.hs 180;" f
quitCommand src/Dodge/Terminal.hs 93;" f
qz src/Quaternion.hs 67;" f
rLauncher src/Dodge/Item/Held/Launcher.hs 14;" f
@@ -4582,8 +4583,8 @@ randSparkExtraVel src/Dodge/Spark.hs 92;" f
randWallReflect src/Dodge/Update.hs 643;" f
randomChallenges src/Dodge/Room/Start.hs 63;" f
randomCompass src/Dodge/Layout.hs 60;" f
randomFourCornerRoom src/Dodge/Room/Procedural.hs 268;" f
randomFourCornerRoomCrsIts src/Dodge/Room/Procedural.hs 280;" f
randomFourCornerRoom src/Dodge/Room/Procedural.hs 269;" f
randomFourCornerRoomCrsIts src/Dodge/Room/Procedural.hs 281;" f
randomLightPositions src/Dodge/Room/Modify/Girder.hs 152;" f
randomMediumRoom src/Dodge/Room/Boss.hs 76;" f
randomPath src/TreeHelp.hs 145;" f
@@ -4696,8 +4697,8 @@ roomPillars src/Dodge/Room/Pillar.hs 106;" f
roomPillarsContaining src/Dodge/Room/Containing.hs 39;" f
roomPillarsPassage src/Dodge/Room/Pillar.hs 93;" f
roomPillarsSquare src/Dodge/Room/Pillar.hs 49;" f
roomRect src/Dodge/Room/Procedural.hs 38;" f
roomRectAutoLinks src/Dodge/Room/Procedural.hs 141;" f
roomRect src/Dodge/Room/Procedural.hs 39;" f
roomRectAutoLinks src/Dodge/Room/Procedural.hs 142;" f
roomShuriken src/Dodge/Room/Boss.hs 123;" f
roomTwistCross src/Dodge/Room/Boss.hs 154;" f
roomsContaining src/Dodge/Room/Containing.hs 20;" f
@@ -4956,8 +4957,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 157;" f
slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 174;" f
slowDoorRoom src/Dodge/Room/LongDoor.hs 158;" f
slowDoorRoomRunPast src/Dodge/Room/LongDoor.hs 175;" 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
@@ -4992,7 +4993,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 88;" f
southPillarsRoom src/Dodge/Room/LongDoor.hs 89;" 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
@@ -5085,7 +5086,7 @@ swapInvItems src/Dodge/Inventory/Swap.hs 22;" f
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 108;" f
switchDoor src/Dodge/Placement/Instance/Door.hs 120;" f
switchWallObs src/Dodge/Data/PathGraph.hs 54;" f
t src/ShortShow.hs 48;" f
tEast src/Dodge/Room/Corridor.hs 90;" f
@@ -5287,8 +5288,8 @@ tutRezBox src/Dodge/Room/Tutorial.hs 369;" f
tutRoomTree src/Dodge/Floor.hs 21;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 393;" f
tweenAngles src/Geometry/Vector.hs 190;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 82;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 29;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 83;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 30;" f
twists src/Dodge/Creature/Test.hs 102;" f
twoFlat src/Dodge/Creature/Test.hs 99;" f
twoFlatHRot src/Dodge/Item/HeldOffset.hs 80;" f
@@ -5345,8 +5346,8 @@ updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f
updateDistortion src/Dodge/Distortion.hs 5;" f
updateDistortions src/Dodge/Update.hs 558;" f
updateDoor src/Dodge/DrWdWd.hs 20;" f
updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 68;" f
updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 65;" f
updateDoorEdge src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 78;" f
updateDoorEdges src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 75;" f
updateDoors src/Dodge/Update.hs 310;" f
updateDust src/Dodge/Update.hs 822;" f
updateDusts src/Dodge/Update.hs 672;" f
@@ -5608,7 +5609,7 @@ zConnectColMidX src/Dodge/Render/Connectors.hs 31;" f
zeroZ src/Geometry/Vector.hs 9;" f
zipArcs src/Dodge/Tesla.hs 52;" f
zipCount src/Dodge/Tree/Shift.hs 136;" f
zipCountDown src/Dodge/Room/Procedural.hs 121;" f
zipCountDown src/Dodge/Room/Procedural.hs 122;" f
zoneCloud src/Dodge/Zoning/Cloud.hs 27;" f
zoneClouds src/Dodge/Update.hs 476;" f
zoneCreature src/Dodge/Zoning/Creature.hs 55;" f