Move sparks into dedicated datatype
This commit is contained in:
@@ -59,7 +59,7 @@ applyIndividualDamage' cr w dm = case _dmType dm of
|
||||
|
||||
applyPiercingDamage :: Creature -> Damage -> World -> World
|
||||
applyPiercingDamage cr dm
|
||||
| crIsArmouredFrom p cr = colSpark 8 (brightX 10 1.5 orange) p1 (argV (p1 -.- p))
|
||||
| crIsArmouredFrom p cr = colSpark (brightX 10 1.5 orange) p1 (argV (p1 -.- p))
|
||||
| otherwise = damageHP cr $ _dmAmount dm
|
||||
where
|
||||
p = _dmAt dm
|
||||
|
||||
@@ -70,11 +70,10 @@ updateExpBarrel cr w
|
||||
damages = _csDamage $ _crState cr
|
||||
pierceSparks :: [World -> World]
|
||||
pierceSparks
|
||||
= zipWith4 (\p a -> createBarrelSpark (_crPos cr +.+ p) (a + argV p))
|
||||
poss as times colids
|
||||
= zipWith3 (\p a -> createBarrelSpark (_crPos cr +.+ p) (a + argV p))
|
||||
poss as colids
|
||||
as = randomRs (-0.7,0.7) g
|
||||
colids = randomRs (0,11) g
|
||||
times = randomRs (2,5) g
|
||||
poss = _piercedPoints $ _csSpState $ _crState cr
|
||||
newCr = Just $ applyFuseDamage $ set (crState . csDamage) [] $ damToExpBarrel damages cr
|
||||
applyFuseDamage cr' = cr' & crHP %~
|
||||
|
||||
Reference in New Issue
Block a user