Slightly bulge slime when swallowing projectile

This commit is contained in:
2026-05-18 12:18:34 +01:00
parent e8738715e5
commit d29c2dbd0c
8 changed files with 75 additions and 51 deletions
+1 -1
View File
@@ -72,7 +72,7 @@ slimeCrit = defaultCreature
& crName .~ "slimeCrit" & crName .~ "slimeCrit"
& crHP .~ HP 1000 & crHP .~ HP 1000
-- & crType .~ SlimeCrit r 0 0 (V2 (slimeToRad r) 0) False 0 -- & crType .~ SlimeCrit r 0 0 (V2 (slimeToRad r) 0) False 0
& crType .~ SlimeCrit r 0 Nothing 1 False 0 & crType .~ SlimeCrit r 0 NoSlimeDistortion 1 False 0
& crFaction .~ ColorFaction (light green) & crFaction .~ ColorFaction (light green)
& crPerception . cpVision . viFOV .~ FloatFOV pi & crPerception . cpVision . viFOV .~ FloatFOV pi
& crActionPlan .~ SlimeIntelligence & crActionPlan .~ SlimeIntelligence
+1 -1
View File
@@ -62,7 +62,7 @@ drawSlimeCrit cr =
r = slimeToRad $ cr ^?! crType . slimeSlime - cr ^?! crType . slimeSlimeChange r = slimeToRad $ cr ^?! crType . slimeSlime - cr ^?! crType . slimeSlimeChange
so = slimeOutline cr so = slimeOutline cr
ps = fromMaybe so $ do ps = fromMaybe so $ do
(x', qs) <- cr ^? crType . slimeSplitTimer . _Just SlimeDistortion x' qs _ <- cr ^? crType . slimeDistortion
let x = fromIntegral x' let x = fromIntegral x'
guard $ length qs == 12 guard $ length qs == 12
return $ zipWith (+) (fmap (0.1 * (10 - x) *^) so) (fmap (0.1 * x *^) qs) return $ zipWith (+) (fmap (0.1 * (10 - x) *^) so) (fmap (0.1 * x *^) qs)
+8 -8
View File
@@ -232,8 +232,8 @@ updateCalmBee cr cid w
cxy = cr ^. crPos . _xy cxy = cr ^. crPos . _xy
mountshakeoff mid = fromMaybe True $ do mountshakeoff mid = fromMaybe True $ do
mcr <- w ^? cWorld . lWorld . creatures . ix mid mcr <- w ^? cWorld . lWorld . creatures . ix mid
SlimeCrit {_slimeSplitTimer = x} <- mcr ^? crType x <- mcr ^? crType . slimeDistortion . sdTime
return $ isJust x return $ x > 8
sspeed = 5 sspeed = 5
gettarg = do gettarg = do
i <- cr ^? crActionPlan . apStrategy . harvestTarget i <- cr ^? crActionPlan . apStrategy . harvestTarget
@@ -263,11 +263,11 @@ updateSlimeCrit cid w
& cWorld . lWorld . creatures . ix cid %~ mvslime & cWorld . lWorld . creatures . ix cid %~ mvslime
& cWorld . lWorld . creatures . ix cid . crDamage .~ [] & cWorld . lWorld . creatures . ix cid . crDamage .~ []
& tocr %~ doSlimeRadChange & tocr %~ doSlimeRadChange
& tocr . crType . slimeSplitTimer %~ fsst & tocr . crType . slimeDistortion %~ fsst
& tocr . crType . slimeEngulfProgress %~ (max 0 . subtract 0.5) & tocr . crType . slimeEngulfProgress %~ (max 0 . subtract 0.5)
where where
fsst (Just (x,ps)) | x > 0 = Just (x-1,ps) fsst (SlimeDistortion x ps t) | x > 0 = SlimeDistortion (x-1) ps t
fsst _ = Nothing fsst _ = NoSlimeDistortion
tocr = cWorld . lWorld . creatures . ix cid tocr = cWorld . lWorld . creatures . ix cid
cr = w ^?! cWorld . lWorld . creatures . ix cid cr = w ^?! cWorld . lWorld . creatures . ix cid
mvslime cr' = cr' & crType . slimeCompression +~ f (0.1/r) mvslime cr' = cr' & crType . slimeCompression +~ f (0.1/r)
@@ -336,8 +336,8 @@ splitSlimeCrit p v cr = do
& crDir .~ argV (-mvdir) & crDir .~ argV (-mvdir)
c1ps = qs' & each +~ cxy - (mp + r1 *^ mvdir) & each %~ rotateV (- c1 ^. crDir) c1ps = qs' & each +~ cxy - (mp + r1 *^ mvdir) & each %~ rotateV (- c1 ^. crDir)
c2ps = ps' & each +~ cxy - (mp - r2 *^ mvdir) & each %~ rotateV (- c2 ^. crDir) c2ps = ps' & each +~ cxy - (mp - r2 *^ mvdir) & each %~ rotateV (- c2 ^. crDir)
return (c1 & crType . slimeSplitTimer . _Just . _2 .~ f c1ps c1 return (c1 & crType . slimeDistortion . sdShape .~ f c1ps c1
,c2 & crType . slimeSplitTimer . _Just . _2 .~ f c2ps c2 ,c2 & crType . slimeDistortion . sdShape .~ f c2ps c2
) )
where where
f xs@(_:_) c = polyInPoly (centroid xs) xs (slimeOutline c) f xs@(_:_) c = polyInPoly (centroid xs) xs (slimeOutline c)
@@ -346,7 +346,7 @@ splitSlimeCrit p v cr = do
r = cr ^?! crType . slimeSlime . to slimeToRad r = cr ^?! crType . slimeSlime . to slimeToRad
cr' = cr & crDamage .~ [] cr' = cr & crDamage .~ []
& crType . slimeSlimeChange .~ 0 & crType . slimeSlimeChange .~ 0
& crType . slimeSplitTimer ?~ (10, mempty) & crType . slimeDistortion .~ SlimeDistortion 10 mempty True
& crType . slimeIsCompressing .~ False & crType . slimeIsCompressing .~ False
& crType . slimeCompression .~ 1 & crType . slimeCompression .~ 1
(ps,qs) = cutPoly (p-cxy) (p+v-cxy) $ slimeOutline cr & each %~ rotateV (cr ^. crDir) (ps,qs) = cutPoly (p-cxy) (p+v-cxy) $ slimeOutline cr & each %~ rotateV (cr ^. crDir)
+10 -1
View File
@@ -78,7 +78,7 @@ data CreatureType
, _slimeSlimeChange :: Int , _slimeSlimeChange :: Int
-- , _slimeRadWobble :: Float -- , _slimeRadWobble :: Float
--, _slimeSplitTimer :: Int --, _slimeSplitTimer :: Int
, _slimeSplitTimer :: Maybe (Int, [Point2]) , _slimeDistortion :: SlimeShapeDistortion
, _slimeCompression :: Float , _slimeCompression :: Float
, _slimeIsCompressing :: Bool , _slimeIsCompressing :: Bool
, _slimeEngulfProgress :: Float , _slimeEngulfProgress :: Float
@@ -102,6 +102,13 @@ data CreatureType
| BarrelCrit {_barrelType :: BarrelType} | BarrelCrit {_barrelType :: BarrelType}
| LampCrit {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int} | LampCrit {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int}
data SlimeShapeDistortion = SlimeDistortion
{ _sdTime :: Int
, _sdShape :: [Point2]
, _sdIsSplit :: Bool
}
| NoSlimeDistortion
slimeToRad :: Int -> Float slimeToRad :: Int -> Float
slimeToRad x = sqrt $ fromIntegral x * 0.01 slimeToRad x = sqrt $ fromIntegral x * 0.01
@@ -128,6 +135,8 @@ makeLenses ''Vocalization
makeLenses ''CrMvType makeLenses ''CrMvType
makeLenses ''CreatureType makeLenses ''CreatureType
makeLenses ''CreatureShape makeLenses ''CreatureShape
makeLenses ''SlimeShapeDistortion
deriveJSON defaultOptions ''SlimeShapeDistortion
deriveJSON defaultOptions ''Pulse deriveJSON defaultOptions ''Pulse
deriveJSON defaultOptions ''Vocalization deriveJSON defaultOptions ''Vocalization
deriveJSON defaultOptions ''BarrelType deriveJSON defaultOptions ''BarrelType
+9
View File
@@ -2,6 +2,7 @@
-- {-# OPTIONS_GHC -Wno-unused-imports #-} -- {-# OPTIONS_GHC -Wno-unused-imports #-}
module Dodge.Projectile.Update (updateProjectile,slimeEatSound) where module Dodge.Projectile.Update (updateProjectile,slimeEatSound) where
import Dodge.Creature.Slime
import Control.Monad import Control.Monad
import Data.List (delete) import Data.List (delete)
import Data.Maybe import Data.Maybe
@@ -92,6 +93,7 @@ shellHitCreature p cr pj
| SlimeCrit{} <- cr ^. crType = (cWorld . lWorld . projectiles . at (pj ^. pjID) .~ Nothing) | SlimeCrit{} <- cr ^. crType = (cWorld . lWorld . projectiles . at (pj ^. pjID) .~ Nothing)
. (cWorld . lWorld . creatures . ix (cr ^. crID) . crType . slimeSlime +~ 100) . (cWorld . lWorld . creatures . ix (cr ^. crID) . crType . slimeSlime +~ 100)
. (cWorld . lWorld . creatures . ix (cr ^. crID) . crType . slimeSlimeChange +~ 100) . (cWorld . lWorld . creatures . ix (cr ^. crID) . crType . slimeSlimeChange +~ 100)
. (cWorld . lWorld . creatures . ix (cr ^. crID) %~ slimeBulge (pj ^. pjPos))
. slimeEatSound (cr ^. crID) (cr ^. crPos . _xy) . slimeEatSound (cr ^. crID) (cr ^. crPos . _xy)
| Just GStick <- pj ^? pjType . gnHitEffect = | Just GStick <- pj ^? pjType . gnHitEffect =
(pjlens . pjType .~ Grenade gren) (pjlens . pjType .~ Grenade gren)
@@ -105,6 +107,13 @@ shellHitCreature p cr pj
(rotate3z (-cr ^. crDir) (p - cr ^. crPos)) (rotate3z (-cr ^. crDir) (p - cr ^. crPos))
(pj ^. pjDir - cr ^. crDir) (pj ^. pjDir - cr ^. crDir)
slimeBulge :: Point3 -> Creature -> Creature
slimeBulge p cr = cr
& crType . slimeDistortion .~ SlimeDistortion 10 (f <$>slimeOutline cr) False
where
v = rotateV (-cr ^. crDir) (normalize $ p ^. _xy - cr ^. crPos . _xy)
f x = x + (10 * max 0 (dot v (normalize x))) *^ v
shellHitFloor :: Point3 -> Projectile -> World -> World shellHitFloor :: Point3 -> Projectile -> World -> World
shellHitFloor p pj = shellHitFloor p pj =
(topj . pjPos .~ (p & _z .~ 0.1)) (topj . pjPos .~ (p & _z .~ 0.1))
+2 -2
View File
@@ -59,8 +59,8 @@ crs u = u ^.. uvWorld . cWorld . lWorld . creatures . each
testStringInit :: Universe -> [String] testStringInit :: Universe -> [String]
testStringInit u = [ u ^. uvWorld . testString ] testStringInit u = [ u ^. uvWorld . testString ]
<> u ^.. uvWorld . cWorld . lWorld . projectiles . each . pjPos . _z . to show -- <> u ^.. uvWorld . cWorld . lWorld . projectiles . each . pjPos . _z . to show
<> u ^.. uvWorld . cWorld . lWorld . creatures . each . crType . slimeSlime . to (show . slimeToRad) -- <> u ^.. uvWorld . cWorld . lWorld . creatures . each . crType . slimeSlime . to (show . slimeToRad)
-- , u ^. uvWorld . input . mouseContext . to show -- , u ^. uvWorld . input . mouseContext . to show
-- , u ^. uvWorld . hud . diSelection . to show -- , u ^. uvWorld . hud . diSelection . to show
-- , u ^. uvWorld . cWorld . lWorld . lInvLock . to show -- , u ^. uvWorld . cWorld . lWorld . lInvLock . to show
+1 -1
View File
@@ -1026,7 +1026,7 @@ crCrSpring c1 c2
, slimeFood c2 , slimeFood c2
, distance xy1 xy2 < r1 - (r2 + 5) , distance xy1 xy2 < r1 - (r2 + 5)
= feedSlime c1 c2 = feedSlime c1 c2
| Just Nothing <- c1 ^? crType . slimeSplitTimer | maybe True not (c1 ^? crType . slimeDistortion . sdIsSplit)
, slimeFood c2 = slimeSuck c1 c2 , slimeFood c2 = slimeSuck c1 c2
| SlimeCrit{} <- c1 ^. crType = id | SlimeCrit{} <- c1 ^. crType = id
| SlimeCrit{} <- c2 ^. crType = id | SlimeCrit{} <- c2 ^. crType = id
+43 -37
View File
@@ -74,10 +74,10 @@ 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
AutoCrit src/Dodge/Data/Creature/Misc.hs 101;" C AutoCrit src/Dodge/Data/Creature/Misc.hs 101;" C
AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C AutoTrigger src/Dodge/Data/TriggerType.hs 8;" C
AvPosture src/Dodge/Data/Creature/Misc.hs 108;" C AvPosture src/Dodge/Data/Creature/Misc.hs 115;" C
Avatar src/Dodge/Data/Creature/Misc.hs 49;" C Avatar src/Dodge/Data/Creature/Misc.hs 49;" C
AvatarDestroyed src/Dodge/Data/Creature.hs 66;" C AvatarDestroyed src/Dodge/Data/Creature.hs 66;" C
AvatarPosture src/Dodge/Data/Creature/Misc.hs 108;" t AvatarPosture src/Dodge/Data/Creature/Misc.hs 115;" 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 150;" C BANGCONE src/Dodge/Data/Item/Combine.hs 150;" C
BANGROD src/Dodge/Data/Item/Combine.hs 159;" C BANGROD src/Dodge/Data/Item/Combine.hs 159;" C
@@ -106,8 +106,8 @@ BackgroundSound src/Dodge/Data/SoundOrigin.hs 13;" C
Bark src/Dodge/Data/ActionPlan.hs 41;" 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 102;" C
BarrelHiss src/Dodge/Data/SoundOrigin.hs 34;" C BarrelHiss src/Dodge/Data/SoundOrigin.hs 34;" C
BarrelType src/Dodge/Data/Creature/Misc.hs 120;" t BarrelType src/Dodge/Data/Creature/Misc.hs 127;" t
Barreloid src/Dodge/Data/Creature/Misc.hs 116;" C Barreloid src/Dodge/Data/Creature/Misc.hs 123;" C
BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C BasicBeamDraw src/Dodge/Data/Beam.hs 32;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 42;" C BasicBulletTrajectory src/Dodge/Data/Bullet.hs 42;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 49;" C BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 49;" C
@@ -284,7 +284,7 @@ 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 110;" t CreatureShape src/Dodge/Data/Creature/Misc.hs 117;" t
CreatureType src/Dodge/Data/Creature/Misc.hs 48;" t CreatureType src/Dodge/Data/Creature/Misc.hs 48;" t
Crushing src/Dodge/Data/Damage.hs 19;" C Crushing src/Dodge/Data/Damage.hs 19;" C
CryoReleaseCloud src/Dodge/Data/Cloud.hs 24;" C CryoReleaseCloud src/Dodge/Data/Cloud.hs 24;" C
@@ -404,7 +404,7 @@ Explosion src/Dodge/Data/SoundOrigin.hs 39;" 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 122;" C ExplosiveBarrel src/Dodge/Data/Creature/Misc.hs 129;" 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
@@ -561,7 +561,7 @@ 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
HoverCrit src/Dodge/Data/Creature/Misc.hs 70;" C HoverCrit src/Dodge/Data/Creature/Misc.hs 70;" C
Huge src/Shape/Data.hs 24;" C Huge src/Shape/Data.hs 24;" C
Humanoid src/Dodge/Data/Creature/Misc.hs 111;" C Humanoid src/Dodge/Data/Creature/Misc.hs 118;" C
IMSI src/Dodge/Data/SelectionList.hs 43;" t IMSI src/Dodge/Data/SelectionList.hs 43;" t
IMSS src/Dodge/Data/SelectionList.hs 41;" t IMSS src/Dodge/Data/SelectionList.hs 41;" t
INTROSCAN src/Dodge/Data/Item/Combine.hs 32;" C INTROSCAN src/Dodge/Data/Item/Combine.hs 32;" C
@@ -833,7 +833,7 @@ NoAmmoRequired src/Dodge/Data/Muzzle.hs 25;" C
NoBeamCombine src/Dodge/Data/Beam.hs 41;" C NoBeamCombine src/Dodge/Data/Beam.hs 41;" C
NoConcurrentEffect src/Loop/Data.hs 7;" C NoConcurrentEffect src/Loop/Data.hs 7;" C
NoCrImp src/Dodge/Data/CreatureEffect.hs 9;" C NoCrImp src/Dodge/Data/CreatureEffect.hs 9;" C
NoCreatureShape src/Dodge/Data/Creature/Misc.hs 117;" C NoCreatureShape src/Dodge/Data/Creature/Misc.hs 124;" C
NoExtraMenuOption src/Dodge/Data/Universe.hs 79;" C NoExtraMenuOption src/Dodge/Data/Universe.hs 79;" C
NoFaction src/Dodge/Data/Creature/State.hs 18;" C NoFaction src/Dodge/Data/Creature/State.hs 18;" C
NoFlare src/Dodge/Data/Muzzle.hs 29;" C NoFlare src/Dodge/Data/Muzzle.hs 29;" C
@@ -853,6 +853,7 @@ NoSF src/Dodge/Data/ComposedItem.hs 30;" C
NoSIDisplayMod src/Dodge/Data/SelectionList.hs 59;" C NoSIDisplayMod src/Dodge/Data/SelectionList.hs 59;" C
NoShadowFidelity src/Shape/Data.hs 21;" C NoShadowFidelity src/Shape/Data.hs 21;" C
NoShadows src/Dodge/Data/Config.hs 121;" C NoShadows src/Dodge/Data/Config.hs 121;" C
NoSlimeDistortion src/Dodge/Data/Creature/Misc.hs 110;" C
NoSoundFilter src/Dodge/Data/WorldEffect.hs 23;" C NoSoundFilter src/Dodge/Data/WorldEffect.hs 23;" C
NoSubInventory src/Dodge/Data/HUD.hs 16;" C NoSubInventory src/Dodge/Data/HUD.hs 16;" C
NoTrigger src/Dodge/Data/TriggerType.hs 11;" C NoTrigger src/Dodge/Data/TriggerType.hs 11;" C
@@ -1003,7 +1004,7 @@ Piezoelectric src/Dodge/Data/Material.hs 23;" C
Pitted src/Dodge/Data/Creature.hs 75;" C Pitted src/Dodge/Data/Creature.hs 75;" 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 121;" C PlainBarrel src/Dodge/Data/Creature/Misc.hs 128;" C
PlainDeath src/Dodge/Data/Creature.hs 77;" C PlainDeath src/Dodge/Data/Creature.hs 77;" C
PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C PlantNurserySS src/Dodge/Data/Scenario.hs 96;" C
PlasmaBall src/Dodge/Data/PlasmaBall.hs 12;" t PlasmaBall src/Dodge/Data/PlasmaBall.hs 12;" t
@@ -1238,7 +1239,9 @@ Size src/Shape/Data.hs 24;" t
SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C SkiffBaySS src/Dodge/Data/Scenario.hs 108;" C
SleepingQuatersSS src/Dodge/Data/Scenario.hs 90;" C SleepingQuatersSS src/Dodge/Data/Scenario.hs 90;" C
SlimeCrit src/Dodge/Data/Creature/Misc.hs 76;" C SlimeCrit src/Dodge/Data/Creature/Misc.hs 76;" C
SlimeDistortion src/Dodge/Data/Creature/Misc.hs 105;" C
SlimeIntelligence src/Dodge/Data/ActionPlan.hs 16;" C SlimeIntelligence src/Dodge/Data/ActionPlan.hs 16;" C
SlimeShapeDistortion src/Dodge/Data/Creature/Misc.hs 105;" t
SlinkCrit src/Dodge/Data/Creature/Misc.hs 71;" C SlinkCrit src/Dodge/Data/Creature/Misc.hs 71;" C
Small src/Shape/Data.hs 27;" C Small src/Shape/Data.hs 27;" C
Smoke src/Dodge/Data/Cloud.hs 22;" C Smoke src/Dodge/Data/Cloud.hs 22;" C
@@ -2145,7 +2148,7 @@ _phTargetingID src/Dodge/Data/Projectile.hs 44;" 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 122;" f _piercedPoints src/Dodge/Data/Creature/Misc.hs 129;" f
_pjBarrelSpin src/Dodge/Data/Projectile.hs 24;" f _pjBarrelSpin src/Dodge/Data/Projectile.hs 24;" f
_pjDetonatorID src/Dodge/Data/Projectile.hs 26;" f _pjDetonatorID src/Dodge/Data/Projectile.hs 26;" f
_pjDir src/Dodge/Data/Projectile.hs 19;" f _pjDir src/Dodge/Data/Projectile.hs 19;" f
@@ -2322,6 +2325,9 @@ _scrollTestInt src/Dodge/Data/Input.hs 49;" f
_scurColor src/Dodge/Data/SelectionList.hs 29;" f _scurColor src/Dodge/Data/SelectionList.hs 29;" f
_scurPos src/Dodge/Data/SelectionList.hs 27;" f _scurPos src/Dodge/Data/SelectionList.hs 27;" f
_scurSize src/Dodge/Data/SelectionList.hs 28;" f _scurSize src/Dodge/Data/SelectionList.hs 28;" f
_sdIsSplit src/Dodge/Data/Creature/Misc.hs 108;" f
_sdShape src/Dodge/Data/Creature/Misc.hs 107;" f
_sdTime src/Dodge/Data/Creature/Misc.hs 106;" f
_seDist src/Dodge/Data/PathGraph.hs 44;" f _seDist src/Dodge/Data/PathGraph.hs 44;" f
_seObstacles src/Dodge/Data/PathGraph.hs 45;" f _seObstacles src/Dodge/Data/PathGraph.hs 45;" f
_searchTimer src/Dodge/Data/ActionPlan.hs 151;" f _searchTimer src/Dodge/Data/ActionPlan.hs 151;" f
@@ -2360,17 +2366,17 @@ _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 112;" f _skinHead src/Dodge/Data/Creature/Misc.hs 119;" f
_skinLower src/Dodge/Data/Creature/Misc.hs 114;" f _skinLower src/Dodge/Data/Creature/Misc.hs 121;" f
_skinUpper src/Dodge/Data/Creature/Misc.hs 113;" f _skinUpper src/Dodge/Data/Creature/Misc.hs 120;" f
_slInt src/Dodge/Data/HUD.hs 42;" f _slInt src/Dodge/Data/HUD.hs 42;" f
_slSec src/Dodge/Data/HUD.hs 42;" f _slSec src/Dodge/Data/HUD.hs 42;" f
_slimeCompression src/Dodge/Data/Creature/Misc.hs 82;" f _slimeCompression src/Dodge/Data/Creature/Misc.hs 82;" f
_slimeDistortion src/Dodge/Data/Creature/Misc.hs 81;" f
_slimeEngulfProgress src/Dodge/Data/Creature/Misc.hs 84;" f _slimeEngulfProgress src/Dodge/Data/Creature/Misc.hs 84;" f
_slimeIsCompressing src/Dodge/Data/Creature/Misc.hs 83;" f _slimeIsCompressing src/Dodge/Data/Creature/Misc.hs 83;" f
_slimeSlime src/Dodge/Data/Creature/Misc.hs 77;" f _slimeSlime src/Dodge/Data/Creature/Misc.hs 77;" f
_slimeSlimeChange src/Dodge/Data/Creature/Misc.hs 78;" f _slimeSlimeChange src/Dodge/Data/Creature/Misc.hs 78;" f
_slimeSplitTimer src/Dodge/Data/Creature/Misc.hs 81;" f
_slinkHeadPos src/Dodge/Data/Creature/Misc.hs 74;" f _slinkHeadPos src/Dodge/Data/Creature/Misc.hs 74;" f
_slinkSpine src/Dodge/Data/Creature/Misc.hs 73;" f _slinkSpine src/Dodge/Data/Creature/Misc.hs 73;" f
_smoothScrollAmount src/Dodge/Data/Input.hs 42;" f _smoothScrollAmount src/Dodge/Data/Input.hs 42;" f
@@ -3290,7 +3296,7 @@ destroyMatS src/Dodge/Material/Sound.hs 7;" f
destroyMcType src/Dodge/Machine/Destroy.hs 27;" f destroyMcType src/Dodge/Machine/Destroy.hs 27;" f
destroyMount src/Dodge/Wall/Damage.hs 167;" f destroyMount src/Dodge/Wall/Damage.hs 167;" f
destroyMounts src/Dodge/Wall/Damage.hs 164;" f destroyMounts src/Dodge/Wall/Damage.hs 164;" f
destroyProjectile src/Dodge/Projectile/Update.hs 112;" f destroyProjectile src/Dodge/Projectile/Update.hs 122;" f
detV src/Geometry/Vector.hs 102;" f detV src/Geometry/Vector.hs 102;" f
detector src/Dodge/Item/Held/Utility.hs 27;" f detector src/Dodge/Item/Held/Utility.hs 27;" f
detectorColor src/Dodge/Item/Draw/SPic.hs 436;" f detectorColor src/Dodge/Item/Draw/SPic.hs 436;" f
@@ -3327,7 +3333,7 @@ dmType src/Dodge/Damage.hs 38;" f
doAimTwist src/Dodge/Creature/YourControl.hs 130;" f doAimTwist src/Dodge/Creature/YourControl.hs 130;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 174;" f doAnyEquipmentEffect src/Dodge/Creature/State.hs 174;" f
doBackspace src/Dodge/Update/Input/Text.hs 31;" f doBackspace src/Dodge/Update/Input/Text.hs 31;" f
doBarrelSpin src/Dodge/Projectile/Update.hs 169;" f doBarrelSpin src/Dodge/Projectile/Update.hs 179;" f
doBlBl src/Dodge/BlBl.hs 5;" f doBlBl src/Dodge/BlBl.hs 5;" f
doBounce src/Dodge/Base/Collide.hs 81;" f doBounce src/Dodge/Base/Collide.hs 81;" f
doButtonEvent src/Dodge/Button/Event.hs 9;" f doButtonEvent src/Dodge/Button/Event.hs 9;" f
@@ -3382,7 +3388,7 @@ doTabComplete src/Dodge/Terminal.hs 241;" f
doTestDrawing src/Dodge/Render.hs 40;" f doTestDrawing src/Dodge/Render.hs 40;" f
doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f doTextInputOver src/Dodge/Update/Input/Text.hs 15;" f
doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f
doThrust src/Dodge/Projectile/Update.hs 132;" f doThrust src/Dodge/Projectile/Update.hs 142;" f
doTimeScroll src/Dodge/Update.hs 234;" f doTimeScroll src/Dodge/Update.hs 234;" f
doTmWdWd src/Dodge/WorldEffect.hs 102;" f doTmWdWd src/Dodge/WorldEffect.hs 102;" f
doWallRotate src/Dodge/Update/Camera.hs 232;" f doWallRotate src/Dodge/Update/Camera.hs 232;" f
@@ -3618,7 +3624,7 @@ expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f
expandPolyCorners src/Dodge/LevelGen/StaticWalls.hs 103;" f expandPolyCorners src/Dodge/LevelGen/StaticWalls.hs 103;" f
expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f
expireAndDamage src/Dodge/Bullet.hs 191;" f expireAndDamage src/Dodge/Bullet.hs 191;" f
explodeShell src/Dodge/Projectile/Update.hs 265;" f explodeShell src/Dodge/Projectile/Update.hs 269;" f
explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 746;" f explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 746;" f
explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f explosiveBarrel src/Dodge/Creature/Inanimate.hs 25;" f
extTrigLitPos src/Dodge/Placement/Instance/Button.hs 79;" f extTrigLitPos src/Dodge/Placement/Instance/Button.hs 79;" f
@@ -3743,7 +3749,7 @@ getAutoSpringLinks src/Dodge/Item/Grammar.hs 90;" f
getAvailableListLines src/Dodge/SelectionList.hs 10;" f getAvailableListLines src/Dodge/SelectionList.hs 10;" f
getBulHitDams src/Dodge/Bullet.hs 175;" f getBulHitDams src/Dodge/Bullet.hs 175;" f
getBulletType src/Dodge/HeldUse.hs 945;" f getBulletType src/Dodge/HeldUse.hs 945;" f
getCloseObj src/Dodge/Update/Input/InGame.hs 547;" f getCloseObj src/Dodge/Update/Input/InGame.hs 544;" f
getCommand src/Dodge/Terminal.hs 61;" f getCommand src/Dodge/Terminal.hs 61;" f
getCommands src/Dodge/Terminal.hs 58;" f getCommands src/Dodge/Terminal.hs 58;" f
getCrMoveSpeed src/Dodge/Creature/Statistics.hs 56;" f getCrMoveSpeed src/Dodge/Creature/Statistics.hs 56;" f
@@ -4283,7 +4289,7 @@ maybeBlockedPassage src/Dodge/Room/RezBox.hs 80;" f
maybeClearLoadingScreen src/Dodge/StartNewGame.hs 58;" f maybeClearLoadingScreen src/Dodge/StartNewGame.hs 58;" f
maybeDestroyBlock src/Dodge/Wall/Damage.hs 136;" f maybeDestroyBlock src/Dodge/Wall/Damage.hs 136;" f
maybeDestroyDoor src/Dodge/Wall/Damage.hs 141;" f maybeDestroyDoor src/Dodge/Wall/Damage.hs 141;" f
maybeExitCombine src/Dodge/Update/Input/InGame.hs 569;" f maybeExitCombine src/Dodge/Update/Input/InGame.hs 566;" f
maybeOpenConsole src/Dodge/Update.hs 136;" f maybeOpenConsole src/Dodge/Update.hs 136;" f
maybeReadFile src/Dodge/LoadSeed.hs 10;" f maybeReadFile src/Dodge/LoadSeed.hs 10;" f
maybeTakeOne src/RandomHelp.hs 135;" f maybeTakeOne src/RandomHelp.hs 135;" f
@@ -4388,10 +4394,10 @@ moveBullet src/Dodge/Bullet.hs 200;" f
moveCombineSel src/Dodge/Update/Scroll.hs 120;" f moveCombineSel src/Dodge/Update/Scroll.hs 120;" f
moveInverseShockwave src/Dodge/Shockwave/Update.hs 31;" f moveInverseShockwave src/Dodge/Shockwave/Update.hs 31;" f
movePenBullet src/Dodge/Bullet.hs 206;" f movePenBullet src/Dodge/Bullet.hs 206;" f
moveProjectile src/Dodge/Projectile/Update.hs 240;" f moveProjectile src/Dodge/Projectile/Update.hs 250;" f
moveRoomBy src/Dodge/Room/Link.hs 57;" f moveRoomBy src/Dodge/Room/Link.hs 57;" f
moveShockwave src/Dodge/Shockwave/Update.hs 13;" f moveShockwave src/Dodge/Shockwave/Update.hs 13;" f
moveStuckGrenade src/Dodge/Projectile/Update.hs 219;" f moveStuckGrenade src/Dodge/Projectile/Update.hs 229;" f
moveToSideNthOutLink src/Dodge/Room/Warning.hs 106;" f moveToSideNthOutLink src/Dodge/Room/Warning.hs 106;" f
moveWall src/Dodge/Wall/Move.hs 23;" f moveWall src/Dodge/Wall/Move.hs 23;" f
moveWallID src/Dodge/Wall/Move.hs 18;" f moveWallID src/Dodge/Wall/Move.hs 18;" f
@@ -4528,7 +4534,7 @@ passthroughLockKeyLists src/Dodge/Room/Tutorial.hs 693;" f
pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f pathConnected src/Dodge/Room/CheckConsistency.hs 13;" f
pathEdgeObstructed src/Dodge/Path.hs 87;" f pathEdgeObstructed src/Dodge/Path.hs 87;" f
pauseAndFloatCam src/Dodge/Camera.hs 10;" f pauseAndFloatCam src/Dodge/Camera.hs 10;" f
pauseGame src/Dodge/Update/Input/InGame.hs 539;" f pauseGame src/Dodge/Update/Input/InGame.hs 536;" f
pauseMenu src/Dodge/Menu.hs 57;" f pauseMenu src/Dodge/Menu.hs 57;" f
pauseMenuOptions src/Dodge/Menu.hs 64;" f pauseMenuOptions src/Dodge/Menu.hs 64;" f
pauseSound src/Dodge/SoundLogic.hs 42;" f pauseSound src/Dodge/SoundLogic.hs 42;" f
@@ -4556,7 +4562,7 @@ pincerP''' src/Dodge/Creature/Boid.hs 77;" f
pipe src/Dodge/Item/Craftable.hs 29;" f pipe src/Dodge/Item/Craftable.hs 29;" f
pistol src/Dodge/Item/Held/Stick.hs 18;" f pistol src/Dodge/Item/Held/Stick.hs 18;" f
pistolerRoom src/Dodge/Room/Room.hs 351;" f pistolerRoom src/Dodge/Room/Room.hs 351;" f
pjRemoteSetDirection src/Dodge/Projectile/Update.hs 197;" f pjRemoteSetDirection src/Dodge/Projectile/Update.hs 207;" f
plBlock src/Dodge/Placement/PlaceSpot/Block.hs 24;" f plBlock src/Dodge/Placement/PlaceSpot/Block.hs 24;" f
plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f plDoor src/Dodge/Placement/PlaceSpot/TriggerDoor.hs 12;" f
plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 57;" f plLineBlock src/Dodge/Placement/PlaceSpot/Block.hs 57;" f
@@ -5074,8 +5080,8 @@ shapeVerxSize src/Shape/Parameters.hs 5;" f
shatterGun src/Dodge/Item/Held/Weapons.hs 8;" f shatterGun src/Dodge/Item/Held/Weapons.hs 8;" f
shatterGunSPic src/Dodge/Item/Draw/SPic.hs 314;" f shatterGunSPic src/Dodge/Item/Draw/SPic.hs 314;" f
shellExplosionCheck src/Dodge/Projectile/Update.hs 50;" f shellExplosionCheck src/Dodge/Projectile/Update.hs 50;" f
shellHitCreature src/Dodge/Projectile/Update.hs 84;" f shellHitCreature src/Dodge/Projectile/Update.hs 90;" f
shellHitFloor src/Dodge/Projectile/Update.hs 98;" f shellHitFloor src/Dodge/Projectile/Update.hs 108;" f
shellHitWall src/Dodge/Projectile/Update.hs 60;" f shellHitWall src/Dodge/Projectile/Update.hs 60;" f
shellMag src/Dodge/Item/Ammo.hs 47;" f shellMag src/Dodge/Item/Ammo.hs 47;" f
shellModule src/Dodge/Item/Scope.hs 128;" f shellModule src/Dodge/Item/Scope.hs 128;" f
@@ -5127,10 +5133,10 @@ showEquipItem src/Dodge/Item/Display.hs 109;" 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 87;" f showInventoryPathing src/Dodge/Item/Display.hs 87;" f
showManObj src/Dodge/TestString.hs 135;" f showManObj src/Dodge/TestString.hs 136;" f
showMuzzlePositions src/Dodge/Debug.hs 320;" f showMuzzlePositions src/Dodge/Debug.hs 320;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 151;" f showTimeFlow src/Dodge/TestString.hs 152;" 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
@@ -5167,11 +5173,11 @@ slapS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 718;" f
slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 676;" f slideDoorS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 676;" f
slideWindow src/ListHelp.hs 81;" f slideWindow src/ListHelp.hs 81;" f
slimeCrit src/Dodge/Creature/ChaseCrit.hs 70;" f slimeCrit src/Dodge/Creature/ChaseCrit.hs 70;" f
slimeEatSound src/Dodge/Update.hs 1109;" f slimeEatSound src/Dodge/Projectile/Update.hs 84;" f
slimeFood src/Dodge/Update.hs 1071;" f slimeFood src/Dodge/Update.hs 1071;" f
slimeOutline src/Dodge/Creature/Slime.hs 9;" f slimeOutline src/Dodge/Creature/Slime.hs 9;" f
slimeSuck src/Dodge/Update.hs 1055;" f slimeSuck src/Dodge/Update.hs 1055;" f
slimeToRad src/Dodge/Data/Creature/Misc.hs 105;" f slimeToRad src/Dodge/Data/Creature/Misc.hs 112;" f
slinkCrit src/Dodge/Creature/ChaseCrit.hs 58;" f slinkCrit src/Dodge/Creature/ChaseCrit.hs 58;" f
slinkCritUpdate src/Dodge/Creature/Update.hs 358;" f slinkCritUpdate src/Dodge/Creature/Update.hs 358;" f
slowCrush90 src/Dodge/Room/LongDoor.hs 263;" f slowCrush90 src/Dodge/Room/LongDoor.hs 263;" f
@@ -5219,7 +5225,7 @@ soundWithStatus src/Dodge/SoundLogic.hs 104;" f
soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f soundWithStatusVolume src/Dodge/SoundLogic.hs 54;" f
southPillarsRoom src/Dodge/Room/LongDoor.hs 89;" f southPillarsRoom src/Dodge/Room/LongDoor.hs 89;" f
spPos src/ShapePicture/Data.hs 11;" f spPos src/ShapePicture/Data.hs 11;" f
spaceAction src/Dodge/Update/Input/InGame.hs 542;" f spaceAction src/Dodge/Update/Input/InGame.hs 539;" f
spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 162;" f spanColLightBlackI src/Dodge/Placement/Instance/LightSource.hs 162;" f
spanColLightI src/Dodge/Placement/Instance/LightSource.hs 155;" f spanColLightI src/Dodge/Placement/Instance/LightSource.hs 155;" f
spanLS src/Dodge/Placement/Instance/LightSource.hs 147;" f spanLS src/Dodge/Placement/Instance/LightSource.hs 147;" f
@@ -5459,7 +5465,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 714;" f
topInvW src/Dodge/ListDisplayParams.hs 56;" f topInvW src/Dodge/ListDisplayParams.hs 56;" f
topPrismEdgeIndices src/Shader/Poke.hs 344;" f topPrismEdgeIndices src/Shader/Poke.hs 344;" f
topPrismIndices src/Shader/Poke.hs 419;" f topPrismIndices src/Shader/Poke.hs 419;" f
topTestPart src/Dodge/TestString.hs 130;" f topTestPart src/Dodge/TestString.hs 131;" f
torchShape src/Dodge/Item/Draw/SPic.hs 278;" f torchShape src/Dodge/Item/Draw/SPic.hs 278;" 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
@@ -5513,7 +5519,7 @@ truncate src/Polyhedra/Geodesic.hs 39;" f
trunkDepth src/TreeHelp.hs 164;" f trunkDepth src/TreeHelp.hs 164;" f
tryAttachItems src/Dodge/Item/Grammar.hs 35;" f tryAttachItems src/Dodge/Item/Grammar.hs 35;" f
tryClickUse src/Dodge/Creature/YourControl.hs 205;" f tryClickUse src/Dodge/Creature/YourControl.hs 205;" f
tryCombine src/Dodge/Update/Input/InGame.hs 559;" f tryCombine src/Dodge/Update/Input/InGame.hs 556;" f
tryDrawToCapacitor src/Dodge/Creature/State.hs 184;" f tryDrawToCapacitor src/Dodge/Creature/State.hs 184;" f
tryDropSelected src/Dodge/Update/Input/InGame.hs 132;" f tryDropSelected src/Dodge/Update/Input/InGame.hs 132;" f
tryEvadeSideways src/Dodge/Creature/Action.hs 104;" f tryEvadeSideways src/Dodge/Creature/Action.hs 104;" f
@@ -5525,9 +5531,9 @@ tryPlay src/Sound.hs 85;" f
tryPutItemInInv src/Dodge/Inventory/Add.hs 25;" f tryPutItemInInv src/Dodge/Inventory/Add.hs 25;" f
tryPutItemInInvAt src/Dodge/Inventory/Add.hs 64;" f tryPutItemInInvAt src/Dodge/Inventory/Add.hs 64;" f
trySeedFromClipboard src/Dodge/Menu.hs 94;" f trySeedFromClipboard src/Dodge/Menu.hs 94;" f
trySpin src/Dodge/Projectile/Update.hs 120;" f trySpin src/Dodge/Projectile/Update.hs 130;" f
trySynthBullet src/Dodge/Creature/State.hs 200;" f trySynthBullet src/Dodge/Creature/State.hs 200;" f
tryThrust src/Dodge/Projectile/Update.hs 126;" f tryThrust src/Dodge/Projectile/Update.hs 136;" f
tryUseParent src/Dodge/Creature/State.hs 178;" f tryUseParent src/Dodge/Creature/State.hs 178;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f turnTo src/Dodge/Movement/Turn.hs 8;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f turretItemOffset src/Dodge/Item/HeldOffset.hs 21;" f
@@ -5603,7 +5609,7 @@ updateCreatureStrides src/Dodge/Update.hs 375;" f
updateDebris src/Dodge/Update.hs 686;" f updateDebris src/Dodge/Update.hs 686;" f
updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f
updateDebugMessageOffset src/Dodge/Update.hs 104;" f updateDebugMessageOffset src/Dodge/Update.hs 104;" f
updateDelayedEvents src/Dodge/Update.hs 1116;" f updateDelayedEvents src/Dodge/Update.hs 1110;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 117;" f updateDisplaySections src/Dodge/DisplayInventory.hs 117;" f
updateDistortion src/Dodge/Distortion.hs 8;" f updateDistortion src/Dodge/Distortion.hs 8;" f
updateDistortions src/Dodge/Update.hs 665;" f updateDistortions src/Dodge/Update.hs 665;" f
@@ -5617,7 +5623,7 @@ updateEdgesWall src/Dodge/Update/WallDamage.hs 23;" f
updateEdgesWall' src/Dodge/Update/WallDamage.hs 36;" f updateEdgesWall' src/Dodge/Update/WallDamage.hs 36;" f
updateEnergyBall src/Dodge/EnergyBall.hs 32;" f updateEnergyBall src/Dodge/EnergyBall.hs 32;" f
updateEnergyBalls src/Dodge/Update.hs 774;" f updateEnergyBalls src/Dodge/Update.hs 774;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 516;" f updateEnterRegex src/Dodge/Update/Input/InGame.hs 515;" f
updateExpBarrel src/Dodge/Barreloid.hs 21;" f updateExpBarrel src/Dodge/Barreloid.hs 21;" f
updateFlame src/Dodge/Flame.hs 19;" f updateFlame src/Dodge/Flame.hs 19;" f
updateFlames src/Dodge/Update.hs 771;" f updateFlames src/Dodge/Update.hs 771;" f