diff options
author | Shauren <shauren.trinity@gmail.com> | 2020-04-20 20:36:24 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2020-04-20 20:36:24 +0200 |
commit | aced88b09bd918b0ed17b6c5e8a6048788600d9d (patch) | |
tree | 80f699e135bdb890f12be5db99f49caec9e373cb /src/server/game/Mails/Mail.cpp | |
parent | 7ef9acd765feeecb3752359958f717896bcbe37a (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.cpp | 11 |
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 |