diff options
Diffstat (limited to 'src/server/game/Achievements/AchievementMgr.cpp')
| -rwxr-xr-x | src/server/game/Achievements/AchievementMgr.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 354ee8d1d3b..f72906ed951 100755 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -2139,6 +2139,23 @@ bool AchievementMgr::CanUpdateCriteria(AchievementCriteriaEntry const* criteria, if (unit->ToCreature()->GetCreatureType() != value) return false; break; + case ACHIEVEMENT_CRITERIA_ADDITIONAL_CONDITION_SOURCE_LEVEL: + if (GetPlayer()->getLevel() != value) + return false; + break; + case ACHIEVEMENT_CRITERIA_ADDITIONAL_CONDITION_TARGET_LEVEL: + if (!unit && unit->getLevel() != value) + return false; + break; + case ACHIEVEMENT_CRITERIA_ADDITIONAL_CONDITION_TARGET_HEALTH_PERCENT_BELOW: + if (!unit || unit->GetHealthPct() >= value) + return false; + break; + // generic, compare miscValue1 with DBC value + case ACHIEVEMENT_CRITERIA_ADDITIONAL_CONDITION_TITLE_BIT_INDEX: + if (miscValue1 != value) + return false; + break; default: break; } |
