Work on crab corpse

This commit is contained in:
2026-04-10 09:48:06 +01:00
parent 8faaf54f2c
commit a29cb8565a
4 changed files with 113 additions and 108 deletions
-67
View File
@@ -1,67 +0,0 @@
module Dodge.Corpse.Make (makeCorpse) where
import qualified Quaternion as Q
import Linear
import Control.Lens
import Dodge.Creature.Picture
import Dodge.Creature.Radius
import Dodge.Creature.Shape
--import Dodge.Data.Corpse
import Dodge.Data.Creature
import Geometry
import Shape
import ShapePicture
import RandomHelp
makeCorpse :: StdGen -> Creature -> SPic
makeCorpse g cr = case cr ^. crType of
HoverCrit{} -> noPic $ drawHoverCrit cr
ChaseCrit{} -> noPic $ chaseCorpse g cr
CrabCrit{} -> noPic $ crabCorpse g cr
_ ->
noPic
. scaleSH (V3 crsize crsize crsize)
$ mconcat
[ colorSH (_skinHead cskin) $ deadScalp cr
, colorSH (_skinUpper cskin) $ deadUpperBody cr
, rotmdir $ colorSH (_skinLower cskin) $ deadFeet cr
]
where
cskin = crShape $ _crType cr -- this should be fixed
crsize = 0.1 * crRad (cr ^. crType)
rotmdir = rotateSH (_crMvDir cr - _crDir cr)
chaseCorpse :: StdGen -> Creature -> Shape
chaseCorpse g cr = mconcat
[colorSH (_skinUpper cskin) . upperPrismPolyHalfMI 0 $ polyCirc 3 12
& each %~ vNormal
& each . _y *~ 0.6
, colorSH (_skinUpper cskin) . overPosSH (Q.apply neckq) $
upperPrismPolyHalfMI 3 ((+ V2 8 0) . vNormal <$> trapTBH 2 5 8)
, colorSH (_skinHead cskin)
(overPosSH (Q.apply headq) (upperBox Medium Important 2 [V2 0 (-4), V2 9 0, V2 0 4]))
, rotmdir $ colorSH (_skinLower cskin) $ deadFeet cr
]
where
neckq = (V3 6 0 0, Q.qz a)
(a,g') = randomR (-2,2) g
b = fst $ randomR (-2,2) g'
cskin = crShape $ _crType cr -- this should be fixed
rotmdir = rotateSH (_crMvDir cr - _crDir cr)
headq = neckq `Q.comp` (V3 16 0 0, Q.qz b )
crabCorpse :: StdGen -> Creature -> Shape
crabCorpse g cr = mconcat
[ colorSH (_skinUpper cskin) $ overPosSH (Q.apply torsoq) (upperPrismPolyHalfMI 5 $ polyCirc 4 10
& each . _x *~ 0.6)
, colorSH (_skinUpper cskin) $ overPosSH (Q.apply lclawq) (upperPrismPolyHalfMI 4 $ rectNSWE 20 0 (-2) 2)
<> overPosSH (Q.apply rclawq) (upperPrismPolyHalfMI 4 $ rectNSWE 0 (-20) (-2) 2)
]
where
torsoq = (V3 0 0 0,Q.qid)
-- not sure which rotation is done first
lclawq = torsoq `Q.comp` (V3 2 8 1, Q.axisAngle (V3 1 0 0) (-0.1) * Q.qz la)
(la,g') = randomR (-2,2) g
ra = fst $ randomR (-2,2) g'
rclawq = torsoq `Q.comp` (V3 2 (-8) 1, Q.axisAngle (V3 1 0 0) (0.1) * Q.qz ra)
cskin = crShape $ _crType cr -- this should be fixed
+72 -1
View File
@@ -10,8 +10,10 @@ module Dodge.Creature.Picture (
drawChaseCrit,
drawHoverCrit,
drawCrabCrit,
makeCorpse,
) where
import RandomHelp
import Dodge.Base.Collide
import Control.Monad
import Data.Maybe
@@ -107,7 +109,7 @@ crabUpperBody _ cr = colorSH (_skinUpper cskin)
ratck = Q.axisAngle (V3 0 0 1) (0.5 * pi)
rrest = Q.axisAngle (V3 1 0 0) (-1)
rcool = 1 - min 10 (fromIntegral . _meleeCooldownR $ _crType cr) / 10
headq = torsoq `Q.comp` (V3 0 0 5, Q.qid)
headq = torsoq `Q.comp` (V3 3 0 4, Q.qid)
-- headq = torsoq `Q.comp` (V3 0 0 5, (Q.qz aimrot ))
-- cxy = cr ^. crPos . _xy
-- aimrot = fromMaybe pi $ do
@@ -221,6 +223,75 @@ spiderJoint' p l1 l2 q = (f $ Q.axisAngle (V3 0 (-1) 0) (pi - (a+b)), f . Q.axis
c = argV $ (p-q) ^. _xy
f x = Q.qz c * x
makeCorpse :: StdGen -> Creature -> SPic
makeCorpse g cr = case cr ^. crType of
HoverCrit{} -> noPic $ drawHoverCrit cr
ChaseCrit{} -> noPic $ chaseCorpse g cr
CrabCrit{} -> noPic $ crabCorpse g cr
_ ->
noPic
. scaleSH (V3 crsize crsize crsize)
$ mconcat
[ colorSH (_skinHead cskin) $ deadScalp cr
, colorSH (_skinUpper cskin) $ deadUpperBody cr
, rotmdir $ colorSH (_skinLower cskin) $ deadFeet cr
]
where
cskin = crShape $ _crType cr -- this should be fixed
crsize = 0.1 * crRad (cr ^. crType)
rotmdir = rotateSH (_crMvDir cr - _crDir cr)
chaseCorpse :: StdGen -> Creature -> Shape
chaseCorpse g cr = mconcat
[colorSH (_skinUpper cskin) . upperPrismPolyHalfMI 0 $ polyCirc 3 12
& each %~ vNormal
& each . _y *~ 0.6
, colorSH (_skinUpper cskin) . overPosSH (Q.apply neckq) $
upperPrismPolyHalfMI 3 ((+ V2 8 0) . vNormal <$> trapTBH 2 5 8)
, colorSH (_skinHead cskin)
(overPosSH (Q.apply headq) (upperBox Medium Important 2 [V2 0 (-4), V2 9 0, V2 0 4]))
, rotmdir $ colorSH (_skinLower cskin) $ deadFeet cr
]
where
neckq = (V3 6 0 0, Q.qz a)
(a,g') = randomR (-2,2) g
b = fst $ randomR (-2,2) g'
cskin = crShape $ _crType cr -- this should be fixed
rotmdir = rotateSH (_crMvDir cr - _crDir cr)
headq = neckq `Q.comp` (V3 16 0 0, Q.qz b )
crabCorpse :: StdGen -> Creature -> Shape
crabCorpse g cr = mconcat
[ colorSH (_skinUpper cskin) $ overPosSH (Q.apply torsoq) (upperPrismPolyHalfMI 5 $ polyCirc 4 10
& each . _x *~ 0.6)
, colorSH (_skinUpper cskin) $ overPosSH (Q.apply lclawq) (upperPrismPolyHalfMI 4 $ rectNSWE 20 0 (-2) 2)
<> overPosSH (Q.apply rclawq) (upperPrismPolyHalfMI 4 $ rectNSWE 0 (-20) (-2) 2)
, colorSH (cskin ^?! skinLower) $
(foldMap (mkfoot 5) [p1,p2])
<> (foldMap (mkfoot (-5)) [p3,p4])
, colorSH (_skinHead cskin)
--(overPosSH (Q.apply headq) (upperPrismPolyHalfMI 2 $ [V2 0 (-4), V2 2 (-2), 2, V2 0 4]))
(overPosSH (Q.apply headq) (upperPrismPolyHalfMI 1 $ square 2))
]
where
headq = torsoq `Q.comp` (V3 3 0 4, Q.qid)
torsoq = (V3 0 0 0,Q.qid)
-- not sure which rotation is done first
lclawq = torsoq `Q.comp` (V3 2 8 1, Q.axisAngle (V3 1 0 0) (-0.1) * Q.qz la)
(la,g') = randomR (-2,2) g
ra = fst $ randomR (-2,2) g'
p1 = 0 & _xy .~ p1' + V2 0 15
p2 = 0 & _xy .~ p2' + V2 0 15
p3 = 0 & _xy .~ p3' - V2 0 15
p4 = 0 & _xy .~ p4' - V2 0 15
(p1':p2':p3':p4':_) = evalState (replicateM 4 (randInCirc 9)) g
mkfoot y p = let (q1,q2) = spiderJoint (V3 0 y 0) p
in (afoot & each . sfVs . each %~ Q.apply (V3 0 y 0, q1))
<> (afoot & each . sfVs . each %~ Q.apply (p,q2))
afoot = upperPrismPolyST 10 $ polyCirc 3 2
rclawq = torsoq `Q.comp` (V3 2 (-8) 1, Q.axisAngle (V3 1 0 0) (0.1) * Q.qz ra)
cskin = crShape $ _crType cr -- this should be fixed
deadFeet :: Creature -> Shape
{-# INLINE deadFeet #-}
deadFeet = feet
+2 -2
View File
@@ -1,6 +1,7 @@
{-# LANGUAGE LambdaCase #-}
module Dodge.Creature.Update (updateCreature) where
import Dodge.Creature.Picture
import Dodge.Base.You
import Control.Monad
import Color
@@ -8,7 +9,6 @@ import qualified Data.IntMap.Strict as IM
import Data.Maybe
import Dodge.Barreloid
-- import Dodge.Base.NewID
import Dodge.Corpse.Make
import Dodge.Creature.Action
import Dodge.Creature.State
import Dodge.Creature.State.WalkCycle
@@ -56,7 +56,7 @@ updateLivingCreature cr =
over (cWorld . lWorld . creatures . ix cid) (chaseCritInternal w) w
CrabCrit{} -> \w ->
crUpdate cid . performActions cid $
(crabCritInternal cid) w
crabCritInternal cid w
AutoCrit {} -> crUpdate cid
SwarmCrit {} -> crUpdate cid
HoverCrit {} -> \w ->
+39 -38
View File
@@ -2651,7 +2651,7 @@ argV src/Geometry/Vector.hs 89;" f
armourChaseCrit src/Dodge/Creature/ArmourChase.hs 34;" f
armouredChasers src/Dodge/Room/Boss.hs 58;" f
armouredCorridor src/Dodge/Room/RoadBlock.hs 20;" f
arms src/Dodge/Creature/Picture.hs 219;" f
arms src/Dodge/Creature/Picture.hs 295;" f
arrow src/Picture/Composite.hs 19;" f
arrowPath src/Picture/Composite.hs 8;" f
assignHotkey src/Dodge/AssignHotkey.hs 9;" f
@@ -2703,14 +2703,14 @@ baseItemTriggerType src/Dodge/BaseTriggerType.hs 21;" f
baseRifleShape src/Dodge/Item/Draw/SPic.hs 324;" f
baseRodShape src/Dodge/Item/Draw/SPic.hs 407;" f
baseSMGShape src/Dodge/Item/Draw/SPic.hs 395;" f
baseShoulder src/Dodge/Creature/Picture.hs 257;" f
baseShoulder src/Dodge/Creature/Picture.hs 333;" f
baseStickShape src/Dodge/Item/Draw/SPic.hs 301;" f
baseStickShapeX src/Dodge/Item/Draw/SPic.hs 293;" f
baseStickSpread src/Dodge/HeldUse.hs 346;" f
basicAttentionUpdate src/Dodge/Creature/Perception.hs 137;" f
basicAwarenessUpdate src/Dodge/Creature/Perception.hs 31;" f
basicCrPict src/Dodge/Creature/Picture.hs 38;" f
basicCrShape src/Dodge/Creature/Picture.hs 44;" f
basicCrPict src/Dodge/Creature/Picture.hs 40;" f
basicCrShape src/Dodge/Creature/Picture.hs 46;" f
basicItemDisplay src/Dodge/Item/Display.hs 23;" f
basicMachineApplyDamage src/Dodge/Machine/Damage.hs 6;" f
basicMuzFlare src/Dodge/HeldUse.hs 731;" f
@@ -2825,11 +2825,11 @@ changeSwapWith src/Dodge/Inventory.hs 283;" f
charToTuple src/Picture/Base.hs 312;" f
charToTupleGrad src/Picture/Text.hs 18;" f
chartreuse src/Color.hs 51;" f
chaseCorpse src/Dodge/Corpse/Make.hs 34;" f
chaseCorpse src/Dodge/Creature/Picture.hs 244;" f
chaseCrit src/Dodge/Creature/ChaseCrit.hs 30;" f
chaseCritInternal src/Dodge/Humanoid.hs 12;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 194;" f
chaseUpperBody src/Dodge/Creature/Picture.hs 120;" f
chaseUpperBody src/Dodge/Creature/Picture.hs 122;" f
chasmRotate src/Dodge/Creature/State/WalkCycle.hs 117;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 379;" f
chasmSpitTerminal src/Dodge/Room/Tutorial.hs 311;" f
@@ -2837,8 +2837,8 @@ chasmTestCliffPush src/Dodge/Creature/State/WalkCycle.hs 102;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 121;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
checkConnection src/Dodge/Inventory/Swap.hs 66;" f
checkDeath src/Dodge/Creature/Update.hs 98;" f
checkDeath' src/Dodge/Creature/Update.hs 101;" f
checkDeath src/Dodge/Creature/Update.hs 99;" f
checkDeath' src/Dodge/Creature/Update.hs 102;" f
checkEndGame src/Dodge/Update.hs 875;" f
checkErrorGL src/Shader/Compile.hs 86;" f
checkFBO src/Framebuffer/Check.hs 6;" f
@@ -2961,7 +2961,7 @@ copierItemUpdate src/Dodge/Creature/State.hs 136;" 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 135;" f
corpseOrGib src/Dodge/Creature/Update.hs 136;" f
corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 135;" f
corridorN src/Dodge/Room/Corridor.hs 58;" f
@@ -2969,7 +2969,7 @@ corridorWallN src/Dodge/Room/Corridor.hs 77;" f
crAdd src/Dodge/Room/RezBox.hs 116;" f
crAwayFromPost src/Dodge/Creature/Test.hs 83;" f
crBlips src/Dodge/RadarSweep.hs 88;" f
crCamouflage src/Dodge/Creature/Picture.hs 41;" f
crCamouflage src/Dodge/Creature/Picture.hs 43;" f
crCanSeeCr src/Dodge/Creature/Test.hs 50;" f
crCrSpring src/Dodge/Update.hs 997;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 65;" f
@@ -3010,7 +3010,7 @@ crShape src/Dodge/Creature/Shape.hs 8;" f
crSpring src/Dodge/Update.hs 984;" f
crStratConMatches src/Dodge/Creature/Test.hs 78;" f
crStrength src/Dodge/Creature/Statistics.hs 30;" f
crUpdate src/Dodge/Creature/Update.hs 91;" f
crUpdate src/Dodge/Creature/Update.hs 92;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 67;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 49;" f
crVocalResetTime src/Dodge/Creature/Vocalization.hs 61;" f
@@ -3021,12 +3021,12 @@ crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 62;" f
crWlPbHitZ src/Dodge/WorldEvent/ThingsHit.hs 72;" f
crZoneSize src/Dodge/Zoning/Creature.hs 43;" f
crabActionUpdate src/Dodge/Creature/ReaderUpdate.hs 124;" f
crabCorpse src/Dodge/Corpse/Make.hs 53;" f
crabCorpse src/Dodge/Creature/Picture.hs 263;" f
crabCrit src/Dodge/Creature/ChaseCrit.hs 37;" f
crabCritInternal src/Dodge/Humanoid.hs 29;" f
crabFeet src/Dodge/Creature/Picture.hs 172;" f
crabFeet src/Dodge/Creature/Picture.hs 174;" f
crabRoom src/Dodge/Room/Tutorial.hs 433;" f
crabUpperBody src/Dodge/Creature/Picture.hs 86;" f
crabUpperBody src/Dodge/Creature/Picture.hs 88;" f
craftInfo src/Dodge/Item/Info.hs 168;" f
craftItemSPic src/Dodge/Item/Draw/SPic.hs 40;" f
crankSlowS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 603;" f
@@ -3123,10 +3123,10 @@ deZoneIX src/Dodge/Zoning/Base.hs 91;" f
deZoneWall src/Dodge/Zoning/Wall.hs 69;" f
deadEndPSType src/Dodge/Room/Room.hs 264;" f
deadEndRoom src/Dodge/Room/Room.hs 267;" f
deadFeet src/Dodge/Creature/Picture.hs 215;" f
deadRot src/Dodge/Creature/Picture.hs 233;" f
deadScalp src/Dodge/Creature/Picture.hs 228;" f
deadUpperBody src/Dodge/Creature/Picture.hs 254;" f
deadFeet src/Dodge/Creature/Picture.hs 291;" f
deadRot src/Dodge/Creature/Picture.hs 309;" f
deadScalp src/Dodge/Creature/Picture.hs 304;" f
deadUpperBody src/Dodge/Creature/Picture.hs 330;" f
debrisS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 733;" f
debrisSPic src/Dodge/Prop/Draw.hs 17;" f
debrisSize src/Dodge/Block/Debris.hs 131;" f
@@ -3349,7 +3349,7 @@ drawBoundingBox src/Dodge/Debug/Picture.hs 368;" f
drawBullet src/Dodge/Render/ShapePicture.hs 180;" f
drawButton src/Dodge/Button/Draw.hs 11;" f
drawCPUShadows src/Dodge/Render/Shadow.hs 19;" f
drawChaseCrit src/Dodge/Creature/Picture.hs 77;" f
drawChaseCrit src/Dodge/Creature/Picture.hs 79;" f
drawCircCollisionTest src/Dodge/Debug/Picture.hs 118;" f
drawCliff src/Dodge/Render/ShapePicture.hs 87;" f
drawCollisionTest src/Dodge/Debug/Picture.hs 103;" f
@@ -3360,7 +3360,7 @@ drawCoord src/Dodge/Debug/Picture.hs 396;" f
drawCountMod src/Render.hs 231;" f
drawCrInfo src/Dodge/Debug.hs 215;" f
drawCrInfo' src/Dodge/Debug.hs 210;" f
drawCrabCrit src/Dodge/Creature/Picture.hs 69;" f
drawCrabCrit src/Dodge/Creature/Picture.hs 71;" f
drawCreature src/Dodge/Render/ShapePicture.hs 111;" f
drawCreatureDisplayTexts src/Dodge/Debug/Picture.hs 199;" f
drawCross src/Dodge/Render/Label.hs 25;" f
@@ -3379,7 +3379,7 @@ drawDragSelecting src/Dodge/Render/HUD.hs 162;" f
drawDumbSwitch src/Dodge/Button/Draw.hs 31;" f
drawEmptySet src/Dodge/Render/Picture.hs 153;" f
drawEnergyBall src/Dodge/EnergyBall/Draw.hs 7;" f
drawEquipment src/Dodge/Creature/Picture.hs 266;" f
drawEquipment src/Dodge/Creature/Picture.hs 342;" f
drawExamineInventory src/Dodge/Render/HUD.hs 199;" f
drawExplosiveBall src/Dodge/EnergyBall/Draw.hs 15;" f
drawFarWallDetect src/Dodge/Debug/Picture.hs 271;" f
@@ -3389,7 +3389,7 @@ drawForceField src/Dodge/Wall/Draw.hs 15;" f
drawGapPlus src/Dodge/Render/Picture.hs 284;" f
drawGib src/Dodge/Prop/Draw.hs 31;" f
drawHUD src/Dodge/Render/HUD.hs 53;" f
drawHoverCrit src/Dodge/Creature/Picture.hs 59;" f
drawHoverCrit src/Dodge/Creature/Picture.hs 61;" f
drawInputMenu src/Dodge/Render/MenuScreen.hs 33;" f
drawInspectWall src/Dodge/Debug/Picture.hs 256;" f
drawInspectWalls src/Dodge/Debug/Picture.hs 244;" f
@@ -3469,7 +3469,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 171;" f
dropAll src/Dodge/Creature/Update.hs 172;" f
dropInventoryPath src/Dodge/HeldUse.hs 1371;" f
dropItem src/Dodge/Creature/Action.hs 169;" f
dropper src/Dodge/Item/Scope.hs 82;" f
@@ -3559,7 +3559,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
feet src/Dodge/Creature/Picture.hs 158;" f
feet src/Dodge/Creature/Picture.hs 160;" f
filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 160;" f
findBlips src/Dodge/RadarSweep.hs 63;" f
@@ -3810,7 +3810,7 @@ hotkeyToChar src/Dodge/Inventory/SelectionList.hs 185;" f
hotkeyToScancode src/Dodge/Creature/YourControl.hs 62;" f
hotkeyToString src/Dodge/Inventory/SelectionList.hs 182;" f
hoverCrit src/Dodge/Creature/ChaseCrit.hs 51;" f
hoverCritHoverSound src/Dodge/Creature/Update.hs 68;" f
hoverCritHoverSound src/Dodge/Creature/Update.hs 69;" f
hoverCritInternal src/Dodge/Humanoid.hs 46;" f
hoverCritMv src/Dodge/Creature/ReaderUpdate.hs 229;" f
hoverDeathSounds src/Dodge/Creature/Vocalization.hs 54;" f
@@ -4140,7 +4140,7 @@ makeButton src/Dodge/LevelGen/Switch.hs 16;" f
makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 124;" f
makeColorTermPara src/Dodge/Terminal.hs 121;" f
makeCorpse src/Dodge/Corpse/Make.hs 16;" f
makeCorpse src/Dodge/Creature/Picture.hs 226;" f
makeCrGibs src/Dodge/Prop/Gib.hs 19;" f
makeDebris src/Dodge/Block/Debris.hs 75;" f
makeDebrisDirected src/Dodge/Block/Debris.hs 101;" f
@@ -4386,7 +4386,7 @@ oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 641;" f
onEquipWristShield src/Dodge/Euse.hs 89;" f
onRemoveWristShield src/Dodge/Euse.hs 79;" f
oneH src/Dodge/Creature/Test.hs 95;" f
oneSmooth src/Dodge/Creature/Picture.hs 155;" f
oneSmooth src/Dodge/Creature/Picture.hs 157;" f
openConsole src/Dodge/Update.hs 140;" f
optionMenu src/Dodge/Menu.hs 110;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 62;" f
@@ -4506,7 +4506,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 167;" f
poisonSPic src/Dodge/Creature/Update.hs 168;" f
poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f
poke34 src/Shader/Poke.hs 509;" f
pokeArrayOff src/Shader/Poke.hs 521;" f
@@ -4870,10 +4870,10 @@ scale3 src/Picture/Base.hs 137;" f
scaleMat src/MatrixHelper.hs 71;" f
scaleMatrix src/MatrixHelper.hs 68;" f
scaleSH src/Shape.hs 266;" f
scalp src/Dodge/Creature/Picture.hs 242;" f
scalp src/Dodge/Creature/Picture.hs 318;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 82;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 164;" f
scorchSPic src/Dodge/Creature/Update.hs 165;" 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
@@ -5123,7 +5123,8 @@ spawnAt src/Dodge/SpawnAt.hs 14;" f
spawnerCrit src/Dodge/Creature.hs 54;" f
spawnerRoom src/Dodge/Room/Room.hs 390;" f
speedLegs src/Dodge/Item/Equipment.hs 74;" f
spiderJoint src/Dodge/Creature/Picture.hs 206;" f
spiderJoint src/Dodge/Creature/Picture.hs 208;" f
spiderJoint' src/Dodge/Creature/Picture.hs 217;" f
splashMenu src/Dodge/Menu.hs 31;" f
splashMenuOptions src/Dodge/Menu.hs 36;" f
splashScreen src/Dodge/Initialisation.hs 10;" f
@@ -5167,7 +5168,7 @@ stackText src/Picture/Base.hs 180;" f
stackedInventory src/Dodge/Creature.hs 326;" f
startCr src/Dodge/Creature.hs 90;" f
startCrafts src/Dodge/Room/Start.hs 94;" f
startDeathTimer src/Dodge/Creature/Update.hs 122;" f
startDeathTimer src/Dodge/Creature/Update.hs 123;" f
startDrag src/Dodge/Update/Input/InGame.hs 319;" f
startInvList src/Dodge/Creature.hs 105;" f
startInventory src/Dodge/Creature.hs 108;" f
@@ -5318,7 +5319,7 @@ toBinary src/Dodge/Inventory/SelectionList.hs 138;" 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 128;" f
toDeathCarriage src/Dodge/Creature/Update.hs 129;" f
toFloatVAs src/Shader/Compile.hs 66;" f
toLabel src/Dodge/Cleat.hs 16;" f
toMultiset src/Multiset.hs 64;" f
@@ -5346,7 +5347,7 @@ topTestPart src/Dodge/TestString.hs 96;" f
torchShape src/Dodge/Item/Draw/SPic.hs 277;" f
torqueAmount src/Dodge/HeldUse.hs 606;" f
torqueCr src/Dodge/WorldEffect.hs 85;" f
torso src/Dodge/Creature/Picture.hs 247;" f
torso src/Dodge/Creature/Picture.hs 323;" f
tractCr src/Dodge/TractorBeam/Update.hs 28;" f
tractFlIt src/Dodge/TractorBeam/Update.hs 23;" f
tractorBeamAt src/Dodge/HeldUse.hs 850;" f
@@ -5471,7 +5472,7 @@ updateCloud src/Dodge/Update.hs 904;" f
updateClouds src/Dodge/Update.hs 773;" f
updateCombinePositioning src/Dodge/DisplayInventory.hs 40;" f
updateCombineSections src/Dodge/DisplayInventory.hs 47;" f
updateCreature src/Dodge/Creature/Update.hs 36;" f
updateCreature src/Dodge/Creature/Update.hs 37;" f
updateCreatureGroups src/Dodge/Update.hs 634;" f
updateCreatureSoundPositions src/Dodge/Update.hs 613;" f
updateCreatureStride src/Dodge/Update.hs 376;" f
@@ -5520,7 +5521,7 @@ updateLaser src/Dodge/Laser/Update.hs 12;" f
updateLasers src/Dodge/Update.hs 513;" f
updateLeftParentSF src/Dodge/Item/Grammar.hs 177;" f
updateLinearShockwave src/Dodge/LinearShockwave/Update.hs 8;" f
updateLivingCreature src/Dodge/Creature/Update.hs 45;" f
updateLivingCreature src/Dodge/Creature/Update.hs 46;" f
updateLongPressInGame src/Dodge/Update/Input/InGame.hs 451;" f
updateMachine src/Dodge/Machine/Update.hs 24;" f
updateMagnets src/Dodge/Update.hs 405;" f
@@ -5537,7 +5538,7 @@ updatePlasmaBall src/Dodge/Update.hs 527;" f
updatePlasmaBalls src/Dodge/Update.hs 669;" f
updatePreload src/Preload/Update.hs 21;" f
updateProjectile src/Dodge/Projectile/Update.hs 26;" f
updatePulse src/Dodge/Creature/Update.hs 179;" f
updatePulse src/Dodge/Creature/Update.hs 180;" f
updatePulseBall src/Dodge/Update.hs 547;" f
updatePulseLaser src/Dodge/Update.hs 716;" f
updatePulseLasers src/Dodge/Update.hs 522;" f
@@ -5579,7 +5580,7 @@ updateWheelEvent src/Dodge/Update/Scroll.hs 21;" f
updateWheelEvents src/Dodge/Update.hs 492;" f
updateWorldEventFlag src/Dodge/Update.hs 129;" f
updateWorldEventFlags src/Dodge/Update.hs 117;" f
upperBody src/Dodge/Creature/Picture.hs 262;" f
upperBody src/Dodge/Creature/Picture.hs 338;" f
upperBox src/Shape.hs 153;" f
upperBoxHalf src/Shape.hs 219;" f
upperBoxMT src/Shape.hs 144;" f