From 7445d528d24c8ae84784806cb8792d34cc0c301f Mon Sep 17 00:00:00 2001 From: Meji Date: Sun, 13 Apr 2025 20:31:30 +0200 Subject: [PATCH] Core/Players: Call OnQuestObjectiveChange after updating objective counters Fix SMART_EVENT_QUEST_OBJ_COMPLETION trigger --- src/server/game/Entities/Player/Player.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index a8fe32ceb74..320feb239c3 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -17143,9 +17143,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; @@ -17156,6 +17153,9 @@ void Player::SetQuestObjectiveData(QuestObjective const& objective, int32 data) SetQuestSlotObjectiveFlag(status.Slot, objective.StorageIndex); else RemoveQuestSlotObjectiveFlag(status.Slot, 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