diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Achievements/AchievementMgr.cpp | 4 | ||||
| -rw-r--r-- | src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp | 5 | ||||
| -rw-r--r-- | src/server/game/Quests/QuestObjectiveCriteriaMgr.h | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 306d57ebe28..64dd27d18e0 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -495,8 +495,8 @@ void PlayerAchievementMgr::CompletedAchievement(AchievementEntry const* achievem if (!(achievement->Flags & ACHIEVEMENT_FLAG_TRACKING_FLAG)) _achievementPoints += achievement->Points; - UpdateCriteria(CriteriaType::EarnAchievement, achievement->ID, 0, 0, nullptr, referencePlayer); - UpdateCriteria(CriteriaType::EarnAchievementPoints, achievement->Points, 0, 0, nullptr, referencePlayer); + referencePlayer->UpdateCriteria(CriteriaType::EarnAchievement, achievement->ID, 0, 0, nullptr); + referencePlayer->UpdateCriteria(CriteriaType::EarnAchievementPoints, achievement->Points, 0, 0, nullptr); sScriptMgr->OnAchievementCompleted(referencePlayer, achievement); diff --git a/src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp b/src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp index 798e90e6b26..42040cd0b09 100644 --- a/src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp +++ b/src/server/game/Quests/QuestObjectiveCriteriaMgr.cpp @@ -310,3 +310,8 @@ CriteriaList const& QuestObjectiveCriteriaMgr::GetCriteriaByType(CriteriaType ty { return sCriteriaMgr->GetQuestObjectiveCriteriaByType(type); } + +bool QuestObjectiveCriteriaMgr::RequiredAchievementSatisfied(uint32 achievementId) const +{ + return _owner->HasAchieved(achievementId); +} diff --git a/src/server/game/Quests/QuestObjectiveCriteriaMgr.h b/src/server/game/Quests/QuestObjectiveCriteriaMgr.h index a263e153316..f3ba31c2ac1 100644 --- a/src/server/game/Quests/QuestObjectiveCriteriaMgr.h +++ b/src/server/game/Quests/QuestObjectiveCriteriaMgr.h @@ -56,6 +56,8 @@ protected: std::string GetOwnerInfo() const override; CriteriaList const& GetCriteriaByType(CriteriaType type, uint32 asset) const override; + bool RequiredAchievementSatisfied(uint32 achievementId) const override; + private: Player* _owner; std::unordered_set<uint32> _completedObjectives; |
