aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Player
diff options
context:
space:
mode:
authorSnapperRy <snapperryen@gmail.com>2016-07-19 09:02:01 +0200
committerShauren <shauren.trinity@gmail.com>2016-07-19 09:02:01 +0200
commitd4e15f1aac3159bb5e17808ee06efb847fdd4789 (patch)
tree32921e117bf7e9e2f3ad8c99811988a3494c57d5 /src/server/game/Entities/Player
parent2feb53ecb69d66bb6df3f48d9a5f4e6a00aec1f7 (diff)
Core/Mail: implement a way to specify NPC sender for mails when they should be different from the quest ender (#17601)
Diffstat (limited to 'src/server/game/Entities/Player')
-rw-r--r--src/server/game/Entities/Player/Player.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index a42fdea2b9f..b177a193afd 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -14983,7 +14983,10 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver,
{
/// @todo Poor design of mail system
SQLTransaction trans = CharacterDatabase.BeginTransaction();
- MailDraft(mail_template_id).SendMailTo(trans, this, questGiver, MAIL_CHECK_MASK_HAS_BODY, quest->GetRewMailDelaySecs());
+ if (quest->GetRewMailSenderEntry() != 0)
+ MailDraft(mail_template_id).SendMailTo(trans, this, quest->GetRewMailSenderEntry(), MAIL_CHECK_MASK_HAS_BODY, quest->GetRewMailDelaySecs());
+ else
+ MailDraft(mail_template_id).SendMailTo(trans, this, questGiver, MAIL_CHECK_MASK_HAS_BODY, quest->GetRewMailDelaySecs());
CharacterDatabase.CommitTransaction(trans);
}