Work on energy balls

This commit is contained in:
2025-06-08 23:31:44 +01:00
parent 7e8eaaa34e
commit 3dce133f30
5 changed files with 144 additions and 95 deletions
+6 -7
View File
@@ -20,6 +20,8 @@ import System.Random
updateBullet :: World -> Bullet -> (World, Maybe Bullet)
updateBullet w bu
| magV (_buVel bu) < 10
, BulBall _ <- _buPayload bu = (useBulletPayload bu (_buPos bu) w, Nothing)
| magV (_buVel bu) < 1 = (useBulletPayload bu (_buPos bu) w, Nothing)
-- have to be slightly carefull not to accelerate bullets using magnets
| otherwise = second (Just . updateBulVel) . hitEffFromBul w $ applyMagnetsToBul bu w
@@ -114,11 +116,10 @@ useBulletPayload bu = case _buPayload bu of
BulFlak -> makeFlak bu
BulFrag -> makeFragBullets
BulGas -> (`makeGasCloud` V2 0 0)
-- BulBall FlamingBall -> incBallAt
BulBall ExplosiveBall -> \p -> cWorld . lWorld . shockwaves .:~ concBall p
BulBall ElectricalBall -> makeStaticBall
BulBall FlashBall -> makeFlashBall
BulBall (FlameletBall x _) -> \p -> makeFlamelet p 0 x 10
BulBall ElectricalBall -> makeMovingEB (_buVel bu) ElectricalBall
BulBall FlashBall -> makeMovingEB (_buVel bu) FlashBall
BulBall (FlameletBall x r) -> makeMovingEB (_buVel bu) (FlameletBall x r)
makeFragBullets :: Point2 -> World -> World
makeFragBullets p w = w & cWorld . lWorld . bullets .++~ bus
@@ -134,7 +135,6 @@ makeFragBullets p w = w & cWorld . lWorld . bullets .++~ bus
& buPos .~ p
& buOldPos .~ p
& buWidth .~ 1
-- & buDamages .~ [Damage PIERCING 5 0 0 0 $ PushBackDamage 2]
makeFlak :: Bullet -> Point2 -> World -> World
makeFlak bu _ w = w & cWorld . lWorld . bullets .++~ [f x | x <- xs]
@@ -144,7 +144,6 @@ makeFlak bu _ w = w & cWorld . lWorld . bullets .++~ [f x | x <- xs]
f x = bu & buVel %~ g x
& buPayload .~ BulPlain 25
& buWidth .~ 0.5
-- & buDamages .~ [Damage PIERCING 25 0 0 0 $ PushBackDamage 2]
g x v = v +.+ x *.* normalizeV (vNormal v)
hitEffFromBul :: World -> Bullet -> (World, Bullet)
@@ -196,7 +195,7 @@ moveBullet pt = pt & buPos +~ _buVel pt & buOldPos .~ _buPos pt
stopBulletAt :: Point2 -> Bullet -> Bullet
stopBulletAt hitp pt =
pt
& buPos .~ hitp
& buPos .~ hitp + squashNormalizeV (_buPos pt - hitp)
& buOldPos .~ _buPos pt
& buVel .~ 0
-1
View File
@@ -24,7 +24,6 @@ data Bullet = Bullet
, _buPos :: Point2
, _buOldPos :: Point2
, _buWidth :: Float
-- , _buDamages :: [Damage]
}
deriving (Show, Eq, Ord, Read) --Generic, Flat)
+23 -1
View File
@@ -5,6 +5,7 @@ module Dodge.EnergyBall (
incBallAt,
makeFlashBall,
makeFlamelet,
makeMovingEB,
) where
import qualified Data.IntMap.Strict as IM
@@ -12,6 +13,7 @@ import Data.List (foldl')
import Data.Maybe
import Dodge.Base.Collide
import Dodge.Data.World
import Dodge.Spark
import Dodge.WorldEvent.ThingsHit
import Geometry
import LensHelp
@@ -36,13 +38,23 @@ updateEnergyBall :: World -> EnergyBall -> (World, Maybe EnergyBall)
updateEnergyBall w eb
| _ebTimer eb <= 0 = (w, Nothing)
| otherwise =
( ebFlicker eb $ damageCircle (_ebPos eb) (_ebEff eb) w
( ebEffect eb . ebFlicker eb $ damageCircle (_ebPos eb) (_ebEff eb) w
, Just $ eb & ebTimer -~ 1 & ebPos .~ bp & ebVel .~ 0.85 * bv
)
where
p = eb ^. ebPos + eb ^. ebVel
(bp, bv) = fromMaybe (p, eb ^. ebVel) $ bouncePoint (const True) 0 (eb ^. ebPos) p w
ebEffect :: EnergyBall -> World -> World
ebEffect eb = case _ebEff eb of
ElectricalBall -> randSparkExtraVel
(_ebVel eb)
ElectricSpark
(state (randomR (3, 6)))
(state (randomR (0, 2 * pi)))
(_ebPos eb)
_ -> id
energyBallAt :: EnergyBallType -> Point2 -> World -> World
energyBallAt ebt p =
cWorld . lWorld . energyBalls
@@ -53,6 +65,16 @@ energyBallAt ebt p =
, _ebEff = ebt
}
makeMovingEB :: Point2 -> EnergyBallType -> Point2 -> World -> World
makeMovingEB v ebt p =
cWorld . lWorld . energyBalls
.:~ EnergyBall
{ _ebVel = v
, _ebPos = p
, _ebTimer = 20
, _ebEff = ebt
}
incBallAt :: Point2 -> World -> World
incBallAt = energyBallAt (FlameletBall 5 0)
+26
View File
@@ -3,6 +3,7 @@ module Dodge.Spark (
sparkRandDir,
randDirSpark,
randSpark,
randSparkExtraVel,
makeSpark,
) where
@@ -14,6 +15,7 @@ import Geometry
import LensHelp
import System.Random
-- should probably reduce spark speed more if it is very fast
updateSpark :: World -> Spark -> (World, Maybe Spark)
updateSpark w sk
| magV (_skVel sk) < 1 = (w, Nothing)
@@ -87,5 +89,29 @@ randSpark dt randspeed randdir pos w =
x <- randspeed
return (d, x)
randSparkExtraVel ::
Point2 ->
SparkType ->
State StdGen Float ->
State StdGen Float ->
Point2 ->
World ->
World
randSparkExtraVel v dt randspeed randdir pos w =
w
& randGen .~ g
& cWorld . lWorld . sparks
.:~ Spark
{ _skVel = v + rotateV dir (V2 speed 0)
, _skPos = pos
, _skOldPos = pos
, _skType = dt
}
where
((dir, speed), g) = (`runState` _randGen w) $ do
d <- randdir
x <- randspeed
return (d, x)
sparkRandDir :: Float -> Point2 -> Float -> World -> World
sparkRandDir a pos dir = randDirSpark (state $ randomR (dir - a, dir + a)) pos
+89 -86
View File
@@ -152,8 +152,8 @@ Base src/Dodge/Zoning/Base.hs 2;" m
Base src/Picture/Base.hs 4;" m
BaseTriggerType src/Dodge/BaseTriggerType.hs 3;" m
BasicBeamDraw src/Dodge/Data/Beam.hs 34;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 46;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 53;" C
BasicBulletTrajectory src/Dodge/Data/Bullet.hs 45;" C
BasicBulletTrajectoryType src/Dodge/Data/Bullet.hs 52;" C
BasicFlare src/Dodge/Data/Muzzle.hs 23;" C
BatteryGuns src/Dodge/Item/Held/BatteryGuns.hs 1;" m
BatteryGuns src/Dodge/Item/Weapon/BatteryGuns.hs 1;" m
@@ -169,8 +169,8 @@ BeamType src/Dodge/Data/Beam.hs 46;" t
BecomePowerful src/Dodge/Data/Scenario.hs 9;" C
BeltBulletAmmo src/Dodge/Data/AmmoType.hs 8;" C
Bezier src/Geometry/Bezier.hs 1;" m
BezierTrajectory src/Dodge/Data/Bullet.hs 47;" C
BezierTrajectoryType src/Dodge/Data/Bullet.hs 54;" C
BezierTrajectory src/Dodge/Data/Bullet.hs 46;" C
BezierTrajectoryType src/Dodge/Data/Bullet.hs 53;" C
Bind src/Shader/Bind.hs 1;" m
Biome src/Dodge/Data/Scenario.hs 71;" t
BlBl src/Dodge/Data/BlBl.hs 11;" t
@@ -207,7 +207,7 @@ Booster src/Dodge/Item/Equipment/Booster.hs 1;" m
Boosting src/Dodge/Data/Creature/Stance.hs 28;" C
Boss src/Dodge/Room/Boss.hs 2;" m
BottomEscapeMenuOption src/Dodge/Data/Universe.hs 77;" C
BounceBullet src/Dodge/Data/Bullet.hs 33;" C
BounceBullet src/Dodge/Data/Bullet.hs 32;" C
Bound src/Bound.hs 1;" m
Bound_box_screen src/Dodge/Data/Config.hs 81;" C
BoundaryCursor src/Dodge/Data/SelectionList.hs 20;" C
@@ -220,26 +220,26 @@ Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 17;" C
BtInactive src/Dodge/Data/Button.hs 63;" C
BtOff src/Dodge/Data/Button.hs 63;" C
BtOn src/Dodge/Data/Button.hs 63;" C
BulBall src/Dodge/Data/Bullet.hs 38;" C
BulFlak src/Dodge/Data/Bullet.hs 40;" C
BulFrag src/Dodge/Data/Bullet.hs 41;" C
BulGas src/Dodge/Data/Bullet.hs 42;" C
BulPlain src/Dodge/Data/Bullet.hs 39;" C
BulBall src/Dodge/Data/Bullet.hs 37;" C
BulFlak src/Dodge/Data/Bullet.hs 39;" C
BulFrag src/Dodge/Data/Bullet.hs 40;" C
BulGas src/Dodge/Data/Bullet.hs 41;" C
BulPlain src/Dodge/Data/Bullet.hs 38;" C
Bullet src/Dodge/Data/Bullet.hs 18;" t
Bullet src/Dodge/Bullet.hs 1;" m
Bullet src/Dodge/Data/Bullet.hs 6;" m
Bullet src/Dodge/Item/Weapon/Bullet.hs 1;" m
BulletAmmo src/Dodge/Data/AmmoType.hs 7;" C
BulletEffect src/Dodge/Data/Bullet.hs 31;" t
BulletEffect src/Dodge/Data/Bullet.hs 30;" t
BulletGun src/Dodge/Item/Held/BulletGun.hs 1;" m
BulletMod src/Dodge/Data/Item/BulletMod.hs 10;" t
BulletMod src/Dodge/Data/Item/BulletMod.hs 3;" m
BulletModEffect src/Dodge/Data/Item/BulletMod.hs 12;" C
BulletModPayload src/Dodge/Data/Item/BulletMod.hs 11;" C
BulletParams src/Dodge/Data/Item/Use.hs 54;" C
BulletPayload src/Dodge/Data/Bullet.hs 37;" t
BulletTrajectory src/Dodge/Data/Bullet.hs 45;" t
BulletTrajectoryType src/Dodge/Data/Bullet.hs 52;" t
BulletPayload src/Dodge/Data/Bullet.hs 36;" t
BulletTrajectory src/Dodge/Data/Bullet.hs 44;" t
BulletTrajectoryType src/Dodge/Data/Bullet.hs 51;" t
BurstTrigger src/Dodge/Data/TriggerType.hs 14;" C
Button src/Dodge/Data/Button.hs 48;" t
Button src/Dodge/Data/Button.hs 6;" m
@@ -509,7 +509,7 @@ Delete src/Dodge/Wall/Delete.hs 1;" m
Deprecated src/Dodge/LevelGen/StaticWalls/Deprecated.hs 1;" m
Destroy src/Dodge/Machine/Destroy.hs 1;" m
DestroyBeing src/Dodge/Data/Scenario.hs 8;" C
DestroyBullet src/Dodge/Data/Bullet.hs 32;" C
DestroyBullet src/Dodge/Data/Bullet.hs 31;" C
DestroyItem src/Dodge/Data/Scenario.hs 7;" C
Detector src/Dodge/Data/Item/Combine.hs 182;" t
Dirt src/Dodge/Data/Material.hs 11;" C
@@ -698,8 +698,8 @@ FlashBall src/Dodge/Data/EnergyBall/Type.hs 16;" C
Flashing src/Dodge/Data/Damage.hs 27;" C
FlatFaces src/Shape/Data.hs 17;" C
FlatShieldParams src/Dodge/Data/Item/Params.hs 15;" C
FlechetteTrajectory src/Dodge/Data/Bullet.hs 48;" C
FlechetteTrajectoryType src/Dodge/Data/Bullet.hs 55;" C
FlechetteTrajectory src/Dodge/Data/Bullet.hs 47;" C
FlechetteTrajectoryType src/Dodge/Data/Bullet.hs 54;" C
Flee src/Dodge/Data/ActionPlan.hs 191;" C
Flee src/Dodge/Creature/Impulse/Flee.hs 1;" m
Flesh src/Dodge/Data/Material.hs 11;" C
@@ -1139,8 +1139,8 @@ MagnetBuBu src/Dodge/Data/Magnet.hs 16;" t
MagnetBuBu src/Dodge/MagnetBuBu.hs 1;" m
MagnetDeflect src/Dodge/Data/Magnet.hs 18;" C
MagnetRepulse src/Dodge/Data/Magnet.hs 20;" C
MagnetTrajectory src/Dodge/Data/Bullet.hs 49;" C
MagnetTrajectoryType src/Dodge/Data/Bullet.hs 56;" C
MagnetTrajectory src/Dodge/Data/Bullet.hs 48;" C
MagnetTrajectoryType src/Dodge/Data/Bullet.hs 55;" C
MagnetUpdate src/Dodge/Data/Magnet.hs 13;" t
MagnetUpdateTimer src/Dodge/Data/Magnet.hs 13;" C
Main appDodge/Main.hs 1;" m
@@ -1448,7 +1448,7 @@ PausedTimeFlow src/Dodge/Data/World.hs 76;" C
Payload src/Dodge/Data/Payload.hs 11;" t
Payload src/Dodge/Data/Payload.hs 6;" m
Payload src/Dodge/Payload.hs 2;" m
PenetrateBullet src/Dodge/Data/Bullet.hs 34;" C
PenetrateBullet src/Dodge/Data/Bullet.hs 33;" C
Perception src/Dodge/Data/Creature/Perception.hs 32;" t
Perception src/Dodge/Creature/Perception.hs 2;" m
Perception src/Dodge/Data/Creature/Perception.hs 6;" m
@@ -2336,7 +2336,7 @@ _btRot src/Dodge/Data/Button.hs 51;" f
_btState src/Dodge/Data/Button.hs 55;" f
_btTermMID src/Dodge/Data/Button.hs 56;" f
_btText src/Dodge/Data/Button.hs 54;" f
_buDam src/Dodge/Data/Bullet.hs 39;" f
_buDam src/Dodge/Data/Bullet.hs 38;" f
_buDrag src/Dodge/Data/Bullet.hs 23;" f
_buEffect src/Dodge/Data/Bullet.hs 19;" f
_buOldPos src/Dodge/Data/Bullet.hs 25;" f
@@ -3094,7 +3094,7 @@ _soundsToInvestigate src/Dodge/Data/Creature/Memory.hs 14;" f
_spPixelOff src/Dodge/Data/ScreenPos.hs 14;" f
_spScreenOff src/Dodge/Data/ScreenPos.hs 13;" f
_sparks src/Dodge/Data/LWorld.hs 112;" f
_spawnEBT src/Dodge/Data/Bullet.hs 38;" f
_spawnEBT src/Dodge/Data/Bullet.hs 37;" f
_ssIndent src/Dodge/Data/SelectionList.hs 34;" f
_ssItems src/Dodge/Data/SelectionList.hs 30;" f
_ssOffset src/Dodge/Data/SelectionList.hs 31;" f
@@ -3394,8 +3394,8 @@ applyEventIO src/Loop.hs 89;" f
applyGravityPU src/Dodge/Projectile/Update.hs 56;" f
applyIndividualDamage src/Dodge/Creature/Damage.hs 47;" f
applyInvLock src/Dodge/HeldUse.hs 425;" f
applyMagnetsToBul src/Dodge/Bullet.hs 28;" f
applyPastDamages src/Dodge/Creature/State.hs 143;" f
applyMagnetsToBul src/Dodge/Bullet.hs 29;" f
applyPastDamages src/Dodge/Creature/State.hs 140;" f
applyPiercingDamage src/Dodge/Creature/Damage.hs 52;" f
applyPosition src/Sound.hs 111;" f
applyRecoil src/Dodge/HeldUse.hs 457;" f
@@ -3534,7 +3534,7 @@ blunderbuss src/Dodge/Item/Held/Cone.hs 14;" f
boosterGun src/Dodge/Item/Equipment/Booster.hs 9;" f
bossKeyItems src/Dodge/LockAndKey.hs 12;" f
bossRoom src/Dodge/Room/Boss.hs 60;" f
bounceDir src/Dodge/Bullet.hs 106;" f
bounceDir src/Dodge/Bullet.hs 107;" f
bouncePoint src/Dodge/Base/Collide.hs 88;" f
boundPoints src/Bound.hs 10;" f
boundedGrid src/Grid.hs 19;" f
@@ -3582,7 +3582,7 @@ centerVaultRoom src/Dodge/Room/Procedural.hs 289;" f
centroid src/Geometry/Polygon.hs 130;" f
centroidNum src/Geometry/Polygon.hs 133;" f
chainCreatureUpdates src/Dodge/Creature/ChainUpdates.hs 6;" f
chainLinkOrientation src/Dodge/Creature/State.hs 275;" f
chainLinkOrientation src/Dodge/Creature/State.hs 271;" f
chainPairs src/Geometry.hs 359;" f
changeSwapOther src/Dodge/Inventory.hs 144;" f
changeSwapSel src/Dodge/Inventory.hs 137;" f
@@ -3597,7 +3597,7 @@ chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 31;" f
chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 37;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
checkConnection src/Dodge/Inventory/Swap.hs 64;" f
checkDeath src/Dodge/Creature/State.hs 79;" f
checkDeath src/Dodge/Creature/State.hs 76;" f
checkEndGame src/Dodge/Update.hs 709;" f
checkErrorGL src/Shader/Compile.hs 255;" f
checkFBO src/Framebuffer/Check.hs 6;" f
@@ -3664,7 +3664,7 @@ clusterFunc src/Dodge/Combine/Graph.hs 119;" f
cogRaised src/Dodge/Creature/Perception.hs 102;" f
colCrWall src/Dodge/WallCreatureCollisions.hs 28;" f
colCrsWalls src/Dodge/WallCreatureCollisions.hs 18;" f
collectDamageTypes src/Dodge/Damage.hs 48;" f
collectDamageTypes src/Dodge/Damage.hs 49;" f
collectInvItems src/Dodge/Update/Input/InGame.hs 298;" f
collideCircWalls src/Dodge/Base/Collide.hs 159;" f
collidePoint src/Dodge/Base/Collide.hs 50;" f
@@ -3716,7 +3716,7 @@ copyItemToFloor src/Dodge/FloorItem.hs 18;" f
copyItemToFloorID src/Dodge/FloorItem.hs 22;" f
corDoor src/Dodge/Room/Room.hs 376;" f
cornerList src/Preload/Render.hs 195;" f
corpseOrGib src/Dodge/Creature/State.hs 109;" f
corpseOrGib src/Dodge/Creature/State.hs 106;" f
corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 133;" f
corridorN src/Dodge/Room/Corridor.hs 52;" f
@@ -3757,7 +3757,7 @@ crShape src/Dodge/Creature/Shape.hs 8;" f
crSpring src/Dodge/Update.hs 776;" f
crStratConMatches src/Dodge/Creature/Test.hs 76;" f
crStrength src/Dodge/Creature/Statistics.hs 24;" f
crUpdate src/Dodge/Creature/State.hs 63;" f
crUpdate src/Dodge/Creature/State.hs 60;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 42;" f
crVocalizationSound src/Dodge/Creature/Vocalization.hs 13;" f
@@ -3830,23 +3830,23 @@ damThingHitWith src/Dodge/WorldEvent/Damage.hs 10;" f
damToExpBarrel src/Dodge/Barreloid.hs 56;" f
damageBlocksBy src/Dodge/Wall/Damage.hs 36;" f
damageCircle src/Dodge/DamageCircle.hs 12;" f
damageCircle src/Dodge/EnergyBall.hs 76;" f
damageCircle src/Dodge/EnergyBall.hs 98;" f
damageCodeCommand src/Dodge/Terminal.hs 232;" f
damageCrCircle src/Dodge/DamageCircle.hs 33;" f
damageCrCircle src/Dodge/EnergyBall.hs 99;" f
damageCrWl src/Dodge/Damage.hs 25;" f
damageCrWlID src/Dodge/Damage.hs 19;" f
damageDirection src/Dodge/Damage.hs 30;" f
damageCrCircle src/Dodge/EnergyBall.hs 121;" f
damageCrWl src/Dodge/Damage.hs 26;" f
damageCrWlID src/Dodge/Damage.hs 20;" f
damageDirection src/Dodge/Damage.hs 31;" f
damageHP src/Dodge/Creature/Damage.hs 63;" f
damageMaterial src/Dodge/Material/Damage.hs 7;" f
damageSensor src/Dodge/Placement/Instance/Sensor.hs 15;" f
damageStone src/Dodge/Material/Damage.hs 20;" f
damageThingHit src/Dodge/Bullet.hs 175;" f
damageThingHit src/Dodge/Bullet.hs 174;" f
damageTypeThreshold src/Dodge/Placement/Instance/Sensor.hs 45;" f
damageWall src/Dodge/Wall/Damage.hs 15;" f
damageWallEffect src/Dodge/Wall/DamageEffect.hs 12;" f
damageWlCircle src/Dodge/DamageCircle.hs 26;" f
damageWlCircle src/Dodge/EnergyBall.hs 96;" f
damageWlCircle src/Dodge/EnergyBall.hs 118;" f
dampField src/Dodge/Magnet.hs 8;" f
damsToExpBarrel src/Dodge/Barreloid.hs 49;" f
dark src/Color.hs 108;" f
@@ -4002,11 +4002,11 @@ divideDoorPane src/Dodge/Placement/Instance/Door.hs 59;" f
divideLine src/Geometry.hs 247;" f
divideLineExact src/Geometry.hs 275;" f
divideLineOddNumPoints src/Geometry.hs 260;" f
dmType src/Dodge/Damage.hs 33;" f
dmType src/Dodge/Damage.hs 34;" f
doAfterPlacement src/Dodge/Layout.hs 86;" f
doAfterPlacements src/Dodge/Layout.hs 83;" f
doAimTwist src/Dodge/Creature/YourControl.hs 140;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 191;" f
doAnyEquipmentEffect src/Dodge/Creature/State.hs 188;" f
doArcStep src/Dodge/Tesla/Arc.hs 135;" f
doBackspace src/Dodge/Update/Input/Text.hs 31;" f
doBlBl src/Dodge/BlBl.hs 5;" f
@@ -4022,7 +4022,7 @@ doCrImp src/Dodge/CreatureEffect.hs 28;" f
doCrWdAc src/Dodge/CreatureEffect.hs 77;" f
doCrWdImp src/Dodge/CreatureEffect.hs 16;" f
doCrWdWd src/Dodge/CreatureEffect.hs 20;" f
doDamage src/Dodge/Creature/State.hs 137;" f
doDamage src/Dodge/Creature/State.hs 134;" f
doDeathToggle src/Dodge/WorldEffect.hs 98;" f
doDeathTriggers src/Dodge/WorldEffect.hs 93;" f
doDebugTest src/Dodge/Update/Input/DebugTest.hs 22;" f
@@ -4050,7 +4050,7 @@ doItemTimeScroll src/Dodge/Update.hs 197;" f
doLoop src/Loop.hs 60;" f
doMCrAc src/Dodge/CreatureEffect.hs 57;" f
doMP2Ac src/Dodge/CreatureEffect.hs 73;" f
doMagnetBuBu src/Dodge/Bullet.hs 31;" f
doMagnetBuBu src/Dodge/Bullet.hs 32;" f
doMagnetBuBu src/Dodge/MagnetBuBu.hs 7;" f
doMagnetUpdate src/Dodge/Magnet/Update.hs 6;" f
doModificationEffect src/Dodge/ModificationEffect.hs 7;" f
@@ -4103,7 +4103,7 @@ doublePair src/Geometry.hs 161;" f
doublePairSet src/Geometry.hs 165;" f
doubleTreeToIndentList src/Dodge/DoubleTree.hs 72;" f
doubleV2 src/Geometry.hs 168;" f
drawARHUD src/Dodge/Creature/State.hs 302;" f
drawARHUD src/Dodge/Creature/State.hs 298;" f
drawAimSweep src/Dodge/Render/Picture.hs 271;" f
drawAllShadows src/Dodge/Shadows.hs 5;" f
drawBaseMachine src/Dodge/Machine/Draw.hs 57;" f
@@ -4229,7 +4229,7 @@ drawWlIDs src/Dodge/Debug/Picture.hs 367;" f
drawZoneCol src/Dodge/Debug/Picture.hs 142;" f
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 279;" f
droneLauncher src/Dodge/Item/Weapon/Drone.hs 11;" f
dropByState src/Dodge/Creature/State.hs 130;" f
dropByState src/Dodge/Creature/State.hs 127;" f
dropExcept src/Dodge/Creature/Action.hs 166;" f
dropInventoryPath src/Dodge/HeldUse.hs 1356;" f
dropItem src/Dodge/Creature/Action.hs 172;" f
@@ -4245,9 +4245,10 @@ dtToLRAdjEither src/Dodge/DoubleTree.hs 114;" f
dtToRootIntMap' src/Dodge/DoubleTree.hs 92;" f
dtToUpDownAdj src/Dodge/DoubleTree.hs 96;" f
dummyMenuOption src/Dodge/Menu/Option.hs 74;" f
ebColor src/Dodge/EnergyBall.hs 69;" f
ebFlicker src/Dodge/EnergyBall.hs 62;" f
ebtToDamage src/Dodge/EnergyBall.hs 89;" f
ebColor src/Dodge/EnergyBall.hs 91;" f
ebEffect src/Dodge/EnergyBall.hs 48;" f
ebFlicker src/Dodge/EnergyBall.hs 84;" f
ebtToDamage src/Dodge/EnergyBall.hs 111;" f
edgeFormatting src/Dodge/Combine/Graph.hs 131;" f
edgeToPic src/Dodge/Debug/Picture.hs 431;" f
effectOnEquip src/Dodge/Equipment.hs 32;" f
@@ -4266,7 +4267,7 @@ encircleP src/Dodge/Creature/Boid.hs 28;" f
endArcPos src/Dodge/Tesla.hs 87;" f
endCombineRegex src/Dodge/Update/Input/InGame.hs 267;" f
endRegex src/Dodge/Update/Input/InGame.hs 254;" f
energyBallAt src/Dodge/EnergyBall.hs 46;" f
energyBallAt src/Dodge/EnergyBall.hs 58;" f
enterCombineInv src/Dodge/DisplayInventory.hs 323;" f
epText src/Dodge/Inventory/SelectionList.hs 75;" f
eqConstr src/SameConstr.hs 17;" f
@@ -4296,7 +4297,7 @@ expandPolyBy src/Dodge/LevelGen/StaticWalls.hs 91;" f
expandPolyByFixed src/Dodge/LevelGen/StaticWalls.hs 97;" f
expandPolyCorners src/Dodge/LevelGen/StaticWalls.hs 103;" f
expandToSquare src/Dodge/LevelGen/StaticWalls/Deprecated.hs 83;" f
expireAndDamage src/Dodge/Bullet.hs 184;" f
expireAndDamage src/Dodge/Bullet.hs 183;" f
explodeShell src/Dodge/Projectile/Update.hs 245;" f
explosionS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 422;" f
explosiveBarrel src/Dodge/Creature/Inanimate.hs 29;" f
@@ -4369,7 +4370,7 @@ floorItemSPic src/Dodge/Render/ShapePicture.hs 107;" f
floorWire src/Dodge/Wire.hs 13;" f
foamSprayFadeOutS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 424;" f
foamSprayLoopS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 420;" f
foldCr src/Dodge/Creature/State.hs 45;" f
foldCr src/Dodge/Creature/State.hs 46;" f
foldPairs src/ListHelp.hs 37;" f
foldrWhileArb src/ListHelp.hs 110;" f
followImpulse src/Dodge/Creature/Impulse.hs 38;" f
@@ -4566,7 +4567,7 @@ highBar src/Dodge/Room/Foreground.hs 89;" f
highDiagonalMesh src/Dodge/Room/Foreground.hs 35;" f
highMesh src/Dodge/Room/Foreground.hs 25;" f
hit1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 438;" f
hitEffFromBul src/Dodge/Bullet.hs 150;" f
hitEffFromBul src/Dodge/Bullet.hs 149;" f
hitS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 406;" f
holdForm src/Dodge/Creature/Boid.hs 137;" f
holsterWeapon src/Dodge/Creature/Volition.hs 14;" f
@@ -4584,7 +4585,7 @@ impulsiveAIBefore src/Dodge/Creature/Impulse.hs 23;" f
inLink src/Dodge/RoomLink.hs 113;" f
inSegArea src/Geometry/Intersect.hs 298;" f
inTextInputFocus src/Dodge/InputFocus.hs 10;" f
incBallAt src/Dodge/EnergyBall.hs 56;" f
incBallAt src/Dodge/EnergyBall.hs 78;" f
incidenceToFunction src/Dodge/Graph.hs 26;" f
indefiniteExceptions src/StringHelp.hs 29;" f
initCrItemLocation src/Dodge/Item/Location/Initialize.hs 41;" f
@@ -4623,7 +4624,7 @@ insertWallInZones src/Dodge/Wall/Zone.hs 20;" f
insertWalls src/Dodge/Placement/PlaceSpot/Block.hs 117;" f
insertWithNewKeys src/IntMapHelp.hs 70;" f
interactWithCloseObj src/Dodge/SelectedClose.hs 9;" f
internalCreatureUpdate src/Dodge/Creature/State.hs 124;" f
internalCreatureUpdate src/Dodge/Creature/State.hs 121;" f
interpWith src/Dodge/Creature/Boid.hs 11;" f
intersectCircSeg src/Geometry/Intersect.hs 305;" f
intersectCircSegFirst src/Geometry/Intersect.hs 323;" f
@@ -4651,16 +4652,16 @@ invCursorParams src/Dodge/ListDisplayParams.hs 36;" f
invDP src/Dodge/ListDisplayParams.hs 30;" f
invDimColor src/Dodge/DisplayInventory.hs 192;" f
invHead src/Dodge/Render/HUD.hs 405;" f
invItemLocUpdate src/Dodge/Creature/State.hs 180;" f
invItemLocUpdate src/Dodge/Creature/State.hs 177;" f
invLDT src/Dodge/Item/Grammar.hs 279;" f
invRootItemEffs src/Dodge/Creature/State.hs 173;" f
invRootItemEffs src/Dodge/Creature/State.hs 170;" f
invRootMap src/Dodge/Item/Grammar.hs 288;" f
invRootTrees src/Dodge/Item/Grammar.hs 309;" f
invSelectionItem src/Dodge/Inventory/SelectionList.hs 32;" f
invSetSelection src/Dodge/Inventory.hs 185;" f
invSetSelectionPos src/Dodge/Inventory.hs 193;" f
invShiftPointBy src/Dodge/ShiftPoint.hs 8;" f
invSideEff src/Dodge/Creature/State.hs 166;" f
invSideEff src/Dodge/Creature/State.hs 163;" f
invSize src/Dodge/Inventory/CheckSlots.hs 30;" f
inventoryX src/Dodge/Creature.hs 114;" f
inverseSelNumPos src/Dodge/SelectionSections.hs 228;" f
@@ -4678,7 +4679,7 @@ isAnimate src/Dodge/Creature/Test.hs 142;" f
isCognizant src/Dodge/Creature/Perception.hs 106;" f
isConnected src/Dodge/Inventory/Swap.hs 74;" f
isElectrical src/Dodge/Machine/Update.hs 80;" f
isFrictionless src/Dodge/Creature/State.hs 437;" f
isFrictionless src/Dodge/Creature/State.hs 433;" f
isGroupSelectableSection src/Dodge/Update/Input/InGame.hs 191;" f
isInLnk src/Dodge/PlacementSpot.hs 160;" f
isJust' src/MaybeHelp.hs 29;" f
@@ -4912,14 +4913,15 @@ makeExplosionAt src/Dodge/WorldEvent/Explosion.hs 71;" f
makeFlak src/Dodge/Bullet.hs 139;" f
makeFlame src/Dodge/Flame.hs 57;" f
makeFlameExplosionAt src/Dodge/WorldEvent/Explosion.hs 54;" f
makeFlamelet src/Dodge/EnergyBall.hs 21;" f
makeFlamelet src/Dodge/EnergyBall.hs 23;" f
makeFlamerSmokeAt src/Dodge/WorldEvent/Cloud.hs 68;" f
makeFlashBall src/Dodge/EnergyBall.hs 59;" f
makeFlashBall src/Dodge/EnergyBall.hs 81;" f
makeFootstepSound src/Dodge/Creature/State/WalkCycle.hs 32;" f
makeFragBullets src/Dodge/Bullet.hs 123;" f
makeFragBullets src/Dodge/Bullet.hs 124;" f
makeGasCloud src/Dodge/WorldEvent/SpawnParticle.hs 76;" f
makeGrid src/Grid.hs 46;" f
makeIntInterval src/Dodge/Zoning/Base.hs 35;" f
makeMovingEB src/Dodge/EnergyBall.hs 68;" f
makeMuzzleFlare src/Dodge/HeldUse.hs 649;" f
makeParagraph src/Justify.hs 6;" f
makePathBetween src/Dodge/Path.hs 35;" f
@@ -4935,7 +4937,7 @@ makeShaderVBO src/Shader/Compile.hs 32;" f
makeShockwaveAt src/Dodge/WorldEvent/Shockwave.hs 12;" f
makeShrapnelAt src/Dodge/Payload.hs 24;" f
makeSourcedShader src/Shader/Compile.hs 167;" f
makeSpark src/Dodge/Spark.hs 39;" f
makeSpark src/Dodge/Spark.hs 44;" f
makeStartCloudAt src/Dodge/WorldEvent/Cloud.hs 60;" f
makeStaticBall src/Dodge/WorldEvent/SpawnParticle.hs 22;" f
makeSubmenuOption src/Dodge/Menu/OptionType.hs 19;" f
@@ -5052,12 +5054,12 @@ modTo src/Geometry/Zone.hs 10;" f
mouseClickOptionsList src/Dodge/Update/Input/ScreenLayer.hs 60;" f
mouseCursorType src/Dodge/Render/Picture.hs 86;" f
mouseWorldPos' src/Dodge/Base/Coordinate.hs 48;" f
moveBullet src/Dodge/Bullet.hs 193;" f
moveBullet src/Dodge/Bullet.hs 192;" f
moveCombineSel src/Dodge/Update/Scroll.hs 115;" f
moveHammerUp src/Dodge/Hammer.hs 5;" f
moveInverseShockwave src/Dodge/Shockwave/Update.hs 47;" f
moveLSThen src/Dodge/Placement/Instance/LightSource.hs 30;" f
movePenBullet src/Dodge/Bullet.hs 203;" f
movePenBullet src/Dodge/Bullet.hs 202;" f
moveProjectile src/Dodge/Projectile/Update.hs 221;" f
moveRoomBy src/Dodge/Room/Link.hs 53;" f
moveShockwave src/Dodge/Shockwave/Update.hs 18;" f
@@ -5195,7 +5197,7 @@ pauseSound src/Dodge/SoundLogic.hs 42;" f
pauseTime src/Dodge/Update.hs 185;" f
peZoneSize src/Dodge/Zoning/Pathing.hs 46;" f
pedestalRoom src/Dodge/Room/Containing.hs 50;" f
penThing src/Dodge/Bullet.hs 210;" f
penThing src/Dodge/Bullet.hs 209;" f
perMat src/MatrixHelper.hs 49;" f
perceptionUpdate src/Dodge/Creature/Perception.hs 23;" f
performAction src/Dodge/Creature/Action.hs 91;" f
@@ -5281,7 +5283,7 @@ pointerToItemLocation src/Dodge/Item/Location.hs 14;" f
pointerYourRootItem src/Dodge/Item/Location.hs 31;" f
pointerYourSelectedItem src/Dodge/Item/Location.hs 25;" f
pointsToPoly src/Geometry/ConvexPoly.hs 39;" f
poisonSPic src/Dodge/Creature/State.hs 121;" f
poisonSPic src/Dodge/Creature/State.hs 118;" f
poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f
poke34 src/Shader/Poke.hs 506;" f
pokeArrayOff src/Shader/Poke.hs 517;" f
@@ -5429,7 +5431,7 @@ radToDeg src/Geometry/Vector.hs 122;" f
randBlockBreakWeapon src/Dodge/Item/Random.hs 7;" f
randC1 src/Dodge/Placement/Instance/Creature.hs 8;" f
randDirPS src/Dodge/PlacementSpot.hs 56;" f
randDirSpark src/Dodge/Spark.hs 49;" f
randDirSpark src/Dodge/Spark.hs 54;" f
randEdgeTank src/Dodge/Room/Tanks.hs 33;" f
randEdgeTanks src/Dodge/Room/Tanks.hs 63;" f
randEnergyBallAt src/Dodge/WorldEvent/SpawnParticle.hs 14;" f
@@ -5446,7 +5448,8 @@ randOnUnitSphere src/RandomHelp.hs 90;" f
randPeaked src/RandomHelp.hs 138;" f
randPeakedParam src/RandomHelp.hs 130;" f
randProb src/RandomHelp.hs 68;" f
randSpark src/Dodge/Spark.hs 63;" f
randSpark src/Dodge/Spark.hs 68;" f
randSparkExtraVel src/Dodge/Spark.hs 91;" f
randWallReflect src/Dodge/Tesla/Arc.hs 57;" f
randWallReflect src/Dodge/Update.hs 580;" f
randomChallenges src/Dodge/Room/Start.hs 62;" f
@@ -5629,7 +5632,7 @@ scaleSH src/Shape.hs 268;" f
scalp src/Dodge/Creature/Picture.hs 98;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 95;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/State.hs 118;" f
scorchSPic src/Dodge/Creature/State.hs 115;" f
screenBox src/Dodge/Base/Window.hs 53;" f
screenPolygon src/Dodge/Base/Window.hs 17;" f
screenPolygonBord src/Dodge/Base/Window.hs 27;" f
@@ -5689,7 +5692,7 @@ setClusterID src/Dodge/Combine/Graph.hs 116;" f
setDepth src/Picture/Base.hs 128;" f
setDirPS src/Dodge/PlacementSpot.hs 49;" f
setFallback src/Dodge/PlacementSpot.hs 127;" f
setFromToDams src/Dodge/Bullet.hs 167;" f
setFromToDams src/Dodge/Bullet.hs 166;" f
setInLinks src/Dodge/RoomLink.hs 51;" f
setInLinksByType src/Dodge/RoomLink.hs 54;" f
setInLinksPD src/Dodge/RoomLink.hs 74;" f
@@ -5703,7 +5706,7 @@ setOldPos src/Dodge/Update.hs 467;" f
setOutLinks src/Dodge/RoomLink.hs 48;" f
setOutLinksByType src/Dodge/RoomLink.hs 57;" f
setOutLinksPD src/Dodge/RoomLink.hs 77;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 406;" f
setRBCreatureTargeting src/Dodge/Creature/State.hs 402;" f
setSelWhileDragging src/Dodge/Update/Input/InGame.hs 334;" f
setSelectionListRestriction src/Dodge/Update/Input/ScreenLayer.hs 87;" f
setShaderSource src/Shader/Compile.hs 290;" f
@@ -5771,8 +5774,8 @@ shiftRoomBy src/Dodge/Room/Link.hs 37;" f
shiftRoomShiftBy src/Dodge/Room/Link.hs 81;" f
shiftRoomShiftToLink src/Dodge/Room/Link.hs 70;" f
shiftedGrid src/Grid.hs 25;" f
shineTargetLaser src/Dodge/Creature/State.hs 308;" f
shineTorch src/Dodge/Creature/State.hs 349;" f
shineTargetLaser src/Dodge/Creature/State.hs 304;" f
shineTorch src/Dodge/Creature/State.hs 345;" f
shootBullet src/Dodge/HeldUse.hs 938;" f
shootFirstMiss src/Dodge/Creature/Volition.hs 33;" f
shootLaser src/Dodge/HeldUse.hs 847;" f
@@ -5864,10 +5867,10 @@ spanColLightI src/Dodge/Placement/Instance/LightSource.hs 183;" f
spanLS src/Dodge/Placement/Instance/LightSource.hs 175;" f
spanLSLightI src/Dodge/Placement/Instance/LightSource.hs 168;" f
spanLightI src/Dodge/Placement/Instance/LightSource.hs 197;" f
sparkDam src/Dodge/Spark.hs 30;" f
sparkDam src/Dodge/Spark.hs 35;" f
sparkGun src/Dodge/Item/Held/BatteryGuns.hs 13;" f
sparkRandDir src/Dodge/Spark.hs 86;" f
sparkToDamage src/Dodge/Spark.hs 33;" f
sparkRandDir src/Dodge/Spark.hs 115;" f
sparkToDamage src/Dodge/Spark.hs 38;" f
spawnCrNextTo src/Dodge/Item/Weapon/Spawn.hs 20;" f
spawnElectricalSparks src/Dodge/PosEvent.hs 19;" f
spawnGun src/Dodge/Item/Weapon/Spawn.hs 12;" f
@@ -5934,7 +5937,7 @@ stone5S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 474;" f
stoneDebris src/Dodge/Block/Debris.hs 137;" f
stoneWallDamage src/Dodge/Wall/DamageEffect.hs 25;" f
stopAllSounds src/Sound.hs 125;" f
stopBulletAt src/Dodge/Bullet.hs 196;" f
stopBulletAt src/Dodge/Bullet.hs 195;" f
stopPushing src/Dodge/Block.hs 107;" f
stopSoundFrom src/Dodge/SoundLogic.hs 220;" f
strFromEquipment src/Dodge/Creature/Statistics.hs 48;" f
@@ -6151,8 +6154,8 @@ tryPutItemInInvAt src/Dodge/Inventory/Add.hs 32;" f
trySeedFromClipboard src/Dodge/Menu.hs 91;" f
tryShellBounce src/Dodge/Projectile/Update.hs 103;" f
trySpinByCID src/Dodge/Projectile/Update.hs 178;" f
trySynthBullet src/Dodge/Creature/State.hs 205;" f
tryUseParent src/Dodge/Creature/State.hs 198;" f
trySynthBullet src/Dodge/Creature/State.hs 202;" f
tryUseParent src/Dodge/Creature/State.hs 195;" f
turnTo src/Dodge/Movement/Turn.hs 8;" f
turret src/Dodge/Placement/Instance/Turret.hs 35;" f
turretItemOffset src/Dodge/Item/HeldOffset.hs 19;" f
@@ -6192,13 +6195,13 @@ updateAimPos src/Dodge/Update.hs 306;" f
updateAllNodes src/TreeHelp.hs 85;" f
updateArc src/Dodge/Tesla.hs 44;" f
updateArc src/Dodge/Tesla/Arc.hs 100;" f
updateAttachedItems src/Dodge/Creature/State.hs 265;" f
updateAttachedItems src/Dodge/Creature/State.hs 261;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 453;" f
updateBarrel src/Dodge/Barreloid.hs 44;" f
updateBarreloid src/Dodge/Barreloid.hs 14;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 29;" f
updateBounds src/Dodge/Update/Camera.hs 250;" f
updateBulVel src/Dodge/Bullet.hs 53;" f
updateBulVel src/Dodge/Bullet.hs 54;" f
updateBullet src/Dodge/Bullet.hs 21;" f
updateBullets src/Dodge/Update.hs 540;" f
updateCamera src/Dodge/Update/Camera.hs 29;" f
@@ -6215,7 +6218,7 @@ updateDelayedEvents src/Dodge/Update.hs 801;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f
updateDistortion src/Dodge/Distortion.hs 5;" f
updateDistortions src/Dodge/Update.hs 533;" f
updateEnergyBall src/Dodge/EnergyBall.hs 35;" f
updateEnergyBall src/Dodge/EnergyBall.hs 37;" f
updateEnergyBalls src/Dodge/Update.hs 598;" f
updateEnterRegex src/Dodge/Update/Input/InGame.hs 480;" f
updateExpBarrel src/Dodge/Barreloid.hs 20;" f
@@ -6227,7 +6230,7 @@ updateFloatingCamera src/Dodge/Update/Camera.hs 34;" f
updateFunctionKey src/Dodge/Update/Input/InGame.hs 364;" f
updateFunctionKeys src/Dodge/Update/Input/InGame.hs 357;" f
updateGusts src/Dodge/Update.hs 718;" f
updateHeldRootItem src/Dodge/Creature/State.hs 259;" f
updateHeldRootItem src/Dodge/Creature/State.hs 255;" f
updateHumanoid src/Dodge/Humanoid.hs 13;" f
updateIMl src/Dodge/Update.hs 502;" f
updateIMl' src/Dodge/Update.hs 507;" f
@@ -6235,8 +6238,8 @@ updateInGameCamera src/Dodge/Update/Camera.hs 78;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 400;" f
updateInt2Map src/Dodge/Zoning/Base.hs 92;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f
updateItemTargeting src/Dodge/Creature/State.hs 375;" f
updateItemWithOrientation src/Dodge/Creature/State.hs 285;" f
updateItemTargeting src/Dodge/Creature/State.hs 371;" f
updateItemWithOrientation src/Dodge/Creature/State.hs 281;" f
updateKeyInGame src/Dodge/Update/Input/InGame.hs 394;" f
updateKeysInTerminal src/Dodge/Update/Input/InGame.hs 382;" f
updateLampoid src/Dodge/Lampoid.hs 12;" f
@@ -6252,7 +6255,7 @@ updateMouseContextGame src/Dodge/Update.hs 328;" f
updateMouseHeldInGame src/Dodge/Update/Input/InGame.hs 95;" f
updateMouseInGame src/Dodge/Update/Input/InGame.hs 85;" f
updateMouseReleaseInGame src/Dodge/Update/Input/InGame.hs 158;" f
updateMovement src/Dodge/Creature/State.hs 427;" f
updateMovement src/Dodge/Creature/State.hs 423;" f
updateObjCatMaybes src/Dodge/Update.hs 524;" f
updateObjMapMaybe src/Dodge/Update.hs 517;" f
updatePastWorlds src/Dodge/Update.hs 422;" f
@@ -6279,7 +6282,7 @@ updateShockwaves src/Dodge/Update.hs 592;" f
updateSingleNodes src/TreeHelp.hs 97;" f
updateSound src/Sound.hs 72;" f
updateSounds src/Sound.hs 67;" f
updateSpark src/Dodge/Spark.hs 17;" f
updateSpark src/Dodge/Spark.hs 18;" f
updateSparks src/Dodge/Update.hs 604;" f
updateTempLightSource src/Dodge/LightSource/Update.hs 7;" f
updateTeslaArc src/Dodge/Tesla/Arc.hs 23;" f
@@ -6320,7 +6323,7 @@ upperPrismPolyTS src/Shape.hs 119;" f
upperRounded src/Shape.hs 184;" f
useBreakL src/Dodge/Item/Grammar.hs 37;" f
useBreakListsLinkTest src/Dodge/Item/Grammar.hs 45;" f
useBulletPayload src/Dodge/Bullet.hs 111;" f
useBulletPayload src/Dodge/Bullet.hs 112;" f
useC src/Dodge/Cuse.hs 8;" f
useC' src/Dodge/Cuse.hs 13;" f
useDelay src/Dodge/Item/UseDelay.hs 13;" f