Beispiel #1
0
    private void OnTextMessage(string message)
    {
        JObject json = JObject.Parse(message);

        GameClient.MessageHandler handler = null;
        if (json["ackId"] != null)
        {
            int ackId = (int)json["ackId"];
            if (ackId > 0)
            {
                if (awaitingAck.ContainsKey(ackId))
                {
                    ClientRequest request = awaitingAck[ackId];
                    handler = request.messageHandler;
                    Debug.Log("Received ack for " + request);
                    awaitingAck.Remove(ackId);
                }
                else
                {
                    Debug.LogWarning("Received ack for unknown request: " + ackId);
                }
            }
        }
        if (handler != null)
        {
            handler(json);
        }
        else
        {
            defaultMessageHandler(json);
        }
    }
Beispiel #2
0
    private void OnGameCreated(JObject jsonObject)
    {
        defaultMessageHandler = GameManager.Instance.HandleMessage;
        GameManager.Instance.gameOverHandler = GameOver;
        GameCreatedMessage message = jsonObject.ToObject <GameCreatedMessage>();
        long id = message.gameId;

        GameManager.Instance.SetStarSystem(message.starSystemId);
        JoinRequest request = new JoinRequest(OnGameJoined, id);

        GameClient.Instance.SendRequest(request);
    }
Beispiel #3
0
 public GameCommand(GameClient.MessageHandler handler) : base(handler)
 {
     commandClass = this.GetType().Name;
 }
 public CreateGuestRequest(GameClient.MessageHandler handler) : base(handler)
 {
 }
Beispiel #5
0
 /// <summary>
 /// If a ClientRequest specifies a message handler, that will be called
 /// when a message with the corresponding ack id is received.
 /// </summary>
 /// <param name="handler"></param>
 public ClientRequest(GameClient.MessageHandler handler)
 {
     this.requestClass = this.GetType().Name;
     this.messageHandler = handler;
 }
Beispiel #6
0
 public JoinRequest(GameClient.MessageHandler handler, long gameId) : base(handler)
 {
     this.gameId = gameId;
 }
Beispiel #7
0
 public NewGameRequest(GameClient.MessageHandler handler, StarSystemData data) : base(handler)
 {
     this.systemId = data.id;
 }
Beispiel #8
0
 /// <summary>
 /// If a ClientRequest specifies a message handler, that will be called
 /// when a message with the corresponding ack id is received.
 /// </summary>
 /// <param name="handler"></param>
 public ClientRequest(GameClient.MessageHandler handler)
 {
     this.requestClass   = this.GetType().Name;
     this.messageHandler = handler;
 }