Exemplo n.º 1
0
        public static void SendGetCharacterBroaucast(WorldCharacter pChar, FiestaLib.Networking.Packet pPacket)
        {
            ZoneConnection conn = Program.GetZoneByMap(pChar.Character.PositionInfo.Map);

            using (var packet = new InterPacket(InterHeader.GetBroadcastList))
            {
                packet.WriteString(pChar.Character.Name, 16);
                packet.WriteInt(pPacket.ToNormalArray().Length);
                packet.WriteBytes(pPacket.ToNormalArray());
                conn.SendPacket(packet);
            }
        }
Exemplo n.º 2
0
        public static void GetList(ZoneConnection pConnection, InterPacket pPacket)
        {
            int count, packetlenght;

            byte[] SendPacket;

            if (!pPacket.TryReadInt(out packetlenght))
            {
                return;
            }

            if (!pPacket.TryReadBytes(packetlenght, out SendPacket))
            {
                return;
            }

            if (!pPacket.TryReadInt(out count))
            {
                return;
            }

            for (int i = 0; i < count; i++)
            {
                string charname;
                if (!pPacket.TryReadString(out charname, 16))
                {
                    return;
                }
                WorldClient client = ClientManager.Instance.GetClientByCharname(charname);
                if (client != null)
                {
                    using (var packet = new FiestaLib.Networking.Packet())
                    {
                        packet.WriteBytes(SendPacket);
                        client.SendPacket(packet);
                        Log.WriteLine(LogLevel.Debug, "Send borcast to {0}", charname);
                    }
                }
            }
        }
Exemplo n.º 3
0
        public static void GetList(ZoneConnection pConnection, InterPacket pPacket)
        {
            int count, packetlenght;
            byte[] SendPacket;

            if (!pPacket.TryReadInt(out packetlenght))
                return;

            if (!pPacket.TryReadBytes(packetlenght, out SendPacket))
                return;

            if (!pPacket.TryReadInt(out count))
                return;

            for (int i = 0; i < count; i++)
            {
                string charname;
                if(!pPacket.TryReadString(out charname,16))
                return;
               WorldClient client=  ClientManager.Instance.GetClientByCharname(charname);
                if(client !=null)
                using (var packet = new FiestaLib.Networking.Packet())
                {
                    packet.WriteBytes(SendPacket);
                    client.SendPacket(packet);
                    Log.WriteLine(LogLevel.Debug, "Send borcast to {0}", charname);
                }
            }
        }