Commit before messing with item tree orientation etc

This commit is contained in:
2025-06-26 20:29:48 +01:00
parent ab82bcbe20
commit 494c7a4f89
9 changed files with 73 additions and 71 deletions
+1 -1
View File
File diff suppressed because one or more lines are too long
+3 -2
View File
@@ -24,6 +24,7 @@ module Dodge.Creature.Test (
crSafeDistFromTarg, crSafeDistFromTarg,
) where ) where
import Dodge.Item.Grammar
import Dodge.Creature.Radius import Dodge.Creature.Radius
import Dodge.Data.Equipment.Misc import Dodge.Data.Equipment.Misc
import Dodge.Data.AimStance import Dodge.Data.AimStance
@@ -94,8 +95,8 @@ crInAimStance as cr = crIsAiming cr && mitstance == Just as
where where
mitstance = do mitstance = do
i <- cr ^? crManipulation . manObject . imRootSelectedItem i <- cr ^? crManipulation . manObject . imRootSelectedItem
itm <- cr ^? crInv . ix i itm <- invRootTrees (cr ^. crInv) ^? ix i
return $ aStance itm return $ aimStance itm
--cr ^? crInv . ix i . itUse . heldAim . aimStance --cr ^? crInv . ix i . itUse . heldAim . aimStance
oneH :: Creature -> Bool oneH :: Creature -> Bool
+1 -1
View File
@@ -140,7 +140,7 @@ setAimPosture = (crStance . posture .~ Aiming) . doAimTwist (- twoHandTwistAmoun
doAimTwist :: Float -> Creature -> Creature doAimTwist :: Float -> Creature -> Creature
doAimTwist x cr = fromMaybe cr $ do doAimTwist x cr = fromMaybe cr $ do
itRef <- cr ^? crManipulation . manObject . imRootSelectedItem itRef <- cr ^? crManipulation . manObject . imRootSelectedItem
astance <- fmap aStance $ cr ^? crInv . ix itRef astance <- fmap itemBaseStance $ cr ^? crInv . ix itRef
guard $ astance == TwoHandOver || astance == TwoHandUnder guard $ astance == TwoHandOver || astance == TwoHandUnder
return $ cr & crDir +~ x return $ cr & crDir +~ x
+11 -6
View File
@@ -1,16 +1,21 @@
{-# LANGUAGE LambdaCase #-} {-# LANGUAGE LambdaCase #-}
module Dodge.Item.AimStance (aStance) where module Dodge.Item.AimStance (aimStance,itemBaseStance) where
import Dodge.Data.Item import Dodge.Data.Item
--import Dodge.Data.ComposedItem import Dodge.Data.ComposedItem
--import Dodge.Data.DoubleTree import Dodge.Data.DoubleTree
import Control.Lens import Control.Lens
import Dodge.Data.AimStance import Dodge.Data.AimStance
--aStance :: LocationLDT ItemLink ComposedItem -> AimStance --aStance :: LocationLDT ItemLink CItem -> AimStance
--aStance loc = case loc ^. locLDT . ldtValue . _1 . itType of --aStance loc = case loc ^. locLDT . ldtValue . _1 . itType of
aStance :: Item -> AimStance --
aStance itm = case itm ^. itType of aimStance :: LabelDoubleTree ItemLink CItem -> AimStance
aimStance ldt = itemBaseStance $ ldt ^. ldtValue . _1
itemBaseStance :: Item -> AimStance
itemBaseStance itm = case itm ^. itType of
HELD hit -> heldAimStance hit HELD hit -> heldAimStance hit
_ -> OneHand _ -> OneHand
+1 -1
View File
@@ -135,7 +135,7 @@ extraWeaponLinks itm = case itm ^. itType of
extraWeaponLinksBelow :: Item -> [(ItemStructuralFunction, CLinkType)] extraWeaponLinksBelow :: Item -> [(ItemStructuralFunction, CLinkType)]
extraWeaponLinksBelow itm extraWeaponLinksBelow itm
-- | Just TwoHandUnder <- itm ^? itUse . heldAim . aimStance -- | Just TwoHandUnder <- itm ^? itUse . heldAim . aimStance
| TwoHandUnder <- aStance itm | TwoHandUnder <- itemBaseStance itm
= [(UnderBarrelSlotSF,UnderBarrelSlotLink)] = [(UnderBarrelSlotSF,UnderBarrelSlotLink)]
| otherwise = [] | otherwise = []
+3 -3
View File
@@ -36,11 +36,11 @@ heldItemRelativeOrient
heldItemRelativeOrient itm cr (p,q) heldItemRelativeOrient itm cr (p,q)
| Aiming {} <- _posture (_crStance cr) = | Aiming {} <- _posture (_crStance cr) =
(p + aimingWeaponZeroPos cr itm `v2z` shoulderHeight, Q.qID * q) (p + aimingWeaponZeroPos cr itm `v2z` shoulderHeight, Q.qID * q)
| TwoHandFlat <- aStance itm = | TwoHandFlat <- itemBaseStance itm =
( V3 (crRad $ cr ^. crType) 0 handD + rotate3 (twoFlatHRot cr) (transToHandle itm p) ( V3 (crRad $ cr ^. crType) 0 handD + rotate3 (twoFlatHRot cr) (transToHandle itm p)
, Q.axisAngle (V3 0 0 1) (twoFlatHRot cr) * q , Q.axisAngle (V3 0 0 1) (twoFlatHRot cr) * q
) )
| OneHand <- aStance itm = | OneHand <- itemBaseStance itm =
( V3 (crRad (cr ^. crType) * 0.7 + handPos) (crRad (cr ^. crType) * negate 0.7) handD ( V3 (crRad (cr ^. crType) * 0.7 + handPos) (crRad (cr ^. crType) * negate 0.7) handD
+ transToHandle itm p + transToHandle itm p
, Q.qID * q , Q.qID * q
@@ -63,7 +63,7 @@ aimingWeaponZeroPos cr it = aimStanceHandlePos cr it - handlePos it
-- the position of a weapon handle -- the position of a weapon handle
aimStanceHandlePos :: Creature -> Item -> Point2 aimStanceHandlePos :: Creature -> Item -> Point2
aimStanceHandlePos _ it = case aStance it of aimStanceHandlePos _ it = case itemBaseStance it of
TwoHandUnder -> V2 (-2) 0 TwoHandUnder -> V2 (-2) 0
TwoHandOver -> V2 (-7) 0 TwoHandOver -> V2 (-7) 0
OneHand -> V2 10 (-2) OneHand -> V2 10 (-2)
+1 -1
View File
@@ -238,7 +238,7 @@ itmUsageInfo itm = case itm ^. itType of
_ -> "THIS SHOULD NOT BE DISPLAYED" _ -> "THIS SHOULD NOT BE DISPLAYED"
heldPositionInfo :: Item -> String heldPositionInfo :: Item -> String
heldPositionInfo = aimStanceInfo . aStance heldPositionInfo = aimStanceInfo . itemBaseStance
aimStanceInfo :: AimStance -> String aimStanceInfo :: AimStance -> String
aimStanceInfo as = case as of aimStanceInfo as = case as of
+1 -4
View File
@@ -18,10 +18,7 @@ makeButton ::
-- | Effect when pressed -- | Effect when pressed
WdWd -> WdWd ->
Button Button
makeButton col eff = makeButton col eff = defaultButton { _btEvent = ButtonPress False eff col }
defaultButton
{ _btEvent = ButtonPress False eff col
}
-- TODO remove duplication -- TODO remove duplication
drawSwitchWire :: Color -> Color -> Button -> SPic drawSwitchWire :: Color -> Color -> Button -> SPic
+51 -52
View File
@@ -24,9 +24,9 @@ ALTERIFLE src/Dodge/Data/Item/Combine.hs 153;" C
AMMOMAG src/Dodge/Data/Item/Combine.hs 21;" C AMMOMAG src/Dodge/Data/Item/Combine.hs 21;" C
AMR src/Dodge/Data/Item/Combine.hs 158;" C AMR src/Dodge/Data/Item/Combine.hs 158;" C
ANTIMATTER src/Dodge/Data/Item/Combine.hs 68;" C ANTIMATTER src/Dodge/Data/Item/Combine.hs 68;" C
APInt src/Dodge/Data/Item/Use.hs 48;" C APInt src/Dodge/Data/Item/Use.hs 47;" C
APNothing src/Dodge/Data/Item/Use.hs 49;" C APNothing src/Dodge/Data/Item/Use.hs 48;" C
APProjectiles src/Dodge/Data/Item/Use.hs 47;" C APProjectiles src/Dodge/Data/Item/Use.hs 46;" C
AQUAMARINE src/Color/Data.hs 24;" C AQUAMARINE src/Color/Data.hs 24;" C
ARHUD src/Dodge/Data/Item/Combine.hs 35;" C ARHUD src/Dodge/Data/Item/Combine.hs 35;" C
ARHUDSF src/Dodge/Data/ComposedItem.hs 49;" C ARHUDSF src/Dodge/Data/ComposedItem.hs 49;" C
@@ -65,7 +65,7 @@ AmmoMagSF src/Dodge/Data/ComposedItem.hs 50;" C
AmmoMagType src/Dodge/Data/Item/Combine.hs 105;" t AmmoMagType src/Dodge/Data/Item/Combine.hs 105;" t
AmmoModLink src/Dodge/Data/ComposedItem.hs 18;" C AmmoModLink src/Dodge/Data/ComposedItem.hs 18;" C
AmmoModifierSF src/Dodge/Data/ComposedItem.hs 56;" C AmmoModifierSF src/Dodge/Data/ComposedItem.hs 56;" C
AmmoParams src/Dodge/Data/Item/Use.hs 52;" t AmmoParams src/Dodge/Data/Item/Use.hs 51;" t
AmmoPayloadLink src/Dodge/Data/ComposedItem.hs 20;" C AmmoPayloadLink src/Dodge/Data/ComposedItem.hs 20;" C
AmmoPayloadSF src/Dodge/Data/ComposedItem.hs 58;" C AmmoPayloadSF src/Dodge/Data/ComposedItem.hs 58;" C
AmmoPerShot src/Dodge/Data/Muzzle.hs 52;" t AmmoPerShot src/Dodge/Data/Muzzle.hs 52;" t
@@ -99,7 +99,7 @@ AsteroidStrike src/Dodge/Data/Scenario.hs 33;" C
AtEase src/Dodge/Data/Creature/Stance.hs 40;" C AtEase src/Dodge/Data/Creature/Stance.hs 40;" C
AtomicWaste src/Dodge/Data/Scenario.hs 26;" C AtomicWaste src/Dodge/Data/Scenario.hs 26;" C
Attach src/Dodge/Item/Attach.hs 1;" m Attach src/Dodge/Item/Attach.hs 1;" m
AttachParams src/Dodge/Data/Item/Use.hs 46;" t AttachParams src/Dodge/Data/Item/Use.hs 45;" t
AttachType src/Dodge/Data/Item/Combine.hs 91;" t AttachType src/Dodge/Data/Item/Combine.hs 91;" t
Attention src/Dodge/Data/Creature/Perception.hs 60;" t Attention src/Dodge/Data/Creature/Perception.hs 60;" t
AttentiveTo src/Dodge/Data/Creature/Perception.hs 61;" C AttentiveTo src/Dodge/Data/Creature/Perception.hs 61;" C
@@ -231,7 +231,7 @@ BulletMod src/Dodge/Data/Item/BulletMod.hs 10;" t
BulletMod src/Dodge/Data/Item/BulletMod.hs 3;" m BulletMod src/Dodge/Data/Item/BulletMod.hs 3;" m
BulletModEffect src/Dodge/Data/Item/BulletMod.hs 12;" C BulletModEffect src/Dodge/Data/Item/BulletMod.hs 12;" C
BulletModPayload src/Dodge/Data/Item/BulletMod.hs 11;" C BulletModPayload src/Dodge/Data/Item/BulletMod.hs 11;" C
BulletParams src/Dodge/Data/Item/Use.hs 53;" C BulletParams src/Dodge/Data/Item/Use.hs 52;" C
BulletPayload src/Dodge/Data/Bullet.hs 36;" t BulletPayload src/Dodge/Data/Bullet.hs 36;" t
BulletTrajectory src/Dodge/Data/Bullet.hs 44;" t BulletTrajectory src/Dodge/Data/Bullet.hs 44;" t
BulletTrajectoryType src/Dodge/Data/Bullet.hs 51;" t BulletTrajectoryType src/Dodge/Data/Bullet.hs 51;" t
@@ -751,7 +751,7 @@ GasAmmo src/Dodge/Data/AmmoType.hs 11;" C
GasCloud src/Dodge/Data/Cloud.hs 26;" C GasCloud src/Dodge/Data/Cloud.hs 26;" C
GasCreate src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" t GasCreate src/Dodge/Data/Item/Use/Consumption/Ammo.hs 17;" t
GasFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" t GasFuel src/Dodge/Data/Item/Use/Consumption/Ammo.hs 14;" t
GasParams src/Dodge/Data/Item/Use.hs 55;" C GasParams src/Dodge/Data/Item/Use.hs 54;" C
GenFloat src/Dodge/Data/GenFloat.hs 11;" t GenFloat src/Dodge/Data/GenFloat.hs 11;" t
GenFloat src/Dodge/Data/GenFloat.hs 5;" m GenFloat src/Dodge/Data/GenFloat.hs 5;" m
GenParams src/Dodge/Data/GenParams.hs 15;" t GenParams src/Dodge/Data/GenParams.hs 15;" t
@@ -1502,7 +1502,7 @@ Procedural src/Dodge/Room/Procedural.hs 2;" m
Projectile src/Dodge/Data/Projectile.hs 17;" t Projectile src/Dodge/Data/Projectile.hs 17;" t
Projectile src/Dodge/Data/Projectile.hs 6;" m Projectile src/Dodge/Data/Projectile.hs 6;" m
Projectile src/Dodge/Projectile.hs 1;" m Projectile src/Dodge/Projectile.hs 1;" m
ProjectileParams src/Dodge/Data/Item/Use.hs 54;" C ProjectileParams src/Dodge/Data/Item/Use.hs 53;" C
ProjectileStabiliserLink src/Dodge/Data/ComposedItem.hs 31;" C ProjectileStabiliserLink src/Dodge/Data/ComposedItem.hs 31;" C
ProjectileStabiliserSF src/Dodge/Data/ComposedItem.hs 62;" C ProjectileStabiliserSF src/Dodge/Data/ComposedItem.hs 62;" C
ProjectileType src/Dodge/Data/Projectile.hs 41;" t ProjectileType src/Dodge/Data/Projectile.hs 41;" t
@@ -2078,32 +2078,31 @@ Update src/Preload/Update.hs 3;" m
Use src/Dodge/Data/Item/Use.hs 6;" m Use src/Dodge/Data/Item/Use.hs 6;" m
Use src/Dodge/Default/Item/Use.hs 1;" m Use src/Dodge/Default/Item/Use.hs 1;" m
UseAheadPos src/Dodge/Data/ActionPlan.hs 160;" C UseAheadPos src/Dodge/Data/ActionPlan.hs 160;" C
UseAttach src/Dodge/Data/Item/Use.hs 33;" C UseAttach src/Dodge/Data/Item/Use.hs 32;" C
UseBulletMod src/Dodge/Data/Item/Use.hs 38;" C UseBulletMod src/Dodge/Data/Item/Use.hs 37;" C
UseCondition src/Dodge/Data/UseCondition.hs 2;" m UseCondition src/Dodge/Data/UseCondition.hs 2;" m
UseDelay src/Dodge/Data/Item/HeldDelay.hs 13;" t UseDelay src/Dodge/Data/Item/HeldDelay.hs 13;" t
UseDelay src/Dodge/Data/UseDelay.hs 6;" m UseDelay src/Dodge/Data/UseDelay.hs 6;" m
UseDelay src/Dodge/Item/UseDelay.hs 3;" m UseDelay src/Dodge/Item/UseDelay.hs 3;" m
UseEquip src/Dodge/Data/Item/Use.hs 32;" C
UseExactly src/Dodge/Data/Muzzle.hs 53;" C UseExactly src/Dodge/Data/Muzzle.hs 53;" C
UseFocus src/Dodge/Data/UseCondition.hs 11;" t UseFocus src/Dodge/Data/UseCondition.hs 11;" t
UseFromLocation src/Dodge/Data/UseCondition.hs 13;" C UseFromLocation src/Dodge/Data/UseCondition.hs 13;" C
UseFromRoot src/Dodge/Data/UseCondition.hs 12;" C UseFromRoot src/Dodge/Data/UseCondition.hs 12;" C
UseHeld src/Dodge/Data/Item/Use.hs 31;" C UseHeld src/Dodge/Data/Item/Use.hs 31;" C
UseInt src/Dodge/Data/Item/Use.hs 34;" C UseInt src/Dodge/Data/Item/Use.hs 33;" C
UseInvItem src/Dodge/Data/WorldEffect.hs 34;" C UseInvItem src/Dodge/Data/WorldEffect.hs 34;" C
UseItem src/Dodge/Data/ActionPlan.hs 37;" C UseItem src/Dodge/Data/ActionPlan.hs 37;" C
UseItem src/Dodge/Creature/Impulse/UseItem.hs 3;" m UseItem src/Dodge/Creature/Impulse/UseItem.hs 3;" m
UseItemWidth src/Dodge/Data/SelectionList.hs 41;" C UseItemWidth src/Dodge/Data/SelectionList.hs 41;" C
UseMapper src/Dodge/Data/Item/Use.hs 40;" C UseMapper src/Dodge/Data/Item/Use.hs 39;" C
UseMvTargetPos src/Dodge/Data/ActionPlan.hs 163;" C UseMvTargetPos src/Dodge/Data/ActionPlan.hs 163;" C
UseNothing src/Dodge/Data/Item/Use.hs 35;" C UseNothing src/Dodge/Data/Item/Use.hs 34;" C
UseScope src/Dodge/Data/Item/Use.hs 37;" C UseScope src/Dodge/Data/Item/Use.hs 36;" C
UseSelf src/Dodge/Data/ActionPlan.hs 157;" C UseSelf src/Dodge/Data/ActionPlan.hs 157;" C
UseTarget src/Dodge/Data/ActionPlan.hs 154;" C UseTarget src/Dodge/Data/ActionPlan.hs 154;" C
UseToggle src/Dodge/Data/Item/Use.hs 39;" C UseToggle src/Dodge/Data/Item/Use.hs 38;" C
UseUpTo src/Dodge/Data/Muzzle.hs 54;" C UseUpTo src/Dodge/Data/Muzzle.hs 54;" C
UseValue src/Dodge/Data/Item/Use.hs 36;" C UseValue src/Dodge/Data/Item/Use.hs 35;" C
UseableAnytime src/Dodge/Data/UseCondition.hs 7;" C UseableAnytime src/Dodge/Data/UseCondition.hs 7;" C
UseableWhenAimed src/Dodge/Data/UseCondition.hs 5;" C UseableWhenAimed src/Dodge/Data/UseCondition.hs 5;" C
UseableWhenHeld src/Dodge/Data/UseCondition.hs 6;" C UseableWhenHeld src/Dodge/Data/UseCondition.hs 6;" C
@@ -2244,14 +2243,14 @@ _allocSwapID src/Dodge/Data/RightButtonOptions.hs 30;" f
_alphaDivideShader src/Data/Preload/Render.hs 18;" f _alphaDivideShader src/Data/Preload/Render.hs 18;" f
_alteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" f _alteRifleSwitch src/Dodge/Data/Item/Params.hs 20;" f
_ambushTarget src/Dodge/Data/ActionPlan.hs 178;" f _ambushTarget src/Dodge/Data/ActionPlan.hs 178;" f
_ampBullet src/Dodge/Data/Item/Use.hs 53;" f _ampBullet src/Dodge/Data/Item/Use.hs 52;" f
_ampCreateGas src/Dodge/Data/Item/Use.hs 55;" f _ampCreateGas src/Dodge/Data/Item/Use.hs 54;" f
_ampPayload src/Dodge/Data/Item/Use.hs 54;" f _ampPayload src/Dodge/Data/Item/Use.hs 53;" f
_apAction src/Dodge/Data/ActionPlan.hs 20;" f _apAction src/Dodge/Data/ActionPlan.hs 20;" f
_apGoal src/Dodge/Data/ActionPlan.hs 22;" f _apGoal src/Dodge/Data/ActionPlan.hs 22;" f
_apImpulse src/Dodge/Data/ActionPlan.hs 19;" f _apImpulse src/Dodge/Data/ActionPlan.hs 19;" f
_apInt src/Dodge/Data/Item/Use.hs 48;" f _apInt src/Dodge/Data/Item/Use.hs 47;" f
_apProjectiles src/Dodge/Data/Item/Use.hs 47;" f _apProjectiles src/Dodge/Data/Item/Use.hs 46;" f
_apStrategy src/Dodge/Data/ActionPlan.hs 21;" f _apStrategy src/Dodge/Data/ActionPlan.hs 21;" f
_arLoaded src/Dodge/Data/Item/Use/Consumption.hs 27;" f _arLoaded src/Dodge/Data/Item/Use/Consumption.hs 27;" f
_arMax src/Dodge/Data/Item/Use/Consumption.hs 28;" f _arMax src/Dodge/Data/Item/Use/Consumption.hs 28;" f
@@ -3177,11 +3176,11 @@ _tuFireTime src/Dodge/Data/Machine.hs 60;" f
_tuTurnSpeed src/Dodge/Data/Machine.hs 59;" f _tuTurnSpeed src/Dodge/Data/Machine.hs 59;" f
_tuWeapon src/Dodge/Data/Machine.hs 58;" f _tuWeapon src/Dodge/Data/Machine.hs 58;" f
_turnToPoint src/Dodge/Data/ActionPlan.hs 92;" f _turnToPoint src/Dodge/Data/ActionPlan.hs 92;" f
_uInt src/Dodge/Data/Item/Use.hs 34;" f _uInt src/Dodge/Data/Item/Use.hs 33;" f
_uScope src/Dodge/Data/Item/Use.hs 37;" f _uScope src/Dodge/Data/Item/Use.hs 36;" f
_uValue src/Dodge/Data/Item/Use.hs 36;" f _uValue src/Dodge/Data/Item/Use.hs 35;" f
_uaParams src/Dodge/Data/Item/Use.hs 33;" f _uaParams src/Dodge/Data/Item/Use.hs 32;" f
_ubMod src/Dodge/Data/Item/Use.hs 38;" f _ubMod src/Dodge/Data/Item/Use.hs 37;" f
_unCombEdge src/Dodge/Combine/Graph.hs 32;" f _unCombEdge src/Dodge/Combine/Graph.hs 32;" f
_unCombNode src/Dodge/Combine/Graph.hs 25;" f _unCombNode src/Dodge/Combine/Graph.hs 25;" f
_unFBO src/Shader/Data.hs 57;" f _unFBO src/Shader/Data.hs 57;" f
@@ -3198,12 +3197,12 @@ _unpauseClock src/Dodge/Data/World.hs 55;" f
_unputTerminal src/Dodge/Data/GenWorld.hs 36;" f _unputTerminal src/Dodge/Data/GenWorld.hs 36;" f
_useAheadPos src/Dodge/Data/ActionPlan.hs 161;" f _useAheadPos src/Dodge/Data/ActionPlan.hs 161;" f
_useExactly src/Dodge/Data/Muzzle.hs 53;" f _useExactly src/Dodge/Data/Muzzle.hs 53;" f
_useMapperLines src/Dodge/Data/Item/Use.hs 41;" f _useMapperLines src/Dodge/Data/Item/Use.hs 40;" f
_useMapperPoints src/Dodge/Data/Item/Use.hs 42;" f _useMapperPoints src/Dodge/Data/Item/Use.hs 41;" f
_useMvTargetPos src/Dodge/Data/ActionPlan.hs 164;" f _useMvTargetPos src/Dodge/Data/ActionPlan.hs 164;" f
_useSelf src/Dodge/Data/ActionPlan.hs 158;" f _useSelf src/Dodge/Data/ActionPlan.hs 158;" f
_useTarget src/Dodge/Data/ActionPlan.hs 155;" f _useTarget src/Dodge/Data/ActionPlan.hs 155;" f
_useToggle src/Dodge/Data/Item/Use.hs 39;" f _useToggle src/Dodge/Data/Item/Use.hs 38;" f
_useUpTo src/Dodge/Data/Muzzle.hs 54;" f _useUpTo src/Dodge/Data/Muzzle.hs 54;" f
_uvCanContinue src/Dodge/Data/Universe.hs 39;" f _uvCanContinue src/Dodge/Data/Universe.hs 39;" f
_uvConfig src/Dodge/Data/Universe.hs 37;" f _uvConfig src/Dodge/Data/Universe.hs 37;" f
@@ -3299,7 +3298,6 @@ aGib src/Dodge/Prop/Gib.hs 18;" f
aRadarPulse src/Dodge/RadarSweep.hs 19;" f aRadarPulse src/Dodge/RadarSweep.hs 19;" f
aShape src/Dodge/Placement/Instance/LightSource.hs 107;" f aShape src/Dodge/Placement/Instance/LightSource.hs 107;" f
aSound src/Dodge/SoundLogic.hs 74;" f aSound src/Dodge/SoundLogic.hs 74;" f
aStance src/Dodge/Item/AimStance.hs 12;" f
aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f aTreeStrut src/Dodge/Tree/GenerateStructure.hs 42;" f
accessTerminal src/Dodge/WorldEffect.hs 54;" f accessTerminal src/Dodge/WorldEffect.hs 54;" f
activateDetonator src/Dodge/Creature/Impulse/UseItem.hs 83;" f activateDetonator src/Dodge/Creature/Impulse/UseItem.hs 83;" f
@@ -3345,6 +3343,7 @@ advanceScrollAmount src/Dodge/Update.hs 422;" f
advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f advanceSmoothScroll src/Dodge/SmoothScroll.hs 33;" f
advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 44;" f advanceStepCounter src/Dodge/Creature/Impulse/Movement.hs 44;" f
aimDelaySweep src/Dodge/Render/Picture.hs 264;" f aimDelaySweep src/Dodge/Render/Picture.hs 264;" f
aimStance src/Dodge/Item/AimStance.hs 13;" f
aimStanceHandlePos src/Dodge/Item/HeldOffset.hs 65;" f aimStanceHandlePos src/Dodge/Item/HeldOffset.hs 65;" f
aimStanceInfo src/Dodge/Item/Info.hs 243;" f aimStanceInfo src/Dodge/Item/Info.hs 243;" f
aimTurn src/Dodge/Creature/YourControl.hs 165;" f aimTurn src/Dodge/Creature/YourControl.hs 165;" f
@@ -3646,7 +3645,7 @@ clipZoom src/Dodge/Update/Camera.hs 222;" f
clockCycle src/Dodge/Clock.hs 9;" f clockCycle src/Dodge/Clock.hs 9;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 219;" f closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 219;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 204;" f closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 204;" f
closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 241;" f closeItemToTextPictures src/Dodge/Inventory/SelectionList.hs 239;" f
closeObjectInfo src/Dodge/Render/HUD.hs 224;" f closeObjectInfo src/Dodge/Render/HUD.hs 224;" f
closestCreatureID src/Dodge/Debug.hs 116;" f closestCreatureID src/Dodge/Debug.hs 116;" f
closestPointOnLine src/Geometry/Intersect.hs 251;" f closestPointOnLine src/Geometry/Intersect.hs 251;" f
@@ -3720,24 +3719,24 @@ corridorBoss src/Dodge/LockAndKey.hs 133;" f
corridorN src/Dodge/Room/Corridor.hs 52;" f corridorN src/Dodge/Room/Corridor.hs 52;" f
corridorWallN src/Dodge/Room/Corridor.hs 71;" f corridorWallN src/Dodge/Room/Corridor.hs 71;" f
crAdd src/Dodge/Room/RezBox.hs 104;" f crAdd src/Dodge/Room/RezBox.hs 104;" f
crAwayFromPost src/Dodge/Creature/Test.hs 81;" f crAwayFromPost src/Dodge/Creature/Test.hs 82;" f
crBlips src/Dodge/RadarSweep.hs 87;" f crBlips src/Dodge/RadarSweep.hs 87;" f
crCamouflage src/Dodge/Creature/Picture.hs 31;" f crCamouflage src/Dodge/Creature/Picture.hs 31;" f
crCanSeeCr src/Dodge/Creature/Test.hs 50;" f crCanSeeCr src/Dodge/Creature/Test.hs 51;" f
crCrSpring src/Dodge/Update.hs 814;" f crCrSpring src/Dodge/Update.hs 814;" f
crCurrentEquipment src/Dodge/Creature/Statistics.hs 57;" f crCurrentEquipment src/Dodge/Creature/Statistics.hs 57;" f
crDexterity src/Dodge/Creature/Statistics.hs 14;" f crDexterity src/Dodge/Creature/Statistics.hs 14;" f
crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 38;" f crDisplayAwareness src/Dodge/Creature/Picture/Awareness.hs 38;" f
crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 52;" f crDisplayVigilance src/Dodge/Creature/Picture/Awareness.hs 52;" f
crHasTarget src/Dodge/Creature/Test.hs 63;" f crHasTarget src/Dodge/Creature/Test.hs 64;" f
crHasTargetLOS src/Dodge/Creature/Test.hs 66;" f crHasTargetLOS src/Dodge/Creature/Test.hs 67;" f
crHit src/Dodge/WorldEvent/ThingsHit.hs 64;" f crHit src/Dodge/WorldEvent/ThingsHit.hs 64;" f
crIXsNearCirc src/Dodge/Zoning/Creature.hs 32;" f crIXsNearCirc src/Dodge/Zoning/Creature.hs 32;" f
crIXsNearPoint src/Dodge/Zoning/Creature.hs 14;" f crIXsNearPoint src/Dodge/Zoning/Creature.hs 14;" f
crInAimStance src/Dodge/Creature/Test.hs 92;" f crInAimStance src/Dodge/Creature/Test.hs 93;" f
crIntelligence src/Dodge/Creature/Statistics.hs 34;" f crIntelligence src/Dodge/Creature/Statistics.hs 34;" f
crIsAiming src/Dodge/Creature/Test.hs 58;" f crIsAiming src/Dodge/Creature/Test.hs 59;" f
crIsArmouredFrom src/Dodge/Creature/Test.hs 113;" f crIsArmouredFrom src/Dodge/Creature/Test.hs 114;" f
crMass src/Dodge/Creature/Mass.hs 5;" f crMass src/Dodge/Creature/Mass.hs 5;" f
crMaterial src/Dodge/Creature/Material.hs 8;" f crMaterial src/Dodge/Creature/Material.hs 8;" f
crMaxHP src/Dodge/Creature/MaxHP.hs 6;" f crMaxHP src/Dodge/Creature/MaxHP.hs 6;" f
@@ -3745,15 +3744,15 @@ crMvAbsolute src/Dodge/Creature/Impulse/Movement.hs 27;" f
crMvBy src/Dodge/Creature/Impulse/Movement.hs 20;" f crMvBy src/Dodge/Creature/Impulse/Movement.hs 20;" f
crMvForward src/Dodge/Creature/Impulse/Movement.hs 41;" f crMvForward src/Dodge/Creature/Impulse/Movement.hs 41;" f
crMvType src/Dodge/Creature/MoveType.hs 6;" f crMvType src/Dodge/Creature/MoveType.hs 6;" f
crNearPoint src/Dodge/Creature/Test.hs 139;" f crNearPoint src/Dodge/Creature/Test.hs 140;" f
crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 23;" f crNumFreeSlots src/Dodge/Inventory/CheckSlots.hs 23;" f
crOnWall src/Dodge/WallCreatureCollisions.hs 86;" f crOnWall src/Dodge/WallCreatureCollisions.hs 86;" f
crRad src/Dodge/Creature/Radius.hs 7;" f crRad src/Dodge/Creature/Radius.hs 7;" f
crSafeDistFromTarg src/Dodge/Creature/Test.hs 71;" f crSafeDistFromTarg src/Dodge/Creature/Test.hs 72;" f
crSetRoots src/Dodge/Inventory/Location.hs 48;" f crSetRoots src/Dodge/Inventory/Location.hs 48;" f
crShape src/Dodge/Creature/Shape.hs 8;" f crShape src/Dodge/Creature/Shape.hs 8;" f
crSpring src/Dodge/Update.hs 809;" f crSpring src/Dodge/Update.hs 809;" f
crStratConMatches src/Dodge/Creature/Test.hs 76;" f crStratConMatches src/Dodge/Creature/Test.hs 77;" f
crStrength src/Dodge/Creature/Statistics.hs 24;" f crStrength src/Dodge/Creature/Statistics.hs 24;" f
crUpdate src/Dodge/Creature/State.hs 63;" f crUpdate src/Dodge/Creature/State.hs 63;" f
crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f crUpdateInvidLocations src/Dodge/Inventory/Location.hs 61;" f
@@ -4203,7 +4202,7 @@ drawSpark src/Dodge/Spark/Draw.hs 7;" f
drawStaticBall src/Dodge/EnergyBall/Draw.hs 27;" f drawStaticBall src/Dodge/EnergyBall/Draw.hs 27;" f
drawSubInventory src/Dodge/Render/HUD.hs 161;" f drawSubInventory src/Dodge/Render/HUD.hs 161;" f
drawSwitch src/Dodge/Button/Draw.hs 17;" f drawSwitch src/Dodge/Button/Draw.hs 17;" f
drawSwitchWire src/Dodge/LevelGen/Switch.hs 30;" f drawSwitchWire src/Dodge/LevelGen/Switch.hs 24;" f
drawTargetingAR src/Dodge/Targeting/Draw.hs 20;" f drawTargetingAR src/Dodge/Targeting/Draw.hs 20;" f
drawTerminalDisplay src/Dodge/Render/HUD.hs 364;" f drawTerminalDisplay src/Dodge/Render/HUD.hs 364;" f
drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f drawTeslaArc src/Dodge/Tesla/Arc/Draw.hs 7;" f
@@ -4529,7 +4528,7 @@ handleWindowMoveEvent src/Dodge/Event.hs 44;" f
hardQuit src/Dodge/Concurrent.hs 32;" f hardQuit src/Dodge/Concurrent.hs 32;" f
hasButtonLOS src/Dodge/Base/Collide.hs 211;" f hasButtonLOS src/Dodge/Base/Collide.hs 211;" f
hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f hasCaneGunDim src/Dodge/Item/InvSize.hs 48;" f
hasFrontArmour src/Dodge/Creature/Test.hs 116;" f hasFrontArmour src/Dodge/Creature/Test.hs 117;" f
hasLOS src/Dodge/Base/Collide.hs 204;" f hasLOS src/Dodge/Base/Collide.hs 204;" f
hasLOSIndirect src/Dodge/Base/Collide.hs 219;" f hasLOSIndirect src/Dodge/Base/Collide.hs 219;" f
hat src/Dodge/Item/Equipment.hs 76;" f hat src/Dodge/Item/Equipment.hs 76;" f
@@ -4543,7 +4542,7 @@ healS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 483;" f
healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 74;" f healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 74;" f
healthTest src/Dodge/Room/LasTurret.hs 95;" f healthTest src/Dodge/Room/LasTurret.hs 95;" f
heightWallPS src/Dodge/Placement/Instance/Wall.hs 13;" f heightWallPS src/Dodge/Placement/Instance/Wall.hs 13;" f
heldAimStance src/Dodge/Item/AimStance.hs 17;" f heldAimStance src/Dodge/Item/AimStance.hs 22;" f
heldAimZoom src/Dodge/Update/Camera.hs 140;" f heldAimZoom src/Dodge/Update/Camera.hs 140;" f
heldEffect src/Dodge/HeldUse.hs 63;" f heldEffect src/Dodge/HeldUse.hs 63;" f
heldEffectMuzzles src/Dodge/HeldUse.hs 145;" f heldEffectMuzzles src/Dodge/HeldUse.hs 145;" f
@@ -4678,7 +4677,7 @@ invertInventoryToMap src/Dodge/Combine.hs 57;" f
invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 21;" f invisibleChaseCrit src/Dodge/Creature/ChaseCrit.hs 21;" f
invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f invisibleWall src/Dodge/Placement/Instance/Wall.hs 16;" f
isAmmoIntLink src/Dodge/HeldUse.hs 765;" f isAmmoIntLink src/Dodge/HeldUse.hs 765;" f
isAnimate src/Dodge/Creature/Test.hs 142;" f isAnimate src/Dodge/Creature/Test.hs 143;" f
isCognizant src/Dodge/Creature/Perception.hs 106;" f isCognizant src/Dodge/Creature/Perception.hs 106;" f
isConnected src/Dodge/Inventory/Swap.hs 74;" f isConnected src/Dodge/Inventory/Swap.hs 74;" f
isElectrical src/Dodge/Machine/Update.hs 80;" f isElectrical src/Dodge/Machine/Update.hs 80;" f
@@ -4710,6 +4709,7 @@ itUseCondition src/Dodge/ItemUseCondition.hs 6;" f
itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 12;" f itemAmmoSlots src/Dodge/Item/AmmoSlots.hs 12;" f
itemBaseConnections src/Dodge/Item/Grammar.hs 196;" f itemBaseConnections src/Dodge/Item/Grammar.hs 196;" f
itemBaseName src/Dodge/Item/Display.hs 59;" f itemBaseName src/Dodge/Item/Display.hs 59;" f
itemBaseStance src/Dodge/Item/AimStance.hs 17;" f
itemBlips src/Dodge/RadarSweep.hs 93;" f itemBlips src/Dodge/RadarSweep.hs 93;" f
itemBulkiness src/Dodge/Creature/YourControl.hs 172;" f itemBulkiness src/Dodge/Creature/YourControl.hs 172;" f
itemCombinations src/Dodge/Combine/Combinations.hs 56;" f itemCombinations src/Dodge/Combine/Combinations.hs 56;" f
@@ -4898,7 +4898,7 @@ makeBlockDebris src/Dodge/Block/Debris.hs 28;" f
makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f makeBoolOption src/Dodge/Menu/OptionType.hs 8;" f
makeBullet src/Dodge/HeldUse.hs 1049;" f makeBullet src/Dodge/HeldUse.hs 1049;" f
makeBullet' src/Dodge/HeldUse.hs 991;" f makeBullet' src/Dodge/HeldUse.hs 991;" f
makeButton src/Dodge/LevelGen/Switch.hs 17;" f makeButton src/Dodge/LevelGen/Switch.hs 16;" f
makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f makeByteStringShaderUsingVAO src/Shader/Compile.hs 128;" f
makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f makeCloudAt src/Dodge/WorldEvent/Cloud.hs 7;" f
makeColorTermLine src/Dodge/Terminal.hs 129;" f makeColorTermLine src/Dodge/Terminal.hs 129;" f
@@ -4940,8 +4940,7 @@ makeShrapnelAt src/Dodge/Payload.hs 24;" f
makeSourcedShader src/Shader/Compile.hs 167;" f makeSourcedShader src/Shader/Compile.hs 167;" f
makeSpark src/Dodge/Spark.hs 45;" f makeSpark src/Dodge/Spark.hs 45;" f
makeSubmenuOption src/Dodge/Menu/OptionType.hs 19;" f makeSubmenuOption src/Dodge/Menu/OptionType.hs 19;" f
makeSwitch src/Dodge/LevelGen/Switch.hs 55;" f makeSwitch src/Dodge/LevelGen/Switch.hs 38;" f
makeSwitchSPic src/Dodge/LevelGen/Switch.hs 44;" f
makeTermLine src/Dodge/Terminal.hs 120;" f makeTermLine src/Dodge/Terminal.hs 120;" f
makeTermPara src/Dodge/Terminal.hs 123;" f makeTermPara src/Dodge/Terminal.hs 123;" f
makeTeslaArc src/Dodge/Tesla.hs 29;" f makeTeslaArc src/Dodge/Tesla.hs 29;" f
@@ -5137,7 +5136,7 @@ oldMachineBootS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 683;" f
onEquipWristShield src/Dodge/Equipment.hs 37;" f onEquipWristShield src/Dodge/Equipment.hs 37;" f
onRemoveWristShield src/Dodge/Equipment.hs 24;" f onRemoveWristShield src/Dodge/Equipment.hs 24;" f
onXY src/Geometry/Vector3D.hs 130;" f onXY src/Geometry/Vector3D.hs 130;" f
oneH src/Dodge/Creature/Test.hs 101;" f oneH src/Dodge/Creature/Test.hs 102;" f
openConsole src/Dodge/Update.hs 131;" f openConsole src/Dodge/Update.hs 131;" f
optionMenu src/Dodge/Menu.hs 108;" f optionMenu src/Dodge/Menu.hs 108;" f
optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 52;" f optionScreenDefaultEffect src/Dodge/Update/Input/ScreenLayer.hs 52;" f
@@ -6165,8 +6164,8 @@ turretItemOffset src/Dodge/Item/HeldOffset.hs 19;" f
tweenAngles src/Geometry/Vector.hs 195;" f tweenAngles src/Geometry/Vector.hs 195;" f
twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 80;" f twinSlowDoorChasers src/Dodge/Room/LongDoor.hs 80;" f
twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 28;" f twinSlowDoorRoom src/Dodge/Room/LongDoor.hs 28;" f
twists src/Dodge/Creature/Test.hs 107;" f twists src/Dodge/Creature/Test.hs 108;" f
twoFlat src/Dodge/Creature/Test.hs 104;" f twoFlat src/Dodge/Creature/Test.hs 105;" f
twoFlatHRot src/Dodge/Item/HeldOffset.hs 87;" f twoFlatHRot src/Dodge/Item/HeldOffset.hs 87;" f
twoHandTwistAmount src/Dodge/Creature/YourControl.hs 150;" f twoHandTwistAmount src/Dodge/Creature/YourControl.hs 150;" f
twoRoomPoss src/Dodge/PlacementSpot.hs 147;" f twoRoomPoss src/Dodge/PlacementSpot.hs 147;" f