Improve debris

This commit is contained in:
2026-04-01 17:01:25 +01:00
parent 97134e2652
commit ac32ebba2b
4 changed files with 108 additions and 98 deletions
+10 -4
View File
@@ -55,15 +55,21 @@ blColor :: Block -> Color
blColor _ = orange blColor _ = orange
makeBlockDebris :: Block -> World -> World makeBlockDebris :: Block -> World -> World
makeBlockDebris bl w = foldl' (flip $ makeDebris (BlockDebris $ blColor bl) mt) w ps makeBlockDebris bl w = foldl' (flip $ makeDebris (blockDebrisType mwl bl) mt) w ps
where where
dsize = debrisSize mt dsize = debrisSize mt
ps = gridInPolygon dsize $ shrinkPolyOnEdges dsize $ reverse (_blFootprint bl) ps = gridInPolygon dsize $ shrinkPolyOnEdges dsize $ reverse (_blFootprint bl)
mt = fromMaybe Stone $ do mt = fromMaybe Stone $ mwl ^? _Just . wlMaterial
mwl = do
wlids <- w ^? cWorld . lWorld . blocks . ix (_blID bl) . blWallIDs wlids <- w ^? cWorld . lWorld . blocks . ix (_blID bl) . blWallIDs
(wlid, _) <- IS.minView wlids (wlid, _) <- IS.minView wlids
wl <- w ^? cWorld . lWorld . walls . ix wlid w ^? cWorld . lWorld . walls . ix wlid
return $ _wlMaterial wl
blockDebrisType :: Maybe Wall -> Block -> DebrisType
blockDebrisType wl bl = case wl ^? _Just . wlMaterial of
Just Glass -> GlassDebris
Just Metal -> MetalDebris red
_ -> BlockDebris $ blColor bl
-- makeDebris :: Material -> Color -> Point2 -> World -> World -- makeDebris :: Material -> Color -> Point2 -> World -> World
makeDebris :: DebrisType -> Material -> Point2 -> World -> World makeDebris :: DebrisType -> Material -> Point2 -> World -> World
+1
View File
@@ -22,6 +22,7 @@ data DebrisType
= Gib { _gibSize :: Float , _gibColor :: Color } = Gib { _gibSize :: Float , _gibColor :: Color }
| BlockDebris {_bdColor :: Color} | BlockDebris {_bdColor :: Color}
| MetalDebris {_bdColor :: Color} | MetalDebris {_bdColor :: Color}
| GlassDebris
data Debris = DebrisChunk data Debris = DebrisChunk
{ _dbPos :: Point3 { _dbPos :: Point3
+1
View File
@@ -22,6 +22,7 @@ debrisSPic db = translateSP (_dbPos db & _z +~ 1) . overPosSP (Q.rotate (_dbRot
--MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 5 0, V2 4 2] --MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 5 0, V2 4 2]
MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 8 0, V2 6 3] MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 8 0, V2 6 3]
--MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 10 0, V2 8 4] --MetalDebris c -> noPic . colorSH c $ upperPrismPolySU 1 $ [0, V2 10 0, V2 8 4]
GlassDebris -> noPic . colorSH azure $ upperPrismPoly Small Undesired 1 $ [0, V2 8 0, V2 6 3]
propSPic :: Prop -> SPic propSPic :: Prop -> SPic
propSPic pr = propSPic pr =
+96 -94
View File
@@ -73,12 +73,12 @@ AttachType src/Dodge/Data/Item/Combine.hs 91;" t
Attention src/Dodge/Data/Creature/Perception.hs 58;" t Attention src/Dodge/Data/Creature/Perception.hs 58;" t
AttentiveTo src/Dodge/Data/Creature/Perception.hs 59;" C AttentiveTo src/Dodge/Data/Creature/Perception.hs 59;" C
Audition src/Dodge/Data/Creature/Perception.hs 45;" t Audition src/Dodge/Data/Creature/Perception.hs 45;" t
AutoAI src/Dodge/Data/Creature/Misc.hs 45;" C AutoAI src/Dodge/Data/Creature/Misc.hs 46;" C
AutoCrit src/Dodge/Data/Creature/Misc.hs 70;" C AutoCrit src/Dodge/Data/Creature/Misc.hs 71;" C
AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C
AvPosture src/Dodge/Data/Creature/Misc.hs 74;" C AvPosture src/Dodge/Data/Creature/Misc.hs 75;" C
Avatar src/Dodge/Data/Creature/Misc.hs 59;" C Avatar src/Dodge/Data/Creature/Misc.hs 60;" C
AvatarPosture src/Dodge/Data/Creature/Misc.hs 74;" t AvatarPosture src/Dodge/Data/Creature/Misc.hs 75;" t
Awareness src/Dodge/Data/Creature/Perception.hs 63;" t Awareness src/Dodge/Data/Creature/Perception.hs 63;" t
BANGCONE src/Dodge/Data/Item/Combine.hs 149;" C BANGCONE src/Dodge/Data/Item/Combine.hs 149;" C
BANGROD src/Dodge/Data/Item/Combine.hs 158;" C BANGROD src/Dodge/Data/Item/Combine.hs 158;" C
@@ -104,10 +104,10 @@ BURSTRIFLE src/Dodge/Data/Item/Combine.hs 157;" C
BackdropCurs src/Dodge/Data/SelectionList.hs 22;" C BackdropCurs src/Dodge/Data/SelectionList.hs 22;" C
BackgroundSound src/Dodge/Data/SoundOrigin.hs 13;" C BackgroundSound src/Dodge/Data/SoundOrigin.hs 13;" C
Bark src/Dodge/Data/ActionPlan.hs 39;" C Bark src/Dodge/Data/ActionPlan.hs 39;" C
BarrelCrit src/Dodge/Data/Creature/Misc.hs 71;" C BarrelCrit src/Dodge/Data/Creature/Misc.hs 72;" C
BarrelHiss src/Dodge/Data/SoundOrigin.hs 33;" C BarrelHiss src/Dodge/Data/SoundOrigin.hs 33;" C
BarrelType src/Dodge/Data/Creature/Misc.hs 87;" t BarrelType src/Dodge/Data/Creature/Misc.hs 88;" t
Barreloid src/Dodge/Data/Creature/Misc.hs 83;" C Barreloid src/Dodge/Data/Creature/Misc.hs 84;" C
BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 41;" C BasicBulletTrajectory src/Dodge/Data/Bullet.hs 41;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 48;" C BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 48;" C
@@ -204,8 +204,8 @@ CardinalPointBetween src/Dodge/Data/CardinalPoint.hs 20;" t
Carriage src/Dodge/Data/Creature/Stance.hs 22;" t Carriage src/Dodge/Data/Creature/Stance.hs 22;" t
ChangePosture src/Dodge/Data/ActionPlan.hs 41;" C ChangePosture src/Dodge/Data/ActionPlan.hs 41;" C
ChangeStrategy src/Dodge/Data/ActionPlan.hs 43;" C ChangeStrategy src/Dodge/Data/ActionPlan.hs 43;" C
ChaseAI src/Dodge/Data/Creature/Misc.hs 38;" C ChaseAI src/Dodge/Data/Creature/Misc.hs 39;" C
ChaseCrit src/Dodge/Data/Creature/Misc.hs 68;" C ChaseCrit src/Dodge/Data/Creature/Misc.hs 69;" C
ChaseCritters src/Dodge/Data/Creature/State.hs 16;" C ChaseCritters src/Dodge/Data/Creature/State.hs 16;" C
ChasmObstacle src/Dodge/Data/PathGraph.hs 51;" C ChasmObstacle src/Dodge/Data/PathGraph.hs 51;" C
ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C ChemFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" C
@@ -264,8 +264,8 @@ CrIsCorpse src/Dodge/Data/Creature.hs 65;" C
CrIsGibs src/Dodge/Data/Creature.hs 66;" C CrIsGibs src/Dodge/Data/Creature.hs 66;" C
CrIsPitted src/Dodge/Data/Creature.hs 67;" C CrIsPitted src/Dodge/Data/Creature.hs 67;" C
CrMouth src/Dodge/Data/SoundOrigin.hs 16;" 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 27;" t
CrMvType src/Dodge/Data/Creature/Misc.hs 29;" C CrMvType src/Dodge/Data/Creature/Misc.hs 30;" C
CrOpenAutoDoor src/Dodge/Data/CreatureEffect.hs 21;" C CrOpenAutoDoor src/Dodge/Data/CreatureEffect.hs 21;" C
CrSound src/Dodge/Data/SoundOrigin.hs 15;" C CrSound src/Dodge/Data/SoundOrigin.hs 15;" C
CrTurnAround src/Dodge/Data/CreatureEffect.hs 24;" C CrTurnAround src/Dodge/Data/CreatureEffect.hs 24;" C
@@ -281,8 +281,8 @@ CreateFlame src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" C
CreatePoisonGas 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 35;" t
CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C
CreatureShape src/Dodge/Data/Creature/Misc.hs 76;" t CreatureShape src/Dodge/Data/Creature/Misc.hs 77;" t
CreatureType src/Dodge/Data/Creature/Misc.hs 58;" t CreatureType src/Dodge/Data/Creature/Misc.hs 59;" t
Crushing src/Dodge/Data/Damage.hs 19;" C Crushing src/Dodge/Data/Damage.hs 19;" C
CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 23;" C
CryostatisSS src/Dodge/Data/Scenario.hs 91;" C CryostatisSS src/Dodge/Data/Scenario.hs 91;" C
@@ -309,8 +309,8 @@ DamageLaser src/Dodge/Data/Laser.hs 15;" C
DamageSensor src/Dodge/Data/Machine/Sensor.hs 19;" t DamageSensor src/Dodge/Data/Machine/Sensor.hs 19;" t
DamageType src/Dodge/Data/Damage/Type.hs 3;" t DamageType src/Dodge/Data/Damage/Type.hs 3;" t
DeathType src/Dodge/Data/Creature.hs 69;" t DeathType src/Dodge/Data/Creature.hs 69;" t
Debris src/Dodge/Data/Prop.hs 26;" t Debris src/Dodge/Data/Prop.hs 27;" t
DebrisChunk src/Dodge/Data/Prop.hs 26;" C DebrisChunk src/Dodge/Data/Prop.hs 27;" C
DebrisType src/Dodge/Data/Prop.hs 21;" t DebrisType src/Dodge/Data/Prop.hs 21;" t
DebugBool src/Dodge/Data/Config.hs 77;" t DebugBool src/Dodge/Data/Config.hs 77;" t
DebugItem src/Dodge/Data/Universe.hs 57;" t DebugItem src/Dodge/Data/Universe.hs 57;" t
@@ -400,7 +400,7 @@ Explosion src/Dodge/Data/SoundOrigin.hs 38;" C
ExplosionPayload src/Dodge/Data/Payload.hs 9;" C ExplosionPayload src/Dodge/Data/Payload.hs 9;" C
Explosive src/Dodge/Data/Damage.hs 25;" C Explosive src/Dodge/Data/Damage.hs 25;" C
ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 14;" C ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 14;" C
ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 89;" C ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 90;" C
ExplosivePutty src/Dodge/Data/AmmoType.hs 16;" C ExplosivePutty src/Dodge/Data/AmmoType.hs 16;" C
ExtraMenuOption src/Dodge/Data/Universe.hs 76;" t ExtraMenuOption src/Dodge/Data/Universe.hs 76;" t
Eyes src/Dodge/Data/Creature/Perception.hs 39;" C Eyes src/Dodge/Data/Creature/Perception.hs 39;" C
@@ -451,7 +451,7 @@ FloatFloat src/Dodge/Data/FloatFunction.hs 9;" t
FloatID src/Dodge/Data/FloatFunction.hs 10;" C FloatID src/Dodge/Data/FloatFunction.hs 10;" C
FloatLessCheck src/Dodge/Data/FloatFunction.hs 12;" C FloatLessCheck src/Dodge/Data/FloatFunction.hs 12;" C
Floating src/Dodge/Data/Creature/Stance.hs 24;" C Floating src/Dodge/Data/Creature/Stance.hs 24;" C
FlockArmourChaseAI src/Dodge/Data/Creature/Misc.hs 46;" C FlockArmourChaseAI src/Dodge/Data/Creature/Misc.hs 47;" C
Floor src/Data/Tile.hs 11;" t Floor src/Data/Tile.hs 11;" t
FloorItem src/Dodge/Data/FloorItem.hs 11;" t FloorItem src/Dodge/Data/FloorItem.hs 11;" t
Flying src/Dodge/Data/Creature/Stance.hs 25;" C Flying src/Dodge/Data/Creature/Stance.hs 25;" C
@@ -498,6 +498,7 @@ Gib src/Dodge/Data/Prop.hs 22;" C
GibsDeath src/Dodge/Data/Creature.hs 69;" C GibsDeath src/Dodge/Data/Creature.hs 69;" C
Glass src/Dodge/Data/Material.hs 14;" C Glass src/Dodge/Data/Material.hs 14;" C
GlassBreakSound src/Dodge/Data/SoundOrigin.hs 34;" C GlassBreakSound src/Dodge/Data/SoundOrigin.hs 34;" C
GlassDebris src/Dodge/Data/Prop.hs 25;" C
Goal src/Dodge/Data/ActionPlan.hs 149;" t Goal src/Dodge/Data/ActionPlan.hs 149;" t
GoesOnBack src/Dodge/Data/Equipment/Misc.hs 12;" C GoesOnBack src/Dodge/Data/Equipment/Misc.hs 12;" C
GoesOnChest src/Dodge/Data/Equipment/Misc.hs 11;" C GoesOnChest src/Dodge/Data/Equipment/Misc.hs 11;" C
@@ -552,8 +553,8 @@ HotkeyV src/Dodge/Data/Equipment/Misc.hs 38;" C
HotkeyX src/Dodge/Data/Equipment/Misc.hs 36;" C HotkeyX src/Dodge/Data/Equipment/Misc.hs 36;" C
HotkeyZ src/Dodge/Data/Equipment/Misc.hs 35;" C HotkeyZ src/Dodge/Data/Equipment/Misc.hs 35;" C
Huge src/Shape/Data.hs 23;" C Huge src/Shape/Data.hs 23;" C
Humanoid src/Dodge/Data/Creature/Misc.hs 77;" C Humanoid src/Dodge/Data/Creature/Misc.hs 78;" C
HumanoidAI src/Dodge/Data/Creature/Misc.hs 37;" t HumanoidAI src/Dodge/Data/Creature/Misc.hs 38;" t
IMSI src/Dodge/Data/SelectionList.hs 40;" t IMSI src/Dodge/Data/SelectionList.hs 40;" t
IMSS src/Dodge/Data/SelectionList.hs 38;" t IMSS src/Dodge/Data/SelectionList.hs 38;" t
INTROSCAN src/Dodge/Data/Item/Combine.hs 32;" C INTROSCAN src/Dodge/Data/Item/Combine.hs 32;" C
@@ -577,7 +578,7 @@ InRealWorld src/Dodge/Data/Scenario.hs 18;" C
InSimulation src/Dodge/Data/Scenario.hs 20;" C InSimulation src/Dodge/Data/Scenario.hs 20;" C
InVoid src/Dodge/Data/Item/Location.hs 39;" C InVoid src/Dodge/Data/Item/Location.hs 39;" C
Inanimate src/Dodge/Data/ActionPlan.hs 15;" C Inanimate src/Dodge/Data/ActionPlan.hs 15;" C
InanimateAI src/Dodge/Data/Creature/Misc.hs 39;" C InanimateAI src/Dodge/Data/Creature/Misc.hs 40;" C
IncendiaryBall src/Dodge/Data/EnergyBall/Type.hs 11;" C IncendiaryBall src/Dodge/Data/EnergyBall/Type.hs 11;" C
InheritFloor src/Data/Tile.hs 12;" C InheritFloor src/Data/Tile.hs 12;" C
Input src/Dodge/Data/Input.hs 33;" t Input src/Dodge/Data/Input.hs 33;" t
@@ -641,7 +642,7 @@ LabLink src/Dodge/Data/Room.hs 50;" C
LabSS src/Dodge/Data/Scenario.hs 97;" C LabSS src/Dodge/Data/Scenario.hs 97;" C
LabelCluster src/Dodge/Data/RoomCluster.hs 13;" C LabelCluster src/Dodge/Data/RoomCluster.hs 13;" C
Laboratory src/Dodge/Data/Scenario.hs 61;" C Laboratory src/Dodge/Data/Scenario.hs 61;" C
LampCrit src/Dodge/Data/Creature/Misc.hs 72;" C LampCrit src/Dodge/Data/Creature/Misc.hs 73;" C
Large src/Shape/Data.hs 24;" C Large src/Shape/Data.hs 24;" C
LasBeamCombine src/Dodge/Data/Beam.hs 38;" C LasBeamCombine src/Dodge/Data/Beam.hs 38;" C
LasGunFlare src/Dodge/Data/Muzzle.hs 34;" C LasGunFlare src/Dodge/Data/Muzzle.hs 34;" C
@@ -651,7 +652,7 @@ LaserSensor src/Dodge/Data/Machine/Sensor.hs 13;" C
LaserType src/Dodge/Data/Laser.hs 14;" t LaserType src/Dodge/Data/Laser.hs 14;" t
LaserWeaponXSF src/Dodge/Data/ComposedItem.hs 41;" C LaserWeaponXSF src/Dodge/Data/ComposedItem.hs 41;" C
Lasering src/Dodge/Data/Damage.hs 22;" C Lasering src/Dodge/Data/Damage.hs 22;" C
LauncherAI src/Dodge/Data/Creature/Misc.hs 43;" C LauncherAI src/Dodge/Data/Creature/Misc.hs 44;" C
LauncherAmmo src/Dodge/Data/AmmoType.hs 9;" C LauncherAmmo src/Dodge/Data/AmmoType.hs 9;" C
LaundrySS src/Dodge/Data/Scenario.hs 115;" C LaundrySS src/Dodge/Data/Scenario.hs 115;" C
LayVars src/Dodge/Data/MetaTree.hs 30;" C LayVars src/Dodge/Data/MetaTree.hs 30;" C
@@ -681,9 +682,9 @@ LoadingScreen src/Dodge/Data/Universe.hs 93;" C
LocDT src/Dodge/Data/DoubleTree.hs 42;" C LocDT src/Dodge/Data/DoubleTree.hs 42;" C
LocationDT src/Dodge/Data/DoubleTree.hs 42;" t LocationDT src/Dodge/Data/DoubleTree.hs 42;" t
LoneWolf src/Dodge/Data/Creature/State.hs 24;" C LoneWolf src/Dodge/Data/Creature/State.hs 24;" C
LongAI src/Dodge/Data/Creature/Misc.hs 48;" C LongAI src/Dodge/Data/Creature/Misc.hs 49;" C
LookAround src/Dodge/Data/ActionPlan.hs 138;" C LookAround src/Dodge/Data/ActionPlan.hs 138;" C
LtAutoAI src/Dodge/Data/Creature/Misc.hs 42;" C LtAutoAI src/Dodge/Data/Creature/Misc.hs 43;" C
Lure src/Dodge/Data/ActionPlan.hs 131;" C Lure src/Dodge/Data/ActionPlan.hs 131;" C
MACHINEPISTOL src/Dodge/Data/Item/Combine.hs 146;" C MACHINEPISTOL src/Dodge/Data/Item/Combine.hs 146;" C
MAGENTA src/Color/Data.hs 17;" C MAGENTA src/Color/Data.hs 17;" C
@@ -761,7 +762,7 @@ MetalDebris src/Dodge/Data/Prop.hs 24;" C
Metapysics src/Dodge/Data/Scenario.hs 17;" t Metapysics src/Dodge/Data/Scenario.hs 17;" t
Military src/Dodge/Data/Scenario.hs 45;" C Military src/Dodge/Data/Scenario.hs 45;" C
Mine src/Dodge/Data/Scenario.hs 64;" C Mine src/Dodge/Data/Scenario.hs 64;" C
MiniGunAI src/Dodge/Data/Creature/Misc.hs 47;" C MiniGunAI src/Dodge/Data/Creature/Misc.hs 48;" C
MiniGunFlare src/Dodge/Data/Muzzle.hs 32;" C MiniGunFlare src/Dodge/Data/Muzzle.hs 32;" C
ModIDID src/Dodge/Data/Modification.hs 21;" C ModIDID src/Dodge/Data/Modification.hs 21;" C
ModIDTimerPoint3Bool src/Dodge/Data/Modification.hs 13;" C ModIDTimerPoint3Bool src/Dodge/Data/Modification.hs 13;" C
@@ -780,7 +781,7 @@ Move src/Dodge/Data/ActionPlan.hs 26;" C
MoveEquipment src/Dodge/Data/RightButtonOptions.hs 20;" C MoveEquipment src/Dodge/Data/RightButtonOptions.hs 20;" C
MoveForward src/Dodge/Data/ActionPlan.hs 27;" C MoveForward src/Dodge/Data/ActionPlan.hs 27;" C
MoveNoStride src/Dodge/Data/ActionPlan.hs 28;" C MoveNoStride src/Dodge/Data/ActionPlan.hs 28;" C
MultGunAI src/Dodge/Data/Creature/Misc.hs 49;" C MultGunAI src/Dodge/Data/Creature/Misc.hs 50;" C
Mute src/Dodge/Data/Creature/Misc.hs 19;" C Mute src/Dodge/Data/Creature/Misc.hs 19;" C
Muzzle src/Dodge/Data/Muzzle.hs 9;" t Muzzle src/Dodge/Data/Muzzle.hs 9;" t
MuzzleBlink src/Dodge/Data/Muzzle.hs 55;" C MuzzleBlink src/Dodge/Data/Muzzle.hs 55;" C
@@ -804,7 +805,7 @@ MuzzleUnsafeBlink src/Dodge/Data/Muzzle.hs 56;" C
Muzzle_positions src/Dodge/Data/Config.hs 110;" C Muzzle_positions src/Dodge/Data/Config.hs 110;" C
MvForward src/Dodge/Data/ActionPlan.hs 34;" C MvForward src/Dodge/Data/ActionPlan.hs 34;" C
MvTurnToward src/Dodge/Data/ActionPlan.hs 33;" C MvTurnToward src/Dodge/Data/ActionPlan.hs 33;" C
MvWalking src/Dodge/Data/Creature/Misc.hs 28;" C MvWalking src/Dodge/Data/Creature/Misc.hs 29;" C
NAILBOX src/Dodge/Data/Item/Combine.hs 78;" C NAILBOX src/Dodge/Data/Item/Combine.hs 78;" C
NInt src/NewInt.hs 16;" C NInt src/NewInt.hs 16;" C
NIntMap src/NewInt.hs 22;" C NIntMap src/NewInt.hs 22;" C
@@ -839,7 +840,7 @@ NoItemZone src/Dodge/Data/Machine/Sensor.hs 31;" C
NoLightFlare src/Dodge/Data/Muzzle.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 120;" C
NoMouseContext src/Dodge/Data/Input.hs 14;" C NoMouseContext src/Dodge/Data/Input.hs 14;" C
NoMvType src/Dodge/Data/Creature/Misc.hs 27;" C NoMvType src/Dodge/Data/Creature/Misc.hs 28;" C
NoObjShads src/Dodge/Data/Config.hs 118;" C NoObjShads src/Dodge/Data/Config.hs 118;" C
NoParams src/Dodge/Data/Item/Params.hs 13;" C NoParams src/Dodge/Data/Item/Params.hs 13;" C
NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 14;" C NoRightButtonState src/Dodge/Data/RightButtonOptions.hs 14;" C
@@ -855,7 +856,7 @@ NoWorldEffect src/Dodge/Data/WorldEffect.hs 26;" C
Noclip src/Dodge/Data/Config.hs 83;" C Noclip src/Dodge/Data/Config.hs 83;" C
NodeMTree src/Dodge/Data/MetaTree.hs 17;" C NodeMTree src/Dodge/Data/MetaTree.hs 17;" C
NodeTree src/Dodge/Data/MetaTree.hs 16;" C NodeTree src/Dodge/Data/MetaTree.hs 16;" C
NonDrawnCreature src/Dodge/Data/Creature/Misc.hs 84;" C NonDrawnCreature src/Dodge/Data/Creature/Misc.hs 85;" C
NonInf src/Dodge/Data/CardinalPoint.hs 44;" C NonInf src/Dodge/Data/CardinalPoint.hs 44;" C
NormalOptions src/Dodge/Data/Universe.hs 71;" C NormalOptions src/Dodge/Data/Universe.hs 71;" C
NormalSpark src/Dodge/Data/Spark.hs 19;" C NormalSpark src/Dodge/Data/Spark.hs 19;" C
@@ -994,10 +995,10 @@ PhysicalSensor src/Dodge/Data/Machine/Sensor.hs 16;" C
Picture src/Picture/Data.hs 41;" t Picture src/Picture/Data.hs 41;" t
Piercing src/Dodge/Data/Damage.hs 16;" C Piercing src/Dodge/Data/Damage.hs 16;" C
Piezoelectric src/Dodge/Data/Material.hs 23;" C Piezoelectric src/Dodge/Data/Material.hs 23;" C
PistolAI src/Dodge/Data/Creature/Misc.hs 41;" C PistolAI src/Dodge/Data/Creature/Misc.hs 42;" C
Placement src/Dodge/Data/GenWorld.hs 113;" t Placement src/Dodge/Data/GenWorld.hs 113;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 97;" t PlacementSpot src/Dodge/Data/GenWorld.hs 97;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 88;" C PlainBarrel src/Dodge/Data/Creature/Misc.hs 89;" C
PlainDeath src/Dodge/Data/Creature.hs 69;" C PlainDeath src/Dodge/Data/Creature.hs 69;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlasmaBall src/Dodge/Data/PlasmaBall.hs 13;" t PlasmaBall src/Dodge/Data/PlasmaBall.hs 13;" t
@@ -1035,12 +1036,12 @@ ProxSensor src/Dodge/Data/Machine/Sensor.hs 24;" C
ProximityRequirement src/Dodge/Data/Machine/Sensor.hs 33;" t ProximityRequirement src/Dodge/Data/Machine/Sensor.hs 33;" t
ProximitySensor src/Dodge/Data/Machine/Sensor.hs 24;" t ProximitySensor src/Dodge/Data/Machine/Sensor.hs 24;" t
ProximitySensorType src/Dodge/Data/Machine/Sensor.hs 29;" t ProximitySensorType src/Dodge/Data/Machine/Sensor.hs 29;" t
Pulse src/Dodge/Data/Creature/Misc.hs 52;" t Pulse src/Dodge/Data/Creature/Misc.hs 53;" t
PulseBall src/Dodge/Data/PulseLaser.hs 20;" t PulseBall src/Dodge/Data/PulseLaser.hs 20;" t
PulseBallSF src/Dodge/Data/ComposedItem.hs 45;" C PulseBallSF src/Dodge/Data/ComposedItem.hs 45;" C
PulseLaser src/Dodge/Data/PulseLaser.hs 11;" t PulseLaser src/Dodge/Data/PulseLaser.hs 11;" t
PulseLaserSF src/Dodge/Data/ComposedItem.hs 42;" C PulseLaserSF src/Dodge/Data/ComposedItem.hs 42;" C
PulseStatus src/Dodge/Data/Creature/Misc.hs 52;" C PulseStatus src/Dodge/Data/Creature/Misc.hs 53;" C
PumpSF src/Dodge/Data/ComposedItem.hs 48;" C PumpSF src/Dodge/Data/ComposedItem.hs 48;" C
PushSource src/Dodge/Data/Door.hs 23;" t PushSource src/Dodge/Data/Door.hs 23;" t
PushedBy src/Dodge/Data/Door.hs 25;" C PushedBy src/Dodge/Data/Door.hs 25;" C
@@ -1264,7 +1265,7 @@ SpawnSound src/Dodge/Data/SoundOrigin.hs 43;" C
SpawnedBy src/Dodge/Data/Creature/State.hs 17;" C SpawnedBy src/Dodge/Data/Creature/State.hs 17;" C
SplashOptions src/Dodge/Data/Universe.hs 73;" C SplashOptions src/Dodge/Data/Universe.hs 73;" C
SplitBeamCombine src/Dodge/Data/Beam.hs 40;" C SplitBeamCombine src/Dodge/Data/Beam.hs 40;" C
SpreadGunAI src/Dodge/Data/Creature/Misc.hs 40;" C SpreadGunAI src/Dodge/Data/Creature/Misc.hs 41;" C
StabOrthReduce src/Dodge/Projectile/Create.hs 17;" C StabOrthReduce src/Dodge/Projectile/Create.hs 17;" C
StabSpinIncrease src/Dodge/Projectile/Create.hs 18;" C StabSpinIncrease src/Dodge/Projectile/Create.hs 18;" C
Stance src/Dodge/Data/Creature/Stance.hs 15;" t Stance src/Dodge/Data/Creature/Stance.hs 15;" t
@@ -1282,8 +1283,8 @@ Survive src/Dodge/Data/Scenario.hs 5;" C
Suspicious src/Dodge/Data/Creature/Perception.hs 64;" C Suspicious src/Dodge/Data/Creature/Perception.hs 64;" C
SwapEquipment src/Dodge/Data/RightButtonOptions.hs 24;" C SwapEquipment src/Dodge/Data/RightButtonOptions.hs 24;" C
Swarm src/Dodge/Data/Creature/State.hs 25;" C Swarm src/Dodge/Data/Creature/State.hs 25;" C
SwarmAI src/Dodge/Data/Creature/Misc.hs 44;" C SwarmAI src/Dodge/Data/Creature/Misc.hs 45;" C
SwarmCrit src/Dodge/Data/Creature/Misc.hs 69;" C SwarmCrit src/Dodge/Data/Creature/Misc.hs 70;" C
TAPE src/Dodge/Data/Item/Combine.hs 55;" C TAPE src/Dodge/Data/Item/Combine.hs 55;" C
TARGETING src/Dodge/Data/Item/Combine.hs 21;" C TARGETING src/Dodge/Data/Item/Combine.hs 21;" C
TCBase src/Dodge/Data/Terminal.hs 49;" C TCBase src/Dodge/Data/Terminal.hs 49;" C
@@ -1547,15 +1548,15 @@ _asDir src/Dodge/Data/ArcStep.hs 14;" f
_asObject src/Dodge/Data/ArcStep.hs 15;" f _asObject src/Dodge/Data/ArcStep.hs 15;" f
_asPos src/Dodge/Data/ArcStep.hs 13;" f _asPos src/Dodge/Data/ArcStep.hs 13;" f
_auDist src/Dodge/Data/Creature/Perception.hs 46;" f _auDist src/Dodge/Data/Creature/Perception.hs 46;" f
_avDexterity src/Dodge/Data/Creature/Misc.hs 63;" f _avDexterity src/Dodge/Data/Creature/Misc.hs 64;" f
_avIntelligence src/Dodge/Data/Creature/Misc.hs 64;" f _avIntelligence src/Dodge/Data/Creature/Misc.hs 65;" f
_avMoveSpeed src/Dodge/Data/Creature/Misc.hs 65;" f _avMoveSpeed src/Dodge/Data/Creature/Misc.hs 66;" f
_avPosture src/Dodge/Data/Creature/Misc.hs 66;" f _avPosture src/Dodge/Data/Creature/Misc.hs 67;" f
_avStrength src/Dodge/Data/Creature/Misc.hs 62;" f _avStrength src/Dodge/Data/Creature/Misc.hs 63;" f
_avatarMaterial src/Dodge/Data/Creature/Misc.hs 61;" f _avatarMaterial src/Dodge/Data/Creature/Misc.hs 62;" f
_avatarPulse src/Dodge/Data/Creature/Misc.hs 60;" f _avatarPulse src/Dodge/Data/Creature/Misc.hs 61;" f
_barrelShader src/Data/Preload/Render.hs 27;" f _barrelShader src/Data/Preload/Render.hs 27;" f
_barrelType src/Dodge/Data/Creature/Misc.hs 71;" f _barrelType src/Dodge/Data/Creature/Misc.hs 72;" f
_bdColor src/Dodge/Data/Prop.hs 23;" f _bdColor src/Dodge/Data/Prop.hs 23;" f
_bdMaxX src/Dodge/Data/Bounds.hs 12;" f _bdMaxX src/Dodge/Data/Bounds.hs 12;" f
_bdMaxY src/Dodge/Data/Bounds.hs 14;" f _bdMaxY src/Dodge/Data/Bounds.hs 14;" f
@@ -1716,11 +1717,11 @@ _cwgRoomClipping src/Dodge/Data/CWorld.hs 43;" f
_cwgSeed src/Dodge/Data/CWorld.hs 44;" f _cwgSeed src/Dodge/Data/CWorld.hs 44;" f
_cwgWorldBounds src/Dodge/Data/CWorld.hs 41;" f _cwgWorldBounds src/Dodge/Data/CWorld.hs 41;" f
_cylinderSize src/Shape/Data.hs 14;" f _cylinderSize src/Shape/Data.hs 14;" f
_dbPos src/Dodge/Data/Prop.hs 27;" f _dbPos src/Dodge/Data/Prop.hs 28;" f
_dbRot src/Dodge/Data/Prop.hs 30;" f _dbRot src/Dodge/Data/Prop.hs 31;" f
_dbSpin src/Dodge/Data/Prop.hs 31;" f _dbSpin src/Dodge/Data/Prop.hs 32;" f
_dbType src/Dodge/Data/Prop.hs 28;" f _dbType src/Dodge/Data/Prop.hs 29;" f
_dbVel src/Dodge/Data/Prop.hs 29;" f _dbVel src/Dodge/Data/Prop.hs 30;" f
_debris src/Dodge/Data/LWorld.hs 103;" f _debris src/Dodge/Data/LWorld.hs 103;" f
_debugFunction src/Dodge/Data/Universe.hs 59;" f _debugFunction src/Dodge/Data/Universe.hs 59;" f
_debugMessage src/Dodge/Data/Universe.hs 58;" f _debugMessage src/Dodge/Data/Universe.hs 58;" f
@@ -1881,7 +1882,7 @@ _heldWorldPos src/Dodge/Data/Input.hs 45;" f
_highlightItems src/Dodge/Data/CWorld.hs 36;" f _highlightItems src/Dodge/Data/CWorld.hs 36;" f
_hotkeys src/Dodge/Data/LWorld.hs 145;" f _hotkeys src/Dodge/Data/LWorld.hs 145;" f
_hud src/Dodge/Data/World.hs 46;" f _hud src/Dodge/Data/World.hs 46;" f
_humanoidAI src/Dodge/Data/Creature/Misc.hs 81;" f _humanoidAI src/Dodge/Data/Creature/Misc.hs 82;" f
_ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f _ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f
_ibtAttach src/Dodge/Data/Item/Combine.hs 19;" f _ibtAttach src/Dodge/Data/Item/Combine.hs 19;" f
_ibtBulletMod src/Dodge/Data/Item/Combine.hs 22;" f _ibtBulletMod src/Dodge/Data/Item/Combine.hs 22;" f
@@ -1942,9 +1943,9 @@ _lInvLock src/Dodge/Data/LWorld.hs 148;" f
_lTestInt src/Dodge/Data/LWorld.hs 144;" f _lTestInt src/Dodge/Data/LWorld.hs 144;" f
_lTestString src/Dodge/Data/LWorld.hs 143;" f _lTestString src/Dodge/Data/LWorld.hs 143;" f
_lWorld src/Dodge/Data/CWorld.hs 24;" f _lWorld src/Dodge/Data/CWorld.hs 24;" f
_lampColor src/Dodge/Data/Creature/Misc.hs 72;" f _lampColor src/Dodge/Data/Creature/Misc.hs 73;" f
_lampHeight src/Dodge/Data/Creature/Misc.hs 72;" f _lampHeight src/Dodge/Data/Creature/Misc.hs 73;" f
_lampLSID src/Dodge/Data/Creature/Misc.hs 72;" f _lampLSID src/Dodge/Data/Creature/Misc.hs 73;" f
_lasWepXSF src/Dodge/Data/ComposedItem.hs 41;" f _lasWepXSF src/Dodge/Data/ComposedItem.hs 41;" f
_laserEmmiter src/Dodge/Data/Laser.hs 16;" f _laserEmmiter src/Dodge/Data/Laser.hs 16;" f
_laserTypeDamage src/Dodge/Data/Laser.hs 15;" f _laserTypeDamage src/Dodge/Data/Laser.hs 15;" f
@@ -2032,7 +2033,7 @@ _mdPoint3 src/Dodge/Data/Modification.hs 18;" f
_mdTimer src/Dodge/Data/Modification.hs 17;" f _mdTimer src/Dodge/Data/Modification.hs 17;" f
_mdUpdate src/Dodge/Data/Modification.hs 16;" f _mdUpdate src/Dodge/Data/Modification.hs 16;" f
_mdUpdate src/Dodge/Data/Modification.hs 25;" f _mdUpdate src/Dodge/Data/Modification.hs 25;" f
_meleeCooldown src/Dodge/Data/Creature/Misc.hs 68;" f _meleeCooldown src/Dodge/Data/Creature/Misc.hs 69;" f
_meleeTarget src/Dodge/Data/ActionPlan.hs 139;" f _meleeTarget src/Dodge/Data/ActionPlan.hs 139;" f
_mgField src/Dodge/Data/Magnet.hs 23;" f _mgField src/Dodge/Data/Magnet.hs 23;" f
_mgPos src/Dodge/Data/Magnet.hs 22;" f _mgPos src/Dodge/Data/Magnet.hs 22;" f
@@ -2053,11 +2054,11 @@ _mtBranches src/Dodge/Data/MetaTree.hs 13;" f
_mtLabel src/Dodge/Data/MetaTree.hs 13;" f _mtLabel src/Dodge/Data/MetaTree.hs 13;" f
_mtTree src/Dodge/Data/MetaTree.hs 13;" f _mtTree src/Dodge/Data/MetaTree.hs 13;" f
_musicData src/Data/Preload.hs 13;" f _musicData src/Data/Preload.hs 13;" f
_mvAimSpeed src/Dodge/Data/Creature/Misc.hs 33;" f _mvAimSpeed src/Dodge/Data/Creature/Misc.hs 34;" f
_mvSpeed src/Dodge/Data/Creature/Misc.hs 28;" f _mvSpeed src/Dodge/Data/Creature/Misc.hs 29;" f
_mvToPoint src/Dodge/Data/Creature.hs 73;" f _mvToPoint src/Dodge/Data/Creature.hs 73;" f
_mvTurnJit src/Dodge/Data/Creature/Misc.hs 32;" f _mvTurnJit src/Dodge/Data/Creature/Misc.hs 33;" f
_mvTurnRad src/Dodge/Data/Creature/Misc.hs 31;" f _mvTurnRad src/Dodge/Data/Creature/Misc.hs 32;" f
_mzAmmoSlot src/Dodge/Data/Muzzle.hs 13;" f _mzAmmoSlot src/Dodge/Data/Muzzle.hs 13;" f
_mzEffect src/Dodge/Data/Muzzle.hs 15;" f _mzEffect src/Dodge/Data/Muzzle.hs 15;" f
_mzFlareType src/Dodge/Data/Muzzle.hs 14;" f _mzFlareType src/Dodge/Data/Muzzle.hs 14;" f
@@ -2099,7 +2100,7 @@ _phTargetingID src/Dodge/Data/Projectile.hs 42;" f
_pickUpLevel src/Dodge/Layout/Generate.hs 15;" f _pickUpLevel src/Dodge/Layout/Generate.hs 15;" f
_pickUps src/Dodge/Layout/Generate.hs 16;" f _pickUps src/Dodge/Layout/Generate.hs 16;" f
_pictureShaders src/Data/Preload/Render.hs 31;" f _pictureShaders src/Data/Preload/Render.hs 31;" f
_piercedPoints src/Dodge/Data/Creature/Misc.hs 89;" f _piercedPoints src/Dodge/Data/Creature/Misc.hs 90;" f
_pjBarrelSpin src/Dodge/Data/Projectile.hs 23;" f _pjBarrelSpin src/Dodge/Data/Projectile.hs 23;" f
_pjDetonatorID src/Dodge/Data/Projectile.hs 25;" f _pjDetonatorID src/Dodge/Data/Projectile.hs 25;" f
_pjDir src/Dodge/Data/Projectile.hs 18;" f _pjDir src/Dodge/Data/Projectile.hs 18;" f
@@ -2145,8 +2146,8 @@ _psSelect src/Dodge/Data/GenWorld.hs 101;" f
_pullWallShader src/Data/Preload/Render.hs 22;" f _pullWallShader src/Data/Preload/Render.hs 22;" f
_pulseBalls src/Dodge/Data/LWorld.hs 119;" f _pulseBalls src/Dodge/Data/LWorld.hs 119;" f
_pulseLasers src/Dodge/Data/LWorld.hs 118;" f _pulseLasers src/Dodge/Data/LWorld.hs 118;" f
_pulseProgress src/Dodge/Data/Creature/Misc.hs 54;" f _pulseProgress src/Dodge/Data/Creature/Misc.hs 55;" f
_pulseRate src/Dodge/Data/Creature/Misc.hs 53;" f _pulseRate src/Dodge/Data/Creature/Misc.hs 54;" f
_putBlock src/Dodge/Data/GenWorld.hs 43;" f _putBlock src/Dodge/Data/GenWorld.hs 43;" f
_putButton src/Dodge/Data/GenWorld.hs 39;" f _putButton src/Dodge/Data/GenWorld.hs 39;" f
_putChasmChasms src/Dodge/Data/GenWorld.hs 60;" f _putChasmChasms src/Dodge/Data/GenWorld.hs 60;" f
@@ -2309,9 +2310,9 @@ _skOldPos src/Dodge/Data/Spark.hs 14;" f
_skPos src/Dodge/Data/Spark.hs 13;" f _skPos src/Dodge/Data/Spark.hs 13;" f
_skType src/Dodge/Data/Spark.hs 15;" f _skType src/Dodge/Data/Spark.hs 15;" f
_skVel src/Dodge/Data/Spark.hs 12;" f _skVel src/Dodge/Data/Spark.hs 12;" f
_skinHead src/Dodge/Data/Creature/Misc.hs 78;" f _skinHead src/Dodge/Data/Creature/Misc.hs 79;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 80;" f _skinLower src/Dodge/Data/Creature/Misc.hs 81;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 79;" f _skinUpper src/Dodge/Data/Creature/Misc.hs 80;" f
_slInt src/Dodge/Data/HUD.hs 39;" f _slInt src/Dodge/Data/HUD.hs 39;" f
_slSec src/Dodge/Data/HUD.hs 39;" f _slSec src/Dodge/Data/HUD.hs 39;" f
_slSet src/Dodge/Data/HUD.hs 39;" f _slSet src/Dodge/Data/HUD.hs 39;" f
@@ -2471,6 +2472,7 @@ _vboShapes src/Data/Preload/Render.hs 44;" f
_vboVertexBytes src/Shader/Data.hs 82;" f _vboVertexBytes src/Shader/Data.hs 82;" f
_vcCoolDown src/Dodge/Data/Creature/Misc.hs 22;" f _vcCoolDown src/Dodge/Data/Creature/Misc.hs 22;" f
_vcMaxCoolDown src/Dodge/Data/Creature/Misc.hs 21;" f _vcMaxCoolDown src/Dodge/Data/Creature/Misc.hs 21;" f
_vcTimer src/Dodge/Data/Creature/Misc.hs 23;" f
_vertices src/Polyhedra/Data.hs 22;" f _vertices src/Polyhedra/Data.hs 22;" f
_viDist src/Dodge/Data/Creature/Perception.hs 41;" f _viDist src/Dodge/Data/Creature/Perception.hs 41;" f
_viFOV src/Dodge/Data/Creature/Perception.hs 40;" f _viFOV src/Dodge/Data/Creature/Perception.hs 40;" f
@@ -2642,7 +2644,7 @@ argV src/Geometry/Vector.hs 83;" f
armourChaseCrit src/Dodge/Creature/ArmourChase.hs 34;" f armourChaseCrit src/Dodge/Creature/ArmourChase.hs 34;" f
armouredChasers src/Dodge/Room/Boss.hs 58;" f armouredChasers src/Dodge/Room/Boss.hs 58;" f
armouredCorridor src/Dodge/Room/RoadBlock.hs 20;" f armouredCorridor src/Dodge/Room/RoadBlock.hs 20;" f
arms src/Dodge/Creature/Picture.hs 124;" f arms src/Dodge/Creature/Picture.hs 112;" f
arrow src/Picture/Composite.hs 19;" f arrow src/Picture/Composite.hs 19;" f
arrowPath src/Picture/Composite.hs 8;" f arrowPath src/Picture/Composite.hs 8;" f
assignHotkey src/Dodge/AssignHotkey.hs 9;" f assignHotkey src/Dodge/AssignHotkey.hs 9;" f
@@ -2694,14 +2696,14 @@ baseItemTriggerType src/Dodge/BaseTriggerType.hs 21;" f
baseRifleShape src/Dodge/Item/Draw/SPic.hs 324;" f baseRifleShape src/Dodge/Item/Draw/SPic.hs 324;" f
baseRodShape src/Dodge/Item/Draw/SPic.hs 407;" f baseRodShape src/Dodge/Item/Draw/SPic.hs 407;" f
baseSMGShape src/Dodge/Item/Draw/SPic.hs 395;" f baseSMGShape src/Dodge/Item/Draw/SPic.hs 395;" f
baseShoulder src/Dodge/Creature/Picture.hs 162;" f baseShoulder src/Dodge/Creature/Picture.hs 150;" f
baseStickShape src/Dodge/Item/Draw/SPic.hs 301;" f baseStickShape src/Dodge/Item/Draw/SPic.hs 301;" f
baseStickShapeX src/Dodge/Item/Draw/SPic.hs 293;" f baseStickShapeX src/Dodge/Item/Draw/SPic.hs 293;" f
baseStickSpread src/Dodge/HeldUse.hs 346;" f baseStickSpread src/Dodge/HeldUse.hs 346;" f
basicAttentionUpdate src/Dodge/Creature/Perception.hs 127;" f basicAttentionUpdate src/Dodge/Creature/Perception.hs 127;" f
basicAwarenessUpdate src/Dodge/Creature/Perception.hs 39;" f basicAwarenessUpdate src/Dodge/Creature/Perception.hs 39;" f
basicCrPict src/Dodge/Creature/Picture.hs 33;" f basicCrPict src/Dodge/Creature/Picture.hs 32;" f
basicCrShape src/Dodge/Creature/Picture.hs 39;" f basicCrShape src/Dodge/Creature/Picture.hs 38;" f
basicItemDisplay src/Dodge/Item/Display.hs 23;" f basicItemDisplay src/Dodge/Item/Display.hs 23;" f
basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f
basicMuzFlare src/Dodge/HeldUse.hs 731;" f basicMuzFlare src/Dodge/HeldUse.hs 731;" f
@@ -2721,6 +2723,7 @@ blinkDistortions src/Dodge/Creature/Action/Blink.hs 46;" f
blinkShockwave src/Dodge/Creature/Action/Blink.hs 79;" f blinkShockwave src/Dodge/Creature/Action/Blink.hs 79;" f
blinker src/Dodge/Item/Held/Utility.hs 30;" f blinker src/Dodge/Item/Held/Utility.hs 30;" f
blipAt src/Dodge/RadarSweep.hs 78;" f blipAt src/Dodge/RadarSweep.hs 78;" f
blockDebrisType src/Dodge/Block/Debris.hs 68;" f
blockLine src/Dodge/Placement/Instance/Wall.hs 44;" f blockLine src/Dodge/Placement/Instance/Wall.hs 44;" f
blockPillar src/Dodge/Room/Pillar.hs 23;" f blockPillar src/Dodge/Room/Pillar.hs 23;" f
blockedCorridor src/Dodge/Room/RoadBlock.hs 71;" f blockedCorridor src/Dodge/Room/RoadBlock.hs 71;" f
@@ -2819,7 +2822,7 @@ chaseCritInternal src/Dodge/Humanoid.hs 8;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 122;" f chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 122;" 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
chaseUpperBody src/Dodge/Creature/Picture.hs 64;" f chaseUpperBody src/Dodge/Creature/Picture.hs 62;" f
chasmRotate src/Dodge/Creature/Update.hs 177;" f chasmRotate src/Dodge/Creature/Update.hs 177;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 371;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 371;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 305;" f chasmSpitTerminal src/Dodge/Room/Tutorial.hs 305;" f
@@ -2958,7 +2961,7 @@ corridorWallN src/Dodge/Room/Corridor.hs 77;" f
crAdd src/Dodge/Room/RezBox.hs 116;" f crAdd src/Dodge/Room/RezBox.hs 116;" f
crAwayFromPost src/Dodge/Creature/Test.hs 83;" f crAwayFromPost src/Dodge/Creature/Test.hs 83;" f
crBlips src/Dodge/RadarSweep.hs 88;" f crBlips src/Dodge/RadarSweep.hs 88;" f
crCamouflage src/Dodge/Creature/Picture.hs 36;" f crCamouflage src/Dodge/Creature/Picture.hs 35;" f
crCanSeeCr src/Dodge/Creature/Test.hs 50;" f crCanSeeCr src/Dodge/Creature/Test.hs 50;" f
crCrSpring src/Dodge/Update.hs 978;" f crCrSpring src/Dodge/Update.hs 978;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 59;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 59;" f
@@ -3040,7 +3043,7 @@ crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f
crsNearRect src/Dodge/Zoning/Creature.hs 40;" f crsNearRect src/Dodge/Zoning/Creature.hs 40;" f
crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f
crystalLine src/Dodge/Placement/Instance/Wall.hs 58;" f crystalLine src/Dodge/Placement/Instance/Wall.hs 58;" f
cubeShape src/Dodge/Block/Debris.hs 156;" f cubeShape src/Dodge/Block/Debris.hs 162;" f
cullPoint src/Dodge/Render/ShapePicture.hs 137;" f cullPoint src/Dodge/Render/ShapePicture.hs 137;" 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
@@ -3099,13 +3102,13 @@ dbwMuzzles src/Dodge/HeldUse.hs 349;" f
deZoneIX src/Dodge/Zoning/Base.hs 91;" f deZoneIX src/Dodge/Zoning/Base.hs 91;" f
deZoneWall src/Dodge/Zoning/Wall.hs 69;" f deZoneWall src/Dodge/Zoning/Wall.hs 69;" f
deadEndRoom src/Dodge/Room/Room.hs 262;" f deadEndRoom src/Dodge/Room/Room.hs 262;" f
deadFeet src/Dodge/Creature/Picture.hs 120;" f deadFeet src/Dodge/Creature/Picture.hs 108;" f
deadRot src/Dodge/Creature/Picture.hs 138;" f deadRot src/Dodge/Creature/Picture.hs 126;" f
deadScalp src/Dodge/Creature/Picture.hs 133;" f deadScalp src/Dodge/Creature/Picture.hs 121;" f
deadUpperBody src/Dodge/Creature/Picture.hs 159;" f deadUpperBody src/Dodge/Creature/Picture.hs 147;" f
debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 725;" f debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 725;" f
debrisSPic src/Dodge/Prop/Draw.hs 17;" f debrisSPic src/Dodge/Prop/Draw.hs 17;" f
debrisSize src/Dodge/Block/Debris.hs 125;" f debrisSize src/Dodge/Block/Debris.hs 131;" f
debugEvent src/Dodge/Debug.hs 43;" f debugEvent src/Dodge/Debug.hs 43;" f
debugEvent' src/Dodge/Debug.hs 49;" f debugEvent' src/Dodge/Debug.hs 49;" f
debugEvents src/Dodge/Debug.hs 28;" f debugEvents src/Dodge/Debug.hs 28;" f
@@ -3325,7 +3328,7 @@ drawBoundingBox src/Dodge/Debug/Picture.hs 368;" f
drawBullet src/Dodge/Render/ShapePicture.hs 176;" f drawBullet src/Dodge/Render/ShapePicture.hs 176;" f
drawButton src/Dodge/Button/Draw.hs 11;" f drawButton src/Dodge/Button/Draw.hs 11;" f
drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f
drawChaseCrit src/Dodge/Creature/Picture.hs 54;" f drawChaseCrit src/Dodge/Creature/Picture.hs 53;" f
drawCircCollisionTest src/Dodge/Debug/Picture.hs 118;" f drawCircCollisionTest src/Dodge/Debug/Picture.hs 118;" f
drawCliff src/Dodge/Render/ShapePicture.hs 87;" f drawCliff src/Dodge/Render/ShapePicture.hs 87;" f
drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f
@@ -3354,7 +3357,7 @@ drawDragSelecting src/Dodge/Render/HUD.hs 162;" f
drawDumbSwitch src/Dodge/Button/Draw.hs 31;" f drawDumbSwitch src/Dodge/Button/Draw.hs 31;" f
drawEmptySet src/Dodge/Render/Picture.hs 151;" f drawEmptySet src/Dodge/Render/Picture.hs 151;" f
drawEnergyBall src/Dodge/EnergyBall/Draw.hs 7;" f drawEnergyBall src/Dodge/EnergyBall/Draw.hs 7;" f
drawEquipment src/Dodge/Creature/Picture.hs 171;" f drawEquipment src/Dodge/Creature/Picture.hs 159;" f
drawExamineInventory src/Dodge/Render/HUD.hs 199;" f drawExamineInventory src/Dodge/Render/HUD.hs 199;" f
drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f
drawFarWallDetect src/Dodge/Debug/Picture.hs 271;" f drawFarWallDetect src/Dodge/Debug/Picture.hs 271;" f
@@ -3362,7 +3365,7 @@ drawFlame src/Dodge/Flame/Draw.hs 8;" f
drawFlamelet src/Dodge/EnergyBall/Draw.hs 34;" f drawFlamelet src/Dodge/EnergyBall/Draw.hs 34;" f
drawForceField src/Dodge/Wall/Draw.hs 15;" f drawForceField src/Dodge/Wall/Draw.hs 15;" f
drawGapPlus src/Dodge/Render/Picture.hs 278;" f drawGapPlus src/Dodge/Render/Picture.hs 278;" f
drawGib src/Dodge/Prop/Draw.hs 30;" f drawGib src/Dodge/Prop/Draw.hs 31;" f
drawHUD src/Dodge/Render/HUD.hs 53;" f drawHUD src/Dodge/Render/HUD.hs 53;" f
drawInputMenu src/Dodge/Render/MenuScreen.hs 33;" f drawInputMenu src/Dodge/Render/MenuScreen.hs 33;" f
drawInspectWall src/Dodge/Debug/Picture.hs 256;" f drawInspectWall src/Dodge/Debug/Picture.hs 256;" f
@@ -3533,8 +3536,7 @@ faceEdges src/Polyhedra.hs 62;" f
facesToVF src/Polyhedra/Geodesic.hs 70;" f facesToVF src/Polyhedra/Geodesic.hs 70;" f
farWallDistDirection src/Dodge/Update/Camera.hs 245;" f farWallDistDirection src/Dodge/Update/Camera.hs 245;" f
fdiv src/ShortShow.hs 41;" f fdiv src/ShortShow.hs 41;" f
feet src/Dodge/Creature/Picture.hs 93;" f feet src/Dodge/Creature/Picture.hs 94;" f
ffeet src/Dodge/Creature/Picture.hs 107;" f
filter3 src/FoldableHelp.hs 76;" f filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 160;" f filterSectionsPair src/Dodge/DisplayInventory.hs 160;" f
findBlips src/Dodge/RadarSweep.hs 63;" f findBlips src/Dodge/RadarSweep.hs 63;" f
@@ -4113,10 +4115,10 @@ makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 124;" f makeColorTermLine src/Dodge/Terminal.hs 124;" f
makeColorTermPara src/Dodge/Terminal.hs 121;" f makeColorTermPara src/Dodge/Terminal.hs 121;" f
makeCorpse src/Dodge/Corpse/Make.hs 13;" f makeCorpse src/Dodge/Corpse/Make.hs 13;" f
makeDebris src/Dodge/Block/Debris.hs 69;" f makeDebris src/Dodge/Block/Debris.hs 75;" f
makeDebrisDirected src/Dodge/Block/Debris.hs 95;" f makeDebrisDirected src/Dodge/Block/Debris.hs 101;" f
makeDebrisDirectedZ src/Dodge/Block/Debris.hs 75;" f makeDebrisDirectedZ src/Dodge/Block/Debris.hs 81;" f
makeDebrisZ src/Dodge/Block/Debris.hs 72;" f makeDebrisZ src/Dodge/Block/Debris.hs 78;" f
makeDoorDebris src/Dodge/Block/Debris.hs 41;" f makeDoorDebris src/Dodge/Block/Debris.hs 41;" f
makeDumbSwitch src/Dodge/Room/LongDoor.hs 145;" f makeDumbSwitch src/Dodge/Room/LongDoor.hs 145;" f
makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f makeDustAt src/Dodge/WorldEvent/Cloud.hs 17;" f
@@ -4351,7 +4353,7 @@ oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 635;" f
onEquipWristShield src/Dodge/Euse.hs 89;" f onEquipWristShield src/Dodge/Euse.hs 89;" f
onRemoveWristShield src/Dodge/Euse.hs 79;" f onRemoveWristShield src/Dodge/Euse.hs 79;" f
oneH src/Dodge/Creature/Test.hs 95;" f oneH src/Dodge/Creature/Test.hs 95;" f
oneSmooth src/Dodge/Creature/Picture.hs 90;" f oneSmooth src/Dodge/Creature/Picture.hs 91;" f
openConsole src/Dodge/Update.hs 138;" f openConsole src/Dodge/Update.hs 138;" f
optionMenu src/Dodge/Menu.hs 110;" f optionMenu src/Dodge/Menu.hs 110;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 62;" f optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 62;" f
@@ -4555,7 +4557,7 @@ printRotPoint src/Dodge/Debug/Picture.hs 38;" f
prismBox src/Shape.hs 74;" f prismBox src/Shape.hs 74;" f
prismPoly src/Shape.hs 60;" f prismPoly src/Shape.hs 60;" f
projV src/Geometry/Vector.hs 179;" f projV src/Geometry/Vector.hs 179;" f
propSPic src/Dodge/Prop/Draw.hs 26;" f propSPic src/Dodge/Prop/Draw.hs 27;" f
propagateOrientation src/Dodge/Item/Orientation.hs 92;" f propagateOrientation src/Dodge/Item/Orientation.hs 92;" f
ps0 src/Dodge/LevelGen/PlacementHelper.hs 52;" f ps0 src/Dodge/LevelGen/PlacementHelper.hs 52;" f
ps0PushPS src/Dodge/LevelGen/PlacementHelper.hs 76;" f ps0PushPS src/Dodge/LevelGen/PlacementHelper.hs 76;" f
@@ -4834,7 +4836,7 @@ scale3 src/Picture/Base.hs 137;" f
scaleMat src/MatrixHelper.hs 71;" f scaleMat src/MatrixHelper.hs 71;" f
scaleMatrix src/MatrixHelper.hs 68;" f scaleMatrix src/MatrixHelper.hs 68;" f
scaleSH src/Shape.hs 266;" f scaleSH src/Shape.hs 266;" f
scalp src/Dodge/Creature/Picture.hs 147;" f scalp src/Dodge/Creature/Picture.hs 135;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 82;" f scancodeToHotkey src/Dodge/Creature/YourControl.hs 82;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 126;" f scorchSPic src/Dodge/Creature/Update.hs 126;" f
@@ -4993,10 +4995,10 @@ showEquipItem src/Dodge/Item/Display.hs 108;" f
showInt src/Dodge/Item/Info.hs 75;" f showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 130;" f showIntsString src/Dodge/Tree/Compose.hs 130;" f
showInventoryPathing src/Dodge/Item/Display.hs 86;" f showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 78;" f showManObj src/Dodge/TestString.hs 77;" f
showMuzzlePositions src/Dodge/Debug.hs 292;" f showMuzzlePositions src/Dodge/Debug.hs 292;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 88;" f showTimeFlow src/Dodge/TestString.hs 87;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f
shrinkVert src/Geometry/Polygon.hs 202;" f shrinkVert src/Geometry/Polygon.hs 202;" f
shuffle src/RandomHelp.hs 68;" f shuffle src/RandomHelp.hs 68;" f
@@ -5300,11 +5302,11 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 663;" f
topInvW src/Dodge/ListDisplayParams.hs 54;" f topInvW src/Dodge/ListDisplayParams.hs 54;" f
topPrismEdgeIndices src/Shader/Poke.hs 335;" f topPrismEdgeIndices src/Shader/Poke.hs 335;" f
topPrismIndices src/Shader/Poke.hs 410;" f topPrismIndices src/Shader/Poke.hs 410;" f
topTestPart src/Dodge/TestString.hs 74;" f topTestPart src/Dodge/TestString.hs 73;" f
torchShape src/Dodge/Item/Draw/SPic.hs 277;" f torchShape src/Dodge/Item/Draw/SPic.hs 277;" f
torqueAmount src/Dodge/HeldUse.hs 606;" f torqueAmount src/Dodge/HeldUse.hs 606;" f
torqueCr src/Dodge/WorldEffect.hs 85;" f torqueCr src/Dodge/WorldEffect.hs 85;" f
torso src/Dodge/Creature/Picture.hs 152;" f torso src/Dodge/Creature/Picture.hs 140;" f
tractCr src/Dodge/TractorBeam/Update.hs 28;" f tractCr src/Dodge/TractorBeam/Update.hs 28;" f
tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f
tractorBeamAt src/Dodge/HeldUse.hs 850;" f tractorBeamAt src/Dodge/HeldUse.hs 850;" f
@@ -5534,7 +5536,7 @@ updateWheelEvent src/Dodge/Update/Scroll.hs 21;" f
updateWheelEvents src/Dodge/Update.hs 474;" f updateWheelEvents src/Dodge/Update.hs 474;" f
updateWorldEventFlag src/Dodge/Update.hs 127;" f updateWorldEventFlag src/Dodge/Update.hs 127;" f
updateWorldEventFlags src/Dodge/Update.hs 115;" f updateWorldEventFlags src/Dodge/Update.hs 115;" f
upperBody src/Dodge/Creature/Picture.hs 167;" f upperBody src/Dodge/Creature/Picture.hs 155;" f
upperBox src/Shape.hs 153;" f upperBox src/Shape.hs 153;" f
upperBoxHalf src/Shape.hs 219;" f upperBoxHalf src/Shape.hs 219;" f
upperBoxMT src/Shape.hs 144;" f upperBoxMT src/Shape.hs 144;" f