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>
(cherry picked from commit e2d643f551)
This commit is contained in:
Giacomo Pozzoni
2020-09-22 00:34:41 +02:00
committed by Shauren
parent c395b36115
commit bfdabb8c37

View File

@@ -765,15 +765,18 @@ void WorldSession::HandlePushQuestToParty(WorldPackets::Quest::PushQuestToParty&
sender->SendPushToPartyResponse(receiver, QuestPushReason::Success);
if (quest->IsAutoAccept() && receiver->CanAddQuest(quest, true) && receiver->CanTakeQuest(quest, true))
receiver->AddQuestAndCheckCompletion(quest, sender);
if (quest->IsAutoComplete() && quest->IsRepeatable() && !quest->IsDailyOrWeekly())
receiver->PlayerTalkClass->SendQuestGiverRequestItems(quest, sender->GetGUID(), receiver->CanCompleteRepeatableQuest(quest), true);
else
{
receiver->SetQuestSharingInfo(sender->GetGUID(), quest->GetQuestId());
receiver->PlayerTalkClass->SendQuestGiverQuestDetails(quest, receiver->GetGUID(), true, false);
if (quest->IsAutoAccept() && receiver->CanAddQuest(quest, true) && receiver->CanTakeQuest(quest, true))
{
receiver->AddQuestAndCheckCompletion(quest, sender);
sender->SendPushToPartyResponse(receiver, QuestPushReason::Accepted);
receiver->ClearQuestSharingInfo();
}
}
}
}