public void HandleMessage(JObject json) { string messageClass = (string)json["messageClass"]; switch (messageClass) { case "JoinMessage": JoinMessage join = json.ToObject <JoinMessage>(); HandleJoin(join); break; case "GameInitMessage": GameInitMessage gameInit = json.ToObject <GameInitMessage>(); HandleGameInit(gameInit); break; case "ValidPlaysMessage": ValidPlaysMessage valids = json.ToObject <ValidPlaysMessage>(); HandleValidPlays(valids); break; case "EventsMessage": EventsMessage eventsMsg = new EventsMessage(); eventsMsg.commandPlayer = json["commandPlayer"].ToString(); eventsMsg.ackId = json["ackId"].ToObject <int>(); eventsMsg.updatedView = json["updatedView"].ToObject <GameView>(); JEnumerable <JToken> eventList = json["events"].Children(); foreach (JToken token in eventList) { GameEvent gameEvent = EventFactory.FromJToken(token); if (gameEvent != null) { eventsMsg.events.Add(gameEvent); } } HandleEventsMessage(eventsMsg); break; default: Debug.LogError("Unknown message: " + messageClass); break; } }
private void HandleValidPlays(ValidPlaysMessage message) { Debug.Log(message); gameEventQueue.UpdatedPlays = message.validPlays; }