41 _worldPacket <<
int32(Cases.size());
45 _worldPacket <<
int32(c.CaseID);
46 _worldPacket << c.CaseOpened;
47 _worldPacket <<
int32(c.CaseStatus);
48 _worldPacket <<
uint16(c.CfgRealmID);
49 _worldPacket <<
uint64(c.CharacterID);
50 _worldPacket <<
int32(c.WaitTimeOverrideMinutes);
52 _worldPacket.WriteBits(c.Url.size(), 11);
53 _worldPacket.WriteBits(c.WaitTimeOverrideMessage.size(), 10);
55 _worldPacket.WriteString(c.Url);
56 _worldPacket.WriteString(c.WaitTimeOverrideMessage);
59 _worldPacket.FlushBits();
65 _worldPacket >> CaseID;
71 uint32 noteLength = _worldPacket.ReadBits(24);
72 IsSuggestion = _worldPacket.ReadBit();
75 Note = _worldPacket.ReadString(noteLength - 1);
76 _worldPacket.read_skip<
char>();
100 bool hasReportLineIndex = data.
ReadBit();
103 for (
uint32 i = 0; i < linesCount; i++)
104 chatlog.
Lines.emplace_back(data);
106 if (hasReportLineIndex)
117 bool hasClubID = data.
ReadBit();
118 bool hasChannelGUID = data.
ReadBit();
119 bool hasRealmAddress = data.
ReadBit();
120 bool hasSlashCmd = data.
ReadBit();
158 for (
uint32 i = 0; i < linesCount; i++)
159 chatlog.
Lines.emplace_back(data);
168 data >> mail->MailID;
172 mail->MailSubject = data.
ReadString(subjectLength);
181 data >>
event->EventID;
182 data >>
event->InviteID;
203 data >> guild->GuildID;
204 guild->GuildName = data.
ReadString(nameLength);
211 lfgListSearchResult.emplace();
213 data >> lfgListSearchResult->RideTicket;
214 data >> lfgListSearchResult->GroupFinderActivityID;
215 data >> lfgListSearchResult->Unknown1007;
216 data >> lfgListSearchResult->LastTitleAuthorGuid;
217 data >> lfgListSearchResult->LastDescriptionAuthorGuid;
218 data >> lfgListSearchResult->LastVoiceChatAuthorGuid;
219 data >> lfgListSearchResult->ListingCreatorGuid;
220 data >> lfgListSearchResult->Unknown735;
226 lfgListSearchResult->Title = data.
ReadString(titleLength);
227 lfgListSearchResult->Description = data.
ReadString(descriptionLength);
228 lfgListSearchResult->VoiceChat = data.
ReadString(voiceChatLength);
235 lfgListApplicant.emplace();
237 data >> lfgListApplicant->RideTicket;
247 data >> clubInfo->ClubFinderPostingID;
248 data >> clubInfo->ClubID;
249 data >> clubInfo->ClubFinderGUID;
260 data >> unused->field_104;
261 unused->field_0 = data.
ReadString(field_0Length);
269 _worldPacket >> TargetCharacterGUID;
271 _worldPacket >> MajorCategory;
272 _worldPacket >> MinorCategoryFlags;
275 uint32 noteLength = _worldPacket.ReadBits(10);
276 bool hasMailInfo = _worldPacket.ReadBit();
277 bool hasCalendarInfo = _worldPacket.ReadBit();
278 bool hasPetInfo = _worldPacket.ReadBit();
279 bool hasGuildInfo = _worldPacket.ReadBit();
280 bool hasLFGListSearchResult = _worldPacket.ReadBit();
281 bool hasLFGListApplicant = _worldPacket.ReadBit();
282 bool hasClubMessage = _worldPacket.ReadBit();
283 bool hasClubFinderResult = _worldPacket.ReadBit();
284 bool hasUnk910 = _worldPacket.ReadBit();
286 _worldPacket.ResetBitPos();
290 CommunityMessage.emplace();
291 CommunityMessage->IsPlayerUsingVoice = _worldPacket.ReadBit();
292 _worldPacket.ResetBitPos();
295 _worldPacket >> HorusChatLog;
297 Note = _worldPacket.ReadString(noteLength);
303 _worldPacket >> CalenderInfo;
306 _worldPacket >> PetInfo;
309 _worldPacket >> GuildInfo;
311 if (hasLFGListSearchResult)
312 _worldPacket >> LFGListSearchResult;
314 if (hasLFGListApplicant)
315 _worldPacket >> LFGListApplicant;
317 if (hasClubFinderResult)
318 _worldPacket >> ClubFinderResult;
321 _worldPacket >> Unused910;
344 _worldPacket >> ComplaintType;
345 _worldPacket >> Offender;
347 switch (ComplaintType)
350 _worldPacket >> MailID;
353 _worldPacket >>
Chat;
356 _worldPacket >> EventGuid;
357 _worldPacket >> InviteGuid;
366 _worldPacket <<
uint32(ComplaintType);
367 _worldPacket <<
uint8(Result);
369 return &_worldPacket;
374 Type = _worldPacket.ReadBit();
375 uint32 diagLen = _worldPacket.ReadBits(12);
376 uint32 textLen = _worldPacket.ReadBits(10);
377 DiagInfo = _worldPacket.ReadString(diagLen);
378 Text = _worldPacket.ReadString(textLen);
std::optional< T > Optional
Optional helper class to wrap optional values within.
@ SUPPORT_SPAM_TYPE_CALENDAR
WorldPackets::Ticket::SupportTicketChatLog ChatLog
ByteBuffer & operator>>(ByteBuffer &data, WorldPackets::Ticket::SupportTicketHeader &header)
uint32 ReadBits(int32 bits)
std::string ReadString(uint32 length, bool requireValidUtf8=true)
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPackets::Timestamp Timestamp
SupportTicketChatLine(ByteBuffer &data)
Optional< uint32 > ReportLineIndex
Array< SupportTicketChatLine, 255 > Lines
Optional< ObjectGuid > ChannelGUID
SupportTicketHorusChatLine(ByteBuffer &data)
Optional< uint64 > ClubID
Optional< int32 > SlashCmd
Optional< SenderRealm > RealmAddress
WorldPackets::Timestamp Timestamp
Array< SupportTicketHorusChatLine, 255 > Lines