示例#1
0
        public void SendLogin()
        {
            PacketBuffer _buffer = new PacketBuffer();

            _buffer.AddInteger((int)ClientPackets.CSendMessages);
            _buffer.AddString("Nahilblblbl");
            _buffer.AddString("231456");

            SendData(_buffer.ToArray());
            _buffer.Dispose();
        }
        public static void SendPlayerConnectionReady(Client player)
        {
            Console.WriteLine("Sending connection ready to player {0}.", player.index);

            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteServerPacket(ServerPackets.SPlayerConnectionReady);
            buffer.WriteInteger(player.index);
            SendDataTo(player.socket, buffer.ToArray());
            buffer.Dispose();
        }
示例#3
0
    public static void ThankYouServer()
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteInteger((int)ClientPackets.CThankYou);
        buffer.WriteString("Thank bruv, for letting me connect to ya server.");
        ClientTCP ctp = new ClientTCP();

        ctp.SendData(buffer.ToArray());
        buffer.Dispose();
    }
示例#4
0
        private static void HandleStringMessage(int index, byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string msg = buffer.ReadString();

            buffer.Dispose();
            Console.WriteLine(msg);
        }
示例#5
0
        public void HandleLoginOk(byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            int index = buffer.ReadInteger();

            buffer.Dispose();

            MenuManager.ChangeMenu(MenuManager.Menu.Teste);
        }
        public static void HandleConnectionOK(int index, byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string msg = buffer.ReadString();

            buffer.Dispose();

            MainWindow.WriteChatMessage(msg);
        }
示例#7
0
        public static void Send_QuickPlaySessionInfo(int index, string json)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteInt((int)ServerPackets.S_SendQuickPlaySessionInfo);
            buffer.WriteString(json);
            Console.WriteLine(index);
            Console.WriteLine(json);

            SendDataTo(index, buffer.ToArray());
            buffer.Dispose();
        }
示例#8
0
        private static void HandleConnectionOK(byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string msg = buffer.ReadString();

            buffer.Dispose();
            Console.WriteLine(msg);
            TCPClient.ThankYouServer();
        }
示例#9
0
        /// <summary>
        ///             Buffer:
        ///                     int PacketNum;
        ///                     string race;
        /// </summary>
        private static void HandleGetSkillBuild(ClientTCP client, byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string race = buffer.ReadString();

            buffer.Dispose();
            short[] skillBuild = client.accountData.AccountSkillBuilds.IgnisBuild.ToArray();
            SendDataTCP.SendSkillBuild(client, skillBuild, race);
        }
    public static void HandleNetworkInformation(byte[] data)
    {
        int packetnum; PacketBuffer buffer = new PacketBuffer();

        buffer.WriteBytes(data);
        packetnum = buffer.ReadInteger();
        buffer.Dispose();
        if (Packets.TryGetValue(packetnum, out Packet_ Packet))
        {
            Packet.Invoke(data);
        }
    }
示例#11
0
        private static void HandleThankYou(int index, byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string msg = buffer.ReadString();

            buffer.Dispose();

            System.Diagnostics.Debug.WriteLine(string.Format("From {0}: {1}", index, msg));
        }
        public static void ConnectPlayerToMatch(Client player, Match match)
        {
            Console.WriteLine("Connect player {0} to match {1}.", player.index, match.index);

            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteServerPacket(ServerPackets.SConnectToMatch);
            buffer.WriteInteger(match.index);
            buffer.WriteInteger(match.port);
            SendDataTo(player.socket, buffer.ToArray());
            buffer.Dispose();
        }
示例#13
0
    private void HandleConnectionOK(byte[] data)
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteBytes(data);
        buffer.ReadInteger();
        string msg = buffer.ReadString();

        buffer.Dispose();

        Logger.Log(msg);
    }
示例#14
0
        public void SendInventory(int index, bool newLoot = false)
        {
            var buffer = new PacketBuffer();

            buffer.AddInteger((int)SInventory);
            var player = _userService.ActiveUsers.Find(p => p.Id == Types.PlayerIds[index]);

            buffer.AddArray(player.Inventory.ToArray());
            buffer.AddInteger(player.Credits);
            SendData(index, buffer.ToArray());
            buffer.Dispose();
        }
        public static void SendAlert(Client player, string text)
        {
            Console.WriteLine("Sending alert to player {0}.", player.index);

            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteServerPacket(ServerPackets.SAlert);
            buffer.WriteString(text);

            SendDataTo(player.socket, buffer.ToArray());
            buffer.Dispose();
        }
示例#16
0
    private void HandePlayerCount(byte[] data)
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteBytes(data);
        buffer.ReadInt32();
        PlayerCount = buffer.ReadInt32();
        buffer.Dispose();

        //code
        Debug.Log("Players: " + PlayerCount);
    }
示例#17
0
    private void DestroySyncedObejct(PacketBuffer buffer)
    {
        int entityID = buffer.ReadInteger();

        SyncedEntity entityToDestroy = GetSyncedEntity(entityID);

        syncedEntities.Remove(entityToDestroy);

        Destroy(entityToDestroy.gameObject);

        buffer.Dispose();
    }
示例#18
0
        private static void HandleGalaxy(byte[] data)
        {
            InterfaceGUI.AddChats(@"Galaxy downloaded.", Color.DarkOliveGreen);
            var buffer = new PacketBuffer();

            buffer.AddBytes(data);
            buffer.GetInteger();
            GameLogic.Galaxy = buffer.GetList <Star>();
            GameLogic.CollectPlanets();
            InterfaceGUI.PopulateMap();
            buffer.Dispose();
        }
示例#19
0
        private void GoodRegister(byte[] data)
        {
            var buffer = new PacketBuffer();

            buffer.AddBytes(data);
            buffer.GetInteger();
            GameLogic.PlayerIndex = buffer.GetInteger(); // Index on server side
            buffer.Dispose();
            ctcp.SendLogin();
            MenuManager.Clear(2);
            InterfaceGUI.AddChats(@"Registration successful.", Color.DarkOliveGreen);
        }
示例#20
0
        private static void HandleConnectionReady(byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string message = buffer.ReadString();

            buffer.Dispose();

            Console.WriteLine(message);
        }
示例#21
0
        public void RelayChat(int index, string str)
        {
            var buffer    = new PacketBuffer();
            var player    = _userService.ActiveUsers.Find(p => p.Id == Types.PlayerIds[index]);
            var newString = player.Name + ": " + str;

            buffer.AddInteger((int)SMessage);
            buffer.AddInteger((int)Chat);
            buffer.AddString(newString);
            BroadcastData(buffer.ToArray());
            buffer.Dispose();
        }
示例#22
0
    private void HandleThankYou(int index, byte[] data)
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteBytes(data);
        buffer.ReadInteger();
        string msg = buffer.ReadString();

        buffer.Dispose();

        Logger.Log(msg);
    }
示例#23
0
    public void SendClientReady()
    {
        Debug.Log(Status);
        if (Status == ClientStatus.NotReady)
        {
            PacketBuffer buffer = new PacketBuffer();
            buffer.WriteInt32((int)ClientPackets.CReadySignal);
            SendData(buffer.ToArray());
            buffer.Dispose();

            Status = ClientStatus.Ready;
        }
    }
示例#24
0
    private static void HandleThankYou(int index, byte[] data)
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteByte(data);
        buffer.ReadInteger();
        string msg = buffer.ReadString();

        buffer.Dispose();

        //add your code you want to execute here:
        Debug.Log(msg);
    }
示例#25
0
    public static void HandleNetworkInfromation(int index, byte[] data)
    {
        int     Packetnum; PacketBuffer buffer = new PacketBuffer();
        Packet_ Packet;

        buffer.WriteByte(data);
        Packetnum = buffer.ReadInteger();
        buffer.Dispose();
        if (Packets.TryGetValue(Packetnum, out Packet))
        {
            Packet.Invoke(index, data);
        }
    }
示例#26
0
        public void HandleData(byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            int packet = buffer.ReadInteger();

            buffer.Dispose();
            if (_packets.TryGetValue(packet, out Packets _packet))
            {
                _packet.Invoke(data);
            }
        }
示例#27
0
        private static void HandleThankYou(int index, byte[] data)
        {
            PacketBuffer buffer = new PacketBuffer();

            buffer.WriteBytes(data);
            buffer.ReadInteger();
            string msg = buffer.ReadString();

            buffer.Dispose();

            //Add your code you want to execute here...
            Console.WriteLine(msg);
        }
示例#28
0
    public static void SendImage()
    {
        string imgPath = Application.dataPath + "/Initial/test.png";

        //Debug.Log(imgPath);
        byte[]       imageData = File.ReadAllBytes(imgPath);
        PacketBuffer buffer    = new PacketBuffer();

        buffer.WriteInteger((int)ClientPackets.CThankYou);
        buffer.WriteByte(imageData);
        SendData(buffer.ToArray());
        buffer.Dispose();
    }
示例#29
0
    public void HandleNetworkInformation(int index, byte[] data)
    {
        PacketBuffer buffer = new PacketBuffer();

        buffer.WriteBytes(data);
        int packetNum = buffer.ReadInt32();

        buffer.Dispose();
        if (Packets.TryGetValue(packetNum, out Packet_ Packet))
        {
            Packet.Invoke(index, data);
        }
    }
示例#30
0
        public void SendXP(int index)
        {
            var buffer = new PacketBuffer();

            buffer.AddInteger((int)SLevelUp);

            var player = _userService.ActiveUsers.Find(p => p.Id == Types.PlayerIds[index]);

            buffer.AddInteger(player.Level);
            buffer.AddInteger(player.Exp);
            SendData(index, buffer.ToArray());
            buffer.Dispose();
        }
示例#31
0
        public void PacketBufferTest1()
        {
            PacketBuffer buffer = new PacketBuffer();
            buffer.Dispose();
            try
            {

                buffer.Write(1);
            }
            catch (Exception) { return; }
            throw new Exception("error");
        }
示例#32
0
 private void LoadPostData(string contentType, PacketBuffer buffer, string name = null)
 {
     if (contentType == null)
     {
         string data = buffer.ReadString((int) buffer.AvailableBytes());
         if(name != null)
             _postData.Add(name, data);
     }
     else if (contentType == "application/x-www-form-urlencoded")
     {
         string stringData = buffer.ReadString((int) buffer.AvailableBytes());
         foreach (string q in stringData.Split('&'))
         {
             int valueStartPoint = q.IndexOf("=", System.StringComparison.Ordinal);
             if (valueStartPoint == -1 && q.Length > valueStartPoint + 1)
                 continue;
             _postData.Add(q.Substring(0, valueStartPoint), q.Substring(valueStartPoint + 1));
         }
     }
     else if (contentType.StartsWith("multipart/form-data;"))
     {
         byte[] p = System.Text.Encoding.UTF8.GetBytes(string.Format("\r\n--{0}", contentType.Substring(contentType.IndexOf("boundary=") + 9)));
         long len = 0;
         while ((len = buffer.FindBytes(p)) > -1)
         {
             var buf = new PacketBuffer();
             buf.WriteBytes(buffer.ReadBytes((int)len));
             buffer.ReadBytes(p.Length);
             buf.BeginBufferIndex();
             buf.ReadLine();
             var hDictionary = new Dictionary<string, string>();
             string h = "";
             while((h = buf.ReadLine()) != "")
             {
                 if (h == null)
                     break;
                 int valueStartIndex = h.IndexOf(": ", System.StringComparison.Ordinal);
                 if (valueStartIndex == -1)
                     continue;
                 string key = h.Substring(0, valueStartIndex).ToLower();
                 string value = h.Substring(valueStartIndex + 2, h.Length - valueStartIndex - 2);
                 hDictionary.Add(key, value);
             }
             if (hDictionary.Count != 0)
             {
                 string pname =
                     hDictionary["content-disposition"].Substring(
                         hDictionary["content-disposition"].IndexOf("name") + 6);
                 pname = pname.Substring(0, pname.Length - 1);
                 string type = null;
                 try
                 {
                     type = hDictionary["content-type"];
                 }
                 catch (Exception)
                 {
                 }
                 LoadPostData(type, buf, pname);
             }
             buf.Dispose();
         }
     }
     else if (name != null)
     {
         string tempName = Path.GetTempFileName();
         var stream = new FileStream(tempName, FileMode.OpenOrCreate, FileAccess.Write);
         byte[] data = new byte[1024];
         int len;
         while((len = buffer.Read(data, 0, 1024)) > 0)
             stream.Write(data, 0, len);
         stream.Close();
         ((Dictionary<string, string>)_postData["FILES"]).Add(name, tempName);
     }
 }