Ejemplo n.º 1
0
        public static void HandleServerRealmUpdate(BattlenetPacket packet)
        {
            if (packet.Read <bool>(1))
            {
                packet.Read <uint>("Timezone", 32);
                packet.ReadSingle("Population");
                packet.Read <byte>("Lock", 8);
                packet.Read <uint>("Unk", 19);
                packet.Stream.AddValue("Type", packet.Read <uint>(32) + int.MinValue);
                packet.ReadString("Name", packet.Read <int>(10));
                if (packet.Read <bool>("Has version", 1))
                {
                    packet.ReadString("Version", packet.Read <int>(5));
                    packet.Read <uint>("RealmId4", 32);

                    var ip   = packet.ReadBytes(4);
                    var port = packet.ReadBytes(2);

                    Array.Reverse(port);

                    packet.Stream.AddValue("IP address", new IPAddress(ip));
                    packet.Stream.AddValue("Port", BitConverter.ToUInt16(port, 0));
                }

                packet.Read <byte>("Flags", 8);
            }

            packet.Read <byte>("Region", 8);
            packet.Read <short>("Unk2", 12);
            packet.Read <byte>("Battlegroup", 8);
            packet.Read <uint>("Battlegroup index", 32);
        }
Ejemplo n.º 2
0
        public static void HandleListUpdate(BattlenetPacket packet)
        {
            if (packet.ReadBoolean())
            {
                packet.Read <uint>("Category", 0, 32);
                packet.ReadSingle("Population");
                packet.Read <byte>("StateFlags", 0, 8);
                packet.ReadSkip(19);
                packet.Read <uint>("Type", int.MinValue, 32);
                packet.ReadString("Name", 0, 10);
                if (packet.ReadBoolean())
                {
                    packet.ReadString("Version", 0, 5, "PrivilegedData");
                    packet.Read <uint>("ConfigId", 0, 32, "PrivilegedData");

                    var ip   = packet.ReadBytes(4);
                    var port = packet.ReadBytes(2);

                    Array.Reverse(port);

                    packet.Stream.AddValue("Address", new IPEndPoint(new IPAddress(ip), BitConverter.ToUInt16(port, 0)), "PrivilegedData");
                }

                packet.Read <RealmInfoFlags>("InfoFlags", 0, 8);
            }

            packet.Read <byte>("Region", 0, 8);
            packet.ReadSkip(12);
            packet.Read <byte>("Site", 0, 8);
            packet.Read <uint>("Realm", 0, 32);
        }
Ejemplo n.º 3
0
        public static void HandleListUpdate(BattlenetPacket packet)
        {
            if (packet.ReadBoolean())
            {
                packet.Read<uint>("Category", 0, 32);
                packet.ReadSingle("Population");
                packet.Read<byte>("StateFlags", 0, 8);
                packet.ReadSkip(19);
                packet.Read<uint>("Type", int.MinValue, 32);
                packet.ReadString("Name", 0, 10);
                if (packet.ReadBoolean())
                {
                    packet.ReadString("Version", 0, 5, "PrivilegedData");
                    packet.Read<uint>("ConfigId", 0, 32, "PrivilegedData");

                    var ip = packet.ReadBytes(4);
                    var port = packet.ReadBytes(2);

                    Array.Reverse(port);

                    packet.Stream.AddValue("Address", new IPEndPoint(new IPAddress(ip), BitConverter.ToUInt16(port, 0)), "PrivilegedData");
                }

                packet.Read<RealmInfoFlags>("InfoFlags", 0, 8);
            }

            packet.Read<byte>("Region", 0, 8);
            packet.ReadSkip(12);
            packet.Read<byte>("Site", 0, 8);
            packet.Read<uint>("Realm", 0, 32);
        }
Ejemplo n.º 4
0
        public static void HandleServerRealmUpdate(BattlenetPacket packet)
        {
            if (!packet.Read<bool>(1))
                return;

            packet.Read<uint>("Timezone", 32);
            packet.ReadSingle("Population");
            packet.Read<byte>("Lock", 8);
            packet.Read<uint>("Unk", 19);
            packet.Stream.WriteLine(string.Format("Type: {0}", packet.Read<uint>(32) + int.MinValue));
            packet.ReadString("Name", packet.Read<int>(10));
            if (packet.Read<bool>("Has version", 1))
            {
                packet.ReadString("Version", packet.Read<int>(5));
                packet.Read<uint>("RealmId4", 32);

                var ip = packet.ReadBytes(4);
                var port = packet.ReadBytes(2);

                Array.Reverse(port);

                packet.Stream.WriteLine("IP address: {0}", new IPAddress(ip));
                packet.Stream.WriteLine("Port: {0}", BitConverter.ToUInt16(port, 0));
            }

            packet.Read<byte>("Flags", 8);
            packet.Read<byte>("Region", 8);
            packet.Read<short>("Unk2", 12);
            packet.Read<byte>("Battlegroup", 8);
            packet.Read<uint>("Battlegroup index", 32);
        }