aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Achievements/CriteriaHandler.cpp
diff options
context:
space:
mode:
authorGolrag <golrag.jeremy@gmail.com>2017-06-04 16:51:47 +0200
committerShauren <shauren.trinity@gmail.com>2017-06-04 16:52:53 +0200
commitae83739ac7b4a47703f0960e22ed0caf240a023c (patch)
treeeb55677d6e903add0c5e3a5b10cf0016b535abef /src/server/game/Achievements/CriteriaHandler.cpp
parent2922c23783e2db280fd3027485927b178ae75e04 (diff)
Core/Players: Implement basics for the honor system
Closes #18480 Closes #19277
Diffstat (limited to 'src/server/game/Achievements/CriteriaHandler.cpp')
-rw-r--r--src/server/game/Achievements/CriteriaHandler.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp
index eda31175b0b..b90a211e96f 100644
--- a/src/server/game/Achievements/CriteriaHandler.cpp
+++ b/src/server/game/Achievements/CriteriaHandler.cpp
@@ -502,6 +502,8 @@ void CriteriaHandler::UpdateCriteria(CriteriaTypes type, uint64 miscValue1 /*= 0
case CRITERIA_TYPE_ON_LOGIN:
case CRITERIA_TYPE_PLACE_GARRISON_BUILDING:
case CRITERIA_TYPE_OWN_BATTLE_PET_COUNT:
+ case CRITERIA_TYPE_HONOR_LEVEL_REACHED:
+ case CRITERIA_TYPE_PRESTIGE_REACHED:
SetCriteriaProgress(criteria, 1, referencePlayer, PROGRESS_ACCUMULATE);
break;
// std case: increment at miscValue1
@@ -771,8 +773,6 @@ void CriteriaHandler::UpdateCriteria(CriteriaTypes type, uint64 miscValue1 /*= 0
case CRITERIA_TYPE_RECRUIT_GARRISON_FOLLOWER_WITH_QUALITY:
case CRITERIA_TYPE_ARTIFACT_POWER_EARNED:
case CRITERIA_TYPE_ARTIFACT_TRAITS_UNLOCKED:
- case CRITERIA_TYPE_HONOR_LEVEL_REACHED:
- case CRITERIA_TYPE_PRESTIGE_REACHED:
case CRITERIA_TYPE_ORDER_HALL_TALENT_LEARNED:
case CRITERIA_TYPE_APPEARANCE_UNLOCKED_BY_SLOT:
case CRITERIA_TYPE_ORDER_HALL_RECRUIT_TROOP:
@@ -1142,6 +1142,8 @@ bool CriteriaHandler::IsCompletedCriteria(Criteria const* criteria, uint64 requi
case CRITERIA_TYPE_EXPLORE_AREA:
case CRITERIA_TYPE_RECRUIT_GARRISON_FOLLOWER:
case CRITERIA_TYPE_OWN_BATTLE_PET:
+ case CRITERIA_TYPE_HONOR_LEVEL_REACHED:
+ case CRITERIA_TYPE_PRESTIGE_REACHED:
return progress->Counter >= 1;
case CRITERIA_TYPE_LEARN_SKILL_LEVEL:
return progress->Counter >= (requiredAmount * 75);
@@ -1749,6 +1751,14 @@ bool CriteriaHandler::AdditionalRequirementsSatisfied(ModifierTreeNode const* tr
return false;
break;
}
+ case CRITERIA_ADDITIONAL_CONDITION_HONOR_LEVEL: // 193
+ if (!referencePlayer || referencePlayer->GetHonorLevel() != reqValue)
+ return false;
+ break;
+ case CRITERIA_ADDITIONAL_CONDITION_PRESTIGE_LEVEL: // 194
+ if (!referencePlayer || referencePlayer->GetPrestigeLevel() != reqValue)
+ return false;
+ break;
default:
break;
}