aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Achievements/AchievementMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Achievements/AchievementMgr.cpp')
-rwxr-xr-xsrc/server/game/Achievements/AchievementMgr.cpp61
1 files changed, 35 insertions, 26 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp
index 4aabb08886c..fe50a40f3a4 100755
--- a/src/server/game/Achievements/AchievementMgr.cpp
+++ b/src/server/game/Achievements/AchievementMgr.cpp
@@ -2095,13 +2095,14 @@ AchievementCriteriaEntryList const& AchievementGlobalMgr::GetTimedAchievementCri
void AchievementGlobalMgr::LoadAchievementCriteriaList()
{
+ uint32 oldMSTime = getMSTime();
+
if (sAchievementCriteriaStore.GetNumRows() == 0)
{
barGoLink bar(1);
bar.step();
-
- sLog.outString();
sLog.outErrorDb(">> Loaded 0 achievement criteria.");
+ sLog.outString();
return;
}
@@ -2121,24 +2122,26 @@ void AchievementGlobalMgr::LoadAchievementCriteriaList()
m_AchievementCriteriasByTimedType[criteria->timedType].push_back(criteria);
}
+ sLog.outString(">> Loaded %lu achievement criteria in %u ms",(unsigned long)m_AchievementCriteriasByType->size(), GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %lu achievement criteria.",(unsigned long)m_AchievementCriteriasByType->size());
}
void AchievementGlobalMgr::LoadAchievementReferenceList()
{
+ uint32 oldMSTime = getMSTime();
+
if (sAchievementStore.GetNumRows() == 0)
{
barGoLink bar(1);
bar.step();
-
+ sLog.outString(">> Loaded 0 achievement references.");
sLog.outString();
- sLog.outErrorDb(">> Loaded 0 achievement references.");
return;
}
- uint32 count = 0;
barGoLink bar(sAchievementStore.GetNumRows());
+ uint32 count = 0;
+
for (uint32 entryId = 0; entryId < sAchievementStore.GetNumRows(); ++entryId)
{
bar.step();
@@ -2151,12 +2154,14 @@ void AchievementGlobalMgr::LoadAchievementReferenceList()
++count;
}
+ sLog.outString(">> Loaded %u achievement references in %u ms",count, GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %u achievement references.",count);
}
void AchievementGlobalMgr::LoadAchievementCriteriaData()
{
+ uint32 oldMSTime = getMSTime();
+
m_criteriaDataMap.clear(); // need for reload case
QueryResult result = WorldDatabase.Query("SELECT criteria_id, type, value1, value2, ScriptName FROM achievement_criteria_data");
@@ -2165,14 +2170,14 @@ void AchievementGlobalMgr::LoadAchievementCriteriaData()
{
barGoLink bar(1);
bar.step();
-
- sLog.outString();
sLog.outString(">> Loaded 0 additional achievement criteria data. DB table `achievement_criteria_data` is empty.");
+ sLog.outString();
return;
}
- uint32 count = 0;
barGoLink bar(result->GetRowCount());
+ uint32 count = 0;
+
do
{
bar.step();
@@ -2213,7 +2218,8 @@ void AchievementGlobalMgr::LoadAchievementCriteriaData()
// counting data by and data types
++count;
- } while (result->NextRow());
+ }
+ while (result->NextRow());
// post loading checks
for (uint32 entryId = 0; entryId < sAchievementCriteriaStore.GetNumRows(); ++entryId)
@@ -2294,21 +2300,22 @@ void AchievementGlobalMgr::LoadAchievementCriteriaData()
sLog.outErrorDb("Table `achievement_criteria_data` does not have expected data for criteria (Entry: %u Type: %u) for achievement %u.", criteria->ID, criteria->requiredType, criteria->referredAchievement);
}
+ sLog.outString(">> Loaded %u additional achievement criteria data in %u ms", count, GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %u additional achievement criteria data.",count);
}
void AchievementGlobalMgr::LoadCompletedAchievements()
{
+ uint32 oldMSTime = getMSTime();
+
QueryResult result = CharacterDatabase.Query("SELECT achievement FROM character_achievement GROUP BY achievement");
if (!result)
{
barGoLink bar(1);
bar.step();
-
+ sLog.outString(">> Loaded 0 completed achievements. DB table `character_achievement` is empty.");
sLog.outString();
- sLog.outString(">> Loaded 0 realm completed achievements . DB table `character_achievement` is empty.");
return;
}
@@ -2330,12 +2337,14 @@ void AchievementGlobalMgr::LoadCompletedAchievements()
m_allCompletedAchievements.insert(achievement_id);
} while (result->NextRow());
+ sLog.outString(">> Loaded %lu completed achievements in %u ms",(unsigned long)m_allCompletedAchievements.size(), GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %lu realm completed achievements.",(unsigned long)m_allCompletedAchievements.size());
}
void AchievementGlobalMgr::LoadRewards()
{
+ uint32 oldMSTime = getMSTime();
+
m_achievementRewards.clear(); // need for reload case
// 0 1 2 3 4 5 6
@@ -2344,11 +2353,9 @@ void AchievementGlobalMgr::LoadRewards()
if (!result)
{
barGoLink bar(1);
-
bar.step();
-
- sLog.outString();
sLog.outErrorDb(">> Loaded 0 achievement rewards. DB table `achievement_reward` is empty.");
+ sLog.outString();
return;
}
@@ -2439,27 +2446,29 @@ void AchievementGlobalMgr::LoadRewards()
m_achievementRewards[entry] = reward;
++count;
- } while (result->NextRow());
+ }
+ while (result->NextRow());
+ sLog.outString(">> Loaded %u achievement rewards in %u ms", count, GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %u achievement rewards", count);
}
void AchievementGlobalMgr::LoadRewardLocales()
{
+ uint32 oldMSTime = getMSTime();
+
m_achievementRewardLocales.clear(); // need for reload case
- QueryResult result = WorldDatabase.Query("SELECT entry,subject_loc1,text_loc1,subject_loc2,text_loc2,subject_loc3,text_loc3,subject_loc4,text_loc4,subject_loc5,text_loc5,subject_loc6,text_loc6,subject_loc7,text_loc7,subject_loc8,text_loc8 FROM locales_achievement_reward");
+ QueryResult result = WorldDatabase.Query("SELECT entry,subject_loc1,text_loc1,subject_loc2,text_loc2,subject_loc3,text_loc3,subject_loc4,text_loc4,"
+ "subject_loc5,text_loc5,subject_loc6,text_loc6,subject_loc7,text_loc7,subject_loc8,text_loc8"
+ " FROM locales_achievement_reward");
if (!result)
{
barGoLink bar(1);
-
bar.step();
-
+ sLog.outString(">> Loaded 0 achievement reward locale strings. DB table `locales_achievement_reward` is empty");
sLog.outString();
- sLog.outString(">> Loaded 0 achievement reward locale strings.");
- sLog.outString(">> DB table `locales_achievement_reward` is empty.");
return;
}
@@ -2491,6 +2500,6 @@ void AchievementGlobalMgr::LoadRewardLocales()
}
} while (result->NextRow());
+ sLog.outString(">> Loaded %lu achievement reward locale strings in %u ms", (unsigned long)m_achievementRewardLocales.size(), GetMSTimeDiffToNow(oldMSTime));
sLog.outString();
- sLog.outString(">> Loaded %lu achievement reward locale strings", (unsigned long)m_achievementRewardLocales.size());
}