diff options
author | Juan J. Martinez <jjm@usebox.net> | 2023-02-05 23:18:30 +0000 |
---|---|---|
committer | Juan J. Martinez <jjm@usebox.net> | 2023-02-05 23:24:06 +0000 |
commit | b9578c2a2c60d75c4a4d4519f10b99703ee5ea27 (patch) | |
tree | 286fb453a4c73daa4b8350dca1be5ea2cb21f0e9 /src/Game.hs | |
parent | fb1c60789db8e71584211cbef19811298c8fd6e6 (diff) | |
download | space-plat-hs-b9578c2a2c60d75c4a4d4519f10b99703ee5ea27.tar.gz space-plat-hs-b9578c2a2c60d75c4a4d4519f10b99703ee5ea27.zip |
Swpan new entities
- Each entity can generate a list of "spawns" (add a new entity)
- Added a "dust" effect to the jump WIP
TODO: probably wrap the entity list in a type so we don't need to pass
the spritesheet to the update function.
Diffstat (limited to 'src/Game.hs')
-rw-r--r-- | src/Game.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Game.hs b/src/Game.hs index 3121ddf..28e14e7 100644 --- a/src/Game.hs +++ b/src/Game.hs @@ -110,6 +110,7 @@ gameLoop = do controls = _controls env map' = _map env entities = _entities env + sprites = _sprites env events <- map SDL.eventPayload <$> SDL.pollEvents @@ -125,8 +126,7 @@ gameLoop = do SDL.rendererRenderTarget renderer $= Just canvas SDL.clear renderer - -- update entities filtering out the ones that have been destroyed - updated <- liftIO $ fmap (filter (not . E.eDestroy)) (traverse (\e -> E.eUpdate e e) =<< readIORef entities) + updated <- liftIO $ E.update sprites =<< readIORef entities entities $= updated -- render map and entities |