Simplify creature stride length

This commit is contained in:
2026-04-01 20:46:48 +01:00
parent 735cc8d92d
commit c2de804fa9
8 changed files with 85 additions and 80 deletions
+4 -5
View File
@@ -31,12 +31,11 @@ chaseCrit =
& crName .~ "chaseCrit"
& crHP .~ HP 150
& crFaction .~ ColorFaction green
& crStance . strideLength .~ 30
hoverCrit :: Creature
hoverCrit =
defaultCreature
& crName .~ "chaseCrit"
& crHP .~ HP 150
& crFaction .~ ColorFaction green
& crStance . strideLength .~ 30
& crName .~ "hoverCrit"
& crHP .~ HP 100
& crFaction .~ ColorFaction blue
& crStance . carriage .~ Flying
+11 -5
View File
@@ -13,6 +13,7 @@ module Dodge.Creature.HandPos (
translateToES,
rightHandPQ,
leftHandPQ,
strideLength,
) where
import Control.Monad
@@ -42,16 +43,21 @@ equipSitePQ = \case
translatePointToRightHand :: Creature -> Point3 -> Point3
translatePointToRightHand cr p = fst (rightHandPQ cr `Q.comp` (p, Q.qid))
strideLength :: Creature -> Float
strideLength cr = case cr ^. crType of
Avatar{} -> 35
_ -> 30
handWalkingPos :: FootForward -> Float -> Creature -> Point3
handWalkingPos b off cr = case cr ^. crStance . carriage of
Walking sa ff ->
let slen = cr ^. crStance . strideLength
let slen = strideLength cr
f i
| ff == b = 8 * zeroOneSmooth ((slen - i) / slen)
| otherwise = 8 * zeroOneSmooth (i / slen)
in V3 (f sa) off 12
Falling sa ff ->
let slen = cr ^. crStance . strideLength
let slen = strideLength cr
f i
| ff == b = 8 * zeroOneSmooth ((slen - i) / slen)
| otherwise = 8 * zeroOneSmooth (i / slen)
@@ -132,13 +138,13 @@ leftHandPQ cr
twoHandOffY :: Creature -> Float
twoHandOffY cr = zeroOneSmooth $ case cr ^. crStance . carriage of
Walking sa ff ->
let slen = cr ^. crStance . strideLength
let slen = strideLength cr
f i
| ff == RightForward = (slen - i) / slen
| otherwise = i / slen
in f sa
Falling sa ff ->
let slen = cr ^. crStance . strideLength
let slen = strideLength cr
f i
| ff == RightForward = (slen - i) / slen
| otherwise = i / slen
@@ -175,7 +181,7 @@ legPQ' g cr =
Just (Falling sa RightForward) -> f sa
_ -> 0
off = -5
sLen = _strideLength $ _crStance cr
sLen = strideLength cr
f i = g 8 * (sLen - i) / sLen
translateToRightLeg :: Creature -> SPic -> SPic
+2 -2
View File
@@ -78,7 +78,7 @@ chaseUpperBody cr = colorSH (_skinUpper cskin)
vocaltilt = case cr ^? crVocalization . vcTime of
Just x | x < 20 -> -pi * 0.05 * (10 - abs (fromIntegral x - 10))
_ -> 0
sLen = _strideLength $ _crStance cr
sLen = strideLength cr
tbob = 5 * (1 - oneSmooth (abs llegpos))
llegpos = case cr ^? crStance . carriage of
Just (Walking sa LeftForward) -> f sa
@@ -101,7 +101,7 @@ feet cr = case cr ^? crStance . carriage of
sh x = translateSHxy x off aFoot <> translateSHxy (- x) (- off) aFoot
aFoot = upperPrismPolyST 10 $ polyCirc 3 4
off = 5
sLen = _strideLength $ _crStance cr
sLen = strideLength cr
-- f i = 8 * (sLen - 2*i) / sLen
f i = 8 * oneSmooth ((sLen - 2*i) / sLen)
+2 -1
View File
@@ -2,6 +2,7 @@
module Dodge.Creature.State.WalkCycle (updateWalkCycle) where
import Dodge.Creature.HandPos
import Linear
import Control.Lens
import Dodge.Data.World
@@ -12,7 +13,7 @@ updateWalkCycle :: Int -> World -> World
updateWalkCycle cid w
| Just cr <- w ^? cWorld . lWorld . creatures . ix cid
, Walking x ff <- cr ^. crStance . carriage
, x >= cr ^. crStance . strideLength =
, x >= strideLength cr =
w
& soundMultiFrom
[FootstepSound i | i <- [0 .. 10]]
-1
View File
@@ -15,7 +15,6 @@ import Geometry.Data
data Stance = Stance
{ _carriage :: Carriage
, _posture :: Posture
, _strideLength :: Float
}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
-1
View File
@@ -40,7 +40,6 @@ defaultCreature =
Stance
{ _carriage = Walking 0 LeftForward
, _posture = AtEase
, _strideLength = yourDefaultStrideLength
}
, _crVocalization = VocReady
, _crActionPlan = ActionPlan [] (StrategyActions WatchAndWait [StartSentinelPost]) [LiveLongAndProsper]
+2 -2
View File
@@ -7,8 +7,8 @@ module Dodge.Item.HeldOffset (
handHandleOrient,
) where
import Linear
import Dodge.Creature.HandPos
import Linear
import Dodge.Data.AimStance
import Dodge.Data.ComposedItem
import Dodge.Data.Creature
@@ -86,7 +86,7 @@ strideRot cr = case cr ^? crStance . carriage of
_ -> 0
where
f i = 0.1 * (sLen - i) / sLen
sLen = _strideLength $ _crStance cr
sLen = strideLength cr
twoFlatHRot :: Creature -> Float
twoFlatHRot = (2 *) . strideRot
+64 -63
View File
@@ -42,7 +42,7 @@ ActionUpdate src/Dodge/Creature/Action.hs 49;" t
AddGoal src/Dodge/Data/ActionPlan.hs 44;" C
AimAt src/Dodge/Data/ActionPlan.hs 66;" C
AimStance src/Dodge/Data/AimStance.hs 10;" t
Aiming src/Dodge/Data/Creature/Stance.hs 33;" C
Aiming src/Dodge/Data/Creature/Stance.hs 32;" C
AirFiltrationSS src/Dodge/Data/Scenario.hs 95;" C
AlienContact src/Dodge/Data/Scenario.hs 30;" C
AllRoomClipBoundaries src/Dodge/Data/Config.hs 123;" C
@@ -66,7 +66,7 @@ Arcing src/Dodge/Data/Item/Params.hs 15;" C
ArmourySS src/Dodge/Data/Scenario.hs 112;" C
Asleep src/Dodge/Data/Creature/Perception.hs 52;" C
AsteroidStrike src/Dodge/Data/Scenario.hs 33;" C
AtEase src/Dodge/Data/Creature/Stance.hs 33;" C
AtEase src/Dodge/Data/Creature/Stance.hs 32;" C
AtomicWaste src/Dodge/Data/Scenario.hs 26;" C
AttachParams src/Dodge/Data/Item/Use.hs 43;" t
AttachType src/Dodge/Data/Item/Combine.hs 91;" t
@@ -136,7 +136,7 @@ BlockStatus src/Dodge/Data/Universe.hs 98;" t
BlockedLink src/Dodge/Data/Room.hs 54;" C
BloomLayer src/Picture/Data.hs 21;" C
Blunt src/Dodge/Data/Damage.hs 17;" C
Boosting src/Dodge/Data/Creature/Stance.hs 26;" C
Boosting src/Dodge/Data/Creature/Stance.hs 25;" C
BottomMenuOption src/Dodge/Data/Universe.hs 77;" C
BounceBullet src/Dodge/Data/Bullet.hs 28;" C
BoundCurs src/Dodge/Data/SelectionList.hs 21;" C
@@ -200,7 +200,7 @@ Cardinal8 src/Dodge/Data/CardinalPoint.hs 27;" t
CardinalCover src/Dodge/Data/CardinalPoint.hs 38;" t
CardinalPoint src/Dodge/Data/CardinalPoint.hs 6;" t
CardinalPointBetween src/Dodge/Data/CardinalPoint.hs 20;" t
Carriage src/Dodge/Data/Creature/Stance.hs 22;" t
Carriage src/Dodge/Data/Creature/Stance.hs 21;" t
ChangePosture src/Dodge/Data/ActionPlan.hs 41;" C
ChangeStrategy src/Dodge/Data/ActionPlan.hs 43;" C
ChaseCrit src/Dodge/Data/Creature/Misc.hs 50;" C
@@ -416,7 +416,7 @@ FacilityType src/Dodge/Data/Scenario.hs 55;" t
Faction src/Dodge/Data/Creature/State.hs 12;" t
Factory src/Dodge/Data/Scenario.hs 56;" C
FailedResource src/Dodge/Data/Scenario.hs 37;" t
Falling src/Dodge/Data/Creature/Stance.hs 27;" C
Falling src/Dodge/Data/Creature/Stance.hs 26;" C
FetchItem src/Dodge/Data/Scenario.hs 11;" C
FilterBySoundOrigin src/Dodge/Data/WorldEffect.hs 22;" C
FireSpark src/Dodge/Data/Spark.hs 19;" C
@@ -448,12 +448,12 @@ FloatFOV src/Dodge/Data/FloatFunction.hs 11;" C
FloatFloat src/Dodge/Data/FloatFunction.hs 9;" t
FloatID src/Dodge/Data/FloatFunction.hs 10;" C
FloatLessCheck src/Dodge/Data/FloatFunction.hs 12;" C
Floating src/Dodge/Data/Creature/Stance.hs 24;" C
Floating src/Dodge/Data/Creature/Stance.hs 23;" C
Floor src/Data/Tile.hs 11;" t
FloorItem src/Dodge/Data/FloorItem.hs 11;" t
Flying src/Dodge/Data/Creature/Stance.hs 25;" C
Flying src/Dodge/Data/Creature/Stance.hs 24;" C
FollowImpulses src/Dodge/Data/ActionPlan.hs 134;" C
FootForward src/Dodge/Data/Creature/Stance.hs 30;" t
FootForward src/Dodge/Data/Creature/Stance.hs 29;" t
FootstepSound src/Dodge/Data/SoundOrigin.hs 30;" C
ForceField src/Dodge/Data/Material.hs 19;" C
ForceFieldType src/Dodge/Data/Item/Use/Consumption/Ammo.hs 11;" t
@@ -654,7 +654,7 @@ LayVars src/Dodge/Data/MetaTree.hs 30;" C
Layer src/Picture/Data.hs 20;" t
LayoutVars src/Dodge/Data/MetaTree.hs 30;" t
LeadTarget src/Dodge/Data/ActionPlan.hs 115;" C
LeftForward src/Dodge/Data/Creature/Stance.hs 30;" C
LeftForward src/Dodge/Data/Creature/Stance.hs 29;" C
LeftwardDT src/Dodge/Data/DoubleTree.hs 27;" C
Lethargic src/Dodge/Data/Creature/Perception.hs 53;" C
LevelStartSlot src/Dodge/Data/SaveSlot.hs 9;" C
@@ -1012,7 +1012,7 @@ Polyhedra src/Polyhedra/Data.hs 13;" t
Polyhedron src/Polyhedra/Data.hs 13;" C
PosInf src/Dodge/Data/CardinalPoint.hs 44;" C
PosRooms src/Dodge/Tree/Shift.hs 29;" t
Posture src/Dodge/Data/Creature/Stance.hs 33;" t
Posture src/Dodge/Data/Creature/Stance.hs 32;" t
PreloadData src/Data/Preload.hs 10;" t
PrintMaterial src/Dodge/Data/AmmoType.hs 15;" C
Prison src/Dodge/Data/Scenario.hs 65;" C
@@ -1111,7 +1111,7 @@ Revenge src/Dodge/Data/Scenario.hs 6;" C
RewindLeftClick src/Dodge/Data/World.hs 78;" C
RezBaySS src/Dodge/Data/Scenario.hs 105;" C
RightButtonState src/Dodge/Data/RightButtonOptions.hs 13;" t
RightForward src/Dodge/Data/Creature/Stance.hs 30;" C
RightForward src/Dodge/Data/Creature/Stance.hs 29;" C
RightwardDT src/Dodge/Data/DoubleTree.hs 34;" C
Rocket src/Dodge/Data/Projectile.hs 32;" C
RocketHoming src/Dodge/Data/Projectile.hs 39;" t
@@ -1449,7 +1449,7 @@ WIRE src/Dodge/Data/Item/Combine.hs 86;" C
WRISTARMOUR src/Dodge/Data/Item/Combine.hs 125;" C
WRIST_ECG src/Dodge/Data/Item/Combine.hs 137;" C
WaitThen src/Dodge/Data/ActionPlan.hs 74;" C
Walking src/Dodge/Data/Creature/Stance.hs 23;" C
Walking src/Dodge/Data/Creature/Stance.hs 22;" C
Wall src/Dodge/Data/Wall.hs 17;" t
WallArcNode src/Dodge/Data/LWorld.hs 160;" C
WallBlockVisibility src/Dodge/Data/Wall/Structure.hs 20;" C
@@ -1788,8 +1788,8 @@ _ebType src/Dodge/Data/EnergyBall.hs 19;" f
_ebVel src/Dodge/Data/EnergyBall.hs 16;" f
_emoMenuOption src/Dodge/Data/Universe.hs 77;" f
_energyBalls src/Dodge/Data/LWorld.hs 108;" f
_fallFlail src/Dodge/Data/Creature/Stance.hs 27;" f
_fallFoot src/Dodge/Data/Creature/Stance.hs 27;" f
_fallFlail src/Dodge/Data/Creature/Stance.hs 26;" f
_fallFoot src/Dodge/Data/Creature/Stance.hs 26;" f
_fbSize src/Dodge/Data/EnergyBall/Type.hs 12;" f
_fboBase src/Data/Preload/Render.hs 35;" f
_fboBloom src/Data/Preload/Render.hs 38;" f
@@ -1815,7 +1815,7 @@ _flboStride src/Shader/Data.hs 88;" f
_floorItems src/Dodge/Data/LWorld.hs 131;" f
_floorShader src/Data/Preload/Render.hs 46;" f
_floorVBO src/Data/Preload/Render.hs 45;" f
_footForward src/Dodge/Data/Creature/Stance.hs 23;" f
_footForward src/Dodge/Data/Creature/Stance.hs 22;" f
_foreShapes src/Dodge/Data/LWorld.hs 136;" f
_fsDir src/Dodge/Data/ForegroundShape.hs 14;" f
_fsPos src/Dodge/Data/ForegroundShape.hs 13;" f
@@ -2327,8 +2327,7 @@ _ssShownItems src/Dodge/Data/SelectionList.hs 33;" f
_ssShownLength src/Dodge/Data/SelectionList.hs 34;" f
_ssboName src/Shader/Data.hs 97;" f
_ssboPtr src/Shader/Data.hs 98;" f
_strideAmount src/Dodge/Data/Creature/Stance.hs 23;" f
_strideLength src/Dodge/Data/Creature/Stance.hs 18;" f
_strideAmount src/Dodge/Data/Creature/Stance.hs 22;" f
_stuckCrID src/Dodge/Data/Projectile.hs 48;" f
_stuckCrOffset src/Dodge/Data/Projectile.hs 48;" f
_stuckCrRot src/Dodge/Data/Projectile.hs 48;" f
@@ -2657,12 +2656,12 @@ autoCrit src/Dodge/Creature/AutoCrit.hs 10;" f
autoGunS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 551;" f
autoPistol src/Dodge/Item/Held/Stick.hs 21;" f
autoRifle src/Dodge/Item/Held/Cane.hs 27;" f
awakeLevelPerception src/Dodge/Creature/Perception.hs 162;" f
awakeLevelPerception src/Dodge/Creature/Perception.hs 161;" f
axisInt src/Geometry/Intersect.hs 246;" f
azure src/Color.hs 49;" f
bQuadToF src/Geometry/Bezier.hs 37;" f
bQuadToLine src/Geometry/Bezier.hs 30;" f
backPQ src/Dodge/Creature/HandPos.hs 193;" f
backPQ src/Dodge/Creature/HandPos.hs 198;" f
backgroundSpaceS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 729;" f
backpackCombinations src/Dodge/Combine/Combinations.hs 27;" f
backpackShape src/Dodge/Item/Draw/SPic.hs 188;" f
@@ -2688,8 +2687,8 @@ baseShoulder src/Dodge/Creature/Picture.hs 150;" 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 128;" f
basicAwarenessUpdate src/Dodge/Creature/Perception.hs 40;" f
basicAttentionUpdate src/Dodge/Creature/Perception.hs 127;" f
basicAwarenessUpdate src/Dodge/Creature/Perception.hs 39;" f
basicCrPict src/Dodge/Creature/Picture.hs 32;" f
basicCrShape src/Dodge/Creature/Picture.hs 38;" f
basicItemDisplay src/Dodge/Item/Display.hs 23;" f
@@ -2805,10 +2804,10 @@ charToTuple src/Picture/Base.hs 312;" f
charToTupleGrad src/Picture/Text.hs 18;" f
chartreuse src/Color.hs 51;" f
chaseCrit src/Dodge/Creature/ChaseCrit.hs 28;" f
chaseCritAwarenessUpdate src/Dodge/Creature/Perception.hs 66;" f
chaseCritAwarenessUpdate src/Dodge/Creature/Perception.hs 65;" f
chaseCritInternal src/Dodge/Humanoid.hs 8;" f
chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 122;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 33;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f
chaseUpperBody src/Dodge/Creature/Picture.hs 62;" f
chasmRotate src/Dodge/Creature/Update.hs 177;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 372;" f
@@ -2831,7 +2830,7 @@ checkWallLeft src/Dodge/LevelGen/StaticWalls/Deprecated.hs 29;" f
checkWallRight src/Dodge/LevelGen/StaticWalls.hs 54;" f
checkWallRight src/Dodge/LevelGen/StaticWalls/Deprecated.hs 59;" f
chemFuelPouch src/Dodge/Item/Ammo.hs 81;" f
chestPQ src/Dodge/Creature/HandPos.hs 190;" f
chestPQ src/Dodge/Creature/HandPos.hs 195;" f
chooseCursorBorders src/Dodge/Render/List.hs 141;" f
chooseEquipPosition src/Dodge/Inventory/RBList.hs 41;" f
chooseFootSound src/Dodge/Creature/State/WalkCycle.hs 35;" f
@@ -2879,7 +2878,7 @@ clsNearCirc src/Dodge/Zoning/Cloud.hs 21;" f
clsNearPoint src/Dodge/Zoning/Cloud.hs 9;" f
clsNearRect src/Dodge/Zoning/Cloud.hs 18;" f
clsNearSeg src/Dodge/Zoning/Cloud.hs 15;" f
cogRaised src/Dodge/Creature/Perception.hs 102;" f
cogRaised src/Dodge/Creature/Perception.hs 101;" f
colCrWall src/Dodge/WallCreatureCollisions.hs 27;" f
colCrsWalls src/Dodge/WallCreatureCollisions.hs 19;" f
collectDamageTypes src/Dodge/Damage.hs 53;" f
@@ -2901,7 +2900,7 @@ colorLamp src/Dodge/Creature/Lamp.hs 10;" f
colorSH src/Shape.hs 234;" f
combinationsOf src/Multiset.hs 46;" f
combinationsTrie src/Dodge/Combine.hs 44;" f
combineAwareness src/Dodge/Creature/Perception.hs 110;" f
combineAwareness src/Dodge/Creature/Perception.hs 109;" f
combineFloors src/Dodge/Room/Procedural.hs 154;" f
combineInventoryExtra src/Dodge/Render/HUD.hs 340;" f
combineItemListYouX src/Dodge/Combine.hs 36;" f
@@ -2966,7 +2965,7 @@ crInAimStance src/Dodge/Creature/Test.hs 91;" f
crIntelligence src/Dodge/Creature/Statistics.hs 39;" f
crIsAiming src/Dodge/Creature/Test.hs 58;" f
crIsArmouredFrom src/Dodge/Creature/Test.hs 107;" f
crLeftHandWall src/Dodge/Creature/HandPos.hs 96;" f
crLeftHandWall src/Dodge/Creature/HandPos.hs 101;" f
crMass src/Dodge/Creature/Mass.hs 5;" f
crMaterial src/Dodge/Creature/Material.hs 8;" f
crMaxHP src/Dodge/Creature/MaxHP.hs 6;" f
@@ -2979,7 +2978,7 @@ crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 129;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 25;" f
crRad src/Dodge/Creature/Radius.hs 7;" f
crRightHandWall src/Dodge/Creature/HandPos.hs 78;" f
crRightHandWall src/Dodge/Creature/HandPos.hs 83;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 72;" f
crSetRoots src/Dodge/Inventory/Location.hs 56;" f
crShape src/Dodge/Creature/Shape.hs 8;" f
@@ -2989,7 +2988,7 @@ crStrength src/Dodge/Creature/Statistics.hs 29;" f
crUpdate src/Dodge/Creature/Update.hs 70;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 67;" f
crUpdateItemLocations src/Dodge/Inventory/Location.hs 49;" f
crVocalResetTime src/Dodge/Creature/Vocalization.hs 67;" f
crVocalResetTime src/Dodge/Creature/Vocalization.hs 62;" f
crVocalizationSound src/Dodge/Creature/Vocalization.hs 16;" f
crWarningSounds src/Dodge/Creature/Vocalization.hs 26;" f
crWlPbHit src/Dodge/WorldEvent/ThingsHit.hs 60;" f
@@ -3117,7 +3116,7 @@ decomposeTree src/Dodge/Tree/Compose.hs 59;" f
decontamRoom src/Dodge/Room/Airlock.hs 37;" f
decoratedBlock src/Dodge/Placement/Instance/Block.hs 14;" f
decorationToShape src/Dodge/Placement/TopDecoration.hs 16;" f
decreaseAwareness src/Dodge/Creature/Perception.hs 119;" f
decreaseAwareness src/Dodge/Creature/Perception.hs 118;" f
decrementTimer src/Sound.hs 104;" f
dedaS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 557;" f
dededaS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 677;" f
@@ -3130,8 +3129,8 @@ defHeldItem src/Dodge/Default/Item.hs 9;" f
defLSPic src/Dodge/LightSource/Draw.hs 10;" f
defSPic src/Dodge/Item/Draw/SPic.hs 310;" f
defaultAimMvType src/Dodge/Creature/MoveType.hs 16;" f
defaultAimingCrit src/Dodge/Default/Creature.hs 109;" f
defaultAudition src/Dodge/Default/Creature.hs 94;" f
defaultAimingCrit src/Dodge/Default/Creature.hs 108;" f
defaultAudition src/Dodge/Default/Creature.hs 93;" f
defaultAutoWall src/Dodge/Default/Wall.hs 32;" f
defaultBlock src/Dodge/Default/Block.hs 5;" f
defaultBounds src/Dodge/Data/Bounds.hs 18;" f
@@ -3144,7 +3143,7 @@ defaultChaseMvType src/Dodge/Creature/MoveType.hs 25;" f
defaultClusterStatus src/Dodge/Default/Room.hs 37;" f
defaultConfig src/Dodge/Data/Config.hs 152;" f
defaultCreature src/Dodge/Default/Creature.hs 12;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 67;" f
defaultCreatureMemory src/Dodge/Default/Creature.hs 66;" f
defaultCrystalWall src/Dodge/Default/Wall.hs 35;" f
defaultDeathSounds src/Dodge/Creature/Vocalization.hs 55;" f
defaultDirtBlock src/Dodge/Default/Block.hs 17;" f
@@ -3155,19 +3154,19 @@ defaultDrawButton src/Dodge/Button/Draw.hs 44;" f
defaultFlIt src/Dodge/Default.hs 27;" f
defaultForeground src/Dodge/Default/ForegroundShape.hs 5;" f
defaultHUD src/Dodge/Default/World.hs 172;" f
defaultInanimate src/Dodge/Default/Creature.hs 64;" f
defaultInanimate src/Dodge/Default/Creature.hs 63;" f
defaultInput src/Dodge/Default/World.hs 12;" f
defaultIntention src/Dodge/Default/Creature.hs 100;" f
defaultInvSize src/Dodge/Default/Creature.hs 74;" f
defaultIntention src/Dodge/Default/Creature.hs 99;" f
defaultInvSize src/Dodge/Default/Creature.hs 73;" f
defaultLDP src/Dodge/ListDisplayParams.hs 19;" f
defaultLWorld src/Dodge/Default/World.hs 106;" f
defaultMachine src/Dodge/Default.hs 30;" f
defaultMachineWall src/Dodge/Default/Wall.hs 38;" f
defaultPerceptionState src/Dodge/Default/Creature.hs 77;" f
defaultPerceptionState src/Dodge/Default/Creature.hs 76;" f
defaultProximitySensor src/Dodge/Default.hs 53;" f
defaultRoom src/Dodge/Default/Room.hs 9;" f
defaultTerminal src/Dodge/Default/Terminal.hs 8;" f
defaultVision src/Dodge/Default/Creature.hs 87;" f
defaultVision src/Dodge/Default/Creature.hs 86;" f
defaultWall src/Dodge/Default/Wall.hs 15;" f
defaultWindow src/Dodge/Default/Wall.hs 54;" f
defaultWorld src/Dodge/Default/World.hs 33;" f
@@ -3715,7 +3714,7 @@ haltSound src/Dodge/SoundLogic.hs 38;" f
hammerCheck src/Dodge/HeldUse.hs 67;" f
handHandleOrient src/Dodge/Item/HeldOffset.hs 71;" f
handOrient src/Dodge/Item/HeldOffset.hs 52;" f
handWalkingPos src/Dodge/Creature/HandPos.hs 45;" f
handWalkingPos src/Dodge/Creature/HandPos.hs 50;" f
handleEvent src/Dodge/Event.hs 27;" f
handleHotkeys src/Dodge/Creature/YourControl.hs 37;" f
handleKeyboardEvent src/Dodge/Event/Input.hs 23;" f
@@ -3738,7 +3737,7 @@ head src/DoubleStack.hs 14;" f
headLamp src/Dodge/Item/Equipment.hs 68;" f
headLampShape src/Dodge/Item/Draw/SPic.hs 425;" f
headMap src/Dodge/DoubleTree.hs 118;" f
headPQ src/Dodge/Creature/HandPos.hs 184;" f
headPQ src/Dodge/Creature/HandPos.hs 189;" f
healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 627;" f
healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 109;" f
healthTest src/Dodge/Room/LasTurret.hs 129;" f
@@ -3775,7 +3774,7 @@ horPipe src/Dodge/Placement/Instance/Pipe.hs 9;" f
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 36;" f
hoverCrit src/Dodge/Creature/ChaseCrit.hs 35;" f
iShape src/Dodge/Placement/Instance/LightSource.hs 58;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f
icosohedronFaces src/Polyhedra/Geodesic.hs 19;" f
@@ -3870,7 +3869,7 @@ invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 22;" f
invisibleWall src/Dodge/Placement/Instance/Wall.hs 27;" f
isAmmoIntLink src/Dodge/HeldUse.hs 738;" f
isAnimate src/Dodge/Creature/Test.hs 132;" f
isCognizant src/Dodge/Creature/Perception.hs 106;" f
isCognizant src/Dodge/Creature/Perception.hs 105;" f
isConnected src/Dodge/Inventory/Swap.hs 77;" f
isCornerLink src/Dodge/RoomLink.hs 66;" f
isFlyable src/Dodge/WorldEvent/ThingsHit.hs 191;" f
@@ -4002,13 +4001,13 @@ leaveResetQuitTerminal src/Dodge/WorldEffect.hs 164;" f
led src/Dodge/Item/Held/Utility.hs 23;" f
left src/DoubleStack.hs 16;" f
leftChildList src/Dodge/Item/Grammar.hs 193;" f
leftHandPQ src/Dodge/Creature/HandPos.hs 120;" f
leftHandPQ src/Dodge/Creature/HandPos.hs 125;" f
leftIsParentCombine src/Dodge/Item/Grammar.hs 170;" f
leftPad src/Padding.hs 15;" f
leftRightCombine src/Dodge/Item/Grammar.hs 205;" f
leftWristPQ src/Dodge/Creature/HandPos.hs 154;" f
legPQ src/Dodge/Creature/HandPos.hs 160;" f
legPQ' src/Dodge/Creature/HandPos.hs 165;" f
leftWristPQ src/Dodge/Creature/HandPos.hs 159;" f
legPQ src/Dodge/Creature/HandPos.hs 165;" f
legPQ' src/Dodge/Creature/HandPos.hs 170;" f
legsSPic src/Dodge/Item/Draw/SPic.hs 450;" f
lerpP2A src/Dodge/ShiftPoint.hs 14;" f
liShape src/Dodge/Placement/Instance/LightSource.hs 86;" f
@@ -4303,9 +4302,9 @@ nearRect src/Dodge/Zoning/Common.hs 16;" f
nearSeg src/Dodge/Zoning/Common.hs 12;" f
nearZeroAngle src/Geometry/Vector.hs 140;" f
nearestAngleRep src/Geometry.hs 148;" f
newExtraAwareness src/Dodge/Creature/Perception.hs 138;" f
newExtraAwareness src/Dodge/Creature/Perception.hs 137;" f
newKey src/IntMapHelp.hs 61;" f
newSounds src/Dodge/Creature/Perception.hs 170;" f
newSounds src/Dodge/Creature/Perception.hs 169;" f
newSoundsToPlay src/Dodge/SoundSelection.hs 8;" f
newTextureFramebuffer src/Framebuffer/Setup.hs 16;" f
nextArc src/Dodge/Tesla.hs 60;" f
@@ -4406,7 +4405,7 @@ peZoneSize src/Dodge/Zoning/Pathing.hs 49;" f
pedestalRoom src/Dodge/Room/Containing.hs 50;" f
penThing src/Dodge/Bullet.hs 214;" f
perMat src/MatrixHelper.hs 60;" f
perceptionUpdate src/Dodge/Creature/Perception.hs 25;" f
perceptionUpdate src/Dodge/Creature/Perception.hs 24;" f
performAction src/Dodge/Creature/Action.hs 54;" f
performActions src/Dodge/Creature/Action.hs 39;" f
performAimAt src/Dodge/Creature/Action.hs 103;" f
@@ -4681,7 +4680,7 @@ reload1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 701;" f
reloadFailS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 799;" f
reloadLevelStart src/Dodge/Save.hs 71;" f
reloadS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 531;" f
rememberSounds src/Dodge/Creature/Perception.hs 177;" f
rememberSounds src/Dodge/Creature/Perception.hs 176;" f
remoteDetonator src/Dodge/Item/Scope.hs 152;" f
remoteScreen src/Dodge/Item/Scope.hs 146;" f
removeAimPosture src/Dodge/Creature/YourControl.hs 136;" f
@@ -4701,7 +4700,7 @@ renderListAt src/Dodge/Render/List.hs 177;" f
renderShadows src/Render.hs 116;" f
replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 169;" f
replacePutID src/Dodge/Placement/Instance/Wall.hs 81;" f
resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 71;" f
resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 66;" f
resetPLUse src/Dodge/PlacementSpot.hs 94;" f
resetStride src/Dodge/Creature/State/WalkCycle.hs 25;" f
resetTerminal src/Dodge/WorldEffect.hs 158;" f
@@ -4735,11 +4734,11 @@ rhombus src/Polyhedra.hs 69;" f
rifle src/Dodge/Item/Held/Cane.hs 19;" f
right src/DoubleStack.hs 16;" f
rightChildList src/Dodge/Item/Grammar.hs 199;" f
rightHandPQ src/Dodge/Creature/HandPos.hs 66;" f
rightHandPQ src/Dodge/Creature/HandPos.hs 71;" f
rightIsParentCombine src/Dodge/Item/Grammar.hs 181;" f
rightPad src/Padding.hs 19;" f
rightPadNoSquash src/Padding.hs 23;" f
rightWristPQ src/Dodge/Creature/HandPos.hs 117;" f
rightWristPQ src/Dodge/Creature/HandPos.hs 122;" f
rlPosDir src/Dodge/RoomLink.hs 112;" f
rlauncherPic src/Dodge/Item/Draw/SPic.hs 401;" f
rmInLinks src/Dodge/RoomLink.hs 153;" f
@@ -5050,7 +5049,7 @@ someCrits src/Dodge/LockAndKey.hs 122;" f
soundAngle src/Dodge/SoundLogic.hs 163;" f
soundContinue src/Dodge/SoundLogic.hs 131;" f
soundContinueVol src/Dodge/SoundLogic.hs 145;" f
soundIsClose src/Dodge/Creature/Perception.hs 183;" f
soundIsClose src/Dodge/Creature/Perception.hs 182;" f
soundMenu src/Dodge/Menu.hs 158;" f
soundMenuOptions src/Dodge/Menu.hs 161;" f
soundMultiFrom src/Dodge/SoundLogic.hs 187;" f
@@ -5149,6 +5148,7 @@ strFromEquipment src/Dodge/Creature/Statistics.hs 53;" f
strFromHeldItem src/Dodge/Creature/Statistics.hs 67;" f
strengthFactor src/Dodge/Creature/Impulse/Movement.hs 51;" f
strictify src/MaybeHelp.hs 35;" f
strideLength src/Dodge/Creature/HandPos.hs 45;" f
strideRot src/Dodge/Item/HeldOffset.hs 80;" f
stringToList src/Picture/Base.hs 308;" f
stringToListGrad src/Picture/Text.hs 12;" f
@@ -5313,7 +5313,7 @@ translate3 src/Picture/Base.hs 112;" f
translateFloatingCamera src/Dodge/Update/Camera.hs 50;" f
translateFloatingCameraKeys src/Dodge/Update/Camera.hs 68;" f
translateH src/Picture/Base.hs 104;" f
translatePointToLeftHand src/Dodge/Creature/HandPos.hs 148;" f
translatePointToLeftHand src/Dodge/Creature/HandPos.hs 153;" f
translatePointToRightHand src/Dodge/Creature/HandPos.hs 42;" f
translateSH src/Shape.hs 242;" f
translateSHxy src/Shape.hs 246;" f
@@ -5323,10 +5323,10 @@ translateSPxy src/ShapePicture.hs 45;" f
translateSPz src/ShapePicture.hs 49;" f
translateScreenPos src/Dodge/ScreenPos.hs 12;" f
translateToES src/Dodge/Creature/HandPos.hs 29;" f
translateToLeftHand src/Dodge/Creature/HandPos.hs 151;" f
translateToLeftLeg src/Dodge/Creature/HandPos.hs 157;" f
translateToRightHand src/Dodge/Creature/HandPos.hs 114;" f
translateToRightLeg src/Dodge/Creature/HandPos.hs 181;" f
translateToLeftHand src/Dodge/Creature/HandPos.hs 156;" f
translateToLeftLeg src/Dodge/Creature/HandPos.hs 162;" f
translateToRightHand src/Dodge/Creature/HandPos.hs 119;" f
translateToRightLeg src/Dodge/Creature/HandPos.hs 186;" f
translateXY src/Polyhedra.hs 23;" f
trapTBH src/Geometry/Polygon.hs 22;" f
trapezionBWHW src/Geometry/Polygon.hs 34;" f
@@ -5377,7 +5377,7 @@ twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 39;" f
twists src/Dodge/Creature/Test.hs 101;" f
twoFlat src/Dodge/Creature/Test.hs 98;" f
twoFlatHRot src/Dodge/Item/HeldOffset.hs 91;" f
twoHandOffY src/Dodge/Creature/HandPos.hs 132;" f
twoHandOffY src/Dodge/Creature/HandPos.hs 137;" f
twoHandTwistAmount src/Dodge/Creature/YourControl.hs 142;" f
twoRoomPoss src/Dodge/PlacementSpot.hs 148;" f
twoStep1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 519;" f
@@ -5521,6 +5521,7 @@ updateUniverseLast src/Dodge/Update.hs 143;" f
updateUniverseMid src/Dodge/Update.hs 185;" f
updateUseInputInGame src/Dodge/Update/Input/InGame.hs 47;" f
updateUseInputOnScreen src/Dodge/Update/Input/ScreenLayer.hs 24;" f
updateVocTimer src/Dodge/Humanoid.hs 25;" f
updateWalkCycle src/Dodge/Creature/State/WalkCycle.hs 11;" f
updateWallDamages src/Dodge/Update/WallDamage.hs 15;" f
updateWheelEvent src/Dodge/Update/Scroll.hs 21;" f
@@ -5590,7 +5591,7 @@ viewRoomBoundaries src/Dodge/Debug/Picture.hs 341;" f
viewTarget src/Dodge/Creature/ReaderUpdate.hs 156;" f
violet src/Color.hs 48;" f
visibleWalls src/Dodge/Base/Collide.hs 218;" f
visionCheck src/Dodge/Creature/Perception.hs 153;" f
visionCheck src/Dodge/Creature/Perception.hs 152;" f
volleyGun src/Dodge/Item/Held/Cane.hs 15;" f
volleyGunShape src/Dodge/Item/Draw/SPic.hs 355;" f
walkNozzle src/Dodge/HeldUse.hs 826;" f
@@ -5688,7 +5689,7 @@ you src/Dodge/Base/You.hs 17;" f
youDropItem src/Dodge/Creature/Action.hs 177;" f
yourAugmentedItem src/Dodge/Render/HUD.hs 240;" f
yourControl src/Dodge/Creature/YourControl.hs 26;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 112;" f
yourDefaultStrideLength src/Dodge/Default/Creature.hs 111;" f
yourInfo src/Dodge/Creature/Info.hs 10;" f
yourInv src/Dodge/Base/You.hs 37;" f
yourRootItem src/Dodge/Base/You.hs 26;" f
@@ -5699,7 +5700,7 @@ zChasm src/Dodge/Room/Tutorial.hs 161;" 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
zeroOneSmooth src/Dodge/Creature/HandPos.hs 63;" f
zeroOneSmooth src/Dodge/Creature/HandPos.hs 68;" f
zeroZ src/Geometry/Vector.hs 9;" f
zipArcs src/Dodge/Tesla.hs 51;" f
zipCount src/Dodge/Tree/Shift.hs 142;" f