public static void HandlePetBattleQueueStatus(Packet packet)
        {
            packet.ReadInt32("Status");

            var slotResultCount = packet.ReadInt32("SlotResultCount");

            LfgHandler.ReadCliRideTicket(packet, "RideTicket");

            for (int i = 0; i < slotResultCount; i++)
            {
                packet.ReadInt32("SlotResult", i);
            }

            var bit64 = packet.ReadBit("HasClientWaitTime");
            var bit56 = packet.ReadBit("HasAverageWaitTime");

            if (bit64)
            {
                packet.ReadInt32("ClientWaitTime");
            }

            if (bit56)
            {
                packet.ReadInt32("AverageWaitTime");
            }
        }
示例#2
0
 public static void HandleBattlefieldStatus_Failed(Packet packet)
 {
     LfgHandler.ReadCliRideTicket(packet);
     packet.ReadInt64("QueueID");
     packet.ReadInt32("Reason");
     packet.ReadPackedGuid128("ClientID");
 }
        public static void ReadBattlefieldStatus_Header(Packet packet, params object[] indexes)
        {
            LfgHandler.ReadCliRideTicket(packet, indexes);

            var queueIdCount = 0u;

            if (ClientVersion.AddedInVersion(ClientVersionBuild.V8_2_5_31921))
            {
                queueIdCount = packet.ReadUInt32();
            }
            else
            {
                packet.ReadUInt64("QueueID", indexes);
            }

            packet.ReadByte("RangeMin", indexes);
            packet.ReadByte("RangeMax", indexes);
            packet.ReadByte("TeamSize", indexes);
            packet.ReadInt32("InstanceID", indexes);
            for (var i = 0u; i < queueIdCount; ++i)
            {
                packet.ReadUInt64("QueueID", indexes, i);
            }

            packet.ResetBitReader();
            packet.ReadBit("RegisteredMatch", indexes);
            packet.ReadBit("TournamentRules", indexes);
        }
示例#4
0
        public static void Read5E3DFB(Packet packet, params object[] idx)
        {
            LfgHandler.ReadCliRideTicket(packet, "RideTicket", idx);

            var length = packet.ReadBits("32", 9, idx);

            packet.ResetBitReader();
            packet.ReadWoWString("32", length, idx);
        }
示例#5
0
        public static void ReadCliSupportTicketLFGListApplicant(Packet packet, params object[] idx)
        {
            LfgHandler.ReadCliRideTicket(packet, "RideTicket", idx);

            var length = packet.ReadBits(9);

            packet.ResetBitReader();
            packet.ReadWoWString("Comment", length, idx);
        }
示例#6
0
        public static void ReadBattlefieldStatus_Header(Packet packet, params object[] indexes)
        {
            LfgHandler.ReadCliRideTicket(packet);

            packet.ReadInt64("QueueID");
            packet.ReadByte("RangeMin");
            packet.ReadByte("RangeMax");
            packet.ReadByte("TeamSize");
            packet.ReadInt32("InstanceID");

            packet.ResetBitReader();
            packet.ReadBit("RegisteredMatch");
            packet.ReadBit("TournamentRules");
        }
示例#7
0
        public static void Read5E4383(Packet packet, params object[] idx)
        {
            LfgHandler.ReadCliRideTicket(packet, "RideTicket", idx);
            packet.ReadPackedGuid128("40", idx);
            packet.ReadPackedGuid128("56", idx);
            packet.ReadPackedGuid128("72", idx);

            var length88   = packet.ReadBits("88", 8, idx);
            var length217  = packet.ReadBits("217", 8, idx);
            var length1242 = packet.ReadBits("1242", 8, idx);

            packet.ResetBitReader();

            packet.ReadWoWString("88", length88, idx);
            packet.ReadWoWString("217", length217, idx);
            packet.ReadWoWString("1242", length1242, idx);
        }
示例#8
0
        public static void ReadCliSupportTicketLFGListSearchResult(Packet packet, params object[] idx)
        {
            LfgHandler.ReadCliRideTicket(packet, "RideTicket", idx);
            packet.ReadUInt32("GroupFinderActivityID", idx);
            packet.ReadPackedGuid128("LastTitleAuthorGuid", idx);
            packet.ReadPackedGuid128("LastDescriptionAuthorGuid", idx);
            packet.ReadPackedGuid128("LastVoiceChatAuthorGuid", idx);

            var length88   = packet.ReadBits(8);
            var length217  = packet.ReadBits(11);
            var length1242 = packet.ReadBits(8);

            packet.ResetBitReader();

            packet.ReadWoWString("Title", length88, idx);
            packet.ReadWoWString("Description", length217, idx);
            packet.ReadWoWString("VoiceChat", length1242, idx);
        }
示例#9
0
        public static void ReadCliSupportTicketLFGListSearchResult(Packet packet, params object[] idx)
        {
            LfgHandler.ReadCliRideTicket(packet, "RideTicket", idx);
            packet.ReadUInt32("GroupFinderActivityID", idx);
            packet.ReadPackedGuid128("LastTitleAuthorGuid", idx);
            packet.ReadPackedGuid128("LastDescriptionAuthorGuid", idx);
            packet.ReadPackedGuid128("LastVoiceChatAuthorGuid", idx);

            var titleLength       = packet.ReadBits(ClientVersion.AddedInVersion(ClientVersionBuild.V9_1_5_40772) ? 10 : 8);
            var descriptionLength = packet.ReadBits(11);
            var voiceChatLength   = packet.ReadBits(8);

            packet.ResetBitReader();

            packet.ReadWoWString("Title", titleLength, idx);
            packet.ReadWoWString("Description", descriptionLength, idx);
            packet.ReadWoWString("VoiceChat", voiceChatLength, idx);
        }
示例#10
0
        public static void HandleRequestPVPRewardsResponse61x(Packet packet)
        {
            packet.ReadUInt32("RewardPointsThisWeek");
            packet.ReadUInt32("MaxRewardPointsThisWeek");

            packet.ReadUInt32("RatedRewardPointsThisWeek");
            packet.ReadUInt32("RatedMaxRewardPointsThisWeek");

            packet.ReadUInt32("RandomRewardPointsThisWeek");
            packet.ReadUInt32("RandomMaxRewardPointsThisWeek");

            packet.ReadUInt32("ArenaRewardPointsThisWeek");
            packet.ReadUInt32("ArenaMaxRewardPointsThisWeek");

            packet.ReadUInt32("ArenaRewardPoints");
            packet.ReadUInt32("RatedRewardPoints");

            for (int i = 0; i < 2; i++)
            {
                LfgHandler.ReadLfgPlayerQuestReward(packet, i, "ShortageReward");
            }
        }
示例#11
0
 public static void HandleBattlefieldPort(Packet packet)
 {
     LfgHandler.ReadCliRideTicket(packet);
     packet.ReadBit("AcceptedInvite");
 }
示例#12
0
 public static void HandleBattlefieldStatus_None(Packet packet)
 {
     LfgHandler.ReadCliRideTicket(packet);
 }
 public static void HandleLeavePetBattleQueue(Packet packet)
 {
     LfgHandler.ReadCliRideTicket(packet, "RideTicket");
 }