public static void Send(Helpers.TcpGamespeed speed)
 {
     Logging.Info("[Server] Sending GameSpeed to all clients");
     foreach (Helpers.User user in Users)
     {
         server.Send(user.ID, speed.Serialize());
     }
 }
Beispiel #2
0
        private static void OnGamespeedChange(Helpers.TcpGamespeed tcpspeed)
        {
            Logging.Info("gamespeedchange...");
            int type  = (int)tcpspeed.Data.GetValue("type");
            int speed = (int)tcpspeed.Data.GetValue("speed");

            if (type == 0)
            {
                GameSettings.GameSpeed = speed;
                //HUD.Instance.GameSpeed = (int)speed;
            }
            OnServerChatRecieved(new Helpers.TcpServerChat($"The gamespeed has been changed to {speed}", Helpers.TcpServerChatType.Info));
        }
 static void OnGamespeedChange(int connectionid, Helpers.TcpGamespeed speed)
 {
     if ((int)speed.Data.GetValue("type") == 0)
     {
         Logging.Info($"[Server] Sending updated GameSpeed to all clients => {(int)speed.Data.GetValue("speed")} usercount: {Users.Count}");
         foreach (Helpers.User u in Users)
         {
             Logging.Info($"[Server] Sent GameSpeed to connection {u.ID}");
             Send(u.ID, speed);
         }
     }
     else
     {
         Logging.Warn($"[Server] User {connectionid} can't change gamespeed if type is 1 (vote) because votes aren't included yet");
     }
 }
        /// <summary>
        /// Gets called whenever a message (other than connect or disconnect) gets received
        /// </summary>
        /// <param name="msg">The Telepathy.Message sent by the server.getNextMessage() function</param>
        static void Receive(Telepathy.Message msg)
        {
            //string datastr = Encoding.UTF8.GetString(msg.data);
            //Logging.Info($"[Server] From Connection {msg.connectionId}: " + datastr);
            Logging.Info($"[Server] Data from Connection {msg.connectionId}: {msg.data.Length} bytes");

            //Handle TCPLogin
            //Helpers.TcpLogin tcplogin = XML.From<Helpers.TcpLogin>(datastr);
            Helpers.TcpLogin tcplogin = Helpers.TcpLogin.Deserialize(msg.data);
            if (tcplogin != null && tcplogin.Header == "login")
            {
                OnUserLogin(msg.connectionId, tcplogin);
            }

            //Handle TCPChat
            //Helpers.TcpChat tcpchat = XML.From<Helpers.TcpChat>(datastr);
            Helpers.TcpChat tcpchat = Helpers.TcpChat.Deserialize(msg.data);
            if (tcpchat != null && tcpchat.Header == "chat")
            {
                OnUserChat(msg.connectionId, tcpchat);
            }

            //Handle TCPRequests
            //Helpers.TcpRequest tcprequest = XML.From<Helpers.TcpRequest>(datastr);
            Helpers.TcpRequest tcprequest = Helpers.TcpRequest.Deserialize(msg.data);
            if (tcprequest != null && tcprequest.Header == "request")
            {
                string req = (string)tcprequest.Data.GetValue("request");
                if (req == "gameworld")
                {
                    OnRequestGameWorld(msg.connectionId);
                }
                else if (req == "userlist")
                {
                    OnRequestUserList(msg.connectionId);
                }
            }

            Helpers.TcpGamespeed tcpspeed = Helpers.TcpGamespeed.Deserialize(msg.data);
            if (tcpspeed != null && tcpspeed.Header == "gamespeed")
            {
                OnGamespeedChange(msg.connectionId, tcpspeed);
            }
        }
Beispiel #5
0
        static void Receive(byte[] data)
        {
            Logging.Info("[Client] Data from Server: " + data.Length + " bytes");

            //Handle TcpResponse
            Helpers.TcpResponse tcpresponse = Helpers.TcpResponse.Deserialize(data);
            if (tcpresponse != null && tcpresponse.Header == "response")
            {
                OnServerResponse(tcpresponse);
            }

            //Handle TcpServerChat
            Helpers.TcpServerChat tcpServerChat = Helpers.TcpServerChat.Deserialize(data);
            if (tcpServerChat != null && tcpServerChat.Header == "serverchat")
            {
                OnServerChatRecieved(tcpServerChat);
            }

            //Handle TcpChat
            Helpers.TcpChat tcpchat = Helpers.TcpChat.Deserialize(data);
            if (tcpchat != null && tcpchat.Header == "chat")
            {
                OnChatReceived(tcpchat);
            }

            //Handle GameWorld
            Helpers.TcpGameWorld tcpworld = Helpers.TcpGameWorld.Deserialize(data);
            if (tcpworld != null && tcpworld.Header == "gameworld")
            {
                OnGameWorldReceived(tcpworld);
            }

            //Handle Gamespeed
            Helpers.TcpGamespeed tcpspeed = Helpers.TcpGamespeed.Deserialize(data);
            if (tcpspeed != null && tcpspeed.Header == "gamespeed")
            {
                OnGamespeedChange(tcpspeed);
            }
        }
 public static void Send(int clientid, Helpers.TcpGamespeed speed)
 {
     Logging.Info("[Server] Sending GameSpeed to client " + clientid);
     server.Send(clientid, speed.Serialize());
 }
Beispiel #7
0
 public static void Send(Helpers.TcpGamespeed speed)
 {
     Logging.Info("[Client] Sending gamespeed");
     client.Send(speed.Serialize());
 }