diff options
author | SnapperRy <snapperryen@gmail.com> | 2016-07-19 09:02:01 +0200 |
---|---|---|
committer | joschiwald <joschiwald.trinity@gmail.com> | 2017-02-11 15:19:42 +0100 |
commit | 13bac539d6c19b366be714c712c1acbcd4d1fb16 (patch) | |
tree | 768d388f24719f3f6a3a5fca23a8d36558f8e584 /src/server/game/Globals/ObjectMgr.cpp | |
parent | 8d45095e28911a9e832467141ca30336b53f83a2 (diff) |
Core/Mail: implement a way to specify NPC sender for mails when they should be different from the quest ender (#17601)
(cherry picked from commit d4e15f1aac3159bb5e17808ee06efb847fdd4789)
# Conflicts:
# src/server/game/Quests/QuestDef.cpp
# src/server/game/Quests/QuestDef.h
Rename 9999_99_99_99_world.sql to sql/updates/world/3.3.5/2016_07_19_00_world.sql
(cherry picked from commit 3a77dec6e6fac47fedeb0aeddd09dfe12c3817a2)
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index ee7b23f9a88..05ebcbb8c04 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -3885,8 +3885,8 @@ void ObjectMgr::LoadQuests() // Load `quest_template_addon` // 0 1 2 3 4 5 6 7 8 result = WorldDatabase.Query("SELECT ID, MaxLevel, AllowableClasses, SourceSpellID, PrevQuestID, NextQuestID, ExclusiveGroup, RewardMailTemplateID, RewardMailDelay, " - //9 10 11 12 13 14 15 16 - "RequiredSkillID, RequiredSkillPoints, RequiredMinRepFaction, RequiredMaxRepFaction, RequiredMinRepValue, RequiredMaxRepValue, ProvidedItemCount, SpecialFlags FROM quest_template_addon"); + //9 10 11 12 13 14 15 16 17 + "RequiredSkillID, RequiredSkillPoints, RequiredMinRepFaction, RequiredMaxRepFaction, RequiredMinRepValue, RequiredMaxRepValue, ProvidedItemCount, RewardMailSenderEntry, SpecialFlags FROM quest_template_addon LEFT JOIN quest_mail_sender ON Id=QuestId"); if (!result) { @@ -4449,6 +4449,7 @@ void ObjectMgr::LoadQuests() qinfo->GetQuestId(), qinfo->RewardMailTemplateId, qinfo->RewardMailTemplateId); qinfo->RewardMailTemplateId = 0; // no mail will send to player qinfo->RewardMailDelay = 0; // no mail will send to player + qinfo->RewardMailSenderEntry = 0; } else if (usedMailTemplates.find(qinfo->RewardMailTemplateId) != usedMailTemplates.end()) { @@ -4457,6 +4458,7 @@ void ObjectMgr::LoadQuests() qinfo->GetQuestId(), qinfo->RewardMailTemplateId, qinfo->RewardMailTemplateId, used_mt_itr->second); qinfo->RewardMailTemplateId = 0; // no mail will send to player qinfo->RewardMailDelay = 0; // no mail will send to player + qinfo->RewardMailSenderEntry = 0; } else usedMailTemplates[qinfo->RewardMailTemplateId] = qinfo->GetQuestId(); |