aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Server/Packets/LFGPackets.cpp85
-rw-r--r--src/server/game/Server/Packets/PacketUtilities.h129
-rw-r--r--src/server/game/Server/Packets/PetitionPackets.cpp56
-rw-r--r--src/server/game/Server/Packets/PetitionPackets.h2
-rw-r--r--src/server/game/Server/Packets/TicketPackets.cpp10
5 files changed, 208 insertions, 74 deletions
diff --git a/src/server/game/Server/Packets/LFGPackets.cpp b/src/server/game/Server/Packets/LFGPackets.cpp
index 3dc36625568..adb44e0cc64 100644
--- a/src/server/game/Server/Packets/LFGPackets.cpp
+++ b/src/server/game/Server/Packets/LFGPackets.cpp
@@ -17,7 +17,9 @@
#include "LFGPackets.h"
-void WorldPackets::LFG::DFJoin::Read()
+namespace WorldPackets::LFG
+{
+void DFJoin::Read()
{
QueueAsGroup = _worldPacket.ReadBit();
bool hasPartyIndex = _worldPacket.ReadBit();
@@ -30,12 +32,12 @@ void WorldPackets::LFG::DFJoin::Read()
_worldPacket >> slot;
}
-void WorldPackets::LFG::DFLeave::Read()
+void DFLeave::Read()
{
_worldPacket >> Ticket;
}
-void WorldPackets::LFG::DFProposalResponse::Read()
+void DFProposalResponse::Read()
{
_worldPacket >> Ticket;
_worldPacket >> InstanceID;
@@ -43,7 +45,7 @@ void WorldPackets::LFG::DFProposalResponse::Read()
Accepted = _worldPacket.ReadBit();
}
-void WorldPackets::LFG::DFSetRoles::Read()
+void DFSetRoles::Read()
{
bool hasPartyIndex = _worldPacket.ReadBit();
_worldPacket >> RolesDesired;
@@ -51,24 +53,24 @@ void WorldPackets::LFG::DFSetRoles::Read()
_worldPacket >> PartyIndex.emplace();
}
-void WorldPackets::LFG::DFBootPlayerVote::Read()
+void DFBootPlayerVote::Read()
{
Vote = _worldPacket.ReadBit();
}
-void WorldPackets::LFG::DFTeleport::Read()
+void DFTeleport::Read()
{
TeleportOut = _worldPacket.ReadBit();
}
-void WorldPackets::LFG::DFGetSystemInfo::Read()
+void DFGetSystemInfo::Read()
{
Player = _worldPacket.ReadBit();
if (_worldPacket.ReadBit())
_worldPacket >> PartyIndex.emplace();
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGBlackListSlot const& lfgBlackListSlot)
+ByteBuffer& operator<<(ByteBuffer& data, LFGBlackListSlot const& lfgBlackListSlot)
{
data << uint32(lfgBlackListSlot.Slot);
data << uint32(lfgBlackListSlot.Reason);
@@ -79,20 +81,20 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGBlackListSlot con
return data;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGBlackList const& blackList)
+ByteBuffer& operator<<(ByteBuffer& data, LFGBlackList const& blackList)
{
data.WriteBit(blackList.PlayerGuid.has_value());
data << uint32(blackList.Slot.size());
if (blackList.PlayerGuid)
data << *blackList.PlayerGuid;
- for (WorldPackets::LFG::LFGBlackListSlot const& slot : blackList.Slot)
+ for (LFGBlackListSlot const& slot : blackList.Slot)
data << slot;
return data;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestRewardItem const& playerQuestRewardItem)
+ByteBuffer& operator<<(ByteBuffer& data, LfgPlayerQuestRewardItem const& playerQuestRewardItem)
{
data << int32(playerQuestRewardItem.ItemID);
data << int32(playerQuestRewardItem.Quantity);
@@ -100,7 +102,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestReward
return data;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestRewardCurrency const& playerQuestRewardCurrency)
+ByteBuffer& operator<<(ByteBuffer& data, LfgPlayerQuestRewardCurrency const& playerQuestRewardCurrency)
{
data << int32(playerQuestRewardCurrency.CurrencyID);
data << int32(playerQuestRewardCurrency.Quantity);
@@ -108,7 +110,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestReward
return data;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestReward const& playerQuestReward)
+ByteBuffer& operator<<(ByteBuffer& data, LfgPlayerQuestReward const& playerQuestReward)
{
data << uint8(playerQuestReward.Mask);
data << int32(playerQuestReward.RewardMoney);
@@ -117,13 +119,13 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestReward
data << uint32(playerQuestReward.Currency.size());
data << uint32(playerQuestReward.BonusCurrency.size());
- for (WorldPackets::LFG::LfgPlayerQuestRewardItem const& item : playerQuestReward.Item)
+ for (LfgPlayerQuestRewardItem const& item : playerQuestReward.Item)
data << item;
- for (WorldPackets::LFG::LfgPlayerQuestRewardCurrency const& currency : playerQuestReward.Currency)
+ for (LfgPlayerQuestRewardCurrency const& currency : playerQuestReward.Currency)
data << currency;
- for (WorldPackets::LFG::LfgPlayerQuestRewardCurrency const& bonusCurrency : playerQuestReward.BonusCurrency)
+ for (LfgPlayerQuestRewardCurrency const& bonusCurrency : playerQuestReward.BonusCurrency)
data << bonusCurrency;
data.WriteBit(playerQuestReward.RewardSpellID.has_value());
@@ -147,7 +149,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerQuestReward
return data;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerDungeonInfo const& playerDungeonInfo)
+ByteBuffer& operator<<(ByteBuffer& data, LfgPlayerDungeonInfo const& playerDungeonInfo)
{
data << uint32(playerDungeonInfo.Slot);
data << int32(playerDungeonInfo.CompletionQuantity);
@@ -170,13 +172,13 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgPlayerDungeonInfo
data.FlushBits();
data << playerDungeonInfo.Rewards;
- for (WorldPackets::LFG::LfgPlayerQuestReward const& shortageReward : playerDungeonInfo.ShortageReward)
+ for (LfgPlayerQuestReward const& shortageReward : playerDungeonInfo.ShortageReward)
data << shortageReward;
return data;
}
-WorldPacket const* WorldPackets::LFG::LfgPlayerInfo::Write()
+WorldPacket const* LfgPlayerInfo::Write()
{
_worldPacket << uint32(Dungeon.size());
_worldPacket << BlackList;
@@ -186,16 +188,16 @@ WorldPacket const* WorldPackets::LFG::LfgPlayerInfo::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LfgPartyInfo::Write()
+WorldPacket const* LfgPartyInfo::Write()
{
_worldPacket << uint32(Player.size());
- for (WorldPackets::LFG::LFGBlackList const& player : Player)
+ for (LFGBlackList const& player : Player)
_worldPacket << player;
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LFGUpdateStatus::Write()
+WorldPacket const* LFGUpdateStatus::Write()
{
_worldPacket << Ticket;
_worldPacket << uint8(SubType);
@@ -222,7 +224,7 @@ WorldPacket const* WorldPackets::LFG::LFGUpdateStatus::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::RoleChosen::Write()
+WorldPacket const* RoleChosen::Write()
{
_worldPacket << Player;
_worldPacket << uint8(RoleMask);
@@ -232,7 +234,7 @@ WorldPacket const* WorldPackets::LFG::RoleChosen::Write()
return &_worldPacket;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGRoleCheckUpdateMember const& lfgRoleCheckUpdateMember)
+ByteBuffer& operator<<(ByteBuffer& data, LFGRoleCheckUpdateMember const& lfgRoleCheckUpdateMember)
{
data << lfgRoleCheckUpdateMember.Guid;
data << uint8(lfgRoleCheckUpdateMember.RolesDesired);
@@ -243,7 +245,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGRoleCheckUpdateMe
return data;
}
-WorldPacket const* WorldPackets::LFG::LFGRoleCheckUpdate::Write()
+WorldPacket const* LFGRoleCheckUpdate::Write()
{
_worldPacket << uint8(PartyIndex);
_worldPacket << uint8(RoleCheckStatus);
@@ -268,7 +270,7 @@ WorldPacket const* WorldPackets::LFG::LFGRoleCheckUpdate::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LFGJoinResult::Write()
+WorldPacket const* LFGJoinResult::Write()
{
_worldPacket << Ticket;
_worldPacket << uint8(Result);
@@ -289,7 +291,7 @@ WorldPacket const* WorldPackets::LFG::LFGJoinResult::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LFGQueueStatus::Write()
+WorldPacket const* LFGQueueStatus::Write()
{
_worldPacket << Ticket;
_worldPacket << uint32(Slot);
@@ -306,7 +308,7 @@ WorldPacket const* WorldPackets::LFG::LFGQueueStatus::Write()
return &_worldPacket;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGPlayerRewards const& lfgPlayerRewards)
+ByteBuffer& operator<<(ByteBuffer& data, LFGPlayerRewards const& lfgPlayerRewards)
{
data.WriteBit(lfgPlayerRewards.RewardItem.has_value());
data.WriteBit(lfgPlayerRewards.RewardCurrency.has_value());
@@ -321,7 +323,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGPlayerRewards con
return data;
}
-WorldPacket const* WorldPackets::LFG::LFGPlayerReward::Write()
+WorldPacket const* LFGPlayerReward::Write()
{
_worldPacket << uint32(QueuedSlot);
_worldPacket << uint32(ActualSlot);
@@ -335,31 +337,31 @@ WorldPacket const* WorldPackets::LFG::LFGPlayerReward::Write()
return &_worldPacket;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LfgBootInfo const& lfgBootInfo)
+ByteBuffer& operator<<(ByteBuffer& data, LfgBootInfo const& lfgBootInfo)
{
- data.WriteBit(lfgBootInfo.VoteInProgress);
- data.WriteBit(lfgBootInfo.VotePassed);
- data.WriteBit(lfgBootInfo.MyVoteCompleted);
- data.WriteBit(lfgBootInfo.MyVote);
- data.WriteBits(lfgBootInfo.Reason.length(), 8);
+ data << Bits<1>(lfgBootInfo.VoteInProgress);
+ data << Bits<1>(lfgBootInfo.VotePassed);
+ data << Bits<1>(lfgBootInfo.MyVoteCompleted);
+ data << Bits<1>(lfgBootInfo.MyVote);
+ data << SizedString::BitsSize<8>(lfgBootInfo.Reason);
data << lfgBootInfo.Target;
data << uint32(lfgBootInfo.TotalVotes);
data << uint32(lfgBootInfo.BootVotes);
data << int32(lfgBootInfo.TimeLeft);
data << uint32(lfgBootInfo.VotesNeeded);
- data.WriteString(lfgBootInfo.Reason);
+ data << SizedString::Data(lfgBootInfo.Reason);
return data;
}
-WorldPacket const* WorldPackets::LFG::LfgBootPlayer::Write()
+WorldPacket const* LfgBootPlayer::Write()
{
_worldPacket << Info;
return &_worldPacket;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGProposalUpdatePlayer const& lfgProposalUpdatePlayer)
+ByteBuffer& operator<<(ByteBuffer& data, LFGProposalUpdatePlayer const& lfgProposalUpdatePlayer)
{
data << uint8(lfgProposalUpdatePlayer.Roles);
data.WriteBit(lfgProposalUpdatePlayer.Me);
@@ -372,7 +374,7 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::LFG::LFGProposalUpdatePla
return data;
}
-WorldPacket const* WorldPackets::LFG::LFGProposalUpdate::Write()
+WorldPacket const* LFGProposalUpdate::Write()
{
_worldPacket << Ticket;
_worldPacket << uint64(InstanceID);
@@ -394,17 +396,18 @@ WorldPacket const* WorldPackets::LFG::LFGProposalUpdate::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LFGOfferContinue::Write()
+WorldPacket const* LFGOfferContinue::Write()
{
_worldPacket << uint32(Slot);
return &_worldPacket;
}
-WorldPacket const* WorldPackets::LFG::LFGTeleportDenied::Write()
+WorldPacket const* LFGTeleportDenied::Write()
{
_worldPacket.WriteBits(Reason, 4);
_worldPacket.FlushBits();
return &_worldPacket;
}
+}
diff --git a/src/server/game/Server/Packets/PacketUtilities.h b/src/server/game/Server/Packets/PacketUtilities.h
index ae28e15606e..234804fc060 100644
--- a/src/server/game/Server/Packets/PacketUtilities.h
+++ b/src/server/game/Server/Packets/PacketUtilities.h
@@ -388,6 +388,35 @@ namespace WorldPackets
template<typename T>
inline OptionalInitReaderWriter<T> OptionalInit(Optional<T>& value) { return { value }; }
+ template<typename T>
+ struct PtrInitWriter
+ {
+ std::unique_ptr<T> const& Ptr;
+
+ friend inline ByteBuffer& operator<<(ByteBuffer& data, PtrInitWriter const& opt)
+ {
+ data.WriteBit(opt.Ptr != nullptr);
+ return data;
+ }
+ };
+
+ template<typename T>
+ struct PtrInitReaderWriter : PtrInitWriter<T>
+ {
+ friend inline ByteBuffer& operator>>(ByteBuffer& data, PtrInitReaderWriter const& opt)
+ {
+ if (data.ReadBit())
+ const_cast<std::unique_ptr<T>&>(opt.Ptr) = std::make_unique<T>();
+ return data;
+ }
+ };
+
+ template<typename T>
+ inline PtrInitWriter<T> OptionalInit(std::unique_ptr<T> const& value) { return { value }; }
+
+ template<typename T>
+ inline PtrInitReaderWriter<T> OptionalInit(std::unique_ptr<T>& value) { return { value }; }
+
template<uint32 BitCount, typename T>
struct BitsWriter
{
@@ -443,6 +472,106 @@ namespace WorldPackets
template<uint32 BitCount, typename Container>
inline BitsSizeReaderWriter<BitCount, Container> BitsSize(Container& value) { return { value }; }
+
+ namespace SizedString
+ {
+ template<uint32 BitCount, typename Container>
+ inline BitsSizeWriter<BitCount, Container> BitsSize(Container const& value) { return { value }; }
+
+ template<uint32 BitCount, typename Container>
+ inline BitsSizeReaderWriter<BitCount, Container> BitsSize(Container& value) { return { value }; }
+
+ template<typename Container>
+ struct SizedStringWriter
+ {
+ Container const& Value;
+
+ friend inline ByteBuffer& operator<<(ByteBuffer& data, SizedStringWriter const& string)
+ {
+ data.WriteString(string.Value);
+ return data;
+ }
+ };
+
+ template<typename Container>
+ struct SizedStringReaderWriter : SizedStringWriter<Container>
+ {
+ friend inline ByteBuffer& operator>>(ByteBuffer& data, SizedStringReaderWriter const& string)
+ {
+ const_cast<Container&>(string.Value) = data.ReadString(string.Value.length());
+ return data;
+ }
+ };
+
+ template<typename Container>
+ inline SizedStringWriter<Container> Data(Container const& value) { return { value }; }
+
+ template<typename Container>
+ inline SizedStringReaderWriter<Container> Data(Container& value) { return { value }; }
+ }
+
+ // SizedCString (sends size + string + null terminator but only if not empty)
+ namespace SizedCString
+ {
+ template<uint32 BitCount, typename Container>
+ struct SizeWriter
+ {
+ Container const& Value;
+
+ friend inline ByteBuffer& operator<<(ByteBuffer& data, SizeWriter const& bits)
+ {
+ data.WriteBits(static_cast<uint32>(bits.Value.length() + 1), BitCount);
+ return data;
+ }
+ };
+
+ template<uint32 BitCount, typename Container>
+ struct SizeReaderWriter : SizeWriter<BitCount, Container>
+ {
+ friend inline ByteBuffer& operator>>(ByteBuffer& data, SizeReaderWriter const& bits)
+ {
+ if (uint32 bytesIncludingNullTerminator = data.ReadBits(BitCount); bytesIncludingNullTerminator > 1)
+ const_cast<Container&>(bits.Value).resize(bytesIncludingNullTerminator - 1);
+ return data;
+ }
+ };
+
+ template<uint32 BitCount, typename Container>
+ inline SizeWriter<BitCount, Container> BitsSize(Container const& value) { return { value }; }
+
+ template<uint32 BitCount, typename Container>
+ inline SizeReaderWriter<BitCount, Container> BitsSize(Container& value) { return { value }; }
+
+ template<typename Container>
+ struct DataWriter
+ {
+ Container const& Value;
+
+ friend inline ByteBuffer& operator<<(ByteBuffer& data, DataWriter const& string)
+ {
+ if (!string.Value.empty())
+ data << string.Value;
+ return data;
+ }
+ };
+
+ template<typename Container>
+ struct DataReaderWriter : DataWriter<Container>
+ {
+ friend inline ByteBuffer& operator>>(ByteBuffer& data, DataReaderWriter const& string)
+ {
+ const_cast<Container&>(string.Value) = data.ReadString(string.Value.length());
+ data.read_skip<char>(); // null terminator
+ return data;
+ }
+ };
+
+ template<typename Container>
+ inline DataWriter<Container> Data(Container const& value) { return { value }; }
+
+ template<typename Container>
+ inline DataReaderWriter<Container> Data(Container& value) { return { value }; }
+ };
}
#endif // PacketUtilities_h__
diff --git a/src/server/game/Server/Packets/PetitionPackets.cpp b/src/server/game/Server/Packets/PetitionPackets.cpp
index e1796af85e2..680813dab69 100644
--- a/src/server/game/Server/Packets/PetitionPackets.cpp
+++ b/src/server/game/Server/Packets/PetitionPackets.cpp
@@ -16,14 +16,17 @@
*/
#include "PetitionPackets.h"
+#include "PacketUtilities.h"
-void WorldPackets::Petition::QueryPetition::Read()
+namespace WorldPackets::Petition
+{
+void QueryPetition::Read()
{
_worldPacket >> PetitionID;
_worldPacket >> ItemGUID;
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Petition::PetitionInfo const& petitionInfo)
+ByteBuffer& operator<<(ByteBuffer& data, PetitionInfo const& petitionInfo)
{
data << int32(petitionInfo.PetitionID);
data << petitionInfo.Petitioner;
@@ -41,24 +44,24 @@ ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Petition::PetitionInfo co
data << int32(petitionInfo.StaticType);
data << uint32(petitionInfo.Muid);
- data.WriteBits(petitionInfo.Title.length(), 7);
- data.WriteBits(petitionInfo.BodyText.length(), 12);
+ data << SizedString::BitsSize<7>(petitionInfo.Title);
+ data << SizedString::BitsSize<12>(petitionInfo.BodyText);
- for (std::size_t i = 0; i < petitionInfo.Choicetext.size(); ++i)
- data.WriteBits(petitionInfo.Choicetext[i].length(), 6);
+ for (std::string const& choiceText : petitionInfo.Choicetext)
+ data << SizedString::BitsSize<6>(choiceText);
data.FlushBits();
- for (std::size_t i = 0; i < petitionInfo.Choicetext.size(); ++i)
- data.WriteString(petitionInfo.Choicetext[i]);
+ for (std::string const& choiceText : petitionInfo.Choicetext)
+ data << SizedString::Data(choiceText);
- data.WriteString(petitionInfo.Title);
- data.WriteString(petitionInfo.BodyText);
+ data << SizedString::Data(petitionInfo.Title);
+ data << SizedString::Data(petitionInfo.BodyText);
return data;
}
-WorldPacket const* WorldPackets::Petition::QueryPetitionResponse::Write()
+WorldPacket const* QueryPetitionResponse::Write()
{
_worldPacket << uint32(PetitionID);
_worldPacket.WriteBit(Allow);
@@ -70,12 +73,12 @@ WorldPacket const* WorldPackets::Petition::QueryPetitionResponse::Write()
return &_worldPacket;
}
-void WorldPackets::Petition::PetitionShowList::Read()
+void PetitionShowList::Read()
{
_worldPacket >> PetitionUnit;
}
-WorldPacket const* WorldPackets::Petition::ServerPetitionShowList::Write()
+WorldPacket const* ServerPetitionShowList::Write()
{
_worldPacket << Unit;
_worldPacket << Price;
@@ -83,7 +86,7 @@ WorldPacket const* WorldPackets::Petition::ServerPetitionShowList::Write()
return &_worldPacket;
}
-void WorldPackets::Petition::PetitionBuy::Read()
+void PetitionBuy::Read()
{
uint32 titleLen = _worldPacket.ReadBits(7);
@@ -92,12 +95,12 @@ void WorldPackets::Petition::PetitionBuy::Read()
Title = _worldPacket.ReadString(titleLen);
}
-void WorldPackets::Petition::PetitionShowSignatures::Read()
+void PetitionShowSignatures::Read()
{
_worldPacket >> Item;
}
-WorldPacket const* WorldPackets::Petition::ServerPetitionShowSignatures::Write()
+WorldPacket const* ServerPetitionShowSignatures::Write()
{
_worldPacket << Item;
_worldPacket << Owner;
@@ -114,13 +117,13 @@ WorldPacket const* WorldPackets::Petition::ServerPetitionShowSignatures::Write()
return &_worldPacket;
}
-void WorldPackets::Petition::SignPetition::Read()
+void SignPetition::Read()
{
_worldPacket >> PetitionGUID;
_worldPacket >> Choice;
}
-WorldPacket const* WorldPackets::Petition::PetitionSignResults::Write()
+WorldPacket const* PetitionSignResults::Write()
{
_worldPacket << Item;
_worldPacket << Player;
@@ -131,24 +134,24 @@ WorldPacket const* WorldPackets::Petition::PetitionSignResults::Write()
return &_worldPacket;
}
-WorldPacket const* WorldPackets::Petition::PetitionAlreadySigned::Write()
+WorldPacket const* PetitionAlreadySigned::Write()
{
_worldPacket << SignerGUID;
return &_worldPacket;
}
-void WorldPackets::Petition::DeclinePetition::Read()
+void DeclinePetition::Read()
{
_worldPacket >> PetitionGUID;
}
-void WorldPackets::Petition::TurnInPetition::Read()
+void TurnInPetition::Read()
{
_worldPacket >> Item;
}
-WorldPacket const* WorldPackets::Petition::TurnInPetitionResult::Write()
+WorldPacket const* TurnInPetitionResult::Write()
{
_worldPacket.WriteBits(Result, 4);
_worldPacket.FlushBits();
@@ -156,20 +159,20 @@ WorldPacket const* WorldPackets::Petition::TurnInPetitionResult::Write()
return &_worldPacket;
}
-void WorldPackets::Petition::OfferPetition::Read()
+void OfferPetition::Read()
{
_worldPacket >> ItemGUID;
_worldPacket >> TargetPlayer;
}
-WorldPacket const* WorldPackets::Petition::OfferPetitionError::Write()
+WorldPacket const* OfferPetitionError::Write()
{
_worldPacket << PlayerGUID;
return &_worldPacket;
}
-void WorldPackets::Petition::PetitionRenameGuild::Read()
+void PetitionRenameGuild::Read()
{
_worldPacket >> PetitionGuid;
@@ -179,7 +182,7 @@ void WorldPackets::Petition::PetitionRenameGuild::Read()
NewGuildName = _worldPacket.ReadString(nameLen);
}
-WorldPacket const* WorldPackets::Petition::PetitionRenameGuildResponse::Write()
+WorldPacket const* PetitionRenameGuildResponse::Write()
{
_worldPacket << PetitionGuid;
@@ -190,3 +193,4 @@ WorldPacket const* WorldPackets::Petition::PetitionRenameGuildResponse::Write()
return &_worldPacket;
}
+}
diff --git a/src/server/game/Server/Packets/PetitionPackets.h b/src/server/game/Server/Packets/PetitionPackets.h
index ec5f6a2c4b8..7fabe832191 100644
--- a/src/server/game/Server/Packets/PetitionPackets.h
+++ b/src/server/game/Server/Packets/PetitionPackets.h
@@ -241,6 +241,4 @@ namespace WorldPackets
}
}
-ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Petition::PetitionInfo const& petitionInfo);
-
#endif // PetitionPackets_h__
diff --git a/src/server/game/Server/Packets/TicketPackets.cpp b/src/server/game/Server/Packets/TicketPackets.cpp
index f13d1c2eb50..5d79e186412 100644
--- a/src/server/game/Server/Packets/TicketPackets.cpp
+++ b/src/server/game/Server/Packets/TicketPackets.cpp
@@ -51,14 +51,14 @@ WorldPacket const* GMTicketCaseStatus::Write()
_worldPacket << uint64(c.CharacterID);
_worldPacket << int32(c.WaitTimeOverrideMinutes);
- _worldPacket.WriteBits(c.Url.size(), 11);
- _worldPacket.WriteBits(c.WaitTimeOverrideMessage.size(), 10);
+ _worldPacket << SizedString::BitsSize<11>(c.Url);
+ _worldPacket << SizedString::BitsSize<10>(c.WaitTimeOverrideMessage);
+ _worldPacket.FlushBits();
- _worldPacket.WriteString(c.Url);
- _worldPacket.WriteString(c.WaitTimeOverrideMessage);
+ _worldPacket << SizedString::Data(c.Url);
+ _worldPacket << SizedString::Data(c.WaitTimeOverrideMessage);
}
- _worldPacket.FlushBits();
return &_worldPacket;
}