47 lines
No EOL
1,001 B
Haskell
47 lines
No EOL
1,001 B
Haskell
-- Allows to render the played game
|
|
|
|
module Render
|
|
(
|
|
-- Initialize a window to play in
|
|
initWindow
|
|
|
|
-- Render the game
|
|
, render
|
|
) where
|
|
|
|
import Game(Game(..))
|
|
import State(State(..))
|
|
import Graphics.Gloss
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
initWindow :: String -> (Int, Int) -> (Int, Int) -> Display
|
|
initWindow title dims offs = InWindow title dims offs
|
|
|
|
render :: Game -> Picture
|
|
render g@Game{ state = Menu } = renderMenu g
|
|
render g@Game{ state = Playing } = renderPlaying g
|
|
render g@Game{ state = Pause } = renderPause g
|
|
render g@Game{ state = Win } = renderWin g
|
|
render g@Game{ state = Lose } = renderLose g
|
|
|
|
|
|
-- TODO
|
|
renderMenu :: Game -> Picture
|
|
renderMenu _ = text "Menu"
|
|
|
|
-- TODO
|
|
renderPlaying :: Game -> Picture
|
|
renderPlaying _ = text "Playing"
|
|
|
|
-- TODO
|
|
renderPause :: Game -> Picture
|
|
renderPause _ = text "Pause"
|
|
|
|
-- TODO
|
|
renderWin :: Game -> Picture
|
|
renderWin _ = text "Win"
|
|
|
|
-- TODO
|
|
renderLose :: Game -> Picture
|
|
renderLose _ = text "Lose" |