diff options
author | click <clickvd@gonnamakeyou.com> | 2011-06-15 11:16:40 -0700 |
---|---|---|
committer | click <clickvd@gonnamakeyou.com> | 2011-06-15 11:16:40 -0700 |
commit | 8b14aff9097bd18838f6f1322a0aa2822574c9f4 (patch) | |
tree | a9ea4498070eedc5066279dd58c845f1653a7285 /src | |
parent | e854fd34d2e75cb7381af8922009622c22b3f16a (diff) | |
parent | beac21226c2fbfffaec1d19fc7bef83166e18753 (diff) |
Merge pull request #2007 from Imprtat/master
Сheck quest conditions in effect QuestComplete
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Spells/SpellEffects.cpp | 4 |
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); |