aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorclick <clickvd@gonnamakeyou.com>2011-06-15 11:16:40 -0700
committerclick <clickvd@gonnamakeyou.com>2011-06-15 11:16:40 -0700
commit8b14aff9097bd18838f6f1322a0aa2822574c9f4 (patch)
treea9ea4498070eedc5066279dd58c845f1653a7285 /src
parente854fd34d2e75cb7381af8922009622c22b3f16a (diff)
parentbeac21226c2fbfffaec1d19fc7bef83166e18753 (diff)
Merge pull request #2007 from Imprtat/master
Сheck quest conditions in effect QuestComplete
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 28a92373097..3255f818ddf 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -5907,6 +5907,10 @@ void Spell::EffectQuestComplete(SpellEffIndex effIndex)
uint32 quest_id = m_spellInfo->EffectMiscValue[effIndex];
if (quest_id)
{
+ Quest* pQuest = sObjectMgr->GetQuestTemplate(quest_id);
+ if (!pQuest || !pPlayer->CanTakeQuest(pQuest, false))
+ return;
+
uint16 log_slot = pPlayer->FindQuestSlot(quest_id);
if (log_slot < MAX_QUEST_LOG_SIZE)
pPlayer->AreaExploredOrEventHappens(quest_id);