diff options
author | Shauren <shauren.trinity@gmail.com> | 2017-06-10 00:06:07 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2017-06-10 00:06:07 +0200 |
commit | 01fd7d7fe9a7886cd02163eef16bb9fecc297ea2 (patch) | |
tree | 82da0bddae6a221cbef823da6748d59ebde7bdd2 /src/server/game/Handlers/MiscHandler.cpp | |
parent | 38baf3800b0506f3ee28238e3ee87d43be63ca76 (diff) |
Core/Quests: Fixed showing quest objective completion clientside for objective types 10, 11, 12 and 14
Diffstat (limited to 'src/server/game/Handlers/MiscHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/MiscHandler.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp index b70dce9a901..24369347dba 100644 --- a/src/server/game/Handlers/MiscHandler.cpp +++ b/src/server/game/Handlers/MiscHandler.cpp @@ -511,11 +511,12 @@ void WorldSession::HandleAreaTriggerOpcode(WorldPackets::AreaTrigger::AreaTrigge Quest const* qInfo = sObjectMgr->GetQuestTemplate(questId); if (qInfo && player->GetQuestStatus(questId) == QUEST_STATUS_INCOMPLETE) { - for (uint8 j = 0; j < qInfo->Objectives.size(); ++j) + for (QuestObjective const& obj : qInfo->Objectives) { - if (qInfo->Objectives[j].Type == QUEST_OBJECTIVE_AREATRIGGER) + if (obj.Type == QUEST_OBJECTIVE_AREATRIGGER && !player->IsQuestObjectiveComplete(obj)) { - player->SetQuestObjectiveData(qInfo, j, int32(true)); + player->SetQuestObjectiveData(obj, 1); + player->SendQuestUpdateAddCreditSimple(obj); break; } } |