Core/Achievements:
Implemented map and group requirements for achievements Changed possible methods to const Implemented hidden flag for achievement criteria
This commit is contained in:
@@ -58,7 +58,7 @@ enum AchievementFaction
|
||||
enum AchievementFlags
|
||||
{
|
||||
ACHIEVEMENT_FLAG_COUNTER = 0x00000001, // Just count statistic (never stop and complete)
|
||||
ACHIEVEMENT_FLAG_TRACKING = 0x00000002, // Not sent to client - internal use only
|
||||
ACHIEVEMENT_FLAG_HIDDEN = 0x00000002, // Not sent to client - internal use only
|
||||
ACHIEVEMENT_FLAG_STORE_MAX_VALUE = 0x00000004, // Store only max value? used only in "Reach level xx"
|
||||
ACHIEVEMENT_FLAG_SUMM = 0x00000008, // Use summ criteria value from all reqirements (and calculate max value)
|
||||
ACHIEVEMENT_FLAG_MAX_USED = 0x00000010, // Show max criteria (and calculate max value ??)
|
||||
@@ -73,19 +73,20 @@ enum AchievementFlags
|
||||
|
||||
enum AchievementCriteriaCondition
|
||||
{
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NONE = 0,
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NO_DEATH = 1, // reset progress on death
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK1 = 2, // only used in "Complete a daily quest every day for five consecutive days"
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_MAP = 3, // requires you to be on specific map, reset at change
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NO_LOSE = 4, // only used in "Win 10 arenas without losing"
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK2 = 9, // unk
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK3 = 13, // unk
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NONE = 0,
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NO_DEATH = 1, // reset progress on death
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK1 = 2, // only used in "Complete a daily quest every day for five consecutive days"
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_MAP = 3, // requires you to be on specific map, reset at change
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NO_LOSE = 4, // only used in "Win 10 arenas without losing"
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK2 = 9, // unk
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_NOT_IN_GROUP = 10, // requires the player not to be in group
|
||||
ACHIEVEMENT_CRITERIA_CONDITION_UNK3 = 13, // unk
|
||||
};
|
||||
|
||||
enum AchievementCriteriaCompletionFlags
|
||||
enum AchievementCriteriaFlags
|
||||
{
|
||||
ACHIEVEMENT_CRITERIA_FLAG_SHOW_PROGRESS_BAR = 0x00000001, // Show progress as bar
|
||||
ACHIEVEMENT_CRITERIA_FLAG_HIDE_CRITERIA = 0x00000002, // Not show criteria in client
|
||||
ACHIEVEMENT_CRITERIA_FLAG_HIDDEN = 0x00000002, // Not show criteria in client
|
||||
ACHIEVEMENT_CRITERIA_FLAG_UNK3 = 0x00000004, // BG related??
|
||||
ACHIEVEMENT_CRITERIA_FLAG_UNK4 = 0x00000008, //
|
||||
ACHIEVEMENT_CRITERIA_FLAG_UNK5 = 0x00000010, // not used
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
struct AchievementEntry
|
||||
{
|
||||
uint32 ID; // 0
|
||||
int32 factionFlag; // 1 -1=all, 0=horde, 1=alliance
|
||||
int32 requiredFaction; // 1 -1=all, 0=horde, 1=alliance
|
||||
int32 mapID; // 2 -1=none
|
||||
//uint32 parentAchievement; // 3 its Achievement parent (can`t start while parent uncomplete, use its Criteria if don`t have own, use its progress on begin)
|
||||
char *name[16]; // 4-19
|
||||
@@ -501,7 +501,7 @@ struct AchievementCriteriaEntry
|
||||
|
||||
//char* name[16]; // 9-24
|
||||
//uint32 name_flags; // 25
|
||||
uint32 completionFlag; // 26
|
||||
uint32 flags; // 26
|
||||
uint32 timedType; // 27
|
||||
uint32 timerStartEvent; // 28 Alway appears with timed events
|
||||
// for timed spells it is spell id for
|
||||
|
||||
Reference in New Issue
Block a user