diff options
author | Meji <alvaro.megias@outlook.com> | 2025-04-13 20:31:30 +0200 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2025-04-14 22:25:27 +0200 |
commit | 86a7f9e2ff5de8ce4e7bd53326a526847ac32403 (patch) | |
tree | b83915e5f7efe287f1a6be27ea56e4dabb1644b3 | |
parent | 5fda07a28b0416fe43bb740a92e4ae956b4f49e2 (diff) |
Core/Players: Call OnQuestObjectiveChange after updating objective counters
Fix SMART_EVENT_QUEST_OBJ_COMPLETION trigger
(cherry picked from commit 7445d528d24c8ae84784806cb8792d34cc0c301f)
# Conflicts:
# src/server/game/Entities/Player/Player.cpp
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 8dc39cdd221..439a94b77f4 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -16166,9 +16166,6 @@ void Player::SetQuestObjectiveData(QuestObjective const& objective, int32 data) if (oldData == data) return; - if (Quest const* quest = sObjectMgr->GetQuestTemplate(objective.QuestID)) - sScriptMgr->OnQuestObjectiveChange(this, quest, objective, oldData, data); - // Add to save m_QuestStatusSave[objective.QuestID] = QUEST_DEFAULT_SAVE_TYPE; @@ -16179,6 +16176,9 @@ void Player::SetQuestObjectiveData(QuestObjective const& objective, int32 data) SetQuestSlotState(status.Slot, 256 << objective.StorageIndex); else RemoveQuestSlotState(status.Slot, 256 << objective.StorageIndex); + + if (Quest const* quest = sObjectMgr->GetQuestTemplate(objective.QuestID)) + sScriptMgr->OnQuestObjectiveChange(this, quest, objective, oldData, data); } bool Player::IsQuestObjectiveCompletable(uint16 slot, Quest const* quest, QuestObjective const& objective) const |