This commit is contained in:
2024-12-19 01:36:32 +00:00
parent b0f0f5577c
commit 8c04a3f968
2 changed files with 52 additions and 52 deletions
+7 -9
View File
@@ -3,9 +3,7 @@ module Dodge.Creature.Statistics (
getCrDexterity,
) where
import Data.IntMap.Merge.Strict
import Data.Maybe
--import Dodge.Creature.Test
import Dodge.Data.Creature
import qualified IntMapHelp as IM
import LensHelp
@@ -26,13 +24,13 @@ equipmentStrValue itm = case _itType itm of
_ -> 0
crCurrentEquipment :: Creature -> IM.IntMap Item
crCurrentEquipment cr =
merge
dropMissing
dropMissing
(zipWithMatched (\_ _ itm -> itm))
(_crInvEquipped cr)
(_crInv cr)
crCurrentEquipment = IM.filter (isJust . (^? itLocation . ilEquipPosition)) . _crInv
-- merge
-- dropMissing
-- dropMissing
-- (zipWithMatched (\_ _ itm -> itm))
-- (_crInvEquipped cr)
-- (_crInv cr)
strFromHeldItem :: Creature -> Int
strFromHeldItem cr
+45 -43
View File
@@ -386,7 +386,7 @@ CrGroupUpdate src/Dodge/CrGroupUpdate.hs 1;" m
CrHitSound src/Dodge/Data/SoundOrigin.hs 31;" C
CrID src/Dodge/Data/CrWlID.hs 12;" C
CrImp src/Dodge/Data/CreatureEffect.hs 23;" t
CrInt src/Dodge/Data/Item/Location.hs 22;" t
CrInt src/Dodge/Data/Item/Location.hs 23;" t
CrIsAiming src/Dodge/Data/CreatureEffect.hs 41;" C
CrIsAnimate src/Dodge/Data/CreatureEffect.hs 42;" C
CrMouth src/Dodge/Data/SoundOrigin.hs 18;" C
@@ -721,7 +721,7 @@ FlockArmourChaseAI src/Dodge/Data/Creature/Misc.hs 57;" C
Floor src/Data/Tile.hs 10;" t
Floor src/Dodge/Floor.hs 2;" m
Floor src/Shader/Poke/Floor.hs 1;" m
FloorInt src/Dodge/Data/Item/Location.hs 15;" t
FloorInt src/Dodge/Data/Item/Location.hs 16;" t
FloorItem src/Dodge/Data/FloorItem.hs 16;" t
FloorItem src/Dodge/Data/FloorItem.hs 6;" m
FloorItem src/Dodge/FloorItem.hs 1;" m
@@ -877,13 +877,13 @@ ImpulsesList src/Dodge/Data/ActionPlan.hs 97;" C
InDivineZone src/Dodge/Data/Scenario.hs 22;" C
InDream src/Dodge/Data/Scenario.hs 19;" C
InGame src/Dodge/Update/Input/InGame.hs 2;" m
InInv src/Dodge/Data/Item/Location.hs 28;" C
InInv src/Dodge/Data/Item/Location.hs 29;" C
InLink src/Dodge/Data/Room.hs 44;" C
InParallelUniverse src/Dodge/Data/Scenario.hs 21;" C
InPlacement src/Dodge/Data/GenWorld.hs 131;" t
InRealWorld src/Dodge/Data/Scenario.hs 18;" C
InSimulation src/Dodge/Data/Scenario.hs 20;" C
InVoid src/Dodge/Data/Item/Location.hs 37;" C
InVoid src/Dodge/Data/Item/Location.hs 39;" C
Inanimate src/Dodge/Data/ActionPlan.hs 17;" C
Inanimate src/Dodge/Creature/Inanimate.hs 5;" m
InanimateAI src/Dodge/Data/Creature/Misc.hs 50;" C
@@ -914,7 +914,7 @@ Intention src/Dodge/Data/Creature.hs 95;" t
Intention src/Dodge/Creature/Intention.hs 1;" m
Intersect src/Geometry/Intersect.hs 5;" m
IntersectingRoomClipBoundaries src/Dodge/Data/Config.hs 105;" C
InvInt src/Dodge/Data/Item/Location.hs 18;" t
InvInt src/Dodge/Data/Item/Location.hs 19;" t
InvSize src/Dodge/Item/InvSize.hs 2;" m
Inventory src/Dodge/Inventory.hs 2;" m
InventoryChange src/Dodge/Data/World.hs 33;" C
@@ -943,7 +943,7 @@ Item src/Dodge/Item.hs 3;" m
ItemClust src/Dodge/Combine/Graph.hs 20;" C
ItemDimension src/Dodge/Data/Item/Misc.hs 13;" t
ItemLink src/Dodge/Data/ComposedItem.hs 49;" t
ItemLocation src/Dodge/Data/Item/Location.hs 27;" t
ItemLocation src/Dodge/Data/Item/Location.hs 28;" t
ItemParams src/Dodge/Data/Item/Params.hs 13;" t
ItemParams src/Dodge/Tesla/ItemParams.hs 1;" m
ItemScrollTimeFlow src/Dodge/Data/World.hs 62;" C
@@ -951,7 +951,7 @@ ItemStructuralFunction src/Dodge/Data/ComposedItem.hs 29;" t
ItemTargeting src/Dodge/Data/Item.hs 53;" t
ItemType src/Dodge/Data/Item/Combine.hs 15;" t
ItemUse src/Dodge/Data/Item/Use.hs 35;" t
ItmInt src/Dodge/Data/Item/Location.hs 24;" t
ItmInt src/Dodge/Data/Item/Location.hs 25;" t
JGK src/Control/Foldl/JGK.hs 1;" m
JUMPLEGS src/Dodge/Data/Item/Combine.hs 111;" C
JoinClust src/Dodge/Combine/Graph.hs 21;" C
@@ -1325,13 +1325,13 @@ ObjectType src/Dodge/Data/ObjectType.hs 6;" m
OnBack src/Dodge/Data/Equipment/Misc.hs 23;" C
OnChest src/Dodge/Data/Equipment/Misc.hs 22;" C
OnEdge src/Dodge/Data/Room.hs 46;" C
OnFloor src/Dodge/Data/Item/Location.hs 36;" C
OnFloor src/Dodge/Data/Item/Location.hs 38;" C
OnHead src/Dodge/Data/Equipment/Misc.hs 21;" C
OnLeftWrist src/Dodge/Data/Equipment/Misc.hs 24;" C
OnLegs src/Dodge/Data/Equipment/Misc.hs 26;" C
OnRightWrist src/Dodge/Data/Equipment/Misc.hs 25;" C
OnSpecial src/Dodge/Data/Equipment/Misc.hs 27;" C
OnTurret src/Dodge/Data/Item/Location.hs 35;" C
OnTurret src/Dodge/Data/Item/Location.hs 37;" C
OnceSound src/Dodge/Data/SoundOrigin.hs 16;" C
OneArgument src/Dodge/Data/Terminal.hs 96;" C
OneHand src/Dodge/Data/Item/Use.hs 175;" C
@@ -1980,7 +1980,7 @@ TurnToward src/Dodge/Data/ActionPlan.hs 33;" C
TurnTowardCr src/Dodge/Data/CreatureEffect.hs 25;" C
Turret src/Dodge/Data/Machine.hs 57;" t
Turret src/Dodge/Placement/Instance/Turret.hs 1;" m
TurretInt src/Dodge/Data/Item/Location.hs 20;" t
TurretInt src/Dodge/Data/Item/Location.hs 21;" t
TwistGoal src/Dodge/Data/Scenario.hs 15;" C
TwoHandFlat src/Dodge/Data/Item/Use.hs 174;" C
TwoHandOver src/Dodge/Data/Item/Use.hs 173;" C
@@ -2597,13 +2597,14 @@ _ibtTargeting src/Dodge/Data/Item/Combine.hs 23;" f
_ieInv src/Dodge/Data/Item/Effect.hs 13;" f
_ieOnDrop src/Dodge/Data/Item/Effect.hs 15;" f
_ieOnInsert src/Dodge/Data/Item/Effect.hs 14;" f
_ilCrID src/Dodge/Data/Item/Location.hs 29;" f
_ilFlID src/Dodge/Data/Item/Location.hs 36;" f
_ilInvID src/Dodge/Data/Item/Location.hs 30;" f
_ilIsAttached src/Dodge/Data/Item/Location.hs 33;" f
_ilIsRoot src/Dodge/Data/Item/Location.hs 31;" f
_ilIsSelected src/Dodge/Data/Item/Location.hs 32;" f
_ilTuID src/Dodge/Data/Item/Location.hs 35;" f
_ilCrID src/Dodge/Data/Item/Location.hs 30;" f
_ilEquipPosition src/Dodge/Data/Item/Location.hs 35;" f
_ilFlID src/Dodge/Data/Item/Location.hs 38;" f
_ilInvID src/Dodge/Data/Item/Location.hs 31;" f
_ilIsAttached src/Dodge/Data/Item/Location.hs 34;" f
_ilIsRoot src/Dodge/Data/Item/Location.hs 32;" f
_ilIsSelected src/Dodge/Data/Item/Location.hs 33;" f
_ilTuID src/Dodge/Data/Item/Location.hs 37;" f
_imAttachedItems src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 25;" f
_imRootSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 24;" f
_imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" f
@@ -3611,7 +3612,7 @@ click1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 428;" f
clickDetector src/Dodge/Item/Held/Utility.hs 35;" f
clickGetCreature src/Dodge/Debug.hs 83;" f
clipV src/Geometry/Vector.hs 47;" f
clipZoom src/Dodge/Update/Camera.hs 215;" f
clipZoom src/Dodge/Update/Camera.hs 221;" f
clockCycle src/Dodge/Clock.hs 9;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 69;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 54;" f
@@ -3728,7 +3729,7 @@ createFlIt src/Dodge/Placement/PlaceSpot.hs 180;" f
createForceField src/Dodge/ForceField.hs 7;" f
createGas src/Dodge/Gas.hs 8;" f
createHeadLamp src/Dodge/Euse.hs 153;" f
createItemYou src/Dodge/Inventory/Add.hs 94;" f
createItemYou src/Dodge/Inventory/Add.hs 95;" f
createLightMap src/Render.hs 26;" f
createNewArc src/Dodge/Tesla/Arc.hs 76;" f
createPathGrid src/Dodge/Room/Path.hs 21;" f
@@ -4019,7 +4020,7 @@ doRoomInPlacements src/Dodge/Layout.hs 97;" f
doRoomOutPlacements src/Dodge/Layout.hs 107;" f
doRoomPlacements src/Dodge/Layout.hs 122;" f
doRoomShift src/Dodge/Room/Link.hs 33;" f
doScopeZoom src/Dodge/Update/Camera.hs 141;" f
doScopeZoom src/Dodge/Update/Camera.hs 147;" f
doSectionSize src/Dodge/DisplayInventory.hs 247;" f
doSideEffects appDodge/Main.hs 118;" f
doStep src/Dodge/ArcStep.hs 9;" f
@@ -4033,7 +4034,7 @@ doThrust src/Dodge/Projectile/Update.hs 74;" f
doTimeScroll src/Dodge/Update.hs 204;" f
doTmTm src/Dodge/TmTm.hs 6;" f
doTmWdWd src/Dodge/WorldEffect.hs 101;" f
doWallRotate src/Dodge/Update/Camera.hs 188;" f
doWallRotate src/Dodge/Update/Camera.hs 194;" f
doWdBl src/Dodge/WorldBool.hs 10;" f
doWdCrBl src/Dodge/CreatureEffect.hs 37;" f
doWdCrCr src/Dodge/CreatureEffect.hs 12;" f
@@ -4206,7 +4207,7 @@ endCombineRegex src/Dodge/Update/Input/InGame.hs 245;" f
endRegex src/Dodge/Update/Input/InGame.hs 234;" f
enterCombineInv src/Dodge/DisplayInventory.hs 353;" f
eqConstr src/SameConstr.hs 17;" f
eqPosText src/Dodge/Equipment/Text.hs 6;" f
eqPosText src/Dodge/Equipment/Text.hs 5;" f
equipAllocString src/Dodge/Render/HUD.hs 295;" f
equipInfo src/Dodge/Item/Info.hs 104;" f
equipItemSPic src/Dodge/Item/Draw/SPic.hs 66;" f
@@ -4247,14 +4248,14 @@ fadeTLS src/Dodge/LightSource/Update.hs 14;" f
fallSmallBounce src/Dodge/Prop/Moving.hs 28;" f
fallSmallBounce' src/Dodge/Prop/Moving.hs 33;" f
fallSmallBounceDamage src/Dodge/Prop/Moving.hs 11;" f
farWallDistDirection src/Dodge/Update/Camera.hs 226;" f
farWallDistDirection src/Dodge/Update/Camera.hs 232;" f
fdiv src/ShortShow.hs 27;" f
feet src/Dodge/Creature/Picture.hs 50;" f
ffoldM src/Framebuffer/Update.hs 79;" f
filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 192;" f
findBlips src/Dodge/RadarSweep.hs 44;" f
findBoundDists src/Dodge/Update/Camera.hs 235;" f
findBoundDists src/Dodge/Update/Camera.hs 241;" f
findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f
findClosePoint src/Dodge/LevelGen/StaticWalls/Deprecated.hs 74;" f
findIndex src/IntMapHelp.hs 85;" f
@@ -4494,7 +4495,7 @@ hvBulletAmmo src/Dodge/Item/Weapon/Bullet.hs 30;" f
iShape src/Dodge/Placement/Instance/LightSource.hs 73;" f
icosahedronPoints src/Polyhedra/Geodesic.hs 12;" f
icosohedronFaces src/Polyhedra/Geodesic.hs 19;" f
ifConfigWallRotate src/Dodge/Update/Camera.hs 171;" f
ifConfigWallRotate src/Dodge/Update/Camera.hs 177;" f
ildtPropagate src/Dodge/DoubleTree.hs 57;" f
impulsiveAIBefore src/Dodge/Creature/Impulse.hs 22;" f
inLink src/Dodge/RoomLink.hs 113;" f
@@ -4506,7 +4507,7 @@ indefiniteExceptions src/StringHelp.hs 29;" f
initCrItemLocation src/Dodge/Item/Location/Initialize.hs 41;" f
initCrItemLocations src/Dodge/Item/Location/Initialize.hs 35;" f
initCrsItemLocations src/Dodge/Item/Location/Initialize.hs 15;" f
initFlItemLocation src/Dodge/Item/Location/Initialize.hs 56;" f
initFlItemLocation src/Dodge/Item/Location/Initialize.hs 57;" f
initFlItemsLocations src/Dodge/Item/Location/Initialize.hs 20;" f
initItemLocations src/Dodge/Item/Location/Initialize.hs 12;" f
initOrNull src/ListHelp.hs 43;" f
@@ -4514,7 +4515,7 @@ initSpecificCrItemLocations src/Dodge/Item/Location/Initialize.hs 30;" f
initTexture2DArray src/Shader/AuxAddition.hs 31;" f
initTexture2DArrayData src/Shader/AuxAddition.hs 46;" f
initTexture2DArraySquare src/Shader/AuxAddition.hs 16;" f
initTuItemLocation src/Dodge/Item/Location/Initialize.hs 65;" f
initTuItemLocation src/Dodge/Item/Location/Initialize.hs 66;" f
initTusItemLocations src/Dodge/Item/Location/Initialize.hs 25;" f
initWallZoning src/Dodge/Wall/Zone.hs 12;" f
initialAnoTree src/Dodge/Floor.hs 29;" f
@@ -5108,8 +5109,8 @@ pesNearSeg src/Dodge/Zoning/Pathing.hs 37;" f
picAtCrPos1 src/Dodge/Render/ShapePicture.hs 63;" f
picFormat src/Polyhedra.hs 23;" f
picMap src/Picture/Base.hs 67;" f
pickUpItem src/Dodge/Inventory/Add.hs 106;" f
pickUpItemAt src/Dodge/Inventory/Add.hs 112;" f
pickUpItem src/Dodge/Inventory/Add.hs 107;" f
pickUpItemAt src/Dodge/Inventory/Add.hs 113;" f
pickUpS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 458;" f
pincerP src/Dodge/Creature/Boid.hs 60;" f
pincerP' src/Dodge/Creature/Boid.hs 93;" f
@@ -5461,15 +5462,15 @@ rotate3 src/Geometry/Vector3D.hs 48;" f
rotate3x src/Geometry/Vector3D.hs 60;" f
rotate3y src/Geometry/Vector3D.hs 66;" f
rotate3z src/Geometry/Vector3D.hs 54;" f
rotateCamera src/Dodge/Update/Camera.hs 202;" f
rotateCameraBy src/Dodge/Update/Camera.hs 199;" f
rotateCamera src/Dodge/Update/Camera.hs 208;" f
rotateCameraBy src/Dodge/Update/Camera.hs 205;" f
rotateProp src/Dodge/Prop/Update.hs 49;" f
rotateSH src/Shape.hs 255;" f
rotateSHq src/Shape.hs 164;" f
rotateSHx src/Shape.hs 263;" f
rotateSP src/ShapePicture.hs 57;" f
rotateTo src/Polyhedra/Geodesic.hs 64;" f
rotateToOverlappingWall src/Dodge/Update/Camera.hs 177;" f
rotateToOverlappingWall src/Dodge/Update/Camera.hs 183;" f
rotateToZ src/Quaternion.hs 34;" f
rotateV src/Geometry/Vector.hs 105;" f
rotateVAround src/Geometry/Vector.hs 112;" f
@@ -5577,7 +5578,7 @@ setHotkey src/Dodge/Hotkey.hs 38;" f
setInLinks src/Dodge/RoomLink.hs 51;" f
setInLinksByType src/Dodge/RoomLink.hs 54;" f
setInLinksPD src/Dodge/RoomLink.hs 74;" f
setInvPosFromSS src/Dodge/Inventory/Location.hs 80;" f
setInvPosFromSS src/Dodge/Inventory/Location.hs 81;" f
setItemCharge src/Dodge/ItEffect.hs 39;" f
setLayer src/Picture/Base.hs 139;" f
setLinkType src/Dodge/RoomLink.hs 60;" f
@@ -5599,7 +5600,7 @@ setTargetMv src/Dodge/Creature/ReaderUpdate.hs 74;" f
setTile src/Dodge/Layout.hs 68;" f
setTiles src/Dodge/Layout.hs 65;" f
setToggle src/Dodge/Prop/Update.hs 46;" f
setViewDistance src/Dodge/Update/Camera.hs 221;" f
setViewDistance src/Dodge/Update/Camera.hs 227;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 61;" f
setViewport src/Dodge/Render.hs 388;" f
setVol src/Dodge/Config/Update.hs 30;" f
@@ -6063,7 +6064,7 @@ updateAutoRecharge src/Dodge/Creature/State.hs 432;" f
updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 455;" f
updateBarrel src/Dodge/Barreloid.hs 45;" f
updateBarreloid src/Dodge/Barreloid.hs 13;" f
updateBounds src/Dodge/Update/Camera.hs 245;" f
updateBounds src/Dodge/Update/Camera.hs 251;" f
updateBulVel src/Dodge/Bullet.hs 40;" f
updateBullet src/Dodge/Bullet.hs 23;" f
updateBullets src/Dodge/Update.hs 536;" f
@@ -6139,8 +6140,8 @@ updateRadarSweeps src/Dodge/Update.hs 556;" f
updateRandNode src/TreeHelp.hs 108;" f
updateRenderSplit appDodge/Main.hs 106;" f
updateRootItemID src/Dodge/Inventory/Location.hs 35;" f
updateScopeZoom src/Dodge/Update/Camera.hs 127;" f
updateScopeZoom' src/Dodge/Update/Camera.hs 132;" f
updateScopeZoom src/Dodge/Update/Camera.hs 133;" f
updateScopeZoom' src/Dodge/Update/Camera.hs 138;" f
updateScrollTestValue src/Dodge/ScrollValue.hs 6;" f
updateSection src/Dodge/DisplayInventory.hs 300;" f
updateSectionsPositioning src/Dodge/DisplayInventory.hs 273;" f
@@ -6197,8 +6198,8 @@ useE src/Dodge/Euse.hs 20;" f
useEquipment src/Dodge/Creature/State.hs 149;" f
useGasParams src/Dodge/HeldUse.hs 442;" f
useHotKey src/Dodge/Creature/YourControl.hs 47;" f
useItemHotkey src/Dodge/Creature/Impulse/UseItem.hs 116;" f
useItemLeftClick src/Dodge/Creature/Impulse/UseItem.hs 92;" f
useItemHotkey src/Dodge/Creature/Impulse/UseItem.hs 123;" f
useItemLeftClick src/Dodge/Creature/Impulse/UseItem.hs 99;" f
useL src/Dodge/Luse.hs 11;" f
useLnkRoomPos src/Dodge/PlacementSpot.hs 244;" f
useLoadedAmmo src/Dodge/HeldUse.hs 231;" f
@@ -6237,6 +6238,7 @@ verticalPipe src/Dodge/Placement/Instance/Pipe.hs 6;" f
verticalWire src/Dodge/Wire.hs 24;" f
viewBoundaries src/Dodge/Debug/Picture.hs 274;" f
viewClipBounds src/Dodge/Debug/Picture.hs 283;" f
viewDistanceFromItems src/Dodge/Update/Camera.hs 128;" f
viewTarget src/Dodge/Creature/ReaderUpdate.hs 144;" f
violet src/Color.hs 21;" f
visibleWalls src/Dodge/Base/Collide.hs 123;" f
@@ -6359,8 +6361,8 @@ zoneWall src/Dodge/Zoning/Wall.hs 65;" f
zonesAroundPoint src/Dodge/Zoning/Base.hs 89;" f
zonesExtract src/Dodge/Zoning/Base.hs 54;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 64;" f
zoomFromItem src/Dodge/Update/Camera.hs 211;" f
zoomInLongGun src/Dodge/Update/Camera.hs 155;" f
zoomOutLongGun src/Dodge/Update/Camera.hs 163;" f
zoomFromItem src/Dodge/Update/Camera.hs 217;" f
zoomInLongGun src/Dodge/Update/Camera.hs 161;" f
zoomOutLongGun src/Dodge/Update/Camera.hs 169;" f
zoomScope src/Dodge/Item/Scope.hs 17;" f
zoomSpeed src/Dodge/Update/Camera.hs 152;" f
zoomSpeed src/Dodge/Update/Camera.hs 158;" f