Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
AchievementMgr.h File Reference
#include <map>
#include <string>
#include "Common.h"
#include "DatabaseEnv.h"
#include "DBCEnums.h"
#include "DBCStores.h"
#include "Platform/Singleton.h"
Include dependency graph for AchievementMgr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  AchievementCriteriaData
struct  AchievementCriteriaDataSet
class  AchievementGlobalMgr
class  AchievementMgr< T >
struct  AchievementReward
struct  AchievementRewardLocale
struct  CompletedAchievementData
struct  CriteriaProgress

Macros

#define MAX_ACHIEVEMENT_CRITERIA_DATA_TYPE   22
#define sAchievementMgr   Skyfire::Singleton<AchievementGlobalMgr, Skyfire::NullMutex>::instance()

Typedefs

typedef std::map< uint32, AchievementCriteriaDataSetAchievementCriteriaDataMap
typedef std::vector< CriteriaEntry const * > AchievementCriteriaEntryList
typedef UNORDERED_MAP< uint32, AchievementCriteriaTreeListAchievementCriteriaTreeByCriteriaId
typedef std::vector< CriteriaTreeEntry const * > AchievementCriteriaTreeList
typedef UNORDERED_MAP< uint32, AchievementEntry const * > AchievementEntryByCriteriaTree
typedef std::vector< AchievementEntry const * > AchievementEntryList
typedef UNORDERED_MAP< uint32, AchievementEntryListAchievementListByReferencedId
typedef UNORDERED_MAP< uint32, AchievementRewardLocaleAchievementRewardLocales
typedef UNORDERED_MAP< uint32, AchievementRewardAchievementRewards
typedef UNORDERED_MAP< uint32, CompletedAchievementDataCompletedAchievementMap
typedef UNORDERED_MAP< uint32, CriteriaProgressCriteriaProgressMap
typedef UNORDERED_MAP< uint32, ModifierTreeEntryListModifierTreeEntryByTreeId
typedef std::vector< ModifierTreeEntry const * > ModifierTreeEntryList
typedef UNORDERED_MAP< uint32, AchievementCriteriaTreeListSubCriteriaTreeListById

Enumerations

enum  AchievementCriteriaDataType {
  ACHIEVEMENT_CRITERIA_DATA_TYPE_NONE = 0 , ACHIEVEMENT_CRITERIA_DATA_TYPE_T_CREATURE = 1 , ACHIEVEMENT_CRITERIA_DATA_TYPE_T_PLAYER_CLASS_RACE = 2 , ACHIEVEMENT_CRITERIA_DATA_TYPE_T_PLAYER_LESS_HEALTH = 3 ,
  ACHIEVEMENT_CRITERIA_DATA_TYPE_S_AURA = 5 , ACHIEVEMENT_CRITERIA_DATA_TYPE_S_AREA = 6 , ACHIEVEMENT_CRITERIA_DATA_TYPE_T_AURA = 7 , ACHIEVEMENT_CRITERIA_DATA_TYPE_VALUE = 8 ,
  ACHIEVEMENT_CRITERIA_DATA_TYPE_T_LEVEL = 9 , ACHIEVEMENT_CRITERIA_DATA_TYPE_T_GENDER = 10 , ACHIEVEMENT_CRITERIA_DATA_TYPE_SCRIPT = 11 , ACHIEVEMENT_CRITERIA_DATA_TYPE_MAP_PLAYER_COUNT = 13 ,
  ACHIEVEMENT_CRITERIA_DATA_TYPE_T_TEAM = 14 , ACHIEVEMENT_CRITERIA_DATA_TYPE_S_DRUNK = 15 , ACHIEVEMENT_CRITERIA_DATA_TYPE_HOLIDAY = 16 , ACHIEVEMENT_CRITERIA_DATA_TYPE_BG_LOSS_TEAM_SCORE = 17 ,
  ACHIEVEMENT_CRITERIA_DATA_INSTANCE_SCRIPT = 18 , ACHIEVEMENT_CRITERIA_DATA_TYPE_S_EQUIPED_ITEM = 19 , ACHIEVEMENT_CRITERIA_DATA_TYPE_S_PLAYER_CLASS_RACE = 21
}
enum  ProgressType { PROGRESS_SET , PROGRESS_ACCUMULATE , PROGRESS_HIGHEST }

Macro Definition Documentation

◆ MAX_ACHIEVEMENT_CRITERIA_DATA_TYPE

#define MAX_ACHIEVEMENT_CRITERIA_DATA_TYPE   22

Definition at line 65 of file AchievementMgr.h.

Referenced by AchievementCriteriaData::IsValid().

◆ sAchievementMgr

#define sAchievementMgr   Skyfire::Singleton<AchievementGlobalMgr, Skyfire::NullMutex>::instance()

Definition at line 413 of file AchievementMgr.h.

Referenced by CharacterDatabaseCleaner::AchievementProgressCheck(), AchievementMgr< T >::AdditionalRequirementsSatisfied(), AchievementMgr< Guild >::CompletedAchievement(), BattlefieldWG::DoCompleteOrIncrementAchievement(), achievement_commandscript::HandleAchievementAddCommand(), disable_commandscript::HandleAddDisables(), reload_commandscript::HandleReloadAchievementCriteriaDataCommand(), reload_commandscript::HandleReloadAchievementRewardCommand(), reload_commandscript::HandleReloadLocalesAchievementRewardCommand(), AchievementChatLink::Initialize(), AchievementMgr< T >::IsCompletedAchievement(), AchievementMgr< T >::IsCompletedCriteria(), AchievementMgr< T >::IsCompletedCriteriaForAchievement(), ConditionMgr::isConditionTypeValid(), ObjectMgr::LoadAccessRequirements(), AchievementGlobalMgr::LoadAchievementCriteriaData(), AchievementGlobalMgr::LoadAchievementCriteriaList(), AchievementGlobalMgr::LoadAchievementReferenceList(), AchievementGlobalMgr::LoadCompletedAchievements(), DisableMgr::LoadDisables(), ObjectMgr::LoadFactionChangeAchievements(), AchievementMgr< Guild >::LoadFromDB(), GuildMgr::LoadGuildRewards(), VisibleAchievementPred::operator()(), AchievementMgr< T >::RemoveTimedAchievement(), AchievementMgr< T >::RequirementsSatisfied(), AchievementMgr< Guild >::Reset(), AchievementMgr< T >::ResetAchievementCriteria(), AchievementMgr< T >::SetCriteriaProgress(), World::SetInitialWorldSettings(), AchievementMgr< Guild >::StartTimedAchievement(), AchievementMgr< T >::UpdateAchievementCriteria(), Player::UpdateAchievementCriteria(), and AchievementMgr< T >::UpdateTimedAchievements().

Typedef Documentation

◆ AchievementCriteriaDataMap

Definition at line 191 of file AchievementMgr.h.

◆ AchievementCriteriaEntryList

typedef std::vector<CriteriaEntry const*> AchievementCriteriaEntryList

Definition at line 22 of file AchievementMgr.h.

◆ AchievementCriteriaTreeByCriteriaId

◆ AchievementCriteriaTreeList

typedef std::vector<CriteriaTreeEntry const*> AchievementCriteriaTreeList

Definition at line 24 of file AchievementMgr.h.

◆ AchievementEntryByCriteriaTree

◆ AchievementEntryList

typedef std::vector<AchievementEntry const*> AchievementEntryList

Definition at line 23 of file AchievementMgr.h.

◆ AchievementListByReferencedId

◆ AchievementRewardLocales

◆ AchievementRewards

◆ CompletedAchievementMap

◆ CriteriaProgressMap

◆ ModifierTreeEntryByTreeId

◆ ModifierTreeEntryList

typedef std::vector<ModifierTreeEntry const*> ModifierTreeEntryList

Definition at line 25 of file AchievementMgr.h.

◆ SubCriteriaTreeListById

Enumeration Type Documentation

◆ AchievementCriteriaDataType

Enumerator
ACHIEVEMENT_CRITERIA_DATA_TYPE_NONE 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_CREATURE 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_PLAYER_CLASS_RACE 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_PLAYER_LESS_HEALTH 
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_AURA 
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_AREA 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_AURA 
ACHIEVEMENT_CRITERIA_DATA_TYPE_VALUE 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_LEVEL 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_GENDER 
ACHIEVEMENT_CRITERIA_DATA_TYPE_SCRIPT 
ACHIEVEMENT_CRITERIA_DATA_TYPE_MAP_PLAYER_COUNT 
ACHIEVEMENT_CRITERIA_DATA_TYPE_T_TEAM 
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_DRUNK 
ACHIEVEMENT_CRITERIA_DATA_TYPE_HOLIDAY 
ACHIEVEMENT_CRITERIA_DATA_TYPE_BG_LOSS_TEAM_SCORE 
ACHIEVEMENT_CRITERIA_DATA_INSTANCE_SCRIPT 
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_EQUIPED_ITEM 
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_PLAYER_CLASS_RACE 

Definition at line 41 of file AchievementMgr.h.

◆ ProgressType

Enumerator
PROGRESS_SET 
PROGRESS_ACCUMULATE 
PROGRESS_HIGHEST 

Definition at line 223 of file AchievementMgr.h.