Core/Achievements: Defined new criteria types

This commit is contained in:
Shauren
2018-09-28 00:07:56 +02:00
parent 0277437eb4
commit 056b6895ec
4 changed files with 24 additions and 3 deletions

View File

@@ -781,6 +781,9 @@ void CriteriaHandler::UpdateCriteria(CriteriaTypes type, uint64 miscValue1 /*= 0
case CRITERIA_TYPE_GAIN_PARAGON_REPUTATION:
case CRITERIA_TYPE_EARN_HONOR_XP:
case CRITERIA_TYPE_RELIC_TALENT_UNLOCKED:
case CRITERIA_TYPE_REACH_ACCOUNT_HONOR_LEVEL:
case CRITERIA_TREE_HEART_OF_AZEROTH_ARTIFACT_POWER_EARNED:
case CRITERIA_TREE_HEART_OF_AZEROTH_LEVEL_REACHED:
break; // Not implemented yet :(
}
@@ -1143,6 +1146,9 @@ bool CriteriaHandler::IsCompletedCriteria(Criteria const* criteria, uint64 requi
case CRITERIA_TYPE_GAIN_PARAGON_REPUTATION:
case CRITERIA_TYPE_EARN_HONOR_XP:
case CRITERIA_TYPE_RELIC_TALENT_UNLOCKED:
case CRITERIA_TYPE_REACH_ACCOUNT_HONOR_LEVEL:
case CRITERIA_TREE_HEART_OF_AZEROTH_ARTIFACT_POWER_EARNED:
case CRITERIA_TREE_HEART_OF_AZEROTH_LEVEL_REACHED:
return progress->Counter >= requiredAmount;
case CRITERIA_TYPE_COMPLETE_ACHIEVEMENT:
case CRITERIA_TYPE_COMPLETE_QUEST:
@@ -2157,6 +2163,12 @@ char const* CriteriaMgr::GetCriteriaTypeString(CriteriaTypes type)
return "EARN_HONOR_XP";
case CRITERIA_TYPE_RELIC_TALENT_UNLOCKED:
return "RELIC_TALENT_UNLOCKED";
case CRITERIA_TYPE_REACH_ACCOUNT_HONOR_LEVEL:
return "REACH_ACCOUNT_HONOR_LEVEL";
case CRITERIA_TREE_HEART_OF_AZEROTH_ARTIFACT_POWER_EARNED:
return "HEART_OF_AZEROTH_ARTIFACT_POWER_EARNED";
case CRITERIA_TREE_HEART_OF_AZEROTH_LEVEL_REACHED:
return "HEART_OF_AZEROTH_LEVEL_REACHED";
}
return "MISSING_TYPE";
}

View File

@@ -798,6 +798,12 @@ struct CriteriaEntry
// CRITERIA_TYPE_RELIC_TALENT_UNLOCKED = 211
int32 ArtifactPowerID;
// CRITERIA_TYPE_REACH_ACCOUNT_HONOR_LEVEL = 213
int32 AccountHonorLevel;
// CRITERIA_TREE_HEART_OF_AZEROTH_LEVEL_REACHED = 215
int32 HeartOfAzerothLevel;
} Asset;
uint32 ModifierTreeId;
uint8 StartEvent;

View File

@@ -502,10 +502,13 @@ enum CriteriaTypes : uint8
CRITERIA_TYPE_TRANSMOG_SET_UNLOCKED = 205,
CRITERIA_TYPE_GAIN_PARAGON_REPUTATION = 206,
CRITERIA_TYPE_EARN_HONOR_XP = 207,
CRITERIA_TYPE_RELIC_TALENT_UNLOCKED = 211
CRITERIA_TYPE_RELIC_TALENT_UNLOCKED = 211,
CRITERIA_TYPE_REACH_ACCOUNT_HONOR_LEVEL = 213,
CRITERIA_TREE_HEART_OF_AZEROTH_ARTIFACT_POWER_EARNED= 214,
CRITERIA_TREE_HEART_OF_AZEROTH_LEVEL_REACHED = 215
};
#define CRITERIA_TYPE_TOTAL 213
#define CRITERIA_TYPE_TOTAL 216
enum CriteriaTreeFlags : uint16
{

View File

@@ -22,7 +22,7 @@
#include "PacketUtilities.h"
#include "AchievementPackets.h"
#define MAX_ALLOWED_SCENARIO_POI_QUERY_SIZE 40
#define MAX_ALLOWED_SCENARIO_POI_QUERY_SIZE 42
struct ScenarioPOI;