diff options
author | Duarte Duarte <dnpd.dd@gmail.com> | 2014-08-29 01:22:14 +0100 |
---|---|---|
committer | Duarte Duarte <dnpd.dd@gmail.com> | 2014-08-29 01:22:14 +0100 |
commit | b20b6dedf9b7de13a35f60c6f72f8a80ceed94e6 (patch) | |
tree | b2fce5adfa7d8e8bd667f17e6cef940c31dfdbff | |
parent | 82f67fd09b142232247f10dbc58e3f90ffd4df49 (diff) | |
parent | 01f9acda1073430d96c37021e47171e37e73df37 (diff) |
Merge pull request #12951 from Nyeriah/patch-dfq
Core/Players: Dungeon Finder quest rewards should be sent as a mail if t...
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 2876b4fc67d..d1495f02614 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -15296,6 +15296,19 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver, Item* item = StoreNewItem(dest, itemId, true, Item::GenerateItemRandomPropertyId(itemId)); SendNewItem(item, quest->RewardItemIdCount[i], true, false); } + else if (quest->IsDFQuest()) + { + MailSender sender(MAIL_CREATURE, 34337 /* The Postmaster */ ); + MailDraft draft("Recovered Item", "We recovered a lost item in the twisting nether and noted that it was yours.$B$BPlease find said object enclosed."); // This is the text used in Cataclysm, it probably wasn't changed. + SQLTransaction trans = CharacterDatabase.BeginTransaction(); + if (Item* item = Item::CreateItem(quest->RewardItemId[i], quest->RewardItemIdCount[i], 0)) + { + item->SaveToDB(trans); + draft.AddItem(item); + } + draft.SendMailTo(trans, MailReceiver(this, this->GetGUIDLow()), sender); + CharacterDatabase.CommitTransaction(trans); + } } } } |