diff options
author | Xinef <none@empty.com> | 2017-01-21 18:40:35 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2020-05-01 16:31:01 +0200 |
commit | 38d3c5ed16dd502471d810638fe21d90f8e0c7a6 (patch) | |
tree | 8442dba33b58ee80cb30f0fb920599d4e549957b /src/server/game/Achievements/AchievementMgr.cpp | |
parent | 57a5969c2672b36160fea1b7c38c424de562a57b (diff) |
Core/Achievements: Greatly optimize achievement system by splitting large types by miscvalue
Closes #18633
(cherry picked from commit 9b44ed9cda347bfda1078666b3779d985fc37b2b)
Diffstat (limited to 'src/server/game/Achievements/AchievementMgr.cpp')
-rw-r--r-- | src/server/game/Achievements/AchievementMgr.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 0f33174f40c..ce2494c350a 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -486,7 +486,7 @@ void PlayerAchievementMgr::CompletedAchievement(AchievementEntry const* achievem if (!(achievement->Flags & ACHIEVEMENT_FLAG_TRACKING_FLAG)) _achievementPoints += achievement->Points; - UpdateCriteria(CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, 0, 0, 0, NULL, referencePlayer); + UpdateCriteria(CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, achievement->ID, 0, 0, NULL, referencePlayer); UpdateCriteria(CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS, achievement->Points, 0, 0, NULL, referencePlayer); // reward items and titles if any @@ -632,9 +632,9 @@ void PlayerAchievementMgr::SendPacket(WorldPacket const* data) const _owner->SendDirectMessage(data); } -CriteriaList const& PlayerAchievementMgr::GetCriteriaByType(CriteriaTypes type) const +CriteriaList const& PlayerAchievementMgr::GetCriteriaByType(CriteriaTypes type, uint32 asset) const { - return sCriteriaMgr->GetPlayerCriteriaByType(type); + return sCriteriaMgr->GetPlayerCriteriaByType(type, asset); } GuildAchievementMgr::GuildAchievementMgr(Guild* owner) : _owner(owner) @@ -913,7 +913,7 @@ void GuildAchievementMgr::CompletedAchievement(AchievementEntry const* achieveme if (!(achievement->Flags & ACHIEVEMENT_FLAG_TRACKING_FLAG)) _achievementPoints += achievement->Points; - UpdateCriteria(CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, 0, 0, 0, NULL, referencePlayer); + UpdateCriteria(CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, achievement->ID, 0, 0, NULL, referencePlayer); UpdateCriteria(CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS, achievement->Points, 0, 0, NULL, referencePlayer); } @@ -967,7 +967,7 @@ void GuildAchievementMgr::SendPacket(WorldPacket const* data) const _owner->BroadcastPacket(data); } -CriteriaList const& GuildAchievementMgr::GetCriteriaByType(CriteriaTypes type) const +CriteriaList const& GuildAchievementMgr::GetCriteriaByType(CriteriaTypes type, uint32 /*asset*/) const { return sCriteriaMgr->GetGuildCriteriaByType(type); } |