summaryrefslogtreecommitdiff
blob: 5c97ab882cecb3cc7155544fdca81a81103b9792 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
module Update exposing (update, Type(..))

import Model

import Update.DirectionRequest
import Update.SelectCharacter
import Update.EndTurn

import Battlemap
import Battlemap.Direction
import Battlemap.Navigator

import Dict

import Character

type Type =
   DirectionRequest Battlemap.Direction.Type
   | SelectCharacter Character.Ref
   | EndTurn

update : Type -> Model.Type -> Model.Type
update msg model =
   case msg of
      (DirectionRequest d) ->
         (Update.DirectionRequest.apply_to model d)

      (SelectCharacter char_id) ->
         (Update.SelectCharacter.apply_to model char_id)

      EndTurn ->
         (Update.EndTurn.apply_to model)