diff options
author | Joris | 2016-09-04 15:52:17 +0200 |
---|---|---|
committer | Joris | 2016-09-04 15:53:32 +0200 |
commit | 8714c3befcf3f9923cf72e8d992ba6d963c0e6e7 (patch) | |
tree | e5ab35a918a95cbfee2f90dc34f3fe57fac42593 /src/Update/Update.elm | |
parent | cda08750ac7cdd83e73c1110800bea39928ffed9 (diff) |
Upgrade to elm 0.17.1
Diffstat (limited to 'src/Update/Update.elm')
-rw-r--r-- | src/Update/Update.elm | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/Update/Update.elm b/src/Update/Update.elm deleted file mode 100644 index 2514aac..0000000 --- a/src/Update/Update.elm +++ /dev/null @@ -1,61 +0,0 @@ -module Update.Update - ( update - ) where - -import List -import Char exposing (fromCode, toCode, KeyCode) -import Maybe -import Set -import Set exposing (Set) - -import Model.Player exposing (..) -import Model.Vec2 exposing (..) -import Model.Config exposing (otherConfig) -import Model.Cloud exposing (..) -import Model.Game exposing (..) -import Model.Round exposing (Round) - -import Utils.Geometry exposing (..) -import Utils.Physics exposing (getNewPosAndSpeed) - -import Update.CloudUpdate exposing (cloudUpdate) - -import Input exposing (Input) - -update : Input -> Game -> Game -update input game = - let hostilePoints = game.cloud.points (otherConfig game.player.config) - in if(playerPointsCollision game.elapsedTime game.player (getPlayerSize game.currentScore) hostilePoints) - then - { game - | elapsedTime = 0 - , currentScore = 0 - , cloud = initCloud - , rounds = (Round game.elapsedTime game.currentScore) :: game.rounds - } - else - let newPlayer = playerStep input.delta game.boardSize input.dir (newKeyCode game.keysDown input.inputKeysDown) game.player (getPlayerSize game.currentScore) - (newCloud, addScore, newSeed) = cloudUpdate game.elapsedTime game.boardSize game.seed newPlayer (getPlayerSize game.currentScore) game.cloud game.currentScore - in - { game - | elapsedTime = game.elapsedTime + input.delta - , keysDown = input.inputKeysDown - , currentScore = game.currentScore + addScore - , player = newPlayer - , cloud = newCloud - , seed = newSeed - } - -playerStep : Float -> Vec2 -> Vec2 -> (KeyCode -> Bool) -> Player -> Float -> Player -playerStep dt boardSize dir newKey player playerSize = - let (pos, speed) = getNewPosAndSpeed dt dir playerSpeed (player.pos, player.speed) - newConfig = if (newKey 69) then otherConfig player.config else player.config - in { pos = inBoard boardSize playerSize pos - , speed = speed - , config = newConfig - } - -newKeyCode : Set KeyCode -> Set KeyCode -> KeyCode -> Bool -newKeyCode lastKeyCodes newKeyCodes keyCode = - let contains = not << List.isEmpty << List.filter (\kc -> kc == keyCode) << Set.toList - in not (contains lastKeyCodes) && (contains newKeyCodes) |