Simplify clouds
This commit is contained in:
+9
-9
@@ -1,5 +1,6 @@
|
||||
module Dodge.Bullet (updateBullet) where
|
||||
|
||||
import Dodge.Damage
|
||||
import Data.Bifunctor
|
||||
import Data.Foldable
|
||||
import Data.Maybe
|
||||
@@ -167,21 +168,20 @@ hitEffFromBul w bu = case _buEffect bu of
|
||||
sp = _buPos bu
|
||||
hitstream = thingsHit sp (sp + _buVel bu) w
|
||||
|
||||
setFromToDams :: Bullet -> Point2 -> [Damage]
|
||||
setFromToDams bu p = case _buPayload bu of
|
||||
getBulHitDams :: Bullet -> Point2 -> [Damage]
|
||||
getBulHitDams bu p = case _buPayload bu of
|
||||
BulPlain x -> [Piercing x p v]
|
||||
_ -> []
|
||||
where
|
||||
v = _buVel bu
|
||||
|
||||
-- f = (dmFrom .~ _buPos bu) . (dmAt .~ p) . (dmTo .~ _buPos bu +.+ _buVel bu)
|
||||
|
||||
damageThingHit :: Bullet -> (Point2, Either Creature Wall) -> World -> World
|
||||
damageThingHit bu (p, crwl) = case crwl of
|
||||
Left cr -> cWorld . lWorld . creatures . ix (_crID cr) . crDamage <>~ dams
|
||||
Right wl -> cWorld . lWorld . wallDamages . at (_wlID wl) . non mempty <>~ dams
|
||||
where
|
||||
dams = setFromToDams bu p
|
||||
damageThingHit bu (p, crwl) = damageCrWl (getBulHitDams bu p) crwl
|
||||
-- case crwl of
|
||||
-- Left cr -> cWorld . lWorld . creatures . ix (_crID cr) . crDamage <>~ dams
|
||||
-- Right wl -> cWorld . lWorld . wallDamages . at (_wlID wl) . non mempty <>~ dams
|
||||
-- where
|
||||
-- dams = setFromToDams bu p
|
||||
|
||||
expireAndDamage ::
|
||||
Bullet ->
|
||||
|
||||
Reference in New Issue
Block a user