diff options
author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2020-09-22 00:34:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-22 00:34:41 +0200 |
commit | e2d643f5518d256e17851243896985b2773db281 (patch) | |
tree | 0a00b9501c7e01e7b02ac9e96597c2c6824e8c3e /src | |
parent | bdd416fb77e4dbb807b2442adbf4ef3ea63bb27f (diff) |
Core/Quest: Fix wrong feedback sent to the quest sharing sender with auto-accept quests. (PR #25477) Closes #25474.
Co-authored-by: Treeston <treeston.mmoc@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Handlers/QuestHandler.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp index 07b61c7c518..3f928edaf33 100644 --- a/src/server/game/Handlers/QuestHandler.cpp +++ b/src/server/game/Handlers/QuestHandler.cpp @@ -608,15 +608,18 @@ void WorldSession::HandlePushQuestToParty(WorldPacket& recvPacket) sender->SendPushToPartyResponse(receiver, QUEST_PARTY_MSG_SHARING_QUEST); - if (quest->IsAutoAccept() && receiver->CanAddQuest(quest, true) && receiver->CanTakeQuest(quest, true)) - receiver->AddQuestAndCheckCompletion(quest, sender); - if ((quest->IsAutoComplete() && quest->IsRepeatable() && !quest->IsDailyOrWeekly()) || quest->HasFlag(QUEST_FLAGS_AUTOCOMPLETE)) receiver->PlayerTalkClass->SendQuestGiverRequestItems(quest, sender->GetGUID(), receiver->CanCompleteRepeatableQuest(quest), true); else { receiver->SetQuestSharingInfo(sender->GetGUID(), questId); receiver->PlayerTalkClass->SendQuestGiverQuestDetails(quest, receiver->GetGUID(), true); + if (quest->IsAutoAccept() && receiver->CanAddQuest(quest, true) && receiver->CanTakeQuest(quest, true)) + { + receiver->AddQuestAndCheckCompletion(quest, sender); + sender->SendPushToPartyResponse(receiver, QUEST_PARTY_MSG_ACCEPT_QUEST); + receiver->ClearQuestSharingInfo(); + } } } } |