From 1d68ac340c28792b2b498e204ef123730d901443 Mon Sep 17 00:00:00 2001 From: "Juan J. Martinez" Date: Thu, 16 Feb 2023 21:11:18 +0000 Subject: Added lives to the HUD --- src/Game/Hud.hs | 4 +++- src/Game/State.hs | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'src/Game') diff --git a/src/Game/Hud.hs b/src/Game/Hud.hs index 3b59558..dd72bb3 100644 --- a/src/Game/Hud.hs +++ b/src/Game/Hud.hs @@ -19,4 +19,6 @@ render :: SDL.Renderer -> Hud -> IO () render renderer hud = do state <- readIORef hud.stateRef let xs = [0 .. state.totalBatteries - 1] - mapM_ (\x -> S.render renderer hud.sprite (4 + x * 8) 178 0 (if state.batteries <= x then 0 else 1)) xs + in mapM_ (\x -> S.render renderer hud.sprite (4 + x * 8) 178 0 (if state.batteries <= x then 0 else 1)) xs + let xs = [0 .. state.totalLives - 1] + in mapM_ (\x -> S.render renderer hud.sprite (320 - 4 - state.totalLives * 8 + x * 8) 178 0 (if state.lives <= x then 2 else 3)) xs diff --git a/src/Game/State.hs b/src/Game/State.hs index 9988936..2223434 100644 --- a/src/Game/State.hs +++ b/src/Game/State.hs @@ -2,5 +2,7 @@ module Game.State (State (..)) where data State = State { batteries :: Int, - totalBatteries :: Int + totalBatteries :: Int, + lives :: Int, + totalLives :: Int } -- cgit v1.2.3