Beispiel #1
0
        /// <summary>
        /// Handles incoming messages from the game server.
        /// </summary>
        public static void HandleIncomingMessages()
        {
            if (Connection != null && IsConnected)
            {
                List <NetIncomingMessage> messages =
                    new List <NetIncomingMessage>();
                Connection.ReadMessages(messages);

                foreach (NetIncomingMessage msg in messages)
                {
                    try
                    {
                        switch (msg.MessageType)
                        {
                        case NetIncomingMessageType.StatusChanged:
                            InputHandler.HandleStatusChange(
                                Connection.ConnectionStatus
                                );
                            break;

                        case NetIncomingMessageType.Data:
                            InputHandler.HandleData(msg);
                            break;
                        }
                    }
                    catch (Exception e)
                    {
                        Trace.WriteLine("Error occured in NetworkManager."
                                        + "HandleIncomingMessages():");
                        Trace.WriteLine(e);
                    }
                }
            }
        }