Move wall damages to external position

This commit is contained in:
2022-06-19 15:05:12 +01:00
parent f2d6504634
commit a7e6d6f3cc
14 changed files with 47 additions and 18 deletions
@@ -1,9 +1,10 @@
module Dodge.Particle.HitEffect.ExpireAndDamage where
import Dodge.Data
import Dodge.Particle.Update
import Dodge.Wall.Damage
--import Dodge.Wall.Damage
import Geometry
import LensHelp
import qualified Data.IntMap.Strict as IM
expireAndDamage :: (Particle -> Point2 -> [Damage])
-> Particle
@@ -21,7 +22,6 @@ doDamages :: (Particle -> Point2 -> [Damage])
-> World
doDamages fdm (p,thhit) bt = case thhit of
Left cr -> creatures . ix (_crID cr) . crState . crDamage .++~ dams
Right wl -> flip (foldr (`damageWall` wl)) dams
Right wl -> wallDamages %~ IM.insertWith (++) (_wlID wl) dams
where
dams = fdm bt p