diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Achievements/AchievementMgr.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 33cf600a8e5..f470c10c6bb 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -770,12 +770,6 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui for (AchievementCriteriaEntry const* achievementCriteria : achievementCriteriaList) { AchievementEntry const* achievement = sAchievementMgr->GetAchievement(achievementCriteria->AchievementID); - if (!achievement) - { - TC_LOG_ERROR("achievement", "UpdateAchievementCriteria: Achievement %u not found!", achievementCriteria->AchievementID); - continue; - } - if (!CanUpdateCriteria(achievementCriteria, achievement, miscValue1, miscValue2, ref)) continue; @@ -2320,6 +2314,12 @@ void AchievementGlobalMgr::LoadAchievementCriteriaList() if (!criteria) continue; + if (!GetAchievement(criteria->AchievementID)) + { + TC_LOG_DEBUG("server.loading", "Achievement %u referenced by criteria %u doesn't exist, criteria not loaded.", criteria->AchievementID, criteria->ID); + continue; + } + ASSERT(criteria->Type < ACHIEVEMENT_CRITERIA_TYPE_TOTAL, "ACHIEVEMENT_CRITERIA_TYPE_TOTAL must be greater than or equal to %u but is currently equal to %u", criteria->Type + 1, ACHIEVEMENT_CRITERIA_TYPE_TOTAL); |