aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Mails/Mail.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2020-04-20 20:36:24 +0200
committerShauren <shauren.trinity@gmail.com>2020-04-20 20:36:24 +0200
commitaced88b09bd918b0ed17b6c5e8a6048788600d9d (patch)
tree80f699e135bdb890f12be5db99f49caec9e373cb /src/server/game/Mails/Mail.cpp
parent7ef9acd765feeecb3752359958f717896bcbe37a (diff)
Core/AuctionHouse: After taking a break at the start of patch 8.3 auction house is now back in business.
Diffstat (limited to 'src/server/game/Mails/Mail.cpp')
-rw-r--r--src/server/game/Mails/Mail.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/server/game/Mails/Mail.cpp b/src/server/game/Mails/Mail.cpp
index e54a623c8a4..00fb553d539 100644
--- a/src/server/game/Mails/Mail.cpp
+++ b/src/server/game/Mails/Mail.cpp
@@ -62,8 +62,8 @@ MailSender::MailSender(CalendarEvent* sender)
{
}
-MailSender::MailSender(AuctionEntry* sender)
- : m_messageType(MAIL_AUCTION), m_senderId(uint64(sender->GetHouseId())), m_stationery(MAIL_STATIONERY_AUCTION) { }
+MailSender::MailSender(AuctionHouseObject const* sender)
+ : m_messageType(MAIL_AUCTION), m_senderId(uint64(sender->GetAuctionHouseId())), m_stationery(MAIL_STATIONERY_AUCTION) { }
MailSender::MailSender(BlackMarketEntry* sender)
: m_messageType(MAIL_BLACKMARKET), m_senderId(sender->GetTemplate()->SellerNPC), m_stationery(MAIL_STATIONERY_AUCTION) { }
@@ -89,6 +89,11 @@ MailReceiver::MailReceiver(Player* receiver, ObjectGuid::LowType receiver_lowgui
ASSERT(!receiver || receiver->GetGUID().GetCounter() == receiver_lowguid);
}
+MailReceiver::MailReceiver(Player* receiver, ObjectGuid receiverGuid) : m_receiver(receiver), m_receiver_lowguid(receiverGuid.GetCounter())
+{
+ ASSERT(!receiver || receiver->GetGUID() == receiverGuid);
+}
+
MailDraft& MailDraft::AddItem(Item* item)
{
m_items[item->GetGUID().GetCounter()] = item;
@@ -182,7 +187,7 @@ void MailDraft::SendReturnToSender(uint32 sender_acc, ObjectGuid::LowType sender
void MailDraft::SendMailTo(CharacterDatabaseTransaction& trans, MailReceiver const& receiver, MailSender const& sender, MailCheckMask checked, uint32 deliver_delay)
{
Player* pReceiver = receiver.GetPlayer(); // can be NULL
- Player* pSender = ObjectAccessor::FindPlayer(ObjectGuid::Create<HighGuid::Player>(sender.GetSenderId()));
+ Player* pSender = sender.GetMailMessageType() == MAIL_NORMAL ? ObjectAccessor::FindPlayer(ObjectGuid::Create<HighGuid::Player>(sender.GetSenderId())) : nullptr;
if (pReceiver)
prepareItems(pReceiver, trans); // generate mail template items