diff options
author | Joris Guyonvarch | 2015-03-07 15:12:02 +0100 |
---|---|---|
committer | Joris Guyonvarch | 2015-03-07 15:12:02 +0100 |
commit | 17a58e0c4c67f27d87635bf1b2ca50fb11795ad3 (patch) | |
tree | 8de99cdf0b4021ca6db6920537e7d0fa250e90bc /src/Model/Game.elm | |
parent | 336816d2e8ab4afff1562123dfde61bf3a68e61c (diff) |
Organizing source code with subdirectories
Diffstat (limited to 'src/Model/Game.elm')
-rw-r--r-- | src/Model/Game.elm | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/Model/Game.elm b/src/Model/Game.elm new file mode 100644 index 0000000..4ef5d89 --- /dev/null +++ b/src/Model/Game.elm @@ -0,0 +1,42 @@ +module Model.Game + ( Game + , initialGame + ) where + +import Random (..) +import Keyboard (KeyCode) + +import Model.Player (..) +import Model.Cloud (..) +import Model.Vec2 (Vec2) +import Model.Config (..) + +type alias Game = + { time : Float + , keysDown : List KeyCode + , score : Int + , player : Player + , cloud : Cloud + , bestScore : Int + , seed : Seed + } + +initialGame : Seed -> Vec2 -> Config -> Int -> Game +initialGame seed playerPos config bestScore = + let initPlayer = + { pos = playerPos + , speed = + { x = 0 + , y = 0 + } + , config = config + } + in + { time = 0 + , keysDown = [] + , score = 0 + , player = initPlayer + , cloud = initCloud + , bestScore = bestScore + , seed = seed + } |