Tweak explosions

This commit is contained in:
2024-12-24 14:54:32 +00:00
parent a79dfa1bb3
commit c4b9142d0f
8 changed files with 19 additions and 14 deletions
+7 -1
View File
@@ -5,6 +5,8 @@ module Dodge.EnergyBall
, makeFlamelet
) where
import Dodge.Base.Collide
import Data.Maybe
import Dodge.DamageCircle
import Dodge.Data.World
import Geometry
@@ -47,8 +49,12 @@ updateEnergyBall w eb
| _ebTimer eb <= 0 = (w, Nothing)
| otherwise =
( ebFlicker eb $ uncurry (damageCircle 5 (_ebPos eb)) (_ebEff eb) w
, Just $ eb & ebTimer -~ 1 & ebPos .+.+~ _ebVel eb & ebVel .*.*~ 0.9
-- , Just $ eb & ebTimer -~ 1 & ebPos .+.+~ _ebVel eb & ebVel .*.*~ 0.9
, Just $ eb & ebTimer -~ 1 & ebPos .~ bp & ebVel .~ 0.7 * bv
)
where
p = eb ^. ebPos + eb ^. ebVel
(bp,bv) = fromMaybe (p,eb^.ebVel) $ bouncePoint (const True) 0 (eb ^. ebPos) p w
incBallAt :: Point2 -> World -> World
incBallAt p w =