TrinityCore
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CalendarPackets.cpp
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include "CalendarPackets.h"
19
21{
22 data << uint64(eventInfo.EventID);
23 data << eventInfo.EventName;
24 data << uint32(eventInfo.EventType);
25 data << eventInfo.Date;
26 data << uint32(eventInfo.Flags);
27 data << int32(eventInfo.TextureID);
28 data << eventInfo.OwnerGuid.WriteAsPacked();
29
30 return data;
31}
32
34{
35 data << int32(lockoutInfo.MapID);
36 data << uint32(lockoutInfo.DifficultyID);
37 data << int32(lockoutInfo.ExpireTime);
38 data << uint64(lockoutInfo.InstanceID);
39
40 return data;
41}
42
44{
45 data << uint64(inviteInfo.EventID);
46 data << uint64(inviteInfo.InviteID);
47 data << uint8(inviteInfo.Status);
48 data << uint8(inviteInfo.Moderator);
49 data << uint8(inviteInfo.InviteType);
50 data << inviteInfo.InviterGuid.WriteAsPacked();
51
52 return data;
53}
54
56{
57 data << uint32(holidayInfo.HolidayID);
58 data << uint32(holidayInfo.Region);
59 data << uint32(holidayInfo.Looping);
60 data << uint32(holidayInfo.Priority);
61 data << uint32(holidayInfo.FilterType);
62
63 for (uint8 j = 0; j < MAX_HOLIDAY_DATES; ++j)
64 data << holidayInfo.Date[j];
65
66 data.append(holidayInfo.Duration.data(), holidayInfo.Duration.size());
67 data.append(holidayInfo.CalendarFlags.data(), holidayInfo.CalendarFlags.size());
68
69 data << holidayInfo.TextureFilename;
70
71 return data;
72}
73
75{
76 data << int32(raidResetInfo.MapID);
77 data << int32(raidResetInfo.Duration);
78 data << int32(raidResetInfo.Offset);
79
80 return data;
81}
82
84{
85 data << inviteInfo.Guid.WriteAsPacked();
86 data << uint8(inviteInfo.Level);
87 data << uint8(inviteInfo.Status);
88 data << uint8(inviteInfo.Moderator);
89 data << uint8(inviteInfo.InviteType);
90 data << uint64(inviteInfo.InviteID);
91 data << inviteInfo.ResponseTime;
92 data << inviteInfo.Notes;
93
94 return data;
95}
96
98{
100}
101
103{
104 _worldPacket >> MinLevel;
105 _worldPacket >> MaxLevel;
106 _worldPacket >> MaxRankOrder;
107}
108
110{
111 _worldPacket >> ArenaTeamId;
112}
113
115{
116 buffer >> invite.Guid.ReadAsPacked();
117 buffer >> invite.Status;
118 buffer >> invite.Moderator;
119
120 return buffer;
121}
122
124{
125 _worldPacket >> Title;
126 _worldPacket >> Description;
127 _worldPacket >> EventType;
128 _worldPacket.read_skip<uint8>(); // Repeatable
129 _worldPacket >> MaxSize;
130 _worldPacket >> TextureID;
131 _worldPacket >> Time;
132 _worldPacket >> LockDate;
133 _worldPacket >> Flags;
134 Invites.resize(_worldPacket.read<uint32>());
135 for (CalendarAddEventInviteInfo& invite : Invites)
136 _worldPacket >> invite;
137}
138
140{
141 _worldPacket >> EventID;
142 _worldPacket >> ModeratorID;
143 _worldPacket >> Title;
144 _worldPacket >> Description;
145 _worldPacket >> EventType;
146 _worldPacket.read_skip<uint8>(); // Repeatable
147 _worldPacket >> MaxSize;
148 _worldPacket >> TextureID;
149 _worldPacket >> Time;
150 _worldPacket >> LockDate;
151 _worldPacket >> Flags;
152}
153
155{
156 _worldPacket >> EventID;
157 _worldPacket >> ModeratorID;
158 _worldPacket >> IsSignUp;
159}
160
162{
163 _worldPacket >> EventID;
164 _worldPacket >> ModeratorID;
165 _worldPacket >> Date;
166}
167
169{
170 _worldPacket >> EventID;
171 _worldPacket >> InviteID;
172 _worldPacket >> Status;
173}
174
176{
177 _worldPacket >> EventID;
178 _worldPacket >> ModeratorID;
179 _worldPacket >> Name;
180 _worldPacket >> Creating;
181 _worldPacket >> IsSignUp;
182}
183
185{
186 _worldPacket >> EventID;
187 _worldPacket >> Tentative;
188}
189
191{
192 _worldPacket >> Guid.ReadAsPacked();
193 _worldPacket >> InviteID;
194 _worldPacket >> ModeratorID;
195 _worldPacket >> EventID;
196}
197
199{
200 _worldPacket >> Guid.ReadAsPacked();
201 _worldPacket >> EventID;
202 _worldPacket >> InviteID;
203 _worldPacket >> ModeratorID;
204 _worldPacket >> Status;
205}
206
208{
209 _worldPacket >> MapID;
210 _worldPacket >> DifficultyID;
211 _worldPacket >> Extend;
212}
213
215{
216 _worldPacket >> Guid.ReadAsPacked();
217 _worldPacket >> EventID;
218 _worldPacket >> InviteID;
219 _worldPacket >> ModeratorID;
220 _worldPacket >> Status;
221}
222
224{
225 _worldPacket << InviteGuid.WriteAsPacked();
226 _worldPacket << uint64(EventID);
227 _worldPacket << uint64(InviteID);
228 _worldPacket << uint8(Level);
229 _worldPacket << uint8(Status);
230 _worldPacket << uint8(Type);
231 if (Type == 1)
232 _worldPacket << ResponseTime;
233
234 _worldPacket << uint8(ClearPending);
235
236 return &_worldPacket;
237}
238
240{
241 _worldPacket << uint32(Invites.size());
242 for (CalendarSendCalendarInviteInfo const& invite : Invites)
243 _worldPacket << invite;
244
245 _worldPacket << uint32(Events.size());
246 for (CalendarSendCalendarEventInfo const& event : Events)
247 _worldPacket << event;
248
249 _worldPacket << uint32(ServerNow);
250 _worldPacket << ServerTime;
251
252 _worldPacket << uint32(RaidLockouts.size());
253 for (CalendarSendCalendarRaidLockoutInfo const& lockout : RaidLockouts)
254 _worldPacket << lockout;
255
256 _worldPacket << uint32(RaidOrigin);
257
258 _worldPacket << uint32(RaidResets.size());
259 for (CalendarSendCalendarRaidResetInfo const& reset : RaidResets)
260 _worldPacket << reset;
261
262 _worldPacket << uint32(Holidays.size());
263 for (CalendarSendCalendarHolidayInfo const& holiday : Holidays)
264 _worldPacket << holiday;
265
266 return &_worldPacket;
267}
268
270{
271 _worldPacket << uint8(EventType);
272 _worldPacket << OwnerGuid.WriteAsPacked();
273 _worldPacket << uint64(EventID);
274 _worldPacket << EventName;
275 _worldPacket << Description;
276 _worldPacket << uint8(GetEventType);
277 _worldPacket << uint8(CALENDAR_REPEAT_NEVER); // repeatable
278 _worldPacket << uint32(CALENDAR_MAX_INVITES);
279 _worldPacket << int32(TextureID);
280 _worldPacket << uint32(Flags);
281 _worldPacket << Date;
282 _worldPacket << LockDate;
283 _worldPacket << uint32(EventGuildID);
284 _worldPacket << uint32(Invites.size());
285 for (CalendarEventInviteInfo const& invite : Invites)
286 _worldPacket << invite;
287
288 return &_worldPacket;
289}
290
292{
293 _worldPacket << uint64(EventID);
294 _worldPacket << EventName;
295 _worldPacket << Date;
296 _worldPacket << uint32(Flags);
297 _worldPacket << uint32(EventType);
298 _worldPacket << int32(TextureID);
299 _worldPacket << uint64(InviteID);
300 _worldPacket << uint8(Status);
301 _worldPacket << uint8(ModeratorStatus);
302 _worldPacket << OwnerGuid.WriteAsPacked();
303 _worldPacket << InvitedByGuid.WriteAsPacked();
304
305 return &_worldPacket;
306}
307
309{
310 _worldPacket << InviteGuid.WriteAsPacked();
311 _worldPacket << uint64(EventID);
312 _worldPacket << Date;
313 _worldPacket << uint32(Flags);
314 _worldPacket << uint8(Status);
315 _worldPacket << uint8(ClearPending);
316 _worldPacket << ResponseTime;
317
318 return &_worldPacket;
319}
320
322{
323 _worldPacket << InviteGuid.WriteAsPacked();
324 _worldPacket << uint64(EventID);
325 _worldPacket << uint32(Flags);
326 _worldPacket << uint8(ClearPending);
327
328 return &_worldPacket;
329}
330
332{
333 _worldPacket << InviteGuid.WriteAsPacked();
334 _worldPacket << uint64(EventID);
335 _worldPacket << uint8(Status);
336 _worldPacket << uint8(ClearPending);
337
338 return &_worldPacket;
339}
340
342{
343 _worldPacket << uint64(EventID);
344 _worldPacket << Date;
345 _worldPacket << uint32(Flags);
346 _worldPacket << uint8(Status);
347
348 return &_worldPacket;
349}
350
352{
353 _worldPacket << uint8(ClearPending);
354 _worldPacket << uint64(EventID);
355 _worldPacket << OriginalDate;
356 _worldPacket << uint32(Flags);
357 _worldPacket << Date;
358 _worldPacket << uint8(EventType);
359 _worldPacket << uint32(TextureID);
360 _worldPacket << EventName;
361 _worldPacket << Description;
362 _worldPacket << uint8(CALENDAR_REPEAT_NEVER); // repeatable
363 _worldPacket << uint32(CALENDAR_MAX_INVITES);
364 _worldPacket << LockDate;
365
366 return &_worldPacket;
367}
368
370{
371 _worldPacket << uint8(ClearPending);
372 _worldPacket << uint64(EventID);
373 _worldPacket << Date;
374
375 return &_worldPacket;
376}
377
379{
380 _worldPacket << uint32(NumPending);
381 return &_worldPacket;
382}
383
385{
386 _worldPacket << uint32(Command);
387 _worldPacket << "";
388 _worldPacket << Name;
389 _worldPacket << uint32(Result);
390
391 return &_worldPacket;
392}
393
395{
396 _worldPacket << ServerTime;
397 _worldPacket << int32(MapID);
398 _worldPacket << uint32(DifficultyID);
399 _worldPacket << int32(TimeRemaining);
400 _worldPacket << uint64(InstanceID);
401
402 return &_worldPacket;
403}
404
406{
407 _worldPacket << int32(MapID);
408 _worldPacket << uint32(DifficultyID);
409 _worldPacket << int32(TimeRemaining);
410 _worldPacket << uint64(InstanceID);
411
412 return &_worldPacket;
413}
414
416{
417 _worldPacket << ServerTime;
418 _worldPacket << int32(MapID);
419 _worldPacket << uint32(DifficultyID);
420 _worldPacket << int32(OldTimeRemaining);
421 _worldPacket << int32(NewTimeRemaining);
422
423 return &_worldPacket;
424}
425
427{
428 _worldPacket << uint32(Invites.size());
429 for (CalendarEventInitialInviteInfo const& invite : Invites)
430 {
431 _worldPacket << invite.InviteGuid.WriteAsPacked();
432 _worldPacket << uint8(invite.Level);
433 }
434
435 return &_worldPacket;
436}
437
439{
440 _worldPacket << uint64(EventID);
441 _worldPacket << Date;
442 _worldPacket << uint32(Flags);
443 _worldPacket << uint8(Status);
444
445 return &_worldPacket;
446}
447
449{
450 _worldPacket << uint64(EventID);
451 _worldPacket << Notes;
452
453 return &_worldPacket;
454}
455
457{
458 _worldPacket << InviteGuid.WriteAsPacked();
459 _worldPacket << uint64(EventID);
460 _worldPacket << Notes;
461 _worldPacket << uint8(ClearPending);
462
463 return &_worldPacket;
464}
465
467{
468 _worldPacket >> InvitedByGUID;
469 _worldPacket >> EventID;
470 _worldPacket >> InviteID;
471}
@ CALENDAR_REPEAT_NEVER
Definition: CalendarMgr.h:73
@ CALENDAR_MAX_INVITES
Definition: CalendarMgr.h:135
ByteBuffer & operator<<(ByteBuffer &data, WorldPackets::Calendar::CalendarSendCalendarEventInfo const &eventInfo)
ByteBuffer & operator>>(ByteBuffer &buffer, WorldPackets::Calendar::CalendarAddEventInviteInfo &invite)
#define MAX_HOLIDAY_DATES
Definition: DBCStructure.h:861
uint8_t uint8
Definition: Define.h:135
int32_t int32
Definition: Define.h:129
uint64_t uint64
Definition: Define.h:132
uint32_t uint32
Definition: Define.h:133
Events
void append(T value)
Definition: ByteBuffer.h:129
PackedGuidWriter WriteAsPacked() const
Definition: ObjectGuid.h:153
PackedGuidReader ReadAsPacked()
Definition: ObjectGuid.h:148
WorldPacket const * Write() override
WorldPacket _worldPacket
Definition: Packet.h:42
std::array< int32, MAX_HOLIDAY_DURATIONS > Duration
std::array< WowTime, MAX_HOLIDAY_DATES > Date
std::array< int32, MAX_HOLIDAY_FLAGS > CalendarFlags