aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Achievements/CriteriaHandler.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-12-08 00:23:38 +0100
committerShauren <shauren.trinity@gmail.com>2024-12-08 00:23:38 +0100
commit4e89a302fcce7644bcd8cf239edad3b409950438 (patch)
tree3bffaa439377f092840d757d74f09c40004f4411 /src/server/game/Achievements/CriteriaHandler.h
parent6da1679cbfdc56cd5f1cab7148f645916bccecc1 (diff)
Core/Quests: Improved criteria tree quest objective type
* Fixed _completedObjectives not being cleaned when adding quest * Fixed objective credit being granted if just the criteria tree row containing criteria id was completed (instead of the entire tree linked to objective) * Retroactively grant progress on quest accept for criteria types that require action that cannot be repeated (such as learning a spell)
Diffstat (limited to 'src/server/game/Achievements/CriteriaHandler.h')
-rw-r--r--src/server/game/Achievements/CriteriaHandler.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.h b/src/server/game/Achievements/CriteriaHandler.h
index 82c8f2ac7d1..067566d0bde 100644
--- a/src/server/game/Achievements/CriteriaHandler.h
+++ b/src/server/game/Achievements/CriteriaHandler.h
@@ -22,6 +22,7 @@
#include "DBCEnums.h"
#include "Duration.h"
#include "ObjectGuid.h"
+#include <span>
#include <unordered_map>
#include <vector>
#include <ctime>
@@ -284,6 +285,7 @@ public:
protected:
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);