diff --git a/dGame/dComponents/MissionComponent.cpp b/dGame/dComponents/MissionComponent.cpp index 0760d8e4..ea03d0e0 100644 --- a/dGame/dComponents/MissionComponent.cpp +++ b/dGame/dComponents/MissionComponent.cpp @@ -99,17 +99,8 @@ void MissionComponent::AcceptMission(const uint32_t missionId, const bool skipCh mission->Accept(); this->m_Missions.insert_or_assign(missionId, mission); - - if (missionId == 1728) { - //Needs to send a mail - - auto address = m_Parent->GetSystemAddress(); - - Mail::HandleNotificationRequest(address, m_Parent->GetObjectID()); - } } - void MissionComponent::CompleteMission(const uint32_t missionId, const bool skipChecks, const bool yieldRewards) { // Get the mission first auto* mission = this->GetMission(missionId); diff --git a/dGame/dUtilities/Mail.cpp b/dGame/dUtilities/Mail.cpp index c4c39e49..db660916 100644 --- a/dGame/dUtilities/Mail.cpp +++ b/dGame/dUtilities/Mail.cpp @@ -169,7 +169,7 @@ namespace Mail { } void DataRequest::Handle() { - auto playerMail = Database::Get()->GetMailForPlayer(player->GetObjectID()); + auto playerMail = Database::Get()->GetMailForPlayer(player->GetObjectID(), 20); if (playerMail.size() > 0) { DataResponse response; @@ -284,14 +284,14 @@ void Mail::HandleMail(RakNet::BitStream& inStream, const SystemAddress& sysAddr, auto it = handlers.find(data.messageID); if (it != handlers.end()) { - auto mail_data = it->second(sysAddr, player); - if (!mail_data->Deserialize(inStream)) { - LOG_DEBUG("Error Reading Mail Data"); + auto request = it->second(sysAddr, player); + if (!request->Deserialize(inStream)) { + LOG_DEBUG("Error Reading Mail Request: %s", StringifiedEnum::ToString(data.messageID).data()); return; } - mail_data->Handle(); + request->Handle(); } else { - LOG_DEBUG("Unhandled Mail Packet with ID: %i", data.messageID); + LOG_DEBUG("Unhandled Mail Request with ID: %i", data.messageID); } } diff --git a/dGame/dUtilities/SlashCommands/GMZeroCommands.cpp b/dGame/dUtilities/SlashCommands/GMZeroCommands.cpp index 51fa6e15..09267694 100644 --- a/dGame/dUtilities/SlashCommands/GMZeroCommands.cpp +++ b/dGame/dUtilities/SlashCommands/GMZeroCommands.cpp @@ -12,6 +12,7 @@ #include "VanityUtilities.h" #include "WorldPackets.h" #include "ZoneInstanceManager.h" +#include "Database.h" // Components #include "BuffComponent.h" @@ -216,7 +217,7 @@ namespace GMZeroCommands { } void RequestMailCount(Entity* entity, const SystemAddress& sysAddr, const std::string args) { - Mail::HandleNotificationRequest(entity->GetSystemAddress(), entity->GetObjectID()); + Mail::NotificationResponse(Mail::eNotificationResponse::NewMail, Database::Get()->GetUnreadMailCount(entity->GetObjectID())).Send(sysAddr); } void InstanceInfo(Entity* entity, const SystemAddress& sysAddr, const std::string args) {