aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorModoX <moardox@gmail.com>2022-01-13 20:31:51 +0100
committerGitHub <noreply@github.com>2022-01-13 20:31:51 +0100
commita17944e91e2ceec693c8e286b4eabecbd08493c6 (patch)
tree23bae3060c0a02a742ec493ec1ec5acba178a595 /src
parent1989c68fb67e967297d3bf804f1b8650b6e8a5a2 (diff)
Core/Quests: Set quest slot earlier when abandoning a quest (#27584)
* fixes quest objective conditions still being true when quest is abandoned
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Handlers/QuestHandler.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp
index d80a71ab2e0..3ad6d7ef9ca 100644
--- a/src/server/game/Handlers/QuestHandler.cpp
+++ b/src/server/game/Handlers/QuestHandler.cpp
@@ -487,6 +487,7 @@ void WorldSession::HandleQuestLogRemoveQuest(WorldPackets::Quest::QuestLogRemove
}
+ _player->SetQuestSlot(packet.Entry, 0);
_player->TakeQuestSourceItem(questId, true); // remove quest src item from player
_player->AbandonQuest(questId); // remove all quest items player received before abandoning quest. Note, this does not remove normal drop items that happen to be quest requirements.
_player->RemoveActiveQuest(questId);
@@ -511,8 +512,6 @@ void WorldSession::HandleQuestLogRemoveQuest(WorldPackets::Quest::QuestLogRemove
sScriptMgr->OnQuestStatusChange(_player, quest, oldStatus, QUEST_STATUS_NONE);
}
- _player->SetQuestSlot(packet.Entry, 0);
-
_player->UpdateCriteria(CriteriaType::AbandonAnyQuest, 1);
}
}