mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-20 09:17:36 +01:00
Core/PacketIO: Fixed server time sent in CalendarRaidLockoutAdded
(cherry picked from commit b4778a4d72)
This commit is contained in:
@@ -30,7 +30,6 @@
|
||||
#include "StringConvert.h"
|
||||
#include "WorldSession.h"
|
||||
#include "WowTime.h"
|
||||
#include <sstream>
|
||||
|
||||
CalendarInvite::CalendarInvite() : _inviteId(1), _eventId(0), _invitee(), _senderGUID(), _responseTime(0),
|
||||
_status(CALENDAR_STATUS_INVITED), _rank(CALENDAR_RANK_PLAYER), _note() { }
|
||||
@@ -470,9 +469,7 @@ uint32 CalendarMgr::GetPlayerNumPending(ObjectGuid guid)
|
||||
|
||||
std::string CalendarEvent::BuildCalendarMailSubject(ObjectGuid remover) const
|
||||
{
|
||||
std::ostringstream strm;
|
||||
strm << remover.ToString() << ':' << _title;
|
||||
return strm.str();
|
||||
return Trinity::StringFormat("{}:{}", remover.ToString(), _title);
|
||||
}
|
||||
|
||||
std::string CalendarEvent::BuildCalendarMailBody(Player const* invitee) const
|
||||
@@ -528,7 +525,7 @@ void CalendarMgr::SendCalendarEventUpdateAlert(CalendarEvent const& calendarEven
|
||||
auto packetBuilder = [&](Player const* receiver)
|
||||
{
|
||||
WorldPackets::Calendar::CalendarEventUpdatedAlert packet;
|
||||
packet.ClearPending = true; // FIXME
|
||||
packet.ClearPending = calendarEvent.GetOwnerGUID() == receiver->GetGUID();
|
||||
packet.Date.SetUtcTimeFromUnixTime(calendarEvent.GetDate());
|
||||
packet.Date += receiver->GetSession()->GetTimezoneOffset();
|
||||
packet.Description = calendarEvent.GetDescription();
|
||||
@@ -556,7 +553,7 @@ void CalendarMgr::SendCalendarEventStatus(CalendarEvent const& calendarEvent, Ca
|
||||
auto packetBuilder = [&](Player const* receiver)
|
||||
{
|
||||
WorldPackets::Calendar::CalendarInviteStatus packet;
|
||||
packet.ClearPending = true; // FIXME
|
||||
packet.ClearPending = invite.GetInviteeGUID() == receiver->GetGUID();
|
||||
packet.Date.SetUtcTimeFromUnixTime(calendarEvent.GetDate());
|
||||
packet.Date += receiver->GetSession()->GetTimezoneOffset();
|
||||
packet.EventID = calendarEvent.GetEventId();
|
||||
@@ -578,7 +575,7 @@ void CalendarMgr::SendCalendarEventRemovedAlert(CalendarEvent const& calendarEve
|
||||
auto packetBuilder = [&](Player const* receiver)
|
||||
{
|
||||
WorldPackets::Calendar::CalendarEventRemovedAlert packet;
|
||||
packet.ClearPending = true; // FIXME
|
||||
packet.ClearPending = calendarEvent.GetOwnerGUID() == receiver->GetGUID();
|
||||
packet.Date.SetUtcTimeFromUnixTime(calendarEvent.GetDate());
|
||||
packet.Date += receiver->GetSession()->GetTimezoneOffset();
|
||||
packet.EventID = calendarEvent.GetEventId();
|
||||
|
||||
@@ -195,9 +195,6 @@ void WorldSession::HandleCalendarAddEvent(WorldPackets::Calendar::CalendarAddEve
|
||||
|
||||
void WorldSession::HandleCalendarUpdateEvent(WorldPackets::Calendar::CalendarUpdateEvent& calendarUpdateEvent)
|
||||
{
|
||||
ObjectGuid guid = _player->GetGUID();
|
||||
time_t oldEventTime = time_t(0);
|
||||
|
||||
calendarUpdateEvent.EventInfo.Time -= GetTimezoneOffset();
|
||||
|
||||
// prevent events in the past
|
||||
@@ -206,7 +203,7 @@ void WorldSession::HandleCalendarUpdateEvent(WorldPackets::Calendar::CalendarUpd
|
||||
|
||||
if (CalendarEvent* calendarEvent = sCalendarMgr->GetEvent(calendarUpdateEvent.EventInfo.EventID))
|
||||
{
|
||||
oldEventTime = calendarEvent->GetDate();
|
||||
time_t oldEventTime = calendarEvent->GetDate();
|
||||
|
||||
calendarEvent->SetType(CalendarEventType(calendarUpdateEvent.EventInfo.EventType));
|
||||
calendarEvent->SetFlags(calendarUpdateEvent.EventInfo.Flags);
|
||||
@@ -219,7 +216,7 @@ void WorldSession::HandleCalendarUpdateEvent(WorldPackets::Calendar::CalendarUpd
|
||||
sCalendarMgr->SendCalendarEventUpdateAlert(*calendarEvent, oldEventTime);
|
||||
}
|
||||
else
|
||||
sCalendarMgr->SendCalendarCommandResult(guid, CALENDAR_ERROR_EVENT_INVALID);
|
||||
sCalendarMgr->SendCalendarCommandResult(_player->GetGUID(), CALENDAR_ERROR_EVENT_INVALID);
|
||||
}
|
||||
|
||||
void WorldSession::HandleCalendarRemoveEvent(WorldPackets::Calendar::CalendarRemoveEvent& calendarRemoveEvent)
|
||||
@@ -561,7 +558,7 @@ void WorldSession::SendCalendarRaidLockoutAdded(InstanceLock const* lock)
|
||||
{
|
||||
WorldPackets::Calendar::CalendarRaidLockoutAdded calendarRaidLockoutAdded;
|
||||
calendarRaidLockoutAdded.InstanceID = lock->GetInstanceId();
|
||||
calendarRaidLockoutAdded.ServerTime = uint32(GameTime::GetGameTime());
|
||||
calendarRaidLockoutAdded.ServerTime = *GameTime::GetWowTime();
|
||||
calendarRaidLockoutAdded.MapID = int32(lock->GetMapId());
|
||||
calendarRaidLockoutAdded.DifficultyID = lock->GetDifficultyId();
|
||||
calendarRaidLockoutAdded.TimeRemaining = int32(std::chrono::duration_cast<Seconds>(lock->GetEffectiveExpiryTime() - GameTime::GetSystemTime()).count());
|
||||
|
||||
@@ -430,7 +430,7 @@ WorldPacket const* WorldPackets::Calendar::CalendarCommandResult::Write()
|
||||
WorldPacket const* WorldPackets::Calendar::CalendarRaidLockoutAdded::Write()
|
||||
{
|
||||
_worldPacket << uint64(InstanceID);
|
||||
_worldPacket << uint32(ServerTime);
|
||||
_worldPacket << ServerTime;
|
||||
_worldPacket << int32(MapID);
|
||||
_worldPacket << uint32(DifficultyID);
|
||||
_worldPacket << int32(TimeRemaining);
|
||||
|
||||
@@ -487,7 +487,7 @@ namespace WorldPackets
|
||||
uint64 InstanceID = 0;
|
||||
uint32 DifficultyID = 0;
|
||||
int32 TimeRemaining = 0;
|
||||
uint32 ServerTime = 0;
|
||||
WowTime ServerTime;
|
||||
int32 MapID = 0;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user