protected override void NewPlayer(NetIncomingMessage msg)
        {
            NetPlayer player = new NetPlayer(0, 0);
            string name = msg.ReadString();
            int uid = msg.ReadInt32();
            player.UID = uid;

            ClientInfo clientInfo = new ClientInfo();
            clientInfo.Name = name;
            clientInfo.X = player.X;
            clientInfo.Y = player.Y;
            clientInfo.UID = uid;
            if (!NetManager.connectedClients.ContainsKey(uid))
            {
                NetManager.connectedClients.Add(clientInfo.UID, clientInfo);
                EntityManager.AddNetPlayer(player);
                JapeLog.WriteLine("New Player Added: " + name);
            }
        }
        protected void NewPlayerResponse(NetIncomingMessage msg)
        {
            int ownUid = msg.ReadInt32();
            NetManager.RemoteUID = ownUid;
            bool gameStarted = msg.ReadBoolean();
            string levelName = msg.ReadString();
            string levelData = msg.ReadString();

            int otherClientsCount = msg.ReadInt32();

            for (int i = 0; i < otherClientsCount; i++)
            {
                string name = msg.ReadString();
                int uid = msg.ReadInt32();

                NetPlayer player = new NetPlayer(0, 0);
                ClientInfo clientInfo = new ClientInfo();
                clientInfo.Name = name;
                clientInfo.X = player.X;
                clientInfo.Y = player.Y;
                clientInfo.UID = uid;
                player.UID = uid;

                if (!NetManager.connectedClients.ContainsKey(uid))
                {
                    NetManager.connectedClients.Add(clientInfo.UID, clientInfo);
                    EntityManager.AddNetPlayer(player);
                    JapeLog.WriteLine("New Player Added: " + name);
                }
            }

            if (gameStarted)
            {
                DownloadLevel(levelName, levelData);
                OnChangedLevel(levelName, 0);
            }

            JapeLog.WriteLine("Remote ID recieved: " + ownUid);
        }
Ejemplo n.º 3
0
 public static void AddNetPlayer(NetPlayer player)
 {
     netPlayers.Add(player);
 }
Ejemplo n.º 4
0
 private static void RemoveDisconnectedNetPlayers(NetPlayer[] list)
 {
     for (int i = 0; i < list.Length; i++)
     {
         if (list[i].Disconnected)
         {
             netPlayers.Remove(list[i]);
             NetManager.connectedClients.Remove(list[i].UID);
         }
     }
 }