Files
loop/src/Dodge/LinearShockwave/Update.hs
T
2024-09-27 23:10:01 +01:00

17 lines
405 B
Haskell

module Dodge.LinearShockwave.Update
where
import Dodge.Data.World
import qualified IntMapHelp as IM
import Control.Lens
updateLinearShockwave :: LinearShockwave -> World -> World
updateLinearShockwave lw
| t < 1 = cWorld . lWorld . linearShockwaves %~ IM.delete lwid
| otherwise = cWorld . lWorld . linearShockwaves . ix lwid . lwTimer -~ 1
where
lwid = _lwID lw
t = _lwTimer lw