aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Achievements/CriteriaHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-03-13 22:32:48 +0100
committerShauren <shauren.trinity@gmail.com>2021-03-13 22:32:48 +0100
commit7cc70e29aed04b879e5cf0a9384328b4accb3146 (patch)
tree8b0d4e4afca0e19f87892fafcc0c143f60271f12 /src/server/game/Achievements/CriteriaHandler.cpp
parentb94851b824f6e4d7f7a7cd01a4c99e02b1e86b97 (diff)
Core/Criteria: Implemented CRITERIA_ADDITIONAL_CONDITION_COMPLETED_QUEST_OBJECTIVE
Diffstat (limited to 'src/server/game/Achievements/CriteriaHandler.cpp')
-rw-r--r--src/server/game/Achievements/CriteriaHandler.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp
index c70efd042dd..fc3e36a266b 100644
--- a/src/server/game/Achievements/CriteriaHandler.cpp
+++ b/src/server/game/Achievements/CriteriaHandler.cpp
@@ -2074,6 +2074,15 @@ bool CriteriaHandler::ModifierSatisfied(ModifierTreeEntry const* modifier, uint6
if (referencePlayer->GetQuestStatus(reqValue) != QUEST_STATUS_COMPLETE)
return false;
break;
+ case CRITERIA_ADDITIONAL_CONDITION_COMPLETED_QUEST_OBJECTIVE: // 112
+ {
+ QuestObjective const* objective = sObjectMgr->GetQuestObjective(reqValue);
+ if (!objective)
+ return false;
+ if (referencePlayer->GetQuestRewardStatus(objective->QuestID) || !referencePlayer->IsQuestObjectiveComplete(*objective))
+ return false;
+ break;
+ }
case CRITERIA_ADDITIONAL_CONDITION_EXPLORED_AREA: // 113
{
AreaTableEntry const* areaTable = sAreaTableStore.LookupEntry(reqValue);