Simplify energyBalls (no z component)

This commit is contained in:
2024-12-24 15:05:36 +00:00
parent c4b9142d0f
commit 957f233629
5 changed files with 14 additions and 18 deletions
-8
View File
@@ -10,7 +10,6 @@ module Dodge.WorldEvent.Explosion (
import Control.Monad
import Data.List
import Dodge.Base.Collide
import Dodge.Data.World
import Dodge.EnergyBall
import Dodge.Flame
@@ -88,17 +87,10 @@ makeExplosionAt p vel w =
let (a, b, c) = unzip3 $ map fromV3 fPs''
in (zipWith V2 a b, c)
--fPs = map (pushAgainstWalls . (+.+) p . (*.*) 0.5) fPs'
fPs = map (pushAgainstWalls . (+.+) p) fPs'
inversePushOut v = (15 - magV v) * 0.01 *.* v
fVs' = zipWith (+.+) fVs $ map inversePushOut fPs'
sizes = randomRs (2, 9) $ _randGen w
times = randomRs (15, 20) $ _randGen w
mF q z v size time = makeFlamelet (q - vel) z (v + vel) size time
--newFs = zipWith5 mF fPs zs (fmap (3 *.*) fVs') sizes times
newFs = zipWith4 (mF p) zs (zipWith ((+) . xyV3) fPs'' (fmap (3 *.*) fVs')) sizes times
addFlames w' = foldl' (flip ($)) w' newFs
--pushAgainstWalls q = maybe q (uncurry (+.+)) $ reflectPointWalls p q wls
--pushAgainstWalls q = maybe q fst $ reflectPointWalls p q wls
pushAgainstWalls q = maybe q fst $ bouncePoint (const True) 1 p q w
-- wls = wallsNearPoint p w