Sometimes crush creatures when doors close on them

This commit is contained in:
2026-03-26 12:39:54 +00:00
parent e01029d06d
commit 7999373b69
7 changed files with 249 additions and 156 deletions
+2
View File
@@ -30,6 +30,7 @@ import Dodge.Data.Creature.State
import Dodge.Data.Item
import Dodge.Data.Material
import Geometry.Data
import qualified Data.IntMap.Strict as IM
--import qualified IntMapHelp as IM
data Creature = Creature
@@ -57,6 +58,7 @@ data Creature = Creature
, _crIntention :: Intention
, _crName :: String
, _crDeathTimer :: Int
, _crCrushTimers :: IM.IntMap Int
}
data CrHP
+39 -1
View File
@@ -42,6 +42,45 @@ overDebugEvent u = fromMaybe u $ do
debugEvent :: DebugBool -> Universe -> Universe
debugEvent db u = u & uvDebug . at db .~ debugItem db u
& debugEvent' db
-- possibly don't want this running when the game is paused/not running normally
-- note this happens before functionalUpdate
debugEvent' :: DebugBool -> Universe -> Universe
debugEvent' = \case
Collision_test -> id
Circ_collision_test -> id
Show_walls_near_point_cursor -> id
Show_walls_near_segment -> id
Display_debug -> id
Noclip -> id
Remove_LOS -> id
Cull_more_lights -> id
Close_shape_culling -> id
Bound_box_screen -> id
Show_ms_frame -> id
View_gr_boundaries -> id
View_rm_boundaries -> id
Show_bound_box -> id
Show_wall_search_rays -> id
Show_dda_test -> id
Show_far_wall_detect -> id
Show_walls_near_you -> id
Show_zone_near_point_cursor -> id
Show_zone_circ -> id
Inspect_wall -> id
Cr_awareness -> id
Show_sound -> id
Cr_status -> id
Mouse_position -> id
Walls_info -> id
Pathing -> id
Show_path_between -> id
Show_writable_values -> id
Show_mouse_click_pos -> id
Debug_get -> id
Debug_put -> id
Muzzle_positions -> id
debugItem :: DebugBool -> Universe -> Maybe [DebugItem]
debugItem = \case
@@ -109,7 +148,6 @@ doDebugGet u =
where
f s = DebugItem s (setClip s)
debugShowPath :: Universe -> DebugItem
debugShowPath u =
DebugItem (u ^. uvDebugPathShowType . to show) f
+1
View File
@@ -55,6 +55,7 @@ defaultCreature =
-- , _crStatistics = CreatureStatistics 50 50 50
, _crDeathTimer = 5 -- how long a creature remains standing
-- after a killing blow has been dealt
, _crCrushTimers = mempty
}
--defaultCreatureSkin :: CreatureType
+1 -3
View File
@@ -1,6 +1,4 @@
module Dodge.Render.Lights (
lightsToRender,
) where
module Dodge.Render.Lights (lightsToRender) where
import Data.List (sortOn)
import Data.Maybe
+6 -1
View File
@@ -33,7 +33,12 @@ import Data.Monoid
import RandomHelp
testStringInit :: Universe -> [String]
testStringInit u = [show $ u ^? uvWorld . input . mouseContext . mcoRotateDist]
--testStringInit u = [show $ u ^? uvWorld . input . mouseContext . mcoRotateDist]
testStringInit u = fmap show (u ^.. uvWorld . cWorld . lWorld . creatures . each . crHP . _HP)
<> fmap show (u ^.. uvWorld . cWorld . lWorld . creatures . each . crPos . _xy)
<> fmap show (u ^.. uvWorld . cWorld . lWorld . creatures . each . crOldPos . _xy)
<> fmap show (u ^.. uvWorld . cWorld . lWorld . creatures . each . crCrushTimers)
<> fmap show (u ^.. uvWorld . cWorld . lWorld . debris . each . dbPos)
-- (fmap show $ u ^.. uvWorld . cWorld . lWorld . machines . each . mcType . _McDamSensor . sensAmount)
-- <> (fmap show $ u ^.. uvWorld . cWorld . lWorld . machines . each . mcMaterial)
--testStringInit u = map show (u ^.. uvWorld . cWorld . lWorld . machines . traverse . mcDir)
+62 -18
View File
@@ -6,6 +6,7 @@ module Dodge.WallCreatureCollisions (
crOnWall,
) where
import Data.Foldable
import Linear
import Dodge.Creature.Radius
import Control.Lens
@@ -25,30 +26,64 @@ noclipCheck cfig w c
| otherwise = colCrWall w c
colCrWall :: World -> Creature -> Creature
colCrWall w c
colCrWall w c -- = cornpush . wallpush $ pushthrough c
| p1 == p2 = pushOrCrush ls c
-- | _crPos c' == _crPos c'' = c'
-- | otherwise = c & crPos .~ _crOldPos c
| otherwise = c'
| otherwise = cornpush . wallpush $ pushthrough c
-- | otherwise = wallpush $ pushthrough c
-- | otherwise = c'
where
-- c'' = c' & crPos %~ pushOutFromWalls rad ls
--c' = c & crPos %~ pushOutFromWalls' rad (reverse ls)
c' =
c & crPos . _xy
%~ pushOutFromCorners r ls'
. pushOutFromWalls r ls'
. fst
. flip (collidePoint p1) wls -- check push throughs
-- . flip (collidePointWalls' p1) wls -- check push throughs
cornpush = crPos . _xy %~ pushOutFromCorners r ls'
--wallpush = crPos . _xy %~ pushOutFromWalls r ls'
wallpush = pushCr' wls
pushthrough = crPos . _xy %~ fst . flip (collidePoint p1) wls -- check push throughs
-- c' = c & crPos . _xy
-- %~ pushOutFromCorners r ls'
-- . pushOutFromWalls r ls'
-- . fst
-- . flip (collidePoint p1) wls -- check push throughs
r = crRad (c ^. crType) + wallBuffer
p1 = c ^. crOldPos . _xy
p2 = c ^. crPos . _xy
ls = _wlLine <$> wls
ls' = filter (uncurry $ isLHS p1) ls
--wls = filter notff $ wlsNearRect (p2 + V2 r r) (p2 - V2 r r) w
wls = filter notff $ wlsNearCirc p2 r w
notff x = x ^. wlMaterial /= ForceField
pushCr' :: [Wall] -> Creature -> Creature
pushCr' wls cr
| dist ep sp > r
&& dist ep ap > r = ecr & crDamage <>~ [Crushing 1000 10]
& crPos . _xy +~ r *^ ep - ap
| otherwise = ecr
where
ep = ecr ^. crPos . _xy
ap = cr ^. crOldPos . _xy
sp = cr ^. crPos . _xy
ecr = foldl' f (cr & crCrushTimers .~ mempty) wls
r = crRad (cr ^. crType)
f acr wl = case pushOutFromWall r (acr ^. crPos . _xy) (wl ^. wlLine) of
Just p -> acr & crPos . _xy .~ p & crCrushTimers . at (_wlID wl) ?~ 0
Nothing -> acr
--apushCr :: [Wall] -> Creature -> Creature
--apushCr wls cr = case wallPushList r wls cp of
--a [] -> cr
--a [(p,wl)] -> cr & crPos . _xy .~ p
--a-- [(p1,w1),(p2,w2)] | dd p1 p2 >= 0 ->
--a [(p1,w1),(p2,w2)] ->
--a let v1 = p1 - cp
--a v2 = p2 - cp
--a mp = intersectLineLine p1 (p1 + vNormal v1) p2 (p2 + vNormal v2)
--a --p = fromMaybe (cr ^. crOldPos . _xy) mp
--a p = (cr ^. crOldPos . _xy)
--a in cr & crPos . _xy .~ p
--a-- [(p1,w1),(p2,w2)] -> cr & crPos . _xy .~ p1
--a xs -> cr
--a where
--a dd p1 p2 = dotV (p1 - cp) (p2 - cp)
--a r = crRad (cr ^. crType)
--a cp = cr ^. crPos . _xy
-- the amount to push creatures out from walls, extra to their radius
wallBuffer :: Float
wallBuffer = 0
@@ -65,6 +100,14 @@ pushOutFromWalls rad wls p1 = case (getFirst . foldMap (First . pushOutFromWall
Nothing -> p1
Just p2 -> pushOutFromWalls rad (tail wls) p2
--wallPushList :: Float -> [Wall] -> Point2 -> [(Point2, Wall)]
--wallPushList rad wls p1 = mapMaybe f wls
-- where
-- f :: Wall -> Maybe (Point2,Wall)
-- f wl = case pushOutFromWall rad p1 (wl ^. wlLine) of
-- Nothing -> Nothing
-- Just p -> Just (p,wl)
-- possible improvement: choose between the closer of p2 and "p3" to p1
--pushOutFromWalls' :: Float -> [(Point2,Point2)] -> Point2 -> Point2
@@ -76,6 +119,7 @@ pushOutFromWalls rad wls p1 = case (getFirst . foldMap (First . pushOutFromWall
pushOrCrush :: [(Point2, Point2)] -> Creature -> Creature
pushOrCrush wls cr = case mapMaybe (pushOutFromWall (crRad (cr ^. crType)) cpos) wls of
[] -> cr
--(p : _) -> cr & crPos . _xy .~ p & crDamage <>~ [Crushing 1000 0]
(p : _) -> cr & crPos . _xy .~ p
where
-- (_:p:_) -> cr
@@ -102,9 +146,9 @@ pushOutFromWall rad cp2 (wp1, wp2)
| isOnWall = Just newP
| otherwise = Nothing
where
n = errorNormalizeV 61 $ vNormal (wp1 -.- wp2)
wp1' = wp1 +.+ rad *.* n
wp2' = wp2 +.+ rad *.* n
n = errorNormalizeV 61 $ vNormal (wp1 - wp2)
wp1' = wp1 + rad *^ n
wp2' = wp2 + rad *^ n
newP = errorClosestPointOnLine 5 wp1' wp2' cp2
isOnWall = circOnSegNoEndpoints wp1 wp2 cp2 rad
@@ -115,4 +159,4 @@ pushOutFromCorners r = flip $ foldr (squashIntersectCirclePoint r . fst)
squashIntersectCirclePoint :: Float -> Point2 -> Point2 -> Point2
squashIntersectCirclePoint rad p cCen
| dist cCen p > rad = cCen
| otherwise = p +.+ (rad *.* squashNormalizeV (cCen -.- p))
| otherwise = p + (rad *^ squashNormalizeV (cCen - p))
+138 -133
View File
@@ -15,7 +15,7 @@
<$> src/Dodge/Data/ActionPlan.hs 156;" o
<$> src/Dodge/Data/CWorld.hs 52;" o
<$> src/Dodge/Data/Camera.hs 38;" o
<$> src/Dodge/Data/Creature.hs 91;" o
<$> src/Dodge/Data/Creature.hs 93;" o
<$> src/Dodge/Data/LWorld.hs 179;" o
<$> src/Dodge/Data/Terminal.hs 69;" o
ABSOLUTE src/Dodge/Data/Item/Combine.hs 39;" C
@@ -45,7 +45,7 @@ AimStance src/Dodge/Data/AimStance.hs 10;" t
Aiming src/Dodge/Data/Creature/Stance.hs 33;" C
AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C
AlienContact src/Dodge/Data/Scenario.hs 30;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 124;" C
AlteRifleSwitch src/Dodge/Data/Item/Params.hs 18;" C
Ambush src/Dodge/Data/ActionPlan.hs 130;" C
AmmoEffectSF src/Dodge/Data/ComposedItem.hs 33;" C
@@ -138,7 +138,7 @@ Boosting src/Dodge/Data/Creature/Stance.hs 26;" C
BottomMenuOption src/Dodge/Data/Universe.hs 77;" C
BounceBullet src/Dodge/Data/Bullet.hs 28;" C
BoundCurs src/Dodge/Data/SelectionList.hs 21;" C
Bound_box_screen src/Dodge/Data/Config.hs 95;" C
Bound_box_screen src/Dodge/Data/Config.hs 96;" C
Bounds src/Dodge/Data/Bounds.hs 10;" t
BrigSS src/Dodge/Data/Scenario.hs 102;" C
Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C
@@ -207,16 +207,16 @@ ChasmObstacle src/Dodge/Data/PathGraph.hs 51;" C
ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C
ChooseMovementLtAuto src/Dodge/Data/CreatureEffect.hs 30;" C
ChooseMovementSpreadGun src/Dodge/Data/CreatureEffect.hs 29;" C
Circ_collision_test src/Dodge/Data/Config.hs 99;" C
Circ_collision_test src/Dodge/Data/Config.hs 100;" C
Climate src/Dodge/Data/Scenario.hs 32;" C
CloseToMelee src/Dodge/Data/ActionPlan.hs 139;" C
Close_shape_culling src/Dodge/Data/Config.hs 93;" C
Close_shape_culling src/Dodge/Data/Config.hs 94;" C
Cloud src/Dodge/Data/Cloud.hs 12;" t
CloudType src/Dodge/Data/Cloud.hs 20;" t
ClusterLink src/Dodge/Data/RoomCluster.hs 13;" t
ClusterStatus src/Dodge/Data/RoomCluster.hs 9;" t
Cognizant src/Dodge/Data/Creature/Perception.hs 65;" C
Collision_test src/Dodge/Data/Config.hs 98;" C
Collision_test src/Dodge/Data/Config.hs 99;" C
Color src/Color/Data.hs 30;" t
Color8 src/Color/Data.hs 32;" t
ColorFaction src/Dodge/Data/Creature/State.hs 19;" C
@@ -236,7 +236,7 @@ ContextDT src/Dodge/Data/DoubleTree.hs 25;" t
ContinentalGovernment src/Dodge/Data/Scenario.hs 51;" C
ControlDeckSS src/Dodge/Data/Scenario.hs 89;" C
ConvexPoly src/Geometry/ConvexPoly.hs 25;" t
CookDeath src/Dodge/Data/Creature.hs 68;" C
CookDeath src/Dodge/Data/Creature.hs 70;" C
CookingDamage src/Dodge/Data/Damage/Type.hs 5;" C
Corporation src/Dodge/Data/Scenario.hs 46;" C
Cosmic src/Dodge/Data/Scenario.hs 74;" C
@@ -249,16 +249,16 @@ CrGroup src/Dodge/Data/Creature/State.hs 23;" t
CrGroupID src/Dodge/Data/Creature/State.hs 29;" C
CrGroupParams src/Dodge/Data/CrGroupParams.hs 12;" t
CrGroupUpdate src/Dodge/Data/CrGroupParams.hs 20;" t
CrHP src/Dodge/Data/Creature.hs 62;" t
CrHP src/Dodge/Data/Creature.hs 64;" t
CrHitSound src/Dodge/Data/SoundOrigin.hs 32;" C
CrID src/Dodge/Data/CrWlID.hs 10;" C
CrImp src/Dodge/Data/CreatureEffect.hs 9;" t
CrInt src/Dodge/Data/Item/Location.hs 22;" t
CrIsAiming src/Dodge/Data/CreatureEffect.hs 20;" C
CrIsAnimate src/Dodge/Data/CreatureEffect.hs 20;" C
CrIsCorpse src/Dodge/Data/Creature.hs 64;" C
CrIsGibs src/Dodge/Data/Creature.hs 65;" C
CrIsPitted src/Dodge/Data/Creature.hs 66;" C
CrIsCorpse src/Dodge/Data/Creature.hs 66;" C
CrIsGibs src/Dodge/Data/Creature.hs 67;" C
CrIsPitted src/Dodge/Data/Creature.hs 68;" C
CrMouth src/Dodge/Data/SoundOrigin.hs 16;" C
CrMvType src/Dodge/Data/Creature/Misc.hs 26;" t
CrMvType src/Dodge/Data/Creature/Misc.hs 29;" C
@@ -275,7 +275,7 @@ Cr_status src/Dodge/Data/Config.hs 84;" C
CraftType src/Dodge/Data/Item/Combine.hs 49;" t
CreateFlame src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C
CreatePoisonGas src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C
Creature src/Dodge/Data/Creature.hs 35;" t
Creature src/Dodge/Data/Creature.hs 36;" t
CreaturePart src/Dodge/Data/Wall/Structure.hs 15;" C
CreatureShape src/Dodge/Data/Creature/Misc.hs 74;" t
CreatureType src/Dodge/Data/Creature/Misc.hs 58;" t
@@ -283,7 +283,7 @@ 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 16;" C
Cull_more_lights src/Dodge/Data/Config.hs 92;" C
Cull_more_lights src/Dodge/Data/Config.hs 93;" C
CursorDisplay src/Dodge/Data/SelectionList.hs 20;" t
Cylinder src/Shape/Data.hs 14;" C
DETECTOR src/Dodge/Data/Item/Combine.hs 33;" C
@@ -304,7 +304,7 @@ DamageHitSound src/Dodge/Data/SoundOrigin.hs 41;" C
DamageLaser src/Dodge/Data/Laser.hs 15;" C
DamageSensor src/Dodge/Data/Machine/Sensor.hs 19;" t
DamageType src/Dodge/Data/Damage/Type.hs 3;" t
DeathType src/Dodge/Data/Creature.hs 68;" t
DeathType src/Dodge/Data/Creature.hs 70;" t
Debris src/Dodge/Data/Prop.hs 25;" t
DebrisChunk src/Dodge/Data/Prop.hs 25;" C
DebrisType src/Dodge/Data/Prop.hs 21;" t
@@ -348,7 +348,7 @@ DoorLerp src/Dodge/Data/Door.hs 45;" C
DoorLerpWithTimer src/Dodge/Data/Door.hs 46;" C
DoorPart src/Dodge/Data/Wall/Structure.hs 12;" C
DoorUpdate src/Dodge/Data/Door.hs 43;" t
DoubleRes src/Dodge/Data/Config.hs 113;" C
DoubleRes src/Dodge/Data/Config.hs 114;" C
DoubleTreeNodeType src/Dodge/Data/DoubleTree.hs 9;" t
DrawForceField src/Dodge/Data/Wall.hs 37;" C
DrawnWall src/Dodge/Data/Wall.hs 33;" C
@@ -367,7 +367,7 @@ Ears src/Dodge/Data/Creature/Perception.hs 45;" C
East src/Dodge/Data/CardinalPoint.hs 8;" C
East8 src/Dodge/Data/CardinalPoint.hs 30;" C
EdgeObstacle src/Dodge/Data/PathGraph.hs 49;" t
EighthRes src/Dodge/Data/Config.hs 113;" C
EighthRes src/Dodge/Data/Config.hs 114;" C
Eldritch src/Dodge/Data/Scenario.hs 34;" C
ElectricSensor src/Dodge/Data/Machine/Sensor.hs 14;" C
ElectricSpark src/Dodge/Data/Spark.hs 19;" C
@@ -457,7 +457,7 @@ ForceField src/Dodge/Data/Material.hs 19;" 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 53;" C
FullRes src/Dodge/Data/Config.hs 113;" C
FullRes src/Dodge/Data/Config.hs 114;" C
FullShadowFidelity src/Shape/Data.hs 19;" C
FullSize src/Dodge/Data/Item/Params.hs 26;" C
FullyVisible src/Dodge/Data/CamouflageStatus.hs 6;" C
@@ -486,11 +486,11 @@ GenFloat src/Dodge/Data/GenFloat.hs 9;" t
GenParams src/Dodge/Data/GenParams.hs 13;" t
GenWorld src/Dodge/Data/GenWorld.hs 24;" t
GenericFaction src/Dodge/Data/Creature/State.hs 13;" C
GeoObjShads src/Dodge/Data/Config.hs 117;" C
GeoObjShads src/Dodge/Data/Config.hs 118;" C
GetTo src/Dodge/Data/ActionPlan.hs 141;" C
GetToPoint src/Dodge/Data/Scenario.hs 12;" C
Gib src/Dodge/Data/Prop.hs 22;" C
GibsDeath src/Dodge/Data/Creature.hs 68;" C
GibsDeath src/Dodge/Data/Creature.hs 70;" C
Glass src/Dodge/Data/Material.hs 14;" C
GlassBreakSound src/Dodge/Data/SoundOrigin.hs 34;" C
Goal src/Dodge/Data/ActionPlan.hs 149;" t
@@ -515,9 +515,9 @@ HEATSENSOR src/Dodge/Data/Item/Combine.hs 81;" C
HELD src/Dodge/Data/Item/Combine.hs 16;" C
HOMINGMODULE src/Dodge/Data/Item/Combine.hs 100;" C
HOSE src/Dodge/Data/Item/Combine.hs 54;" C
HP src/Dodge/Data/Creature.hs 63;" C
HP src/Dodge/Data/Creature.hs 65;" C
HUD src/Dodge/Data/HUD.hs 29;" t
HalfRes src/Dodge/Data/Config.hs 113;" C
HalfRes src/Dodge/Data/Config.hs 114;" C
HammerTrigger src/Dodge/Data/TriggerType.hs 10;" C
HardQuit src/Dodge/Data/Universe.hs 68;" C
HeavySmokeFlare src/Dodge/Data/Muzzle.hs 33;" C
@@ -578,12 +578,12 @@ InheritFloor src/Data/Tile.hs 12;" C
Input src/Dodge/Data/Input.hs 33;" t
InputMemory src/Dodge/Data/Input.hs 52;" t
InputScreen src/Dodge/Data/Universe.hs 92;" C
Inspect_wall src/Dodge/Data/Config.hs 106;" C
Inspect_wall src/Dodge/Data/Config.hs 107;" C
Institution src/Dodge/Data/Scenario.hs 42;" t
Int2 src/Geometry/Data.hs 21;" t
IntID src/Dodge/Data/Universe.hs 120;" t
Intention src/Dodge/Data/Creature.hs 70;" t
IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
Intention src/Dodge/Data/Creature.hs 72;" t
IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 124;" C
IntroScanSF src/Dodge/Data/ComposedItem.hs 21;" C
IntroScanType src/Dodge/Data/Item/Combine.hs 44;" t
InvInt src/Dodge/Data/Item/Location.hs 16;" t
@@ -661,6 +661,7 @@ LifeSupportSystemsRoomSS src/Dodge/Data/Scenario.hs 113;" C
LifeboatBaySS src/Dodge/Data/Scenario.hs 107;" C
LightSource src/Dodge/Data/LightSource.hs 21;" t
LightSourceDraw src/Dodge/Data/LightSource.hs 11;" t
Light_on_cursor src/Dodge/Data/Config.hs 92;" C
LightningRod src/Dodge/Data/Material.hs 21;" C
LimitedBreathableAtmosphere src/Dodge/Data/Scenario.hs 38;" C
LimitedFood src/Dodge/Data/Scenario.hs 39;" C
@@ -746,7 +747,7 @@ MedBaySS src/Dodge/Data/Scenario.hs 100;" C
Medium src/Shape/Data.hs 25;" C
Melee src/Dodge/Data/ActionPlan.hs 40;" C
MeleeStrike src/Dodge/Data/ActionPlan.hs 144;" C
Memory src/Dodge/Data/Creature.hs 77;" t
Memory src/Dodge/Data/Creature.hs 79;" t
MenuOption src/Dodge/Data/Universe.hs 109;" t
MenuOptionDisplay src/Dodge/Data/Universe.hs 104;" t
MetaBranch src/Dodge/Data/MetaTree.hs 19;" t
@@ -796,7 +797,7 @@ MuzzleStopper src/Dodge/Data/Muzzle.hs 58;" C
MuzzleTesla src/Dodge/Data/Muzzle.hs 44;" C
MuzzleTractor src/Dodge/Data/Muzzle.hs 45;" C
MuzzleUnsafeBlink src/Dodge/Data/Muzzle.hs 56;" C
Muzzle_positions src/Dodge/Data/Config.hs 110;" C
Muzzle_positions src/Dodge/Data/Config.hs 111;" C
MvForward src/Dodge/Data/ActionPlan.hs 34;" C
MvTurnToward src/Dodge/Data/ActionPlan.hs 33;" C
MvWalking src/Dodge/Data/Creature/Misc.hs 28;" C
@@ -832,17 +833,17 @@ NoItTargeting src/Dodge/Data/Item.hs 44;" C
NoItemScroll src/Dodge/Data/Item.hs 39;" C
NoItemZone src/Dodge/Data/Machine/Sensor.hs 31;" C
NoLightFlare src/Dodge/Data/Muzzle.hs 31;" C
NoLighting src/Dodge/Data/Config.hs 120;" C
NoLighting src/Dodge/Data/Config.hs 121;" C
NoMouseContext src/Dodge/Data/Input.hs 14;" C
NoMvType src/Dodge/Data/Creature/Misc.hs 27;" C
NoObjShads src/Dodge/Data/Config.hs 118;" C
NoObjShads src/Dodge/Data/Config.hs 119;" C
NoParams src/Dodge/Data/Item/Params.hs 13;" C
NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 14;" C
NoRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
NoRoomClipBoundaries src/Dodge/Data/Config.hs 124;" C
NoSF src/Dodge/Data/ComposedItem.hs 29;" C
NoSIDisplayMod src/Dodge/Data/SelectionList.hs 56;" C
NoShadowFidelity src/Shape/Data.hs 20;" C
NoShadows src/Dodge/Data/Config.hs 119;" C
NoShadows src/Dodge/Data/Config.hs 120;" C
NoSoundFilter src/Dodge/Data/WorldEffect.hs 23;" C
NoSubInventory src/Dodge/Data/HUD.hs 15;" C
NoTrigger src/Dodge/Data/TriggerType.hs 11;" C
@@ -993,7 +994,7 @@ PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C
Placement src/Dodge/Data/GenWorld.hs 114;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 98;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 86;" C
PlainDeath src/Dodge/Data/Creature.hs 68;" C
PlainDeath src/Dodge/Data/Creature.hs 70;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlasmaBall src/Dodge/Data/PlasmaBall.hs 13;" t
PlasmaBallType src/Dodge/Data/PlasmaBall.hs 20;" t
@@ -1009,7 +1010,7 @@ Point3Q src/Geometry/Data.hs 52;" t
Point4 src/Geometry/Data.hs 41;" t
Poison src/Dodge/Data/Damage.hs 26;" C
PoisonDamage src/Dodge/Data/Damage/Type.hs 6;" C
PoisonDeath src/Dodge/Data/Creature.hs 68;" C
PoisonDeath src/Dodge/Data/Creature.hs 70;" C
PoisonGas src/Dodge/Data/Cloud.hs 42;" C
PolyEdge src/Dodge/Data/Room.hs 51;" C
PolyShad src/Picture/Data.hs 31;" C
@@ -1063,7 +1064,7 @@ PutWall src/Dodge/Data/GenWorld.hs 54;" C
PutWorldUpdate src/Dodge/Data/GenWorld.hs 58;" C
Pyroelectric src/Dodge/Data/Material.hs 22;" C
QFloat src/Geometry/Data.hs 50;" t
QuarterRes src/Dodge/Data/Config.hs 113;" C
QuarterRes src/Dodge/Data/Config.hs 114;" C
QuicksaveSlot src/Dodge/Data/SaveSlot.hs 8;" C
RAM src/Dodge/Data/Item/Combine.hs 73;" C
RCommands src/Dodge/Terminal.hs 165;" C
@@ -1106,7 +1107,7 @@ ReplaceEquipment src/Dodge/Data/RightButtonOptions.hs 29;" C
RequireDeadCreatures src/Dodge/Data/Machine/Sensor.hs 36;" C
RequireEquipment src/Dodge/Data/Machine/Sensor.hs 35;" C
RequireHealth src/Dodge/Data/Machine/Sensor.hs 34;" C
ResFactor src/Dodge/Data/Config.hs 113;" t
ResFactor src/Dodge/Data/Config.hs 114;" t
ResearchFacility src/Dodge/Data/Scenario.hs 62;" C
ResourceFailure src/Dodge/Data/Scenario.hs 29;" C
RespawnDelay src/Dodge/Data/World.hs 64;" C
@@ -1123,7 +1124,7 @@ 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 129;" t
RoomClipping src/Dodge/Data/Config.hs 123;" t
RoomClipping src/Dodge/Data/Config.hs 124;" t
RoomInt src/Dodge/Tree/Shift.hs 27;" t
RoomLink src/Dodge/Data/Room.hs 24;" t
RoomLinkType src/Dodge/Data/Room.hs 47;" t
@@ -1187,7 +1188,7 @@ ShadNum src/Picture/Data.hs 30;" t
Shader src/Shader/Data.hs 51;" t
ShaderTexture src/Shader/Data.hs 102;" t
ShadowFidelity src/Shape/Data.hs 19;" t
ShadowRendering src/Dodge/Data/Config.hs 116;" t
ShadowRendering src/Dodge/Data/Config.hs 117;" t
Shape src/Shape/Data.hs 49;" t
ShapeProp src/Dodge/Data/Prop.hs 14;" C
ShapeType src/Shape/Data.hs 11;" t
@@ -1200,27 +1201,27 @@ ShockwaveDirection src/Dodge/Data/Shockwave.hs 12;" t
ShootAt src/Dodge/Data/ActionPlan.hs 133;" C
ShortShow src/ShortShow.hs 6;" c
ShortString src/ShortShow.hs 16;" t
Show_bound_box src/Dodge/Data/Config.hs 94;" C
Show_dda_test src/Dodge/Data/Config.hs 97;" C
Show_far_wall_detect src/Dodge/Data/Config.hs 100;" C
Show_mouse_click_pos src/Dodge/Data/Config.hs 109;" C
Show_bound_box src/Dodge/Data/Config.hs 95;" C
Show_dda_test src/Dodge/Data/Config.hs 98;" C
Show_far_wall_detect src/Dodge/Data/Config.hs 101;" C
Show_mouse_click_pos src/Dodge/Data/Config.hs 110;" C
Show_ms_frame src/Dodge/Data/Config.hs 78;" C
Show_path_between src/Dodge/Data/Config.hs 107;" C
Show_path_between src/Dodge/Data/Config.hs 108;" C
Show_sound src/Dodge/Data/Config.hs 82;" C
Show_wall_search_rays src/Dodge/Data/Config.hs 96;" C
Show_walls_near_point_cursor src/Dodge/Data/Config.hs 101;" C
Show_walls_near_segment src/Dodge/Data/Config.hs 103;" C
Show_walls_near_you src/Dodge/Data/Config.hs 102;" C
Show_writable_values src/Dodge/Data/Config.hs 108;" C
Show_zone_circ src/Dodge/Data/Config.hs 105;" C
Show_zone_near_point_cursor src/Dodge/Data/Config.hs 104;" C
Show_wall_search_rays src/Dodge/Data/Config.hs 97;" C
Show_walls_near_point_cursor src/Dodge/Data/Config.hs 102;" C
Show_walls_near_segment src/Dodge/Data/Config.hs 104;" C
Show_walls_near_you src/Dodge/Data/Config.hs 103;" C
Show_writable_values src/Dodge/Data/Config.hs 109;" C
Show_zone_circ src/Dodge/Data/Config.hs 106;" C
Show_zone_near_point_cursor src/Dodge/Data/Config.hs 105;" C
ShrapnelBomb src/Dodge/Data/Payload.hs 10;" C
ShrinkGunStatus src/Dodge/Data/Item/Params.hs 26;" t
Shrunk src/Dodge/Data/Item/Params.hs 26;" C
SideCluster src/Dodge/Data/RoomCluster.hs 13;" C
SideEffect src/Dodge/Data/Universe.hs 62;" t
SimpleEdge src/Dodge/Data/PathGraph.hs 43;" t
SixteenthRes src/Dodge/Data/Config.hs 113;" C
SixteenthRes src/Dodge/Data/Config.hs 114;" C
Size src/Shape/Data.hs 23;" t
SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C
SleepingQuatersSS src/Dodge/Data/Scenario.hs 90;" C
@@ -1669,35 +1670,36 @@ _cpPoints src/Geometry/ConvexPoly.hs 26;" f
_cpRad src/Geometry/ConvexPoly.hs 28;" f
_cpVigilance src/Dodge/Data/Creature/Perception.hs 31;" f
_cpVision src/Dodge/Data/Creature/Perception.hs 34;" f
_crActionPlan src/Dodge/Data/Creature.hs 51;" f
_crDamage src/Dodge/Data/Creature.hs 48;" f
_crDeathTimer src/Dodge/Data/Creature.hs 59;" f
_crDir src/Dodge/Data/Creature.hs 39;" f
_crEquipment src/Dodge/Data/Creature.hs 47;" f
_crFaction src/Dodge/Data/Creature.hs 55;" f
_crGroup src/Dodge/Data/Creature.hs 56;" f
_crActionPlan src/Dodge/Data/Creature.hs 52;" f
_crCrushTimers src/Dodge/Data/Creature.hs 61;" f
_crDamage src/Dodge/Data/Creature.hs 49;" f
_crDeathTimer src/Dodge/Data/Creature.hs 60;" f
_crDir src/Dodge/Data/Creature.hs 40;" f
_crEquipment src/Dodge/Data/Creature.hs 48;" f
_crFaction src/Dodge/Data/Creature.hs 56;" f
_crGroup src/Dodge/Data/Creature.hs 57;" f
_crGroupCenter src/Dodge/Data/CrGroupParams.hs 15;" f
_crGroupID src/Dodge/Data/Creature/State.hs 27;" f
_crGroupIDs src/Dodge/Data/CrGroupParams.hs 14;" f
_crGroupParamID src/Dodge/Data/CrGroupParams.hs 13;" f
_crGroupUpdate src/Dodge/Data/CrGroupParams.hs 16;" f
_crHP src/Dodge/Data/Creature.hs 44;" f
_crID src/Dodge/Data/Creature.hs 43;" f
_crIntention src/Dodge/Data/Creature.hs 57;" f
_crInv src/Dodge/Data/Creature.hs 45;" f
_crManipulation src/Dodge/Data/Creature.hs 46;" f
_crMemory src/Dodge/Data/Creature.hs 53;" f
_crMvAim src/Dodge/Data/Creature.hs 41;" f
_crMvDir src/Dodge/Data/Creature.hs 40;" f
_crName src/Dodge/Data/Creature.hs 58;" f
_crOldPos src/Dodge/Data/Creature.hs 37;" f
_crPain src/Dodge/Data/Creature.hs 49;" f
_crPerception src/Dodge/Data/Creature.hs 52;" f
_crPos src/Dodge/Data/Creature.hs 36;" f
_crStance src/Dodge/Data/Creature.hs 50;" f
_crType src/Dodge/Data/Creature.hs 42;" f
_crVocalization src/Dodge/Data/Creature.hs 54;" f
_crZVel src/Dodge/Data/Creature.hs 38;" f
_crHP src/Dodge/Data/Creature.hs 45;" f
_crID src/Dodge/Data/Creature.hs 44;" f
_crIntention src/Dodge/Data/Creature.hs 58;" f
_crInv src/Dodge/Data/Creature.hs 46;" f
_crManipulation src/Dodge/Data/Creature.hs 47;" f
_crMemory src/Dodge/Data/Creature.hs 54;" f
_crMvAim src/Dodge/Data/Creature.hs 42;" f
_crMvDir src/Dodge/Data/Creature.hs 41;" f
_crName src/Dodge/Data/Creature.hs 59;" f
_crOldPos src/Dodge/Data/Creature.hs 38;" f
_crPain src/Dodge/Data/Creature.hs 50;" f
_crPerception src/Dodge/Data/Creature.hs 53;" f
_crPos src/Dodge/Data/Creature.hs 37;" f
_crStance src/Dodge/Data/Creature.hs 51;" f
_crType src/Dodge/Data/Creature.hs 43;" f
_crVocalization src/Dodge/Data/Creature.hs 55;" f
_crZVel src/Dodge/Data/Creature.hs 39;" f
_crZoning src/Dodge/Data/World.hs 48;" f
_creatureGroups src/Dodge/Data/LWorld.hs 96;" f
_creatures src/Dodge/Data/LWorld.hs 95;" f
@@ -2045,7 +2047,7 @@ _mtTree src/Dodge/Data/MetaTree.hs 13;" f
_musicData src/Data/Preload.hs 13;" f
_mvAimSpeed src/Dodge/Data/Creature/Misc.hs 33;" f
_mvSpeed src/Dodge/Data/Creature/Misc.hs 28;" f
_mvToPoint src/Dodge/Data/Creature.hs 72;" f
_mvToPoint src/Dodge/Data/Creature.hs 74;" f
_mvTurnJit src/Dodge/Data/Creature/Misc.hs 32;" f
_mvTurnRad src/Dodge/Data/Creature/Misc.hs 31;" f
_mzAmmoSlot src/Dodge/Data/Muzzle.hs 13;" f
@@ -2057,7 +2059,7 @@ _mzRandomOffset src/Dodge/Data/Muzzle.hs 17;" f
_mzRot src/Dodge/Data/Muzzle.hs 11;" f
_nodeMetaTree src/Dodge/Data/MetaTree.hs 17;" f
_nodeTree src/Dodge/Data/MetaTree.hs 16;" f
_nodesSearched src/Dodge/Data/Creature.hs 79;" f
_nodesSearched src/Dodge/Data/Creature.hs 81;" f
_nonInf src/Dodge/Data/CardinalPoint.hs 44;" f
_numLinkEW src/Dodge/Data/Room.hs 34;" f
_numLinkNS src/Dodge/Data/Room.hs 35;" f
@@ -2316,7 +2318,7 @@ _soundStatus src/Sound/Data.hs 45;" f
_soundTime src/Sound/Data.hs 44;" f
_soundVolume src/Sound/Data.hs 49;" f
_soundVolumeFraction src/Sound/Data.hs 50;" f
_soundsToInvestigate src/Dodge/Data/Creature.hs 78;" f
_soundsToInvestigate src/Dodge/Data/Creature.hs 80;" f
_spPixelOff src/Dodge/Data/ScreenPos.hs 14;" f
_spScreenOff src/Dodge/Data/ScreenPos.hs 13;" f
_sparks src/Dodge/Data/LWorld.hs 110;" f
@@ -2348,7 +2350,7 @@ _swarm src/Dodge/Data/Creature/State.hs 26;" f
_taArcSteps src/Dodge/Data/TeslaArc.hs 17;" f
_taColor src/Dodge/Data/TeslaArc.hs 18;" f
_taTimer src/Dodge/Data/TeslaArc.hs 16;" f
_targetCr src/Dodge/Data/Creature.hs 71;" f
_targetCr src/Dodge/Data/Creature.hs 73;" f
_targetID src/Dodge/Data/ActionPlan.hs 67;" f
_targetSeenAt src/Dodge/Data/ActionPlan.hs 68;" f
_tbPos src/Dodge/Data/TractorBeam.hs 12;" f
@@ -2464,7 +2466,7 @@ _vcMaxCoolDown src/Dodge/Data/Creature/Misc.hs 21;" f
_vertices src/Polyhedra/Data.hs 22;" f
_viDist src/Dodge/Data/Creature/Perception.hs 41;" f
_viFOV src/Dodge/Data/Creature/Perception.hs 40;" f
_viewPoint src/Dodge/Data/Creature.hs 73;" f
_viewPoint src/Dodge/Data/Creature.hs 75;" f
_volleyNumBarrels src/Dodge/Data/TriggerType.hs 13;" f
_volleyRate src/Dodge/Data/TriggerType.hs 13;" f
_volume_master src/Dodge/Data/Config.hs 49;" f
@@ -2592,7 +2594,7 @@ angleVV3 src/Geometry/Vector3D.hs 122;" f
anyUnusedSpot src/Dodge/PlacementSpot.hs 68;" f
anythingHitCirc src/Dodge/Base/Collide.hs 331;" f
applyCME src/Dodge/HeldUse.hs 387;" f
applyClip src/Dodge/Debug.hs 138;" f
applyClip src/Dodge/Debug.hs 187;" f
applyCreatureDamage src/Dodge/Creature/Damage.hs 14;" f
applyEventIO src/Loop.hs 90;" f
applyGravityPU src/Dodge/Projectile/Update.hs 41;" f
@@ -2602,8 +2604,8 @@ applyMagnetsToBul src/Dodge/Bullet.hs 32;" f
applyPastDamages src/Dodge/Creature/State.hs 49;" f
applyPosition src/Sound.hs 113;" f
applyRecoil src/Dodge/HeldUse.hs 476;" f
applyResFactor src/Dodge/Data/Config.hs 126;" f
applyResFactorF src/Dodge/Data/Config.hs 135;" f
applyResFactor src/Dodge/Data/Config.hs 127;" f
applyResFactorF src/Dodge/Data/Config.hs 136;" f
applySetTerminalString src/Dodge/Debug/Terminal.hs 83;" f
applySidePush src/Dodge/HeldUse.hs 574;" f
applySoundCME src/Dodge/HeldUse.hs 466;" f
@@ -2790,10 +2792,10 @@ centerVaultRoom src/Dodge/Room/Procedural.hs 270;" f
centroid src/Geometry/Polygon.hs 192;" f
centroidNum src/Geometry/Polygon.hs 195;" f
chainPairs src/Geometry.hs 360;" f
changeSwapOther src/Dodge/Inventory.hs 236;" f
changeSwapOther src/Dodge/Inventory.hs 239;" f
changeSwapSel src/Dodge/Inventory.hs 211;" f
changeSwapSelSet src/Dodge/Inventory.hs 148;" f
changeSwapWith src/Dodge/Inventory.hs 276;" f
changeSwapWith src/Dodge/Inventory.hs 279;" f
charToTuple src/Picture/Base.hs 312;" f
charToTupleGrad src/Picture/Text.hs 18;" f
chartreuse src/Color.hs 51;" f
@@ -2872,8 +2874,8 @@ clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f
clsNearRect src/Dodge/Zoning/Cloud.hs 18;" f
clsNearSeg src/Dodge/Zoning/Cloud.hs 15;" f
cogRaised src/Dodge/Creature/Perception.hs 101;" f
colCrWall src/Dodge/WallCreatureCollisions.hs 27;" f
colCrsWalls src/Dodge/WallCreatureCollisions.hs 19;" f
colCrWall src/Dodge/WallCreatureCollisions.hs 28;" f
colCrsWalls src/Dodge/WallCreatureCollisions.hs 20;" f
collectDamageTypes src/Dodge/Damage.hs 53;" f
collectInvItems src/Dodge/Inventory.hs 201;" f
collide3 src/Dodge/Base/Collide.hs 127;" f
@@ -2969,7 +2971,7 @@ crMvForward src/Dodge/Creature/Impulse/Movement.hs 57;" f
crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 132;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f
crOnWall src/Dodge/WallCreatureCollisions.hs 88;" f
crOnWall src/Dodge/WallCreatureCollisions.hs 132;" f
crRad src/Dodge/Creature/Radius.hs 7;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 75;" f
crSetRoots src/Dodge/Inventory/Location.hs 55;" f
@@ -3086,19 +3088,21 @@ deadUpperBody src/Dodge/Creature/Picture.hs 111;" f
debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 725;" f
debrisSPic src/Dodge/Prop/Draw.hs 16;" f
debrisSize src/Dodge/Block/Debris.hs 89;" f
debugEvent src/Dodge/Debug.hs 43;" f
debugEvents src/Dodge/Debug.hs 28;" f
debugGet src/Dodge/Debug.hs 82;" f
debugItem src/Dodge/Debug.hs 46;" f
debugEvent src/Dodge/Debug.hs 44;" f
debugEvent' src/Dodge/Debug.hs 49;" f
debugEvents src/Dodge/Debug.hs 29;" f
debugGet src/Dodge/Debug.hs 123;" f
debugItem src/Dodge/Debug.hs 86;" f
debugLightOnCursor src/Dodge/Debug.hs 153;" f
debugMenu src/Dodge/Menu.hs 122;" f
debugMenuOptions src/Dodge/Menu.hs 128;" f
debugMouseClickPos src/Dodge/Debug.hs 153;" f
debugOn src/Dodge/Data/Config.hs 177;" f
debugPutDraw src/Dodge/Debug.hs 103;" f
debugPutItems src/Dodge/Debug.hs 86;" f
debugPutN src/Dodge/Debug.hs 92;" f
debugShowPath src/Dodge/Debug.hs 113;" f
debugWritableValues src/Dodge/Debug.hs 126;" f
debugMouseClickPos src/Dodge/Debug.hs 202;" f
debugOn src/Dodge/Data/Config.hs 178;" f
debugPutDraw src/Dodge/Debug.hs 144;" f
debugPutItems src/Dodge/Debug.hs 127;" f
debugPutN src/Dodge/Debug.hs 133;" f
debugShowPath src/Dodge/Debug.hs 162;" f
debugWritableValues src/Dodge/Debug.hs 175;" f
decodeSensorType src/Dodge/Terminal.hs 81;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 62;" f
decomposeTree src/Dodge/Tree/Compose.hs 59;" f
@@ -3118,8 +3122,8 @@ defHeldItem src/Dodge/Default/Item.hs 9;" f
defLSPic src/Dodge/LightSource/Draw.hs 10;" f
defSPic src/Dodge/Item/Draw/SPic.hs 309;" f
defaultAimMvType src/Dodge/Creature/MoveType.hs 16;" f
defaultAimingCrit src/Dodge/Default/Creature.hs 108;" f
defaultAudition src/Dodge/Default/Creature.hs 93;" f
defaultAimingCrit src/Dodge/Default/Creature.hs 109;" f
defaultAudition src/Dodge/Default/Creature.hs 94;" f
defaultAutoWall src/Dodge/Default/Wall.hs 32;" f
defaultBlock src/Dodge/Default/Block.hs 5;" f
defaultBounds src/Dodge/Data/Bounds.hs 18;" f
@@ -3130,9 +3134,9 @@ defaultCWGen src/Dodge/Default/World.hs 63;" f
defaultCWorld src/Dodge/Default/World.hs 88;" f
defaultChaseMvType src/Dodge/Creature/MoveType.hs 25;" f
defaultClusterStatus src/Dodge/Default/Room.hs 37;" f
defaultConfig src/Dodge/Data/Config.hs 152;" f
defaultConfig src/Dodge/Data/Config.hs 153;" f
defaultCreature src/Dodge/Default/Creature.hs 12;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 66;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 67;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f
defaultDeathSounds src/Dodge/Creature/Vocalization.hs 55;" f
defaultDirtBlock src/Dodge/Default/Block.hs 17;" f
@@ -3143,19 +3147,19 @@ defaultDrawButton src/Dodge/Button/Draw.hs 29;" f
defaultFlIt src/Dodge/Default.hs 27;" f
defaultForeground src/Dodge/Default/ForegroundShape.hs 5;" f
defaultHUD src/Dodge/Default/World.hs 172;" f
defaultInanimate src/Dodge/Default/Creature.hs 63;" f
defaultInanimate src/Dodge/Default/Creature.hs 64;" f
defaultInput src/Dodge/Default/World.hs 12;" f
defaultIntention src/Dodge/Default/Creature.hs 99;" f
defaultInvSize src/Dodge/Default/Creature.hs 73;" f
defaultIntention src/Dodge/Default/Creature.hs 100;" f
defaultInvSize src/Dodge/Default/Creature.hs 74;" f
defaultLDP src/Dodge/ListDisplayParams.hs 19;" f
defaultLWorld src/Dodge/Default/World.hs 106;" f
defaultMachine src/Dodge/Default.hs 30;" f
defaultMachineWall src/Dodge/Default/Wall.hs 38;" f
defaultPerceptionState src/Dodge/Default/Creature.hs 76;" f
defaultPerceptionState src/Dodge/Default/Creature.hs 77;" f
defaultProximitySensor src/Dodge/Default.hs 52;" f
defaultRoom src/Dodge/Default/Room.hs 9;" f
defaultTerminal src/Dodge/Default/Terminal.hs 8;" f
defaultVision src/Dodge/Default/Creature.hs 86;" f
defaultVision src/Dodge/Default/Creature.hs 87;" f
defaultWall src/Dodge/Default/Wall.hs 15;" f
defaultWindow src/Dodge/Default/Wall.hs 54;" f
defaultWorld src/Dodge/Default/World.hs 33;" f
@@ -3228,8 +3232,8 @@ doCrWdAc src/Dodge/CreatureEffect.hs 48;" f
doDamage src/Dodge/Creature/State.hs 43;" f
doDeathToggle src/Dodge/WorldEffect.hs 100;" f
doDeathTriggers src/Dodge/WorldEffect.hs 93;" f
doDebugGet src/Dodge/Debug.hs 106;" f
doDebugPut src/Dodge/Debug.hs 95;" f
doDebugGet src/Dodge/Debug.hs 147;" f
doDebugPut src/Dodge/Debug.hs 136;" f
doDebugTest src/Dodge/Update/Input/DebugTest.hs 23;" f
doDebugTest2 src/Dodge/Update/Input/DebugTest.hs 38;" f
doDebugTestF10 src/Dodge/Update/Input/DebugTest.hs 66;" f
@@ -3312,8 +3316,8 @@ drawCombineInventory src/Dodge/Render/HUD.hs 190;" f
drawConcurrentMessage src/Dodge/Render/Picture.hs 72;" f
drawCoord src/Dodge/Debug/Picture.hs 396;" f
drawCountMod src/Render.hs 231;" f
drawCrInfo src/Dodge/Debug.hs 177;" f
drawCrInfo' src/Dodge/Debug.hs 172;" f
drawCrInfo src/Dodge/Debug.hs 226;" f
drawCrInfo' src/Dodge/Debug.hs 221;" f
drawCreature src/Dodge/Render/ShapePicture.hs 111;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 199;" f
drawCross src/Dodge/Render/Label.hs 25;" f
@@ -3322,7 +3326,7 @@ drawCursorAt src/Dodge/Render/List.hs 73;" f
drawCursorByTerminalStatus src/Dodge/Render/Picture.hs 137;" f
drawDDATest src/Dodge/Debug/Picture.hs 304;" f
drawDamSensor src/Dodge/Machine/Draw.hs 38;" f
drawDebug src/Dodge/Debug.hs 215;" f
drawDebug src/Dodge/Debug.hs 264;" f
drawDrag src/Dodge/Render/Picture.hs 198;" f
drawDragDrop src/Dodge/Render/Picture.hs 227;" f
drawDragPickup src/Dodge/Render/Picture.hs 236;" f
@@ -3836,8 +3840,8 @@ invItemEffs src/Dodge/Creature/State.hs 63;" f
invItemLocUpdate src/Dodge/Creature/State.hs 71;" f
invRootMap src/Dodge/Item/Grammar.hs 231;" f
invSelectionItem src/Dodge/Inventory/SelectionList.hs 32;" f
invSetSelection src/Dodge/Inventory.hs 281;" f
invSetSelectionPos src/Dodge/Inventory.hs 289;" f
invSetSelection src/Dodge/Inventory.hs 284;" f
invSetSelectionPos src/Dodge/Inventory.hs 292;" f
invShiftPointBy src/Dodge/ShiftPoint.hs 17;" f
invSize src/Dodge/Inventory/CheckSlots.hs 33;" f
inventoryX src/Dodge/Creature.hs 111;" f
@@ -3999,7 +4003,7 @@ light src/Color.hs 131;" f
lightSensByDoor src/Dodge/Room/LasTurret.hs 77;" f
lightSensInsideDoor src/Dodge/Room/LasTurret.hs 64;" f
lightSensor src/Dodge/Placement/Instance/Sensor.hs 33;" f
lightsToRender src/Dodge/Render/Lights.hs 14;" f
lightsToRender src/Dodge/Render/Lights.hs 12;" f
lightx4 src/Color.hs 155;" f
linGrad src/Geometry/Intersect.hs 239;" f
line src/Picture/Base.hs 230;" f
@@ -4289,7 +4293,7 @@ nextInSectionSS src/Dodge/SelectionSections.hs 34;" f
nextLayoutInt src/Dodge/Data/MetaTree.hs 44;" f
noPic src/ShapePicture.hs 25;" f
noShape src/ShapePicture.hs 29;" f
noclipCheck src/Dodge/WallCreatureCollisions.hs 22;" f
noclipCheck src/Dodge/WallCreatureCollisions.hs 23;" f
nodesNear src/Dodge/Path.hs 75;" f
nonConvexChasm src/Dodge/Room/Tutorial.hs 258;" f
nonCornerLinks src/Dodge/Room/SensorDoor.hs 55;" f
@@ -4342,7 +4346,7 @@ outwardIntegers src/Dodge/Base.hs 181;" f
overCol src/Picture/Base.hs 303;" f
overColObj src/Shape.hs 270;" f
overColSH src/Shape.hs 238;" f
overDebugEvent src/Dodge/Debug.hs 37;" f
overDebugEvent src/Dodge/Debug.hs 38;" f
overLnkPosDir src/Dodge/RoomLink.hs 115;" f
overLnkType src/Dodge/RoomLink.hs 106;" f
overPos src/Picture/Base.hs 298;" f
@@ -4540,12 +4544,13 @@ psposAddLabel src/Dodge/PlacementSpot.hs 71;" f
pt0 src/Dodge/LevelGen/PlacementHelper.hs 55;" f
ptCont src/Dodge/LevelGen/PlacementHelper.hs 21;" f
pulseChecker src/Dodge/Item/Equipment.hs 84;" f
pushCreatureOutFromWalls src/Dodge/WallCreatureCollisions.hs 56;" f
pushCr' src/Dodge/WallCreatureCollisions.hs 52;" f
pushCreatureOutFromWalls src/Dodge/WallCreatureCollisions.hs 91;" f
pushL src/DoubleStack.hs 20;" f
pushOrCrush src/Dodge/WallCreatureCollisions.hs 76;" f
pushOutFromCorners src/Dodge/WallCreatureCollisions.hs 111;" f
pushOutFromWall src/Dodge/WallCreatureCollisions.hs 100;" f
pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 63;" f
pushOrCrush src/Dodge/WallCreatureCollisions.hs 119;" f
pushOutFromCorners src/Dodge/WallCreatureCollisions.hs 155;" f
pushOutFromWall src/Dodge/WallCreatureCollisions.hs 144;" f
pushOutFromWalls src/Dodge/WallCreatureCollisions.hs 98;" f
pushR src/DoubleStack.hs 24;" f
pushScreen src/Dodge/Menu/PushPop.hs 9;" f
pushYouOutFromWalls src/Dodge/Update.hs 342;" f
@@ -4809,8 +4814,8 @@ screenPolygon src/Dodge/Base/Window.hs 18;" f
screenPolygonBord src/Dodge/Base/Window.hs 28;" f
screenPosAbs src/Dodge/ScreenPos.hs 15;" f
screenToWorldPos src/Dodge/Base/Coordinate.hs 45;" f
scrollAugInvSel src/Dodge/Inventory.hs 292;" f
scrollAugNextInSection src/Dodge/Inventory.hs 306;" f
scrollAugInvSel src/Dodge/Inventory.hs 295;" f
scrollAugNextInSection src/Dodge/Inventory.hs 309;" f
scrollRBOption src/Dodge/Update/Scroll.hs 139;" f
scrollSelectionSections src/Dodge/SelectionSections.hs 28;" f
scrollTimeBack src/Dodge/Update.hs 243;" f
@@ -4856,7 +4861,7 @@ sentinelFireType src/Dodge/Creature/SentinelAI.hs 49;" f
setAimPosture src/Dodge/Creature/YourControl.hs 145;" f
setChannelPos src/Sound.hs 152;" f
setClickWorldPos src/Dodge/Update.hs 108;" f
setClip src/Dodge/Debug.hs 201;" f
setClip src/Dodge/Debug.hs 250;" f
setDepth src/Picture/Base.hs 120;" f
setDirPS src/Dodge/PlacementSpot.hs 51;" f
setFallback src/Dodge/PlacementSpot.hs 127;" f
@@ -4960,10 +4965,10 @@ showEquipItem src/Dodge/Item/Display.hs 108;" f
showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 130;" f
showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 58;" f
showMuzzlePositions src/Dodge/Debug.hs 254;" f
showManObj src/Dodge/TestString.hs 63;" f
showMuzzlePositions src/Dodge/Debug.hs 304;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 67;" f
showTimeFlow src/Dodge/TestString.hs 72;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f
shrinkVert src/Geometry/Polygon.hs 202;" f
shuffle src/RandomHelp.hs 68;" f
@@ -5068,7 +5073,7 @@ sqPlatformChasm src/Dodge/Room/Tutorial.hs 223;" f
sqSpitChasm src/Dodge/Room/Tutorial.hs 238;" f
square src/Geometry/Polygon.hs 56;" f
squareDecoration src/Dodge/Placement/TopDecoration.hs 48;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 115;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 159;" f
squashNormalizeV src/Geometry/Vector.hs 158;" f
ssLookupDown src/Dodge/SelectionSections.hs 96;" f
ssLookupGE' src/Dodge/SelectionSections.hs 150;" f
@@ -5125,12 +5130,12 @@ stripZ src/Geometry/Vector3D.hs 97;" f
subInvX src/Dodge/ListDisplayParams.hs 51;" f
subMap src/TreeHelp.hs 119;" f
subZipWith src/Dodge/Placement/Instance/Wall.hs 94;" f
succB src/Dodge/Debug.hs 121;" f
succB src/Dodge/Debug.hs 170;" f
swapAnyExtraSelection src/Dodge/Inventory/Swap.hs 57;" f
swapInOutLinks src/Dodge/RoomLink.hs 99;" f
swapIndices src/ListHelp.hs 50;" f
swapInvItems src/Dodge/Inventory/Swap.hs 22;" f
swapItemWith src/Dodge/Inventory.hs 265;" f
swapItemWith src/Dodge/Inventory.hs 268;" f
swapSelSet src/Dodge/Inventory.hs 153;" f
swarmCrit src/Dodge/Creature/SwarmCrit.hs 10;" f
swarmUsingCenter src/Dodge/Creature/Boid.hs 174;" f
@@ -5261,7 +5266,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 663;" f
topInvW src/Dodge/ListDisplayParams.hs 54;" f
topPrismEdgeIndices src/Shader/Poke.hs 335;" f
topPrismIndices src/Shader/Poke.hs 410;" f
topTestPart src/Dodge/TestString.hs 54;" f
topTestPart src/Dodge/TestString.hs 59;" f
torchShape src/Dodge/Item/Draw/SPic.hs 276;" f
torqueAmount src/Dodge/HeldUse.hs 596;" f
torqueCr src/Dodge/WorldEffect.hs 86;" f
@@ -5564,7 +5569,7 @@ volleyGunShape src/Dodge/Item/Draw/SPic.hs 354;" f
walkNozzle src/Dodge/HeldUse.hs 819;" f
walkableNodeNear src/Dodge/Path.hs 69;" f
wallBlips src/Dodge/RadarSweep.hs 99;" f
wallBuffer src/Dodge/WallCreatureCollisions.hs 53;" f
wallBuffer src/Dodge/WallCreatureCollisions.hs 88;" f
wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f
wallToSurface src/Dodge/Base/Collide.hs 180;" f
wallsFromRooms src/Dodge/Layout.hs 141;" f
@@ -5653,7 +5658,7 @@ you src/Dodge/Base/You.hs 13;" f
youDropItem src/Dodge/Creature/Action.hs 177;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 240;" f
yourControl src/Dodge/Creature/YourControl.hs 28;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 111;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 112;" f
yourInfo src/Dodge/Creature/Info.hs 10;" f
yourInv src/Dodge/Base/You.hs 28;" f
yourRootItem src/Dodge/Base/You.hs 22;" f