This commit is contained in:
2025-11-22 11:53:18 +00:00
parent 4e6876c983
commit 229350120a
2 changed files with 30 additions and 29 deletions
+6 -6
View File
@@ -86,11 +86,11 @@ checkDeath' cr w = case cr ^. crHP of
-- could look at the amount of damage here (given by maxDamage) too -- could look at the amount of damage here (given by maxDamage) too
corpseOrGib :: Creature -> World -> World corpseOrGib :: Creature -> World -> World
corpseOrGib cr w = w & case cr ^? crDamage . to maxDamageType . _Just . _1 of corpseOrGib cr = case cr ^? crDamage . to maxDamageType . _Just . _1 of
Just CookingDamage -> sethp (CrIsCorpse $ scorchSPic thecorpse) Just CookingDamage -> sethp (CrIsCorpse $ scorchSPic thecorpse)
Just PoisonDamage -> sethp (CrIsCorpse $ poisonSPic thecorpse) Just PoisonDamage -> sethp (CrIsCorpse $ poisonSPic thecorpse)
Just PhysicalDamage | _crPain cr > 200 -> addCrGibs cr Just PhysicalDamage | _crPain cr > 200
. sethp CrIsGibs -> addCrGibs cr . sethp CrIsGibs
_ -> sethp (CrIsCorpse thecorpse) _ -> sethp (CrIsCorpse thecorpse)
where where
sethp x = cWorld . lWorld . creatures . ix (_crID cr) . crHP .~ x sethp x = cWorld . lWorld . creatures . ix (_crID cr) . crHP .~ x
@@ -121,6 +121,6 @@ chasmTest cr w
f = circInPolygon (cr ^. crPos . _xy) (crRad $ cr ^. crType) f = circInPolygon (cr ^. crPos . _xy) (crRad $ cr ^. crType)
updatePulse :: Pulse -> Pulse updatePulse :: Pulse -> Pulse
updatePulse PulseStatus{_pulseRate = pr, _pulseProgress = pp} updatePulse p
| pp >= pr = PulseStatus pr 0 | p ^. pulseProgress >= p ^. pulseRate = p & pulseProgress .~ 0
| otherwise = PulseStatus pr (pp + 1) | otherwise = p & pulseProgress +~ 1
+24 -23
View File
@@ -140,7 +140,7 @@ Bound_box_screen src/Dodge/Data/Config.hs 93;" C
BoundaryCursor src/Dodge/Data/SelectionList.hs 20;" C BoundaryCursor src/Dodge/Data/SelectionList.hs 20;" C
Bounds src/Dodge/Data/Bounds.hs 10;" t Bounds src/Dodge/Data/Bounds.hs 10;" t
BrigSS src/Dodge/Data/Scenario.hs 102;" C BrigSS src/Dodge/Data/Scenario.hs 102;" C
Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 17;" C Brute src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 16;" C
BulBall src/Dodge/Data/Bullet.hs 33;" C BulBall src/Dodge/Data/Bullet.hs 33;" C
BulFlak src/Dodge/Data/Bullet.hs 35;" C BulFlak src/Dodge/Data/Bullet.hs 35;" C
BulFrag src/Dodge/Data/Bullet.hs 36;" C BulFrag src/Dodge/Data/Bullet.hs 36;" C
@@ -716,7 +716,7 @@ MakeSound src/Dodge/Data/ActionPlan.hs 42;" C
MakeStartCloudAt src/Dodge/Data/WorldEffect.hs 28;" C MakeStartCloudAt src/Dodge/Data/WorldEffect.hs 28;" C
MakeTempLight src/Dodge/Data/WorldEffect.hs 32;" C MakeTempLight src/Dodge/Data/WorldEffect.hs 32;" C
MakeTempLightFade src/Dodge/Data/WorldEffect.hs 33;" C MakeTempLightFade src/Dodge/Data/WorldEffect.hs 33;" C
ManipulatedObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 20;" t ManipulatedObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 19;" t
Manipulation src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 14;" t Manipulation src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 14;" t
Manipulator src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" C Manipulator src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" C
MapperInventory src/Dodge/Data/HUD.hs 17;" C MapperInventory src/Dodge/Data/HUD.hs 17;" C
@@ -1140,12 +1140,12 @@ SectionCursor src/Dodge/Data/SelectionList.hs 23;" t
SeeAbove src/Dodge/Data/Wall.hs 32;" C SeeAbove src/Dodge/Data/Wall.hs 32;" C
SeeThrough src/Dodge/Data/Wall.hs 31;" C SeeThrough src/Dodge/Data/Wall.hs 31;" C
Sel src/Dodge/Data/HUD.hs 39;" C Sel src/Dodge/Data/HUD.hs 39;" C
SelCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 31;" C SelCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" C
SelCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" C SelCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" C
SelItem src/Dodge/Data/SelectionList.hs 42;" C SelItem src/Dodge/Data/SelectionList.hs 42;" C
SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 27;" C SelNothing src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 26;" C
SelSection src/Dodge/Data/SelectionList.hs 29;" t SelSection src/Dodge/Data/SelectionList.hs 29;" t
SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 22;" C SelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 21;" C
Selection src/Dodge/Data/HUD.hs 39;" t Selection src/Dodge/Data/HUD.hs 39;" t
SelectionItem src/Dodge/Data/SelectionList.hs 41;" t SelectionItem src/Dodge/Data/SelectionList.hs 41;" t
SelectionWidth src/Dodge/Data/SelectionList.hs 39;" t SelectionWidth src/Dodge/Data/SelectionList.hs 39;" t
@@ -1202,9 +1202,9 @@ Smoke src/Dodge/Data/Cloud.hs 21;" C
SmokeReducerSF src/Dodge/Data/ComposedItem.hs 28;" C SmokeReducerSF src/Dodge/Data/ComposedItem.hs 28;" C
SocialUpheaval src/Dodge/Data/Scenario.hs 27;" C SocialUpheaval src/Dodge/Data/Scenario.hs 27;" C
SolarGovernment src/Dodge/Data/Scenario.hs 53;" C SolarGovernment src/Dodge/Data/Scenario.hs 53;" C
SortCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" C SortCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" C
SortCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" C SortCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 27;" C
SortInventory src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 21;" C SortInventory src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 20;" C
Sound src/Sound/Data.hs 43;" t Sound src/Sound/Data.hs 43;" t
SoundID src/Sound/Data.hs 30;" t SoundID src/Sound/Data.hs 30;" t
SoundOrigin src/Dodge/Data/SoundOrigin.hs 10;" t SoundOrigin src/Dodge/Data/SoundOrigin.hs 10;" t
@@ -1854,10 +1854,10 @@ _ilIsAttached src/Dodge/Data/Item/Location.hs 34;" f
_ilIsRoot src/Dodge/Data/Item/Location.hs 32;" f _ilIsRoot src/Dodge/Data/Item/Location.hs 32;" f
_ilIsSelected src/Dodge/Data/Item/Location.hs 33;" f _ilIsSelected src/Dodge/Data/Item/Location.hs 33;" f
_ilTuID src/Dodge/Data/Item/Location.hs 37;" f _ilTuID src/Dodge/Data/Item/Location.hs 37;" f
_imAttachedItems src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 25;" f _imAttachedItems src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 24;" f
_imHotkeys src/Dodge/Data/LWorld.hs 142;" f _imHotkeys src/Dodge/Data/LWorld.hs 142;" f
_imRootSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 24;" f _imRootSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" f
_imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 23;" f _imSelectedItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 22;" f
_immediateEffect src/Loop/Data.hs 9;" f _immediateEffect src/Loop/Data.hs 9;" f
_immediateUpdate src/Loop/Data.hs 12;" f _immediateUpdate src/Loop/Data.hs 12;" f
_impulseUseTarget src/Dodge/Data/ActionPlan.hs 45;" f _impulseUseTarget src/Dodge/Data/ActionPlan.hs 45;" f
@@ -1869,8 +1869,8 @@ _incNode src/Dodge/Data/CWorld.hs 30;" f
_incNodeZoning src/Dodge/Data/World.hs 52;" f _incNodeZoning src/Dodge/Data/World.hs 52;" f
_input src/Dodge/Data/World.hs 41;" f _input src/Dodge/Data/World.hs 41;" f
_isWarming src/Dodge/Data/Item/Params.hs 21;" f _isWarming src/Dodge/Data/Item/Params.hs 21;" f
_ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 31;" f _ispCloseButton src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 30;" f
_ispCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 29;" f _ispCloseItem src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 28;" f
_itConsumables src/Dodge/Data/Item.hs 28;" f _itConsumables src/Dodge/Data/Item.hs 28;" f
_itID src/Dodge/Data/Item.hs 30;" f _itID src/Dodge/Data/Item.hs 30;" f
_itLocation src/Dodge/Data/Item.hs 31;" f _itLocation src/Dodge/Data/Item.hs 31;" f
@@ -2754,7 +2754,7 @@ chaseCritMv src/Dodge/Creature/ReaderUpdate.hs 121;" f
chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f chaseCritPerceptionUpdate src/Dodge/Creature/Perception.hs 32;" f
chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f chaseCritVocalization src/Dodge/Creature/ChaseCrit.hs 36;" f
chasmSimpleMaze src/Dodge/Room/Tutorial.hs 183;" f chasmSimpleMaze src/Dodge/Room/Tutorial.hs 183;" f
chasmTest src/Dodge/Creature/Update.hs 132;" f chasmTest src/Dodge/Creature/Update.hs 109;" f
chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f chasmWallToSurface src/Dodge/Base/Collide.hs 118;" f
checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f checkCombineSelectionExists src/Dodge/DisplayInventory.hs 100;" f
checkConnection src/Dodge/Inventory/Swap.hs 66;" f checkConnection src/Dodge/Inventory/Swap.hs 66;" f
@@ -2763,7 +2763,7 @@ checkDeath' src/Dodge/Creature/Update.hs 73;" f
checkEndGame src/Dodge/Update.hs 766;" f checkEndGame src/Dodge/Update.hs 766;" f
checkErrorGL src/Shader/Compile.hs 86;" f checkErrorGL src/Shader/Compile.hs 86;" f
checkFBO src/Framebuffer/Check.hs 6;" f checkFBO src/Framebuffer/Check.hs 6;" f
checkGLError src/GLHelp.hs 14;" f checkGLError src/GLHelp.hs 17;" f
checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 18;" f checkInvSlotsYou src/Dodge/Inventory/CheckSlots.hs 18;" f
checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f checkInventorySelectionExists src/Dodge/DisplayInventory.hs 93;" f
checkTermDist src/Dodge/Update.hs 316;" f checkTermDist src/Dodge/Update.hs 316;" f
@@ -2884,7 +2884,7 @@ copierItemUpdate src/Dodge/Creature/State.hs 131;" f
copyItemToFloor src/Dodge/FloorItem.hs 14;" f copyItemToFloor src/Dodge/FloorItem.hs 14;" f
corDoor src/Dodge/Room/Room.hs 385;" f corDoor src/Dodge/Room/Room.hs 385;" f
cornerList src/Preload/Render.hs 227;" f cornerList src/Preload/Render.hs 227;" f
corpseOrGib src/Dodge/Creature/Update.hs 111;" f corpseOrGib src/Dodge/Creature/Update.hs 88;" f
corridor src/Dodge/Room/Corridor.hs 17;" f corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 133;" f corridorBoss src/Dodge/LockAndKey.hs 133;" f
corridorN src/Dodge/Room/Corridor.hs 52;" f corridorN src/Dodge/Room/Corridor.hs 52;" f
@@ -3353,7 +3353,7 @@ drawZone src/Dodge/Debug/Picture.hs 152;" f
drawZoneCirc src/Dodge/Debug/Picture.hs 292;" f drawZoneCirc src/Dodge/Debug/Picture.hs 292;" f
drawZoneCol src/Dodge/Debug/Picture.hs 149;" f drawZoneCol src/Dodge/Debug/Picture.hs 149;" f
drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 285;" f drawZoneNearPointCursor src/Dodge/Debug/Picture.hs 285;" f
dropAll src/Dodge/Creature/Update.hs 129;" f dropAll src/Dodge/Creature/Update.hs 106;" f
dropInventoryPath src/Dodge/HeldUse.hs 1351;" f dropInventoryPath src/Dodge/HeldUse.hs 1351;" f
dropItem src/Dodge/Creature/Action.hs 155;" f dropItem src/Dodge/Creature/Action.hs 155;" f
dropper src/Dodge/Item/Scope.hs 76;" f dropper src/Dodge/Item/Scope.hs 76;" f
@@ -3590,6 +3590,7 @@ girder src/Dodge/Room/Foreground.hs 206;" f
girderV src/Dodge/Room/Foreground.hs 177;" f girderV src/Dodge/Room/Foreground.hs 177;" f
girderV' src/Dodge/Room/Foreground.hs 153;" f girderV' src/Dodge/Room/Foreground.hs 153;" f
girderZ src/Dodge/Room/Foreground.hs 108;" f girderZ src/Dodge/Room/Foreground.hs 108;" f
glCreate src/GLHelp.hs 11;" f
glassLesson src/Dodge/Room/GlassLesson.hs 23;" f glassLesson src/Dodge/Room/GlassLesson.hs 23;" f
glassLessonRunPast src/Dodge/Room/GlassLesson.hs 68;" f glassLessonRunPast src/Dodge/Room/GlassLesson.hs 68;" f
glassShat1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 648;" f glassShat1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 648;" f
@@ -4124,7 +4125,7 @@ metal6S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 692;" f
metal7S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 536;" f metal7S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 536;" f
metalPlate src/Dodge/Item/Craftable.hs 35;" f metalPlate src/Dodge/Item/Craftable.hs 35;" f
mglCreate src/GLHelp.hs 8;" f mglCreate src/GLHelp.hs 8;" f
mglDelete src/GLHelp.hs 11;" f mglDelete src/GLHelp.hs 14;" f
midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f midBarDecoration src/Dodge/Placement/TopDecoration.hs 16;" f
midBounds src/Dodge/Room/Foreground.hs 150;" f midBounds src/Dodge/Room/Foreground.hs 150;" f
midChasm src/Dodge/Room/Tutorial.hs 146;" f midChasm src/Dodge/Room/Tutorial.hs 146;" f
@@ -4371,7 +4372,7 @@ pointerToItemID src/Dodge/Item/Location.hs 42;" f
pointerYourRootItem src/Dodge/Item/Location.hs 33;" f pointerYourRootItem src/Dodge/Item/Location.hs 33;" f
pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f pointerYourSelectedItem src/Dodge/Item/Location.hs 26;" f
pointsToPoly src/Geometry/ConvexPoly.hs 35;" f pointsToPoly src/Geometry/ConvexPoly.hs 35;" f
poisonSPic src/Dodge/Creature/Update.hs 125;" f poisonSPic src/Dodge/Creature/Update.hs 102;" f
poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f poisonSprayer src/Dodge/Item/Held/SprayGuns.hs 17;" f
poke34 src/Shader/Poke.hs 507;" f poke34 src/Shader/Poke.hs 507;" f
pokeArrayOff src/Shader/Poke.hs 519;" f pokeArrayOff src/Shader/Poke.hs 519;" f
@@ -4428,7 +4429,7 @@ posRms src/Dodge/Tree/Shift.hs 44;" f
posSelSecYint src/Dodge/SelectionSections.hs 147;" f posSelSecYint src/Dodge/SelectionSections.hs 147;" f
positionRoomsFromTree src/Dodge/Tree/Shift.hs 35;" f positionRoomsFromTree src/Dodge/Tree/Shift.hs 35;" f
postGenerationProcessing src/Dodge/LevelGen.hs 30;" f postGenerationProcessing src/Dodge/LevelGen.hs 30;" f
postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 13;" f postUniverseLoadSideEffect src/Dodge/WorldLoad.hs 14;" f
postWorldLoad src/Dodge/WorldLoad.hs 18;" f postWorldLoad src/Dodge/WorldLoad.hs 18;" f
powerFakeout src/Dodge/Room/Start.hs 28;" f powerFakeout src/Dodge/Room/Start.hs 28;" f
powerFakeout' src/Dodge/Room/Start.hs 25;" f powerFakeout' src/Dodge/Room/Start.hs 25;" f
@@ -4725,7 +4726,7 @@ scaleSH src/Shape.hs 269;" f
scalp src/Dodge/Creature/Picture.hs 93;" f scalp src/Dodge/Creature/Picture.hs 93;" f
scancodeToHotkey src/Dodge/Creature/YourControl.hs 102;" f scancodeToHotkey src/Dodge/Creature/YourControl.hs 102;" f
scodeToChar src/Dodge/ScodeToChar.hs 6;" f scodeToChar src/Dodge/ScodeToChar.hs 6;" f
scorchSPic src/Dodge/Creature/Update.hs 122;" f scorchSPic src/Dodge/Creature/Update.hs 99;" f
screenBox src/Dodge/Base/Window.hs 53;" f screenBox src/Dodge/Base/Window.hs 53;" f
screenPolygon src/Dodge/Base/Window.hs 17;" f screenPolygon src/Dodge/Base/Window.hs 17;" f
screenPolygonBord src/Dodge/Base/Window.hs 27;" f screenPolygonBord src/Dodge/Base/Window.hs 27;" f
@@ -5344,7 +5345,7 @@ updateObjMapMaybe src/Dodge/Update.hs 540;" f
updatePastWorlds src/Dodge/Update.hs 422;" f updatePastWorlds src/Dodge/Update.hs 422;" f
updatePreload src/Preload/Update.hs 21;" f updatePreload src/Preload/Update.hs 21;" f
updateProjectile src/Dodge/Projectile/Update.hs 26;" f updateProjectile src/Dodge/Projectile/Update.hs 26;" f
updatePulse src/Dodge/Creature/Update.hs 146;" f updatePulse src/Dodge/Creature/Update.hs 123;" f
updatePulseBall src/Dodge/Update.hs 447;" f updatePulseBall src/Dodge/Update.hs 447;" f
updatePulseLaser src/Dodge/Update.hs 610;" f updatePulseLaser src/Dodge/Update.hs 610;" f
updatePulseLasers src/Dodge/Update.hs 442;" f updatePulseLasers src/Dodge/Update.hs 442;" f