aboutsummaryrefslogtreecommitdiff
path: root/client/src/Messages.elm
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/Messages.elm')
-rw-r--r--client/src/Messages.elm27
1 files changed, 24 insertions, 3 deletions
diff --git a/client/src/Messages.elm b/client/src/Messages.elm
index 2239a74..730a66d 100644
--- a/client/src/Messages.elm
+++ b/client/src/Messages.elm
@@ -9,16 +9,23 @@ import Set exposing (Set)
type alias GameView =
- { players: (List String)
+ { opponents: (List String)
+ , playerName: String
}
jsonDecGameView : Json.Decode.Decoder ( GameView )
jsonDecGameView =
- Json.Decode.succeed (\pplayers -> {players = pplayers}) |> custom (Json.Decode.list (Json.Decode.string))
+ Json.Decode.succeed (\popponents pplayerName -> {opponents = popponents, playerName = pplayerName})
+ |> required "opponents" (Json.Decode.list (Json.Decode.string))
+ |> required "playerName" (Json.Decode.string)
jsonEncGameView : GameView -> Value
jsonEncGameView val =
- (Json.Encode.list Json.Encode.string) val.players
+ Json.Encode.object
+ [ ("opponents", (Json.Encode.list Json.Encode.string) val.opponents)
+ , ("playerName", Json.Encode.string val.playerName)
+ ]
+
type ServerMessage =
@@ -44,3 +51,17 @@ jsonEncServerMessage val =
in encodeSumObjectWithSingleField keyval val
+
+type ClientMessage =
+ ChangeName String
+
+jsonDecClientMessage : Json.Decode.Decoder ( ClientMessage )
+jsonDecClientMessage =
+ Json.Decode.lazy (\_ -> Json.Decode.map ChangeName (Json.Decode.string))
+
+
+jsonEncClientMessage : ClientMessage -> Value
+jsonEncClientMessage (ChangeName v1) =
+ Json.Encode.string v1
+
+