aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Achievements/AchievementMgr.cpp12
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);