TrinityCore
Loading...
Searching...
No Matches
AchievementMgr Class Referenceabstract

#include <AchievementMgr.h>

+ Inheritance diagram for AchievementMgr:

Public Member Functions

 AchievementMgr ()
 
 ~AchievementMgr ()
 
void CheckAllAchievementCriteria (Player *referencePlayer)
 
virtual void CompletedAchievement (AchievementEntry const *entry, Player *referencePlayer)=0
 
bool HasAchieved (uint32 achievementId) const
 
uint32 GetAchievementPoints () const
 
std::vector< uint32 > GetCompletedAchievementIds () const
 
- Public Member Functions inherited from CriteriaHandler
 CriteriaHandler ()
 
virtual ~CriteriaHandler ()
 
 CriteriaHandler (CriteriaHandler const &right)=delete
 
 CriteriaHandler (CriteriaHandler &&right)=delete
 
CriteriaHandler & operator= (CriteriaHandler const &right)=delete
 
CriteriaHandler & operator= (CriteriaHandler &&right)=delete
 
virtual void Reset ()
 
void UpdateCriteria (CriteriaType type, uint64 miscValue1=0, uint64 miscValue2=0, uint64 miscValue3=0, WorldObject const *ref=nullptr, Player *referencePlayer=nullptr)
 
virtual void SendAllData (Player const *receiver) const =0
 
void UpdateTimedCriteria (Milliseconds timeDiff)
 
void StartCriteria (CriteriaStartEvent startEvent, uint32 entry, Milliseconds timeLost=Milliseconds::zero())
 
virtual void FailCriteria (CriteriaFailEvent failEvent, uint32 asset)
 

Protected Member Functions

bool CanUpdateCriteriaTree (Criteria const *criteria, CriteriaTree const *tree, Player *referencePlayer) const override
 
bool CanCompleteCriteriaTree (CriteriaTree const *tree) override
 
void CompletedCriteriaTree (CriteriaTree const *tree, Player *referencePlayer) override
 
void AfterCriteriaTreeUpdate (CriteriaTree const *tree, Player *referencePlayer) override
 
bool IsCompletedAchievement (AchievementEntry const *entry)
 
bool RequiredAchievementSatisfied (uint32 achievementId) const override
 
- Protected Member Functions inherited from CriteriaHandler
virtual void SendCriteriaUpdate (Criteria const *criteria, CriteriaProgress const *progress, Seconds timeElapsed, bool timedCompleted) const =0
 
void UpdateCriteria (Criteria const *criteria, uint64 miscValue1=0, uint64 miscValue2=0, uint64 miscValue3=0, WorldObject const *ref=nullptr, Player *referencePlayer=nullptr)
 
CriteriaProgress * GetCriteriaProgress (Criteria const *entry)
 
void SetCriteriaProgress (Criteria const *criteria, uint64 changeValue, Player *referencePlayer, ProgressType progressType=PROGRESS_SET)
 
void RemoveCriteriaProgress (Criteria const *criteria)
 
virtual void SendCriteriaProgressRemoved (uint32 criteriaId)=0
 
bool IsCompletedCriteriaTree (CriteriaTree const *tree)
 
bool IsCompletedCriteria (Criteria const *criteria, uint64 requiredAmount)
 
bool CanUpdateCriteria (Criteria const *criteria, CriteriaTreeList const *trees, uint64 miscValue1, uint64 miscValue2, uint64 miscValue3, WorldObject const *ref, Player *referencePlayer)
 
virtual void SendPacket (WorldPacket const *data) const =0
 
bool ConditionsSatisfied (Criteria const *criteria, Player *referencePlayer) const
 
bool RequirementsSatisfied (Criteria const *criteria, uint64 miscValue1, uint64 miscValue2, uint64 miscValue3, WorldObject const *ref, Player *referencePlayer) const
 
bool ModifierTreeSatisfied (ModifierTreeNode const *parent, uint64 miscValue1, uint64 miscValue2, WorldObject const *ref, Player *referencePlayer) const
 
bool ModifierSatisfied (ModifierTreeEntry const *modifier, uint64 miscValue1, uint64 miscValue2, WorldObject const *ref, Player *referencePlayer) const
 
virtual std::string GetOwnerInfo () const =0
 
virtual CriteriaList const & GetCriteriaByType (CriteriaType type, uint32 asset) const =0
 

Protected Attributes

std::unordered_map< uint32, CompletedAchievementData > _completedAchievements
 
uint32 _achievementPoints
 
- Protected Attributes inherited from CriteriaHandler
CriteriaProgressMap _criteriaProgress
 
std::unordered_map< uint32, Milliseconds > _startedCriteria
 

Detailed Description

Definition at line 49 of file AchievementMgr.h.

Constructor & Destructor Documentation

◆ AchievementMgr()

AchievementMgr::AchievementMgr ( )

Definition at line 53 of file AchievementMgr.cpp.

◆ ~AchievementMgr()

AchievementMgr::~AchievementMgr ( )

Definition at line 55 of file AchievementMgr.cpp.

Member Function Documentation

◆ AfterCriteriaTreeUpdate()

void AchievementMgr::AfterCriteriaTreeUpdate ( CriteriaTree const *  tree,
Player *  referencePlayer 
)
overrideprotectedvirtual

◆ CanCompleteCriteriaTree()

bool AchievementMgr::CanCompleteCriteriaTree ( CriteriaTree const *  tree)
overrideprotectedvirtual

◆ CanUpdateCriteriaTree()

◆ CheckAllAchievementCriteria()

void AchievementMgr::CheckAllAchievementCriteria ( Player *  referencePlayer)

called at player login. The player might have fulfilled some achievements when the achievement system wasn't working yet

Definition at line 60 of file AchievementMgr.cpp.

References CriteriaMgr::GetRetroactivelyUpdateableCriteriaTypes(), and CriteriaHandler::UpdateCriteria().

Referenced by PlayerAchievementMgr::Reset().

◆ CompletedAchievement()

virtual void AchievementMgr::CompletedAchievement ( AchievementEntry const *  entry,
Player *  referencePlayer 
)
pure virtual

◆ CompletedCriteriaTree()

void AchievementMgr::CompletedCriteriaTree ( CriteriaTree const *  tree,
Player *  referencePlayer 
)
overrideprotectedvirtual

◆ GetAchievementPoints()

uint32 AchievementMgr::GetAchievementPoints ( ) const

Definition at line 72 of file AchievementMgr.cpp.

References _achievementPoints.

Referenced by Guild::HandleInviteMember().

◆ GetCompletedAchievementIds()

std::vector< uint32 > AchievementMgr::GetCompletedAchievementIds ( ) const

Definition at line 77 of file AchievementMgr.cpp.

References _completedAchievements, and Trinity::Containers::MapKey.

◆ HasAchieved()

◆ IsCompletedAchievement()

◆ RequiredAchievementSatisfied()

bool AchievementMgr::RequiredAchievementSatisfied ( uint32  achievementId) const
overrideprotectedvirtual

Reimplemented from CriteriaHandler.

Definition at line 203 of file AchievementMgr.cpp.

References HasAchieved().

Member Data Documentation

◆ _achievementPoints

◆ _completedAchievements


The documentation for this class was generated from the following files: