TrinityCore
Loading...
Searching...
No Matches
AchievementGlobalMgr Class Reference

#include <AchievementMgr.h>

Public Member Functions

AchievementCriteriaEntryList const & GetAchievementCriteriaByType (AchievementCriteriaTypes type, uint32 miscValue) const
 
AchievementCriteriaEntryList const & GetTimedAchievementCriteriaByType (AchievementCriteriaTimedTypes type) const
 
AchievementCriteriaEntryList const * GetAchievementCriteriaByCondition (AchievementCriteriaCondition condition, uint32 val)
 
AchievementCriteriaEntryList const * GetAchievementCriteriaByAchievement (uint32 id) const
 
AchievementEntryList const * GetAchievementByReferencedId (uint32 id) const
 
AchievementReward const * GetAchievementReward (AchievementEntry const *achievement) const
 
AchievementRewardLocale const * GetAchievementRewardLocale (AchievementEntry const *achievement) const
 
AchievementCriteriaDataSet const * GetCriteriaDataSet (AchievementCriteriaEntry const *achievementCriteria) const
 
bool IsRealmCompleted (AchievementEntry const *achievement) const
 
void SetRealmCompleted (AchievementEntry const *achievement)
 
void LoadAchievementCriteriaList ()
 
void LoadAchievementCriteriaData ()
 
void LoadAchievementReferenceList ()
 
void LoadCompletedAchievements ()
 
void LoadRewards ()
 
void LoadRewardLocales ()
 

Static Public Member Functions

static char const * GetCriteriaTypeString (AchievementCriteriaTypes type)
 
static char const * GetCriteriaTypeString (uint32 type)
 
static AchievementGlobalMgr * instance ()
 

Private Member Functions

 AchievementGlobalMgr ()
 
 ~AchievementGlobalMgr ()
 

Private Attributes

AchievementCriteriaDataMap _criteriaDataMap
 
AchievementCriteriaEntryList _achievementCriteriasByType [ACHIEVEMENT_CRITERIA_TYPE_TOTAL]
 
AchievementCriteriaListByMiscValue _achievementCriteriasByMiscalue [ACHIEVEMENT_CRITERIA_TYPE_TOTAL]
 
AchievementCriteriaEntryList _achievementCriteriasByTimedType [ACHIEVEMENT_TIMED_TYPE_MAX]
 
AchievementCriteriaListByCondition _achievementCriteriasByCondition [ACHIEVEMENT_CRITERIA_CONDITION_MAX]
 
AchievementCriteriaListByAchievement _achievementCriteriaListByAchievement
 
AchievementListByReferencedId _achievementListByReferencedId
 
std::unordered_map< uint32, SystemTimePoint > _allCompletedAchievements
 
AchievementRewards _achievementRewards
 
AchievementRewardLocales _achievementRewardLocales
 

Static Private Attributes

static AchievementCriteriaEntryList const EmptyCriteriaList
 

Friends

class UnitTestDataLoader
 

Detailed Description

Definition at line 330 of file AchievementMgr.h.

Constructor & Destructor Documentation

◆ AchievementGlobalMgr()

AchievementGlobalMgr::AchievementGlobalMgr ( )
inlineprivate

Definition at line 332 of file AchievementMgr.h.

◆ ~AchievementGlobalMgr()

AchievementGlobalMgr::~AchievementGlobalMgr ( )
privatedefault

Member Function Documentation

◆ GetAchievementByReferencedId()

AchievementEntryList const * AchievementGlobalMgr::GetAchievementByReferencedId ( uint32  id) const
inline

Definition at line 360 of file AchievementMgr.h.

◆ GetAchievementCriteriaByAchievement()

AchievementCriteriaEntryList const * AchievementGlobalMgr::GetAchievementCriteriaByAchievement ( uint32  id) const
inline

Definition at line 354 of file AchievementMgr.h.

◆ GetAchievementCriteriaByCondition()

AchievementCriteriaEntryList const * AchievementGlobalMgr::GetAchievementCriteriaByCondition ( AchievementCriteriaCondition  condition,
uint32  val 
)
inline

Definition at line 348 of file AchievementMgr.h.

◆ GetAchievementCriteriaByType()

AchievementCriteriaEntryList const & AchievementGlobalMgr::GetAchievementCriteriaByType ( AchievementCriteriaTypes  type,
uint32  miscValue 
) const

◆ GetAchievementReward()

AchievementReward const * AchievementGlobalMgr::GetAchievementReward ( AchievementEntry const *  achievement) const
inline

Definition at line 366 of file AchievementMgr.h.

References AchievementEntry::ID.

◆ GetAchievementRewardLocale()

AchievementRewardLocale const * AchievementGlobalMgr::GetAchievementRewardLocale ( AchievementEntry const *  achievement) const
inline

Definition at line 372 of file AchievementMgr.h.

References AchievementEntry::ID.

◆ GetCriteriaDataSet()

AchievementCriteriaDataSet const * AchievementGlobalMgr::GetCriteriaDataSet ( AchievementCriteriaEntry const *  achievementCriteria) const
inline

Definition at line 378 of file AchievementMgr.h.

References AchievementCriteriaEntry::ID.

Referenced by LoadAchievementCriteriaData().

◆ GetCriteriaTypeString() [1/2]

char const * AchievementGlobalMgr::GetCriteriaTypeString ( AchievementCriteriaTypes  type)
static

Definition at line 2023 of file AchievementMgr.cpp.

References ACHIEVEMENT_CRITERIA_TYPE_ACCEPTED_SUMMONINGS, ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, ACHIEVEMENT_CRITERIA_TYPE_BG_OBJECTIVE_CAPTURE, ACHIEVEMENT_CRITERIA_TYPE_BUY_BANK_SLOT, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL2, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_BATTLEGROUND, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_DAILY_QUEST, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_DAILY_QUEST_DAILY, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST_COUNT, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUESTS_IN_ZONE, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_RAID, ACHIEVEMENT_CRITERIA_TYPE_CREATE_AUCTION, ACHIEVEMENT_CRITERIA_TYPE_DAMAGE_DONE, ACHIEVEMENT_CRITERIA_TYPE_DEATH, ACHIEVEMENT_CRITERIA_TYPE_DEATH_AT_MAP, ACHIEVEMENT_CRITERIA_TYPE_DEATH_IN_DUNGEON, ACHIEVEMENT_CRITERIA_TYPE_DEATHS_FROM, ACHIEVEMENT_CRITERIA_TYPE_DO_EMOTE, ACHIEVEMENT_CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS, ACHIEVEMENT_CRITERIA_TYPE_EARN_HONORABLE_KILL, ACHIEVEMENT_CRITERIA_TYPE_EQUIP_EPIC_ITEM, ACHIEVEMENT_CRITERIA_TYPE_EQUIP_ITEM, ACHIEVEMENT_CRITERIA_TYPE_EXPLORE_AREA, ACHIEVEMENT_CRITERIA_TYPE_FALL_WITHOUT_DYING, ACHIEVEMENT_CRITERIA_TYPE_FISH_IN_GAMEOBJECT, ACHIEVEMENT_CRITERIA_TYPE_FLIGHT_PATHS_TAKEN, ACHIEVEMENT_CRITERIA_TYPE_GAIN_AURA, ACHIEVEMENT_CRITERIA_TYPE_GAIN_EXALTED_REPUTATION, ACHIEVEMENT_CRITERIA_TYPE_GAIN_HONORED_REPUTATION, ACHIEVEMENT_CRITERIA_TYPE_GAIN_REPUTATION, ACHIEVEMENT_CRITERIA_TYPE_GAIN_REVERED_REPUTATION, ACHIEVEMENT_CRITERIA_TYPE_GET_KILLING_BLOWS, ACHIEVEMENT_CRITERIA_TYPE_GOLD_EARNED_BY_AUCTIONS, ACHIEVEMENT_CRITERIA_TYPE_GOLD_SPENT_AT_BARBER, ACHIEVEMENT_CRITERIA_TYPE_GOLD_SPENT_FOR_MAIL, ACHIEVEMENT_CRITERIA_TYPE_GOLD_SPENT_FOR_TALENTS, ACHIEVEMENT_CRITERIA_TYPE_GOLD_SPENT_FOR_TRAVELLING, ACHIEVEMENT_CRITERIA_TYPE_HEALING_DONE, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_ARMOR, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_AUCTION_BID, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_AUCTION_SOLD, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_GOLD_VALUE_OWNED, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_HEAL_CAST, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_HEALING_RECEIVED, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_HEALTH, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_HIT_DEALT, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_HIT_RECEIVED, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_PERSONAL_RATING, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_POWER, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_RATING, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_SPELLPOWER, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_STAT, ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_TEAM_RATING, ACHIEVEMENT_CRITERIA_TYPE_HK_CLASS, ACHIEVEMENT_CRITERIA_TYPE_HK_RACE, ACHIEVEMENT_CRITERIA_TYPE_HONORABLE_KILL, ACHIEVEMENT_CRITERIA_TYPE_HONORABLE_KILL_AT_AREA, ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE, ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE_TYPE, ACHIEVEMENT_CRITERIA_TYPE_KILLED_BY_CREATURE, ACHIEVEMENT_CRITERIA_TYPE_KILLED_BY_PLAYER, ACHIEVEMENT_CRITERIA_TYPE_KNOWN_FACTIONS, ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LEVEL, ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LINE, ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILLLINE_SPELLS, ACHIEVEMENT_CRITERIA_TYPE_LEARN_SPELL, ACHIEVEMENT_CRITERIA_TYPE_LOOT_EPIC_ITEM, ACHIEVEMENT_CRITERIA_TYPE_LOOT_ITEM, ACHIEVEMENT_CRITERIA_TYPE_LOOT_MONEY, ACHIEVEMENT_CRITERIA_TYPE_LOOT_TYPE, ACHIEVEMENT_CRITERIA_TYPE_LOSE_DUEL, ACHIEVEMENT_CRITERIA_TYPE_MONEY_FROM_QUEST_REWARD, ACHIEVEMENT_CRITERIA_TYPE_MONEY_FROM_VENDORS, ACHIEVEMENT_CRITERIA_TYPE_NUMBER_OF_TALENT_RESETS, ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN, ACHIEVEMENT_CRITERIA_TYPE_OWN_ITEM, ACHIEVEMENT_CRITERIA_TYPE_OWN_RANK, ACHIEVEMENT_CRITERIA_TYPE_PLAY_ARENA, ACHIEVEMENT_CRITERIA_TYPE_QUEST_ABANDONED, ACHIEVEMENT_CRITERIA_TYPE_REACH_LEVEL, ACHIEVEMENT_CRITERIA_TYPE_REACH_SKILL_LEVEL, ACHIEVEMENT_CRITERIA_TYPE_RECEIVE_EPIC_ITEM, ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED, ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED_ON_LOOT, ACHIEVEMENT_CRITERIA_TYPE_ROLL_NEED, ACHIEVEMENT_CRITERIA_TYPE_ROLL_NEED_ON_LOOT, ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL, ACHIEVEMENT_CRITERIA_TYPE_TOTAL_DAMAGE_RECEIVED, ACHIEVEMENT_CRITERIA_TYPE_TOTAL_HEALING_RECEIVED, ACHIEVEMENT_CRITERIA_TYPE_USE_GAMEOBJECT, ACHIEVEMENT_CRITERIA_TYPE_USE_ITEM, ACHIEVEMENT_CRITERIA_TYPE_USE_LFD_TO_GROUP_WITH_PLAYERS, ACHIEVEMENT_CRITERIA_TYPE_VISIT_BARBER_SHOP, ACHIEVEMENT_CRITERIA_TYPE_WIN_ARENA, ACHIEVEMENT_CRITERIA_TYPE_WIN_BG, ACHIEVEMENT_CRITERIA_TYPE_WIN_DUEL, ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA, and ACHIEVEMENT_CRITERIA_TYPE_WON_AUCTIONS.

Referenced by AchievementMgr::CanUpdateCriteria(), GetCriteriaTypeString(), and AchievementMgr::UpdateAchievementCriteria().

◆ GetCriteriaTypeString() [2/2]

char const * AchievementGlobalMgr::GetCriteriaTypeString ( uint32  type)
static

Definition at line 2018 of file AchievementMgr.cpp.

References GetCriteriaTypeString().

◆ GetTimedAchievementCriteriaByType()

AchievementCriteriaEntryList const & AchievementGlobalMgr::GetTimedAchievementCriteriaByType ( AchievementCriteriaTimedTypes  type) const
inline

Definition at line 343 of file AchievementMgr.h.

◆ instance()

AchievementGlobalMgr * AchievementGlobalMgr::instance ( )
static

Definition at line 2235 of file AchievementMgr.cpp.

References instance().

Referenced by instance().

◆ IsRealmCompleted()

bool AchievementGlobalMgr::IsRealmCompleted ( AchievementEntry const *  achievement) const

◆ LoadAchievementCriteriaData()

void AchievementGlobalMgr::LoadAchievementCriteriaData ( )

Definition at line 2439 of file AchievementMgr.cpp.

References _criteriaDataMap, ACHIEVEMENT_CRITERIA_CONDITION_NO_LOSE, ACHIEVEMENT_CRITERIA_DATA_TYPE_NONE, ACHIEVEMENT_CRITERIA_DATA_TYPE_SCRIPT, ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, ACHIEVEMENT_CRITERIA_TYPE_BG_OBJECTIVE_CAPTURE, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL2, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_DAILY_QUEST, ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, ACHIEVEMENT_CRITERIA_TYPE_DO_EMOTE, ACHIEVEMENT_CRITERIA_TYPE_EQUIP_EPIC_ITEM, ACHIEVEMENT_CRITERIA_TYPE_FALL_WITHOUT_DYING, ACHIEVEMENT_CRITERIA_TYPE_GAIN_AURA, ACHIEVEMENT_CRITERIA_TYPE_GET_KILLING_BLOWS, ACHIEVEMENT_CRITERIA_TYPE_HONORABLE_KILL, ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE, ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE_TYPE, ACHIEVEMENT_CRITERIA_TYPE_LOOT_TYPE, ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN, ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED_ON_LOOT, ACHIEVEMENT_CRITERIA_TYPE_ROLL_NEED_ON_LOOT, ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL, ACHIEVEMENT_CRITERIA_TYPE_USE_ITEM, ACHIEVEMENT_CRITERIA_TYPE_WIN_BG, ACHIEVEMENT_CRITERIA_TYPE_WIN_DUEL, ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA, AchievementCriteriaEntry::AchievementID, AchievementCriteriaDataSet::Add(), AchievementCriteriaEntry::AdditionalRequirements, AchievementEntry::Category, CATEGORY_CHILDRENS_WEEK, AchievementCriteriaData::dataType, DISABLE_TYPE_ACHIEVEMENT_CRITERIA, GetCriteriaDataSet(), getMSTime(), GetMSTimeDiffToNow(), Field::GetString(), Field::GetUInt32(), Field::GetUInt8(), AchievementEntry::ID, AchievementCriteriaEntry::ID, DisableMgr::IsDisabledFor(), AchievementCriteriaData::IsValid(), AchievementCriteriaEntry::Quantity, sAchievementCriteriaStore, sAchievementStore, AchievementCriteriaDataSet::SetCriteriaId(), sObjectMgr, TC_LOG_ERROR, TC_LOG_INFO, AchievementCriteriaEntry::Type, and WorldDatabase.

◆ LoadAchievementCriteriaList()

◆ LoadAchievementReferenceList()

void AchievementGlobalMgr::LoadAchievementReferenceList ( )

◆ LoadCompletedAchievements()

◆ LoadRewardLocales()

◆ LoadRewards()

◆ SetRealmCompleted()

void AchievementGlobalMgr::SetRealmCompleted ( AchievementEntry const *  achievement)

Friends And Related Symbol Documentation

◆ UnitTestDataLoader

friend class UnitTestDataLoader
friend

Definition at line 422 of file AchievementMgr.h.

Member Data Documentation

◆ _achievementCriteriaListByAchievement

AchievementCriteriaListByAchievement AchievementGlobalMgr::_achievementCriteriaListByAchievement
private

Definition at line 409 of file AchievementMgr.h.

Referenced by LoadAchievementCriteriaList().

◆ _achievementCriteriasByCondition

AchievementCriteriaListByCondition AchievementGlobalMgr::_achievementCriteriasByCondition[ACHIEVEMENT_CRITERIA_CONDITION_MAX]
private

Definition at line 406 of file AchievementMgr.h.

Referenced by LoadAchievementCriteriaList().

◆ _achievementCriteriasByMiscalue

AchievementCriteriaListByMiscValue AchievementGlobalMgr::_achievementCriteriasByMiscalue[ACHIEVEMENT_CRITERIA_TYPE_TOTAL]
private

Definition at line 402 of file AchievementMgr.h.

Referenced by GetAchievementCriteriaByType(), and LoadAchievementCriteriaList().

◆ _achievementCriteriasByTimedType

AchievementCriteriaEntryList AchievementGlobalMgr::_achievementCriteriasByTimedType[ACHIEVEMENT_TIMED_TYPE_MAX]
private

Definition at line 404 of file AchievementMgr.h.

Referenced by LoadAchievementCriteriaList().

◆ _achievementCriteriasByType

AchievementCriteriaEntryList AchievementGlobalMgr::_achievementCriteriasByType[ACHIEVEMENT_CRITERIA_TYPE_TOTAL]
private

Definition at line 397 of file AchievementMgr.h.

Referenced by GetAchievementCriteriaByType(), and LoadAchievementCriteriaList().

◆ _achievementListByReferencedId

AchievementListByReferencedId AchievementGlobalMgr::_achievementListByReferencedId
private

Definition at line 412 of file AchievementMgr.h.

Referenced by LoadAchievementReferenceList().

◆ _achievementRewardLocales

AchievementRewardLocales AchievementGlobalMgr::_achievementRewardLocales
private

Definition at line 420 of file AchievementMgr.h.

Referenced by LoadRewardLocales().

◆ _achievementRewards

AchievementRewards AchievementGlobalMgr::_achievementRewards
private

Definition at line 419 of file AchievementMgr.h.

Referenced by LoadRewardLocales(), and LoadRewards().

◆ _allCompletedAchievements

std::unordered_map<uint32 , SystemTimePoint > AchievementGlobalMgr::_allCompletedAchievements
private

◆ _criteriaDataMap

AchievementCriteriaDataMap AchievementGlobalMgr::_criteriaDataMap
private

Definition at line 394 of file AchievementMgr.h.

Referenced by LoadAchievementCriteriaData().

◆ EmptyCriteriaList

AchievementCriteriaEntryList const AchievementGlobalMgr::EmptyCriteriaList
staticprivate

Definition at line 399 of file AchievementMgr.h.

Referenced by GetAchievementCriteriaByType().


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