Track slime amount using ints

This commit is contained in:
2026-05-06 15:40:31 +01:00
parent e927de6508
commit b76148ae2a
12 changed files with 203 additions and 147 deletions
+1 -1
View File
@@ -193,7 +193,7 @@ crHeight cr = case cr ^. crHP of
Avatar {} -> 25
CrabCrit {} -> 25
SlinkCrit {} -> 25
SlimeCrit {_slimeRad = r} -> min 15 r
SlimeCrit {_slimeSlime = r} -> min 15 $ slimeToRad r
BeeCrit {} -> 10
HiveCrit {} -> 25
BarrelCrit{} -> 20
+4 -4
View File
@@ -69,13 +69,13 @@ slimeCrit :: Creature
slimeCrit = defaultCreature
& crName .~ "slimeCrit"
& crHP .~ HP 1000
& crType .~ SlimeCrit r 0 0 (V2 r 0) False 0
& crType .~ SlimeCrit r 0 0 (V2 (slimeToRad r) 0) False 0
& crFaction .~ ColorFaction (light green)
& crPerception . cpVision . viFOV .~ FloatFOV pi
& crActionPlan .~ SlimeIntelligence
& crStance . carriage .~ Crawling
where
r = 50
r = 250000
hoverCrit :: Creature
hoverCrit =
@@ -91,7 +91,7 @@ beeCrit =
defaultCreature
& crName .~ "beeCrit"
& crHP .~ HP 100
& crType .~ BeeCrit 0 Nothing 0 0 0 Nothing
& crType .~ BeeCrit 0 Nothing 0 0 0 Nothing 1
& crFaction .~ ColorFaction yellow
& crStance . carriage .~ Flying 15
@@ -100,6 +100,6 @@ hiveCrit =
defaultCreature
& crName .~ "hiveCrit"
& crHP .~ HP 100000
& crType .~ HiveCrit mempty 0
& crType .~ HiveCrit mempty 0 400
& crStance . carriage .~ Rooted
& crFaction .~ ColorFaction yellow
+2 -2
View File
@@ -13,6 +13,6 @@ crMass = \case
BarrelCrit{} -> 10
SlinkCrit{} -> 100
LampCrit {} -> 3
SlimeCrit {_slimeRad = r} -> r * r / 10
BeeCrit {_beeSlime = x} -> 3 + x
SlimeCrit {_slimeSlime = r} -> fromIntegral r / 1000
BeeCrit {_beeSlime = x} -> 3 + fromIntegral x / 100
HiveCrit {} -> 100
+2 -2
View File
@@ -64,7 +64,7 @@ drawSlimeCrit cr = colorSH green
& each %~ rotateV (-cr ^. crDir)
& each %~ (((r-cr^?!crType.slimeRadWobble)/r) *^)
where
r = cr ^?! crType . slimeRad
r = cr ^?! crType . slimeSlime . to slimeToRad
p = cr ^?! crType . slimeCompression
d = normalize p
s = norm p / r
@@ -131,7 +131,7 @@ drawBeeCrit cr = colorSH col
col | cr ^?! crType . beeAggro > 0 = red
| otherwise = yellow
f | Mounted {} <- cr ^. crStance . carriage
= each . sfVs . each . _xy %~ scaleAlong (V2 0 1) (1 + g ( modTo 1 (cr ^?! crType . beeSlime)))
= each . sfVs . each . _xy %~ scaleAlong (V2 0 1) (1 + g ( modTo 1 (cr ^?! crType . beeSlime . to ((/100) . fromIntegral))))
| otherwise = id
g x | x > 0.5 = 1 - x
| otherwise = x
+2 -2
View File
@@ -11,11 +11,11 @@ crRad = \case
ChaseCrit {} -> 10
CrabCrit {} -> 10
HoverCrit {} -> 8
BeeCrit {_beeSlime = x} -> sqrt $ 2^(2::Int) + x
BeeCrit {_beeSlime = x} -> sqrt $ 4 + (fromIntegral x / 100)
SwarmCrit -> 2
AutoCrit -> 10
BarrelCrit{} -> 10
LampCrit {} -> 3
SlinkCrit {} -> 10
HiveCrit {} -> 20
SlimeCrit {_slimeRad = r,_slimeRadWobble = x} -> r - x
SlimeCrit {_slimeSlime = r,_slimeRadWobble = x} -> slimeToRad r - x
+1 -1
View File
@@ -57,7 +57,7 @@ updateCarriage' cid cr w = \case
mcr <- w ^? cWorld . lWorld . creatures . ix mid
mp <- mcr ^? crPos
d <- mcr ^? crType . slimeCompression
r <- mcr ^? crType . slimeRad
r <- mcr ^? crType . slimeSlime . to slimeToRad
return $ w & tocr . crPos .~ mp + (p & _xy %~ compressionScale ((1/r) *^ d))
where
tocr = cWorld . lWorld . creatures . ix cid
+44 -19
View File
@@ -84,16 +84,20 @@ updateHiveCrit cr cid w
| Just x <- cr ^? crType . hiveChildren . to IS.size
, x < nbees
, Just y <- cr ^? crType . hiveGestation
, y == 0 = w
, y == 0
, Just z <- cr ^? crType . hiveSlime
, z >= 400
= w
& tocr . crType . hiveChildren %~ IS.insert nid
& tocr . crType . hiveGestation .~ 50
& cWorld . lWorld . creatures . at nid ?~ ncr
& tocr . crType . hiveSlime -~ 400
| Just x <- cr ^? crType . hiveChildren . to IS.size
, x < nbees = w
& tocr . crType . hiveGestation %~ (max 0 . subtract 1)
| otherwise = w
where
nbees = 25
nbees = 15
tocr = cWorld . lWorld . creatures . ix cid
nid = IM.newKey $ w ^. cWorld . lWorld . creatures
ncr = beeCrit & crPos .~ (cr ^. crPos + (0 & _xy +~ 25))
@@ -108,9 +112,18 @@ updateBeeFromPheremones cr cid w
f bp = distance (cr ^. crPos . _xy) (bp ^. bpPos . _xy) < 20
updateBeeCrit :: Creature -> Int -> World -> World
updateBeeCrit cr
| cr ^?! crType . beeAggro > 0 = updateAggroBee cr
| otherwise = updateCalmBee cr
updateBeeCrit cr cid
| cr ^?! crType . beeAggro > 0 = updateAggroBee cr cid
| otherwise = beeLifespanCheck cr cid . updateCalmBee cr cid
beeLifespanCheck :: Creature -> Int -> World -> World
beeLifespanCheck cr cid
| Just ls <- cr ^? crType . beeLifespan
, Just x <- cr ^? crType . beeSlime
, ls < 1
, x < 5
= cWorld . lWorld . creatures . ix cid . crHP . _HP -~ 1
| otherwise = id
updateAggroBee :: Creature -> Int -> World -> World
updateAggroBee cr cid w
@@ -158,15 +171,19 @@ updateCalmBee cr cid w
| Just hcr <- gethive
, distance (cr ^. crPos . _xy) (hcr ^. crPos . _xy) < 30
, Just x <- cr ^? crType . beeSlime
, x >= 0.5 = w & tocr . crType . beeSlime -~ 0.5
, x >= 50 = w
& tocr . crType . beeSlime -~ 50
& cWorld . lWorld . creatures . ix (hcr ^. crID) . crType . hiveSlime +~ 50
| Just x <- cr ^? crType . beeSlime
, x < 0.5
, x < 50
, Just hcr <- gethive
, distance (cr ^. crPos . _xy) (hcr ^. crPos . _xy) < 30
, Just ReturnToHive <- cr ^? crActionPlan . apStrategy = startsearch
| Just ReturnToHive <- cr ^? crActionPlan . apStrategy = w
| Just x <- cr ^? crType . beeSlime
, x >= 15 = starthivereturn
, x >= 1500 = starthivereturn
& randGen .~ gsa
& tocr . crType . beeLifespan %~ max 0 . subtract sa
| Just mid <- cr ^? crStance . carriage . mountID
, mountshakeoff mid = startsearch
| Nothing <- cr ^? crActionPlan . apStrategy . harvestTarget
@@ -177,10 +194,11 @@ updateCalmBee cr cid w
| Just tid <- cr ^? crStance . carriage . mountID
, Just SlimeCrit{} <- w ^? cWorld . lWorld . creatures . ix tid . crType = w
& tocr . crType . beeSlime +~ sspeed
& cWorld . lWorld . creatures . ix tid . crType . slimeRad %~ (sqrt . subtract sspeed . (^(2::Int)))
-- & cWorld . lWorld . creatures . ix tid . crType . slimeRad %~ (sqrt . subtract sspeed . (^(2::Int)))
& cWorld . lWorld . creatures . ix tid . crType . slimeSlime -~ sspeed
| Just (tcr,ti) <- gettarg
, distance (cr ^. crPos . _xy) (tcr ^. crPos . _xy) < 0.8*crRad (tcr ^. crType)
, Just r <- tcr ^? crType . slimeRad
, Just r <- tcr ^? crType . slimeSlime . to slimeToRad
, Just d <- tcr ^? crType . slimeCompression
= w
& tocr . crStance . carriage .~ Mounted ti (cr ^. crPos - tcr ^. crPos & _xy %~ compressionScale (vNormal ((1/r) *^d)))
@@ -193,6 +211,7 @@ updateCalmBee cr cid w
& tocr . crActionPlan . apStrategy . searchTimer %~ (max 0 . subtract 1)
| otherwise = startsearch
where
(sa,gsa) = runState (takeOne [0,1]) (w ^. randGen)
starthivereturn = fromMaybe w $ do
hcr <- gethive
return $ w
@@ -213,11 +232,12 @@ updateCalmBee cr cid w
mcr <- w ^? cWorld . lWorld . creatures . ix mid
SlimeCrit {_slimeSplitTimer = x} <- mcr ^? crType
return $ x > 0
sspeed = 0.05
--sspeed = 0.05
sspeed = 5
gettarg = do
i <- cr ^? crActionPlan . apStrategy . harvestTarget
tcr <- w ^? cWorld . lWorld . creatures . ix i
x <- tcr ^? crType . slimeRad
x <- tcr ^? crType . slimeSlime . to slimeToRad
guard $ x > 12
return (tcr,i)
gethive = do
@@ -225,7 +245,7 @@ updateCalmBee cr cid w
w ^? cWorld . lWorld . creatures . ix i
tocr = cWorld . lWorld . creatures . ix cid
istarget tcr = fromMaybe False $ do
r <- tcr ^? crType . slimeRad
r <- tcr ^? crType . slimeSlime . to slimeToRad
return $ r > 12
slimeCritUpdate :: Int -> World -> World
@@ -260,7 +280,7 @@ slimeCritUpdate cid w
f' | norm p > 3*r/2 = const True
| otherwise = id
t = cr ^?! crType . slimeIsCompressing
r = cr ^?! crType . slimeRad
r = cr ^?! crType . slimeSlime . to slimeToRad
p = cr ^?! crType . slimeCompression
setSlimeDir :: Int -> Creature -> World -> State StdGen World
@@ -281,7 +301,7 @@ setSlimeDir cid cr w = do
tocr = cWorld . lWorld . creatures . ix cid
-- tocr' i = cWorld . lWorld . creatures . at i
cxy = cr ^. crPos . _xy
r = cr ^?! crType . slimeRad
r = cr ^?! crType . slimeSlime . to slimeToRad
doSlimeRadChange :: Creature -> Creature
@@ -314,18 +334,20 @@ splitSlimeCrit p v cr = do
| isLHS p (p+v) cxy = normalize (vNormal v)
| otherwise = - normalize (vNormal v)
return (cr' & crPos . _xy .~ mp + (r1 + 0.51) *^ mvdir
& crType . slimeRad .~ r1
-- & crType . slimeRad .~ r1
& crType . slimeSlime .~ round (r1 ^ (2 :: Int) * 100)
& crType . slimeCompression .~ rotateV (argV mvdir) (V2 r1 0)
& crDir .~ argV mvdir
,cr' & crPos . _xy .~ mp - (r2 + 0.51) *^ mvdir
& crType . slimeRad .~ r2
-- & crType . slimeRad .~ r2
& crType . slimeSlime .~ round (r2^(2::Int) * 100)
& crType . slimeCompression .~ rotateV (argV (-mvdir)) (V2 r2 0)
& crDir .~ argV (-mvdir)
& crType . slimeEngulfProgress .~ 0
)
where
cxy = cr ^. crPos . _xy
r = cr ^?! crType . slimeRad
r = cr ^?! crType . slimeSlime . to slimeToRad
cr' = cr & crDamage .~ []
& crType . slimeRadWobble .~ 0
& crType . slimeSplitTimer .~ 10
@@ -412,7 +434,10 @@ crDeathEffects cr w = case cr ^. crType of
return $ w & cWorld . lWorld . creatures . ix hid . crType . hiveChildren %~ IS.delete (cr ^. crID)
_ -> w
where
beepheremone = cWorld . lWorld . beePheremones .:~ BPheremone (cr ^. crPos) (cr ^. crPos - cr ^. crOldPos) 200
beepheremone
| Just x <- cr ^? crType . beeLifespan
, x < 1 = id
| otherwise = cWorld . lWorld . beePheremones .:~ BPheremone (cr ^. crPos) (cr ^. crPos - cr ^. crOldPos) 200
startDeathTimer :: Creature -> Creature
startDeathTimer cr = cr & crDeathTimer ?~ case cr ^. crType of
+7 -2
View File
@@ -78,7 +78,7 @@ data CreatureType
, _slinkHeadPos :: Point3Q
}
| SlimeCrit
{ _slimeRad :: Float
{ _slimeSlime :: Int -- note multiplied by 100
, _slimeRadWobble :: Float
, _slimeSplitTimer :: Int
, _slimeCompression :: Point2
@@ -86,22 +86,27 @@ data CreatureType
, _slimeEngulfProgress :: Float
}
| BeeCrit
{ _beeSlime :: Float
{ _beeSlime :: Int
, _beeHive :: Maybe Int
, _startStopMv :: Int
, _beeAggro :: Int
, _meleeCooldown :: Int
, _beeRandomMovement :: Maybe FootForward
, _beeLifespan :: Int
}
| HiveCrit
{ _hiveChildren :: IS.IntSet
, _hiveGestation :: Int
, _hiveSlime :: Int
}
| SwarmCrit
| AutoCrit
| BarrelCrit {_barrelType :: BarrelType}
| LampCrit {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int}
slimeToRad :: Int -> Float
slimeToRad x = sqrt $ fromIntegral x * 0.01
data AvatarPosture = AvPosture
data CreatureShape
+6 -3
View File
@@ -56,13 +56,16 @@ tutAnoTree :: State LayoutVars MTRS
tutAnoTree = do
foldMTRS
[ tToBTree "TutStartRez" . return . cleatOnward <$> tutRezBox
, corDoor
, chasmSpitTerminal
-- , corDoor
-- , chasmSpitTerminal
-- , tToBTree "" . return . cleatOnward <$> slowDoorRoom
, corDoor
--, tToBTree "" . return . cleatOnward <$> (xChasm 200 200
, tToBTree "" . return . cleatOnward <$> ((putSingleLight =<< roomRectAutoLights 300 300)
<&> rmPmnts <>~ [sps0 (PutCrit slimeCrit) & plSpot . psPos .~ V2 150 100
<&> rmPmnts <>~
[sps0 (PutCrit slimeCrit) & plSpot . psPos .~ V2 150 100
,sps0 (PutCrit slimeCrit) & plSpot . psPos .~ V2 50 50
,sps0 (PutCrit slimeCrit) & plSpot . psPos .~ V2 50 150
, sps0 (PutCrit hiveCrit) & plSpot . psPos .~ V2 250 50
, sps0 (PutCrit chaseCrit) & plSpot . psPos .~ V2 250 100
]
+11 -1
View File
@@ -47,8 +47,18 @@ isBee cr = case cr ^. crType of
BeeCrit{} -> True
_ -> False
crslime :: Creature -> Int
crslime cr = case cr ^. crType of
SlimeCrit {_slimeSlime=r} | HP{} <- cr ^. crHP -> r -- r ^ (2::Int)
HiveCrit {_hiveSlime=x} -> x
BeeCrit {_beeSlime=x} -> 400 + x
_ -> 0
crs :: Universe -> [Creature]
crs u = u ^.. uvWorld . cWorld . lWorld . creatures . each
testStringInit :: Universe -> [String]
testStringInit _ = mempty
testStringInit u = [show . getSum $ foldMap (Sum . crslime) (crs u)]
--u = u ^.. tocrs . each . filtered isBee . crActionPlan . apStrategy . to show
-- u ^.. tocrs . ix 1 . crPos . _xy . to show
-- <> u ^.. tocrs . ix 1 . crType . slimeCompression . to show
+12 -6
View File
@@ -1076,6 +1076,7 @@ slimeFood cr = case cr ^. crType of
Avatar{} -> True
ChaseCrit{} -> True
CrabCrit {} -> True
BeeCrit{} | CrIsCorpse{} <- cr ^. crHP -> True
_ -> False
feedSlime :: Creature -> Creature -> World -> World
@@ -1090,10 +1091,12 @@ feedSlime s c w = fromMaybe w $ do
& cWorld . lWorld . creatures . ix (s ^. crID) %~ f
& slimeEatSound (s ^. crID) (s ^. crPos . _xy)
where
f cr = cr & crType . slimeRad .~ r
f cr = cr -- & crType . slimeRad .~ r
& crType . slimeSlime .~ round (r^(2::Int) * 100)
& crType . slimeRadWobble +~ r - r1
& crType . slimeCompression %~ ((r/r1) *^)
r1 = s ^?! crType . slimeRad
--r1 = s ^?! crType . slimeRad
r1 = s ^?! crType . slimeSlime . to slimeToRad
r2 = c ^. crType . to crRad
r = sqrt (r1*r1 + r2*r2)
@@ -1102,18 +1105,21 @@ fuseSlimes c1 c2 = (cWorld . lWorld . creatures . ix mini .~ c)
. (cWorld . lWorld . creatures . at maxi .~ Nothing)
. slimeEatSound i1 (c ^. crPos . _xy)
where
c' | c1 ^?! crType . slimeRad > c2 ^?! crType . slimeRad = c1
--c' | c1 ^?! crType . slimeRad > c2 ^?! crType . slimeRad = c1
c' | c1 ^?! crType . slimeSlime > c2 ^?! crType . slimeSlime = c1
| otherwise = c2
mini = min i1 i2
maxi = max i1 i2
i1 = c1 ^. crID
i2 = c2 ^. crID
c = c' & crType . slimeRad .~ r
c = c' & crType . slimeSlime .~ round (r^(2::Int) * 100)
& crType . slimeRadWobble +~ r - max r1 r2
& crType . slimeCompression %~ ((r/max r1 r2) *^)
& crID .~ mini
r1 = c1 ^?! crType . slimeRad
r2 = c2 ^?! crType . slimeRad
-- r1 = c1 ^?! crType . slimeRad
-- r2 = c2 ^?! crType . slimeRad
r1 = c1 ^?! crType . slimeSlime . to slimeToRad
r2 = c2 ^?! crType . slimeSlime . to slimeToRad
r = sqrt (r1*r1 + r2*r2)
slimeEatSound :: Int -> Point2 -> World -> World
+111 -104
View File
@@ -72,11 +72,11 @@ AttachType src/Dodge/Data/Item/Combine.hs 92;" t
Attention src/Dodge/Data/Creature/Perception.hs 58;" t
AttentiveTo src/Dodge/Data/Creature/Perception.hs 59;" C
Audition src/Dodge/Data/Creature/Perception.hs 45;" t
AutoCrit src/Dodge/Data/Creature/Misc.hs 101;" C
AutoCrit src/Dodge/Data/Creature/Misc.hs 103;" C
AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C
AvPosture src/Dodge/Data/Creature/Misc.hs 105;" C
AvPosture src/Dodge/Data/Creature/Misc.hs 110;" C
Avatar src/Dodge/Data/Creature/Misc.hs 53;" C
AvatarPosture src/Dodge/Data/Creature/Misc.hs 105;" t
AvatarPosture src/Dodge/Data/Creature/Misc.hs 110;" t
Awareness src/Dodge/Data/Creature/Perception.hs 63;" t
BANGCONE src/Dodge/Data/Item/Combine.hs 150;" C
BANGROD src/Dodge/Data/Item/Combine.hs 159;" C
@@ -103,10 +103,10 @@ BURSTRIFLE src/Dodge/Data/Item/Combine.hs 158;" C
BackdropCurs src/Dodge/Data/SelectionList.hs 23;" C
BackgroundSound src/Dodge/Data/SoundOrigin.hs 13;" C
Bark src/Dodge/Data/ActionPlan.hs 41;" C
BarrelCrit src/Dodge/Data/Creature/Misc.hs 102;" C
BarrelCrit src/Dodge/Data/Creature/Misc.hs 104;" C
BarrelHiss src/Dodge/Data/SoundOrigin.hs 34;" C
BarrelType src/Dodge/Data/Creature/Misc.hs 117;" t
Barreloid src/Dodge/Data/Creature/Misc.hs 113;" C
BarrelType src/Dodge/Data/Creature/Misc.hs 122;" t
Barreloid src/Dodge/Data/Creature/Misc.hs 118;" C
BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 42;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 49;" C
@@ -286,7 +286,7 @@ 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
CreaturePart src/Dodge/Data/Wall/Structure.hs 16;" C
CreatureShape src/Dodge/Data/Creature/Misc.hs 107;" t
CreatureShape src/Dodge/Data/Creature/Misc.hs 112;" t
CreatureType src/Dodge/Data/Creature/Misc.hs 52;" t
Crushing src/Dodge/Data/Damage.hs 19;" C
CryoReleaseCloud src/Dodge/Data/Cloud.hs 24;" C
@@ -406,7 +406,7 @@ Explosion src/Dodge/Data/SoundOrigin.hs 39;" C
ExplosionPayload src/Dodge/Data/Payload.hs 9;" C
Explosive src/Dodge/Data/Damage.hs 25;" C
ExplosiveBall src/Dodge/Data/EnergyBall/Type.hs 14;" C
ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 119;" C
ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 124;" C
ExplosivePutty src/Dodge/Data/AmmoType.hs 16;" C
ExtraMenuOption src/Dodge/Data/Universe.hs 76;" t
Eyes src/Dodge/Data/Creature/Perception.hs 39;" C
@@ -538,7 +538,7 @@ HeldItemType src/Dodge/Data/Item/Combine.hs 141;" t
HeldPlatformSF src/Dodge/Data/ComposedItem.hs 15;" C
HiddenGoal src/Dodge/Data/Scenario.hs 14;" C
HighlightSI src/Dodge/Data/SelectionList.hs 58;" C
HiveCrit src/Dodge/Data/Creature/Misc.hs 96;" C
HiveCrit src/Dodge/Data/Creature/Misc.hs 97;" C
HomeUsingRemoteScreen src/Dodge/Data/Projectile.hs 43;" C
HomeUsingTargeting src/Dodge/Data/Projectile.hs 44;" C
Hospital src/Dodge/Data/Scenario.hs 69;" C
@@ -562,7 +562,7 @@ HotkeyX src/Dodge/Data/Equipment/Misc.hs 36;" C
HotkeyZ src/Dodge/Data/Equipment/Misc.hs 35;" C
HoverCrit src/Dodge/Data/Creature/Misc.hs 74;" C
Huge src/Shape/Data.hs 24;" C
Humanoid src/Dodge/Data/Creature/Misc.hs 108;" C
Humanoid src/Dodge/Data/Creature/Misc.hs 113;" C
IMSI src/Dodge/Data/SelectionList.hs 41;" t
IMSS src/Dodge/Data/SelectionList.hs 39;" t
INTROSCAN src/Dodge/Data/Item/Combine.hs 32;" C
@@ -651,7 +651,7 @@ LabLink src/Dodge/Data/Room.hs 50;" C
LabSS src/Dodge/Data/Scenario.hs 97;" C
LabelCluster src/Dodge/Data/RoomCluster.hs 13;" C
Laboratory src/Dodge/Data/Scenario.hs 61;" C
LampCrit src/Dodge/Data/Creature/Misc.hs 103;" C
LampCrit src/Dodge/Data/Creature/Misc.hs 105;" C
Large src/Shape/Data.hs 25;" C
LasBeamCombine src/Dodge/Data/Beam.hs 38;" C
LasGunFlare src/Dodge/Data/Muzzle.hs 34;" C
@@ -837,7 +837,7 @@ NoAmmoRequired src/Dodge/Data/Muzzle.hs 25;" C
NoBeamCombine src/Dodge/Data/Beam.hs 41;" C
NoConcurrentEffect src/Loop/Data.hs 7;" C
NoCrImp src/Dodge/Data/CreatureEffect.hs 9;" C
NoCreatureShape src/Dodge/Data/Creature/Misc.hs 114;" C
NoCreatureShape src/Dodge/Data/Creature/Misc.hs 119;" C
NoExtraMenuOption src/Dodge/Data/Universe.hs 79;" C
NoFaction src/Dodge/Data/Creature/State.hs 18;" C
NoFlare src/Dodge/Data/Muzzle.hs 29;" C
@@ -1007,7 +1007,7 @@ Piezoelectric src/Dodge/Data/Material.hs 23;" C
Pitted src/Dodge/Data/Creature.hs 68;" C
Placement src/Dodge/Data/GenWorld.hs 113;" t
PlacementSpot src/Dodge/Data/GenWorld.hs 97;" t
PlainBarrel src/Dodge/Data/Creature/Misc.hs 118;" C
PlainBarrel src/Dodge/Data/Creature/Misc.hs 123;" C
PlainDeath src/Dodge/Data/Creature.hs 70;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlasmaBall src/Dodge/Data/PlasmaBall.hs 12;" t
@@ -1299,7 +1299,7 @@ Suspicious src/Dodge/Data/Creature/Perception.hs 64;" C
Swallowed src/Dodge/Data/Creature.hs 68;" C
SwapEquipment src/Dodge/Data/RightButtonOptions.hs 24;" C
Swarm src/Dodge/Data/Creature/State.hs 25;" C
SwarmCrit src/Dodge/Data/Creature/Misc.hs 100;" C
SwarmCrit src/Dodge/Data/Creature/Misc.hs 102;" C
TAPE src/Dodge/Data/Item/Combine.hs 56;" C
TARGETING src/Dodge/Data/Item/Combine.hs 21;" C
TCBase src/Dodge/Data/Terminal.hs 49;" C
@@ -1576,7 +1576,7 @@ _avStrength src/Dodge/Data/Creature/Misc.hs 56;" f
_avatarMaterial src/Dodge/Data/Creature/Misc.hs 55;" f
_avatarPulse src/Dodge/Data/Creature/Misc.hs 54;" f
_barrelShader src/Data/Preload/Render.hs 27;" f
_barrelType src/Dodge/Data/Creature/Misc.hs 102;" f
_barrelType src/Dodge/Data/Creature/Misc.hs 104;" f
_bdColor src/Dodge/Data/Prop.hs 23;" f
_bdMaxX src/Dodge/Data/Bounds.hs 12;" f
_bdMaxY src/Dodge/Data/Bounds.hs 14;" f
@@ -1586,6 +1586,7 @@ _bdsTrigger src/Dodge/Data/Button.hs 26;" f
_beamCombine src/Dodge/Data/Beam.hs 46;" f
_beeAggro src/Dodge/Data/Creature/Misc.hs 92;" f
_beeHive src/Dodge/Data/Creature/Misc.hs 90;" f
_beeLifespan src/Dodge/Data/Creature/Misc.hs 95;" f
_beePheremones src/Dodge/Data/LWorld.hs 99;" f
_beeRandomMovement src/Dodge/Data/Creature/Misc.hs 94;" f
_beeSlime src/Dodge/Data/Creature/Misc.hs 89;" f
@@ -1924,8 +1925,9 @@ _harvestTarget src/Dodge/Data/ActionPlan.hs 153;" f
_heldPos src/Dodge/Data/Input.hs 43;" f
_heldWorldPos src/Dodge/Data/Input.hs 45;" f
_highlightItems src/Dodge/Data/CWorld.hs 36;" f
_hiveChildren src/Dodge/Data/Creature/Misc.hs 97;" f
_hiveGestation src/Dodge/Data/Creature/Misc.hs 98;" f
_hiveChildren src/Dodge/Data/Creature/Misc.hs 98;" f
_hiveGestation src/Dodge/Data/Creature/Misc.hs 99;" f
_hiveSlime src/Dodge/Data/Creature/Misc.hs 100;" f
_hotkeys src/Dodge/Data/LWorld.hs 146;" f
_hud src/Dodge/Data/World.hs 47;" f
_ibtAmmoMag src/Dodge/Data/Item/Combine.hs 20;" f
@@ -1989,9 +1991,9 @@ _lInvLock src/Dodge/Data/LWorld.hs 149;" f
_lTestInt src/Dodge/Data/LWorld.hs 145;" f
_lTestString src/Dodge/Data/LWorld.hs 144;" f
_lWorld src/Dodge/Data/CWorld.hs 24;" f
_lampColor src/Dodge/Data/Creature/Misc.hs 103;" f
_lampHeight src/Dodge/Data/Creature/Misc.hs 103;" f
_lampLSID src/Dodge/Data/Creature/Misc.hs 103;" f
_lampColor src/Dodge/Data/Creature/Misc.hs 105;" f
_lampHeight src/Dodge/Data/Creature/Misc.hs 105;" f
_lampLSID src/Dodge/Data/Creature/Misc.hs 105;" f
_lasWepXSF src/Dodge/Data/ComposedItem.hs 42;" f
_laserEmmiter src/Dodge/Data/Laser.hs 17;" f
_laserTypeDamage src/Dodge/Data/Laser.hs 16;" f
@@ -2162,7 +2164,7 @@ _phTargetingID src/Dodge/Data/Projectile.hs 44;" f
_pickUpLevel src/Dodge/Layout/Generate.hs 15;" f
_pickUps src/Dodge/Layout/Generate.hs 16;" f
_pictureShaders src/Data/Preload/Render.hs 31;" f
_piercedPoints src/Dodge/Data/Creature/Misc.hs 119;" f
_piercedPoints src/Dodge/Data/Creature/Misc.hs 124;" f
_pjBarrelSpin src/Dodge/Data/Projectile.hs 24;" f
_pjDetonatorID src/Dodge/Data/Projectile.hs 26;" f
_pjDir src/Dodge/Data/Projectile.hs 19;" f
@@ -2377,17 +2379,17 @@ _skOldPos src/Dodge/Data/Spark.hs 14;" f
_skPos src/Dodge/Data/Spark.hs 13;" f
_skType src/Dodge/Data/Spark.hs 15;" f
_skVel src/Dodge/Data/Spark.hs 12;" f
_skinHead src/Dodge/Data/Creature/Misc.hs 109;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 111;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 110;" f
_skinHead src/Dodge/Data/Creature/Misc.hs 114;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 116;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 115;" f
_slInt src/Dodge/Data/HUD.hs 39;" f
_slSec src/Dodge/Data/HUD.hs 39;" f
_slSet src/Dodge/Data/HUD.hs 39;" f
_slimeCompression src/Dodge/Data/Creature/Misc.hs 84;" f
_slimeEngulfProgress src/Dodge/Data/Creature/Misc.hs 86;" f
_slimeIsCompressing src/Dodge/Data/Creature/Misc.hs 85;" f
_slimeRad src/Dodge/Data/Creature/Misc.hs 81;" f
_slimeRadWobble src/Dodge/Data/Creature/Misc.hs 82;" f
_slimeSlime src/Dodge/Data/Creature/Misc.hs 81;" f
_slimeSplitTimer src/Dodge/Data/Creature/Misc.hs 83;" f
_slinkHeadPos src/Dodge/Data/Creature/Misc.hs 78;" f
_slinkSpine src/Dodge/Data/Creature/Misc.hs 77;" f
@@ -2685,7 +2687,7 @@ anyUnusedSpot src/Dodge/PlacementSpot.hs 68;" f
anythingHitCirc src/Dodge/Base/Collide.hs 357;" f
apply src/Quaternion.hs 78;" f
applyCME src/Dodge/HeldUse.hs 397;" f
applyClip src/Dodge/Debug.hs 184;" f
applyClip src/Dodge/Debug.hs 191;" f
applyCreatureDamage src/Dodge/Creature/Damage.hs 15;" f
applyEventIO src/Loop.hs 90;" f
applyGravityPU src/Dodge/Projectile/Update.hs 41;" f
@@ -2788,6 +2790,7 @@ basicMuzFlare src/Dodge/HeldUse.hs 731;" f
battery src/Dodge/Item/Ammo.hs 60;" f
batteryPack src/Dodge/Item/Equipment.hs 38;" f
beeCrit src/Dodge/Creature/ChaseCrit.hs 89;" f
beeLifespanCheck src/Dodge/Creature/Update.hs 119;" f
beep3QuickS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 710;" f
beltMag src/Dodge/Item/Ammo.hs 38;" f
bgateCalc src/Dodge/Inventory/SelectionList.hs 131;" f
@@ -2865,7 +2868,7 @@ buttonFlip src/Dodge/Button/Event.hs 18;" f
buzz1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 892;" f
buzzS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 638;" f
byNthLink src/Dodge/Room/Warning.hs 44;" f
cChasm src/Dodge/Room/Tutorial.hs 175;" f
cChasm src/Dodge/Room/Tutorial.hs 178;" f
cFilledRect src/Dodge/CharacterEnums.hs 6;" f
cWireRect src/Dodge/CharacterEnums.hs 10;" f
calcSmoothScroll src/Dodge/SmoothScroll.hs 11;" f
@@ -2903,14 +2906,14 @@ chaseCrit src/Dodge/Creature/ChaseCrit.hs 35;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 193;" f
chaseUpperBody src/Dodge/Creature/Picture.hs 180;" f
chasmRotate src/Dodge/Creature/State/WalkCycle.hs 149;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 414;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 345;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 417;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 348;" f
chasmTestCliffPush src/Dodge/Creature/State/WalkCycle.hs 126;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 133;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
checkConnection src/Dodge/Inventory/Swap.hs 66;" f
checkDeath src/Dodge/Creature/Update.hs 386;" f
checkDeath' src/Dodge/Creature/Update.hs 389;" f
checkDeath src/Dodge/Creature/Update.hs 406;" f
checkDeath' src/Dodge/Creature/Update.hs 409;" f
checkEndGame src/Dodge/Update.hs 889;" f
checkErrorGL src/Shader/Compile.hs 86;" f
checkFBO src/Framebuffer/Check.hs 6;" f
@@ -2957,13 +2960,14 @@ click1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 844;" f
clicker src/Dodge/Item/Scope.hs 88;" f
clipV src/Geometry/Vector.hs 48;" f
clipZoom src/Dodge/Update/Camera.hs 234;" f
clipboardCr src/Dodge/Debug.hs 91;" f
clockCycle src/Dodge/Clock.hs 7;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 237;" f
closeItemDist src/Dodge/Inventory.hs 149;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 221;" f
closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 260;" f
closeObjectInfo src/Dodge/Render/HUD.hs 228;" f
closestCrToMouse src/Dodge/Debug.hs 301;" f
closestCrToMouse src/Dodge/Debug.hs 308;" f
closestPointOnLine src/Geometry/Intersect.hs 279;" f
closestPointOnLineParam src/Geometry/Intersect.hs 295;" f
closestPointOnSeg src/Geometry/Intersect.hs 310;" f
@@ -3036,7 +3040,7 @@ copierItemUpdate src/Dodge/Creature/State.hs 159;" f
copyItemToFloor src/Dodge/FloorItem.hs 14;" f
corDoor src/Dodge/Room/Room.hs 411;" f
cornerList src/Preload/Render.hs 236;" f
corpseOrGib src/Dodge/Creature/Update.hs 432;" f
corpseOrGib src/Dodge/Creature/Update.hs 455;" f
corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 135;" f
corridorN src/Dodge/Room/Corridor.hs 58;" f
@@ -3048,7 +3052,7 @@ crCamouflage src/Dodge/Creature/Picture.hs 80;" f
crCanSeeCr src/Dodge/Creature/Test.hs 49;" f
crCrSpring src/Dodge/Update.hs 1010;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 68;" f
crDeathEffects src/Dodge/Creature/Update.hs 410;" f
crDeathEffects src/Dodge/Creature/Update.hs 430;" f
crDeathSounds src/Dodge/Creature/Vocalization.hs 40;" f
crDexterity src/Dodge/Creature/Statistics.hs 19;" f
crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 39;" f
@@ -3089,7 +3093,7 @@ crShape src/Dodge/Creature/Shape.hs 8;" f
crSpring src/Dodge/Update.hs 998;" f
crStratConMatches src/Dodge/Creature/Test.hs 77;" f
crStrength src/Dodge/Creature/Statistics.hs 30;" f
crUpdate src/Dodge/Creature/Update.hs 379;" f
crUpdate src/Dodge/Creature/Update.hs 399;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 67;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 49;" f
crVocalResetTime src/Dodge/Creature/Vocalization.hs 69;" f
@@ -3104,7 +3108,7 @@ crabCorpse src/Dodge/Creature/Picture.hs 322;" f
crabCrit src/Dodge/Creature/ChaseCrit.hs 42;" f
crabCritInternal src/Dodge/Humanoid.hs 25;" f
crabFeet src/Dodge/Creature/Picture.hs 232;" f
crabRoom src/Dodge/Room/Tutorial.hs 468;" f
crabRoom src/Dodge/Room/Tutorial.hs 471;" f
crabUpperBody src/Dodge/Creature/Picture.hs 156;" f
craftInfo src/Dodge/Item/Info.hs 168;" f
craftItemSPic src/Dodge/Item/Draw/SPic.hs 41;" f
@@ -3133,6 +3137,7 @@ critsRoom src/Dodge/Room/Room.hs 425;" f
crixsNearSeg src/Dodge/Zoning/Creature.hs 30;" f
crossPic src/Dodge/Render/Label.hs 28;" f
crossProd src/Geometry/Vector3D.hs 42;" f
crs src/Dodge/TestString.hs 57;" f
crsHit src/Dodge/WorldEvent/ThingsHit.hs 95;" f
crsHitZ src/Dodge/WorldEvent/ThingsHit.hs 106;" f
crsHitZ' src/Dodge/WorldEvent/ThingsHit.hs 126;" f
@@ -3141,6 +3146,7 @@ crsNearCirc src/Dodge/Zoning/Creature.hs 36;" f
crsNearPoint src/Dodge/Zoning/Creature.hs 18;" f
crsNearRect src/Dodge/Zoning/Creature.hs 40;" f
crsNearSeg src/Dodge/Zoning/Creature.hs 24;" f
crslime src/Dodge/TestString.hs 50;" f
crystalLine src/Dodge/Placement/Instance/Wall.hs 58;" f
cubeShape src/Dodge/Block/Debris.hs 162;" f
cullPoint src/Dodge/Render/ShapePicture.hs 117;" f
@@ -3215,17 +3221,17 @@ debrisSize src/Dodge/Block/Debris.hs 131;" f
debugEvent src/Dodge/Debug.hs 47;" f
debugEvent' src/Dodge/Debug.hs 53;" f
debugEvents src/Dodge/Debug.hs 32;" f
debugGet src/Dodge/Debug.hs 129;" f
debugItem src/Dodge/Debug.hs 91;" f
debugGet src/Dodge/Debug.hs 136;" f
debugItem src/Dodge/Debug.hs 98;" f
debugMenu src/Dodge/Menu.hs 122;" f
debugMenuOptions src/Dodge/Menu.hs 128;" f
debugMouseClickPos src/Dodge/Debug.hs 199;" f
debugMouseClickPos src/Dodge/Debug.hs 206;" f
debugOn src/Dodge/Data/Config.hs 179;" f
debugPutDraw src/Dodge/Debug.hs 150;" f
debugPutItems src/Dodge/Debug.hs 133;" f
debugPutN src/Dodge/Debug.hs 139;" f
debugShowPath src/Dodge/Debug.hs 159;" f
debugWritableValues src/Dodge/Debug.hs 172;" f
debugPutDraw src/Dodge/Debug.hs 157;" f
debugPutItems src/Dodge/Debug.hs 140;" f
debugPutN src/Dodge/Debug.hs 146;" f
debugShowPath src/Dodge/Debug.hs 166;" f
debugWritableValues src/Dodge/Debug.hs 179;" f
decodeSensorType src/Dodge/Terminal.hs 81;" f
decomposeSelfTree src/Dodge/Tree/Compose.hs 62;" f
decomposeTree src/Dodge/Tree/Compose.hs 59;" f
@@ -3353,8 +3359,8 @@ doCrImp src/Dodge/CreatureEffect.hs 13;" f
doDamage src/Dodge/Creature/State.hs 44;" f
doDeathToggle src/Dodge/WorldEffect.hs 99;" f
doDeathTriggers src/Dodge/WorldEffect.hs 92;" f
doDebugGet src/Dodge/Debug.hs 153;" f
doDebugPut src/Dodge/Debug.hs 142;" f
doDebugGet src/Dodge/Debug.hs 160;" f
doDebugPut src/Dodge/Debug.hs 149;" 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
@@ -3390,7 +3396,7 @@ doRoomShift src/Dodge/Room/Link.hs 34;" f
doScopeZoom src/Dodge/Update/Scroll.hs 89;" f
doSectionSize src/Dodge/DisplayInventory.hs 215;" f
doSideEffects appDodge/Main.hs 118;" f
doSlimeRadChange src/Dodge/Creature/Update.hs 289;" f
doSlimeRadChange src/Dodge/Creature/Update.hs 307;" f
doTabComplete src/Dodge/Terminal.hs 241;" f
doTestDrawing src/Dodge/Render.hs 40;" f
doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f
@@ -3439,19 +3445,19 @@ 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 223;" f
drawCrInfo' src/Dodge/Debug.hs 218;" f
drawCrInfo src/Dodge/Debug.hs 230;" f
drawCrInfo' src/Dodge/Debug.hs 225;" f
drawCrabCrit src/Dodge/Creature/Picture.hs 139;" f
drawCreature src/Dodge/Creature/Picture.hs 37;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 199;" f
drawCreatureRad src/Dodge/Debug.hs 307;" f
drawCreatureRad src/Dodge/Debug.hs 314;" f
drawCross src/Dodge/Render/Label.hs 25;" f
drawCrossCol src/Dodge/Render/Label.hs 21;" f
drawCursorAt src/Dodge/Render/List.hs 73;" f
drawCursorByTerminalStatus src/Dodge/Render/Picture.hs 139;" f
drawDDATest src/Dodge/Debug/Picture.hs 304;" f
drawDamSensor src/Dodge/Machine/Draw.hs 38;" f
drawDebug src/Dodge/Debug.hs 261;" f
drawDebug src/Dodge/Debug.hs 268;" f
drawDrag src/Dodge/Render/Picture.hs 204;" f
drawDragDrop src/Dodge/Render/Picture.hs 233;" f
drawDragPickup src/Dodge/Render/Picture.hs 242;" f
@@ -3554,7 +3560,7 @@ drawZone src/Dodge/Debug/Picture.hs 152;" f
drawZoneCirc src/Dodge/Debug/Picture.hs 293;" f
drawZoneCol src/Dodge/Debug/Picture.hs 149;" f
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 286;" f
dropAll src/Dodge/Creature/Update.hs 470;" f
dropAll src/Dodge/Creature/Update.hs 493;" f
dropInventoryPath src/Dodge/HeldUse.hs 1380;" f
dropItem src/Dodge/Creature/Action.hs 180;" f
dropper src/Dodge/Item/Scope.hs 82;" f
@@ -3644,7 +3650,7 @@ faceEdges src/Polyhedra.hs 62;" f
facesToVF src/Polyhedra/Geodesic.hs 70;" f
farWallDistDirection src/Dodge/Update/Camera.hs 245;" f
fdiv src/ShortShow.hs 41;" f
feedSlime src/Dodge/Update.hs 1081;" f
feedSlime src/Dodge/Update.hs 1082;" f
feet src/Dodge/Creature/Picture.hs 218;" f
filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 160;" f
@@ -3694,7 +3700,7 @@ floorWire src/Dodge/Wire.hs 13;" f
flyInertia src/Dodge/Creature/State/WalkCycle.hs 74;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 836;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 886;" f
foldMTRS src/Dodge/Room/Tutorial.hs 108;" f
foldMTRS src/Dodge/Room/Tutorial.hs 111;" f
foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 111;" f
followImpulse src/Dodge/Creature/Impulse.hs 26;" f
@@ -3722,7 +3728,7 @@ fstV2 src/Geometry/Data.hs 70;" f
fuelPack src/Dodge/Item/Equipment.hs 44;" f
functionalUpdate src/Dodge/Update.hs 278;" f
fusePoint src/Dodge/LevelGen/StaticWalls.hs 158;" f
fuseSlimes src/Dodge/Update.hs 1100;" f
fuseSlimes src/Dodge/Update.hs 1103;" f
fuseWall src/Dodge/LevelGen/StaticWalls.hs 165;" f
fuseWallsWith src/Dodge/LevelGen/StaticWalls.hs 172;" f
g src/ShortShow.hs 48;" f
@@ -3759,8 +3765,8 @@ getCloseObj src/Dodge/Update/Input/InGame.hs 543;" f
getCommand src/Dodge/Terminal.hs 61;" f
getCommands src/Dodge/Terminal.hs 58;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 56;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 625;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 612;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 628;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 615;" f
getDebugMouseOver src/Dodge/Update.hs 475;" f
getDistortions src/Dodge/Render.hs 448;" f
getEdgesCrossing src/Dodge/Path.hs 39;" f
@@ -3777,7 +3783,7 @@ getPJStabiliser src/Dodge/HeldUse.hs 1280;" f
getPretty src/AesonHelp.hs 8;" f
getPromptTM src/Dodge/Terminal/Type.hs 3;" f
getRoomFromID src/Dodge/Room/Modify.hs 31;" f
getRoomsFromInts src/Dodge/Room/Tutorial.hs 608;" f
getRoomsFromInts src/Dodge/Room/Tutorial.hs 611;" f
getRootItemBounds src/Dodge/Render/HUD.hs 106;" f
getRootItemInvID src/Dodge/Inventory/Location.hs 36;" f
getSelectedCloseObj src/Dodge/SelectedClose.hs 14;" f
@@ -3901,7 +3907,7 @@ hotkeyToChar src/Dodge/Inventory/SelectionList.hs 201;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 62;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 198;" f
hoverCrit src/Dodge/Creature/ChaseCrit.hs 80;" f
hoverCritHoverSound src/Dodge/Creature/Update.hs 356;" f
hoverCritHoverSound src/Dodge/Creature/Update.hs 376;" f
hoverCritMv src/Dodge/Creature/ReaderUpdate.hs 228;" f
hoverDeathSounds src/Dodge/Creature/Vocalization.hs 62;" f
hoverPainEffect src/Dodge/Creature/State.hs 57;" f
@@ -4100,7 +4106,7 @@ keyCardRunPastRand src/Dodge/LockAndKey.hs 37;" f
keyPic src/Dodge/Item/Draw/SPic.hs 442;" f
keyholeCorridor src/Dodge/Room/Corridor.hs 45;" f
knifeS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 798;" f
lChasm src/Dodge/Room/Tutorial.hs 187;" f
lChasm src/Dodge/Room/Tutorial.hs 190;" f
lConnect src/Dodge/Render/Connectors.hs 43;" f
lConnectCol src/Dodge/Render/Connectors.hs 46;" f
lConnectMulti src/Dodge/Render/Connectors.hs 51;" f
@@ -4168,7 +4174,7 @@ listSelectionColorPicture src/Dodge/DisplayInventory.hs 299;" f
litCorridor90 src/Dodge/Room/RoadBlock.hs 26;" f
lmt src/MatrixHelper.hs 53;" f
lnkMidPosInvSelsCol src/Dodge/Render/HUD.hs 415;" f
loadAmmoTut src/Dodge/Room/Tutorial.hs 472;" f
loadAmmoTut src/Dodge/Room/Tutorial.hs 475;" f
loadDodgeConfig src/Dodge/Config.hs 30;" f
loadMusic src/Dodge/SoundLogic/LoadSound.hs 30;" f
loadMuzzle src/Dodge/HeldUse.hs 654;" f
@@ -4348,9 +4354,9 @@ mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 23;" f
midBounds src/Dodge/Room/Foreground.hs 150;" f
midChasm src/Dodge/Room/Tutorial.hs 216;" f
midChasmPlatform src/Dodge/Room/Tutorial.hs 238;" f
midChasmSpit src/Dodge/Room/Tutorial.hs 306;" f
midChasm src/Dodge/Room/Tutorial.hs 219;" f
midChasmPlatform src/Dodge/Room/Tutorial.hs 241;" f
midChasmSpit src/Dodge/Room/Tutorial.hs 309;" f
midPad src/Padding.hs 27;" f
midPadL src/Padding.hs 33;" f
midPoint src/Geometry.hs 83;" f
@@ -4455,7 +4461,7 @@ noShape src/ShapePicture.hs 29;" f
noclipCheck src/Dodge/WallCreatureCollisions.hs 22;" f
nodeNear src/Dodge/Path.hs 94;" f
nodesNear src/Dodge/Path.hs 100;" f
nonConvexChasm src/Dodge/Room/Tutorial.hs 303;" f
nonConvexChasm src/Dodge/Room/Tutorial.hs 306;" f
nonCornerLinks src/Dodge/Room/SensorDoor.hs 53;" f
normalGait src/Dodge/Creature/State/WalkCycle.hs 173;" f
normalTo8 src/Shader/Poke.hs 475;" f
@@ -4532,7 +4538,7 @@ pairsToSCC src/Dodge/Graph.hs 32;" f
paletteToColor src/Color.hs 85;" f
parseItem src/Dodge/Debug/Terminal.hs 62;" f
parseNum src/Dodge/Debug/Terminal.hs 77;" f
passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 690;" f
passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 693;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f
pathEdgeObstructed src/Dodge/Path.hs 87;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f
@@ -4603,7 +4609,7 @@ pointerToItemID src/Dodge/Item/Location.hs 42;" f
pointerYourRootItem src/Dodge/Item/Location.hs 33;" f
pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f
pointsToPoly src/Geometry/ConvexPoly.hs 37;" f
poisonSPic src/Dodge/Creature/Update.hs 466;" f
poisonSPic src/Dodge/Creature/Update.hs 489;" f
poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f
poke34 src/Shader/Poke.hs 518;" f
pokeArrayOff src/Shader/Poke.hs 530;" f
@@ -4639,8 +4645,8 @@ pokeWall src/Shader/Poke.hs 80;" f
pokeWallsWindows src/Shader/Poke.hs 52;" f
poly3 src/Picture/Base.hs 76;" f
poly3Col src/Picture/Base.hs 80;" f
polyChasm src/Dodge/Room/Tutorial.hs 392;" f
polyChasmC src/Dodge/Room/Tutorial.hs 404;" f
polyChasm src/Dodge/Room/Tutorial.hs 395;" f
polyChasmC src/Dodge/Room/Tutorial.hs 407;" f
polyCirc src/Shape.hs 48;" f
polyCircx src/Shape.hs 53;" f
polyCornerDist src/Geometry/Polygon.hs 69;" f
@@ -4736,7 +4742,7 @@ putLitButOnPosExtTrig src/Dodge/Placement/Instance/Button.hs 97;" f
putLitButOnPosExtTrig' src/Dodge/Placement/Instance/Button.hs 100;" f
putMessageTerminal src/Dodge/Placement/Instance/Terminal.hs 58;" f
putShape src/Dodge/Room/Foreground.hs 134;" f
putSingleLight src/Dodge/Room/Tutorial.hs 506;" f
putSingleLight src/Dodge/Room/Tutorial.hs 509;" f
putSlideDr src/Dodge/Door/PutSlideDoor.hs 12;" f
putStrLnAppend src/Dodge/LevelGen.hs 84;" f
putTerminal src/Dodge/Placement/Instance/Terminal.hs 52;" f
@@ -4978,7 +4984,7 @@ scaleSH src/Shape.hs 271;" f
scalp src/Dodge/Creature/Picture.hs 377;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 82;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 463;" f
scorchSPic src/Dodge/Creature/Update.hs 486;" f
screenBox src/Dodge/Base/Window.hs 54;" f
screenPolygon src/Dodge/Base/Window.hs 18;" f
screenPolygonBord src/Dodge/Base/Window.hs 28;" f
@@ -5006,7 +5012,7 @@ sectionsSizes src/Dodge/DisplayInventory.hs 205;" f
seedStartMenu src/Dodge/Menu.hs 85;" f
seedStartOptions src/Dodge/Menu.hs 88;" f
segOnCirc src/Geometry.hs 113;" f
segmentArea src/Dodge/Creature/Update.hs 337;" f
segmentArea src/Dodge/Creature/Update.hs 357;" f
selNumPos src/Dodge/Render/HUD.hs 475;" f
selNumPosCardinal src/Dodge/Render/HUD.hs 492;" f
selSecDrawCursor src/Dodge/Render/List.hs 101;" f
@@ -5024,13 +5030,13 @@ sensorReqToString src/Dodge/Machine/Update.hs 240;" f
sensorRoom src/Dodge/Room/SensorDoor.hs 27;" f
sensorRoomRunPast src/Dodge/Room/SensorDoor.hs 59;" f
sensorSPic src/Dodge/Machine/Draw.hs 89;" f
sensorTut src/Dodge/Room/Tutorial.hs 634;" f
sensorTut src/Dodge/Room/Tutorial.hs 637;" f
sensorTypeDamages src/Dodge/Machine/Update.hs 286;" f
sensorTypeDamages src/Dodge/Wall/Damage.hs 92;" f
setBeeRandomMovement src/Dodge/Creature/Impulse.hs 110;" f
setChannelPos src/Sound.hs 152;" f
setClickWorldPos src/Dodge/Update.hs 110;" f
setClip src/Dodge/Debug.hs 247;" f
setClip src/Dodge/Debug.hs 254;" f
setDepth src/Picture/Base.hs 120;" f
setDirPS src/Dodge/PlacementSpot.hs 51;" f
setFallback src/Dodge/PlacementSpot.hs 127;" f
@@ -5053,11 +5059,11 @@ setSelWhileDragging src/Dodge/Update/Input/InGame.hs 360;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 93;" f
setShaderSource src/Shader/Compile.hs 121;" f
setShadowLimits src/Dodge/Shadows.hs 11;" f
setSlimeDir src/Dodge/Creature/Update.hs 268;" f
setSlimeDir src/Dodge/Creature/Update.hs 286;" f
setSoundVolume src/Sound.hs 159;" f
setTile src/Dodge/Layout.hs 78;" f
setTiles src/Dodge/Layout.hs 68;" f
setTreeInts src/Dodge/Room/Tutorial.hs 115;" f
setTreeInts src/Dodge/Room/Tutorial.hs 118;" f
setViewDistance src/Dodge/Update/Camera.hs 240;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 70;" f
setViewport src/Dodge/Render.hs 453;" f
@@ -5135,10 +5141,10 @@ showEquipItem src/Dodge/Item/Display.hs 109;" f
showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 130;" f
showInventoryPathing src/Dodge/Item/Display.hs 87;" f
showManObj src/Dodge/TestString.hs 115;" f
showMuzzlePositions src/Dodge/Debug.hs 313;" f
showManObj src/Dodge/TestString.hs 126;" f
showMuzzlePositions src/Dodge/Debug.hs 320;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 132;" f
showTimeFlow src/Dodge/TestString.hs 143;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 198;" f
shrinkVert src/Geometry/Polygon.hs 202;" f
shuffle src/RandomHelp.hs 68;" f
@@ -5175,12 +5181,13 @@ slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 718;" f
slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 676;" f
slideWindow src/ListHelp.hs 81;" f
slimeCrit src/Dodge/Creature/ChaseCrit.hs 68;" f
slimeCritUpdate src/Dodge/Creature/Update.hs 233;" f
slimeEatSound src/Dodge/Update.hs 1119;" f
slimeCritUpdate src/Dodge/Creature/Update.hs 251;" f
slimeEatSound src/Dodge/Update.hs 1125;" f
slimeFood src/Dodge/Update.hs 1074;" f
slimeSuck src/Dodge/Update.hs 1058;" f
slimeToRad src/Dodge/Data/Creature/Misc.hs 107;" f
slinkCrit src/Dodge/Creature/ChaseCrit.hs 56;" f
slinkCritUpdate src/Dodge/Creature/Update.hs 340;" f
slinkCritUpdate src/Dodge/Creature/Update.hs 360;" f
slowCrush90 src/Dodge/Room/LongDoor.hs 263;" f
slowCrushRoom src/Dodge/Room/LongDoor.hs 148;" f
slowDoorRoom src/Dodge/Room/LongDoor.hs 309;" f
@@ -5247,8 +5254,8 @@ splashScreen src/Dodge/Initialisation.hs 10;" f
splitBezierquad src/Geometry/Bezier.hs 15;" f
splitExtra src/Justify.hs 21;" f
splitLookupTrie src/SimpleTrie.hs 39;" f
splitSlimeCrit src/Dodge/Creature/Update.hs 306;" f
splitSlimeCrit' src/Dodge/Creature/Update.hs 296;" f
splitSlimeCrit src/Dodge/Creature/Update.hs 324;" f
splitSlimeCrit' src/Dodge/Creature/Update.hs 314;" f
splitTrunk src/TreeHelp.hs 181;" f
splitTrunkAt src/TreeHelp.hs 169;" f
spreadAroundCenter src/Dodge/Base.hs 173;" f
@@ -5258,8 +5265,8 @@ spreadGunCrit src/Dodge/Creature/SpreadGunCrit.hs 11;" f
spreadOut src/Dodge/Creature/Boid.hs 160;" f
sps src/Dodge/LevelGen/PlacementHelper.hs 30;" f
sps0 src/Dodge/LevelGen/PlacementHelper.hs 42;" f
sqPlatformChasm src/Dodge/Room/Tutorial.hs 267;" f
sqSpitChasm src/Dodge/Room/Tutorial.hs 282;" f
sqPlatformChasm src/Dodge/Room/Tutorial.hs 270;" f
sqSpitChasm src/Dodge/Room/Tutorial.hs 285;" f
square src/Geometry/Polygon.hs 56;" f
squareDecoration src/Dodge/Placement/TopDecoration.hs 48;" f
squashIntersectCirclePoint src/Dodge/WallCreatureCollisions.hs 127;" f
@@ -5286,7 +5293,7 @@ stackText src/Picture/Base.hs 180;" f
stackedInventory src/Dodge/Creature.hs 318;" f
startCr src/Dodge/Creature.hs 83;" f
startCrafts src/Dodge/Room/Start.hs 94;" f
startDeathTimer src/Dodge/Creature/Update.hs 419;" f
startDeathTimer src/Dodge/Creature/Update.hs 442;" f
startDrag src/Dodge/Update/Input/InGame.hs 319;" f
startInvList src/Dodge/Creature.hs 97;" f
startInventory src/Dodge/Creature.hs 100;" f
@@ -5322,7 +5329,7 @@ subInvX src/Dodge/ListDisplayParams.hs 53;" f
subMap src/TreeHelp.hs 121;" f
subZipWith src/Dodge/Placement/Instance/Wall.hs 94;" f
subtree src/TreeHelp.hs 72;" f
succB src/Dodge/Debug.hs 167;" f
succB src/Dodge/Debug.hs 174;" f
swapAnyExtraSelection src/Dodge/Inventory/Swap.hs 57;" f
swapInOutLinks src/Dodge/RoomLink.hs 99;" f
swapIndices src/ListHelp.hs 50;" f
@@ -5380,7 +5387,7 @@ testEvent src/Dodge/Event/Test.hs 11;" f
testInventory src/Dodge/Creature.hs 299;" f
testPic src/Dodge/Render/ShapePicture.hs 57;" f
testSPic src/Dodge/Render/ShapePicture.hs 54;" f
testStringInit src/Dodge/TestString.hs 50;" f
testStringInit src/Dodge/TestString.hs 60;" f
text src/Picture/Base.hs 185;" f
textGrad src/Picture/Text.hs 5;" f
textInputBlurb src/Dodge/Terminal.hs 43;" f
@@ -5438,7 +5445,7 @@ toBinary src/Dodge/Inventory/SelectionList.hs 154;" f
toBothLnk src/Dodge/RoomLink.hs 136;" f
toClosestMultiple src/HelpNum.hs 3;" f
toColor8 src/Color.hs 158;" f
toDeathCarriage src/Dodge/Creature/Update.hs 425;" f
toDeathCarriage src/Dodge/Creature/Update.hs 448;" f
toFloatVAs src/Shader/Compile.hs 66;" f
toLabel src/Dodge/Cleat.hs 16;" f
toMultiset src/Multiset.hs 64;" f
@@ -5462,7 +5469,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 714;" f
topInvW src/Dodge/ListDisplayParams.hs 56;" f
topPrismEdgeIndices src/Shader/Poke.hs 344;" f
topPrismIndices src/Shader/Poke.hs 419;" f
topTestPart src/Dodge/TestString.hs 110;" f
topTestPart src/Dodge/TestString.hs 121;" f
torchShape src/Dodge/Item/Draw/SPic.hs 278;" f
torqueAmount src/Dodge/HeldUse.hs 606;" f
torqueCr src/Dodge/WorldEffect.hs 85;" f
@@ -5535,12 +5542,12 @@ tryUseParent src/Dodge/Creature/State.hs 173;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 23;" f
tutAnoTree src/Dodge/Room/Tutorial.hs 55;" f
tutDrop src/Dodge/Room/Tutorial.hs 120;" f
tutHub src/Dodge/Room/Tutorial.hs 532;" f
tutLight src/Dodge/Room/Tutorial.hs 436;" f
tutRezBox src/Dodge/Room/Tutorial.hs 645;" f
tutDrop src/Dodge/Room/Tutorial.hs 123;" f
tutHub src/Dodge/Room/Tutorial.hs 535;" f
tutLight src/Dodge/Room/Tutorial.hs 439;" f
tutRezBox src/Dodge/Room/Tutorial.hs 648;" f
tutRoomTree src/Dodge/Floor.hs 20;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 670;" f
tutorialMessage1 src/Dodge/Room/Tutorial.hs 673;" f
tweenAngles src/Geometry/Vector.hs 198;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 83;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 39;" f
@@ -5572,7 +5579,7 @@ unusedOffPathAwayFromLink src/Dodge/PlacementSpot.hs 133;" f
unusedSpotAwayFromInLink src/Dodge/PlacementSpot.hs 139;" f
unusedSpotAwayFromLink src/Dodge/PlacementSpot.hs 121;" f
unusedSpotNearInLink src/Dodge/PlacementSpot.hs 203;" f
updateAggroBee src/Dodge/Creature/Update.hs 115;" f
updateAggroBee src/Dodge/Creature/Update.hs 128;" f
updateAimPos src/Dodge/Update.hs 400;" f
updateAllNodes src/TreeHelp.hs 88;" f
updateArc src/Dodge/Tesla.hs 44;" f
@@ -5580,14 +5587,14 @@ updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 488;" f
updateBarrel src/Dodge/Barreloid.hs 43;" f
updateBarreloid src/Dodge/Barreloid.hs 16;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 30;" f
updateBeeCrit src/Dodge/Creature/Update.hs 110;" f
updateBeeFromPheremones src/Dodge/Creature/Update.hs 103;" f
updateBeeCrit src/Dodge/Creature/Update.hs 114;" f
updateBeeFromPheremones src/Dodge/Creature/Update.hs 107;" f
updateBeePheremone src/Dodge/Update.hs 785;" f
updateBounds src/Dodge/Update/Camera.hs 262;" f
updateBulVel src/Dodge/Bullet.hs 57;" f
updateBullet src/Dodge/Bullet.hs 22;" f
updateBullets src/Dodge/Update.hs 671;" f
updateCalmBee src/Dodge/Creature/Update.hs 156;" f
updateCalmBee src/Dodge/Creature/Update.hs 169;" f
updateCamera src/Dodge/Update/Camera.hs 33;" f
updateCarriage src/Dodge/Creature/State/WalkCycle.hs 22;" f
updateCarriage' src/Dodge/Creature/State/WalkCycle.hs 27;" f
@@ -5605,7 +5612,7 @@ updateCreatureStrides src/Dodge/Update.hs 376;" f
updateDebris src/Dodge/Update.hs 685;" f
updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f
updateDebugMessageOffset src/Dodge/Update.hs 104;" f
updateDelayedEvents src/Dodge/Update.hs 1126;" f
updateDelayedEvents src/Dodge/Update.hs 1132;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f
updateDistortion src/Dodge/Distortion.hs 8;" f
updateDistortions src/Dodge/Update.hs 664;" f
@@ -5664,7 +5671,7 @@ updatePlasmaBall src/Dodge/Update.hs 530;" f
updatePlasmaBalls src/Dodge/Update.hs 678;" f
updatePreload src/Preload/Update.hs 21;" f
updateProjectile src/Dodge/Projectile/Update.hs 26;" f
updatePulse src/Dodge/Creature/Update.hs 478;" f
updatePulse src/Dodge/Creature/Update.hs 501;" f
updatePulseBall src/Dodge/Update.hs 550;" f
updatePulseLaser src/Dodge/Update.hs 725;" f
updatePulseLasers src/Dodge/Update.hs 525;" f
@@ -5855,7 +5862,7 @@ wristArmour src/Dodge/Item/Equipment.hs 35;" f
wristInvisibility src/Dodge/Item/Equipment.hs 80;" f
writeConfig src/Dodge/Menu.hs 180;" f
writeSaveSlot src/Dodge/Save.hs 36;" f
xChasm src/Dodge/Room/Tutorial.hs 154;" f
xChasm src/Dodge/Room/Tutorial.hs 157;" f
xCylinder src/Shape.hs 129;" f
xCylinderST src/Shape.hs 126;" f
xIntercepts src/Dodge/Zoning/Base.hs 66;" f
@@ -5877,7 +5884,7 @@ yourRootItem src/Dodge/Base/You.hs 26;" f
yourRootItemDT src/Dodge/Base/You.hs 32;" f
yourSelectedItem src/Dodge/Base/You.hs 20;" f
yourStatsInfo src/Dodge/Creature/Info.hs 27;" f
zChasm src/Dodge/Room/Tutorial.hs 200;" f
zChasm src/Dodge/Room/Tutorial.hs 203;" f
zConnect src/Dodge/Render/Connectors.hs 18;" f
zConnectCol src/Dodge/Render/Connectors.hs 29;" f
zConnectColMidX src/Dodge/Render/Connectors.hs 32;" f