aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/QuestHandler.cpp
diff options
context:
space:
mode:
authorSeyden <saiifii@live.de>2023-01-28 15:36:28 +0100
committerGitHub <noreply@github.com>2023-01-28 15:36:28 +0100
commitb5886f6a2d1756357a9240703306e9efc82771d7 (patch)
treea4581ccb1436817693f480fcaa076fadfab3365a /src/server/game/Handlers/QuestHandler.cpp
parentb5176eb6c2ae640a1cdf22d3d0a483d1b48ecbb6 (diff)
Core/Quests: Dont immediately update object visibility at PhaseShift and wait for the AI Hooks to be called in Player::RewardQuest (#28516)
Diffstat (limited to 'src/server/game/Handlers/QuestHandler.cpp')
-rw-r--r--src/server/game/Handlers/QuestHandler.cpp48
1 files changed, 0 insertions, 48 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp
index 94cbf2a48de..220eaba8985 100644
--- a/src/server/game/Handlers/QuestHandler.cpp
+++ b/src/server/game/Handlers/QuestHandler.cpp
@@ -386,54 +386,6 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPackets::Quest::Quest
bg->HandleQuestComplete(packet.QuestID, _player);
_player->RewardQuest(quest, packet.Choice.LootItemType, packet.Choice.Item.ItemID, object);
-
- switch (object->GetTypeId())
- {
- case TYPEID_UNIT:
- case TYPEID_PLAYER:
- {
- //For AutoSubmition was added plr case there as it almost same exclute AI script cases.
- // Send next quest
- if (Quest const* nextQuest = _player->GetNextQuest(packet.QuestGiverGUID, quest))
- {
- // Only send the quest to the player if the conditions are met
- if (_player->CanTakeQuest(nextQuest, false))
- {
- if (nextQuest->IsAutoAccept() && _player->CanAddQuest(nextQuest, true))
- _player->AddQuestAndCheckCompletion(nextQuest, object);
-
- _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, packet.QuestGiverGUID, true, false);
- }
- }
-
- _player->PlayerTalkClass->ClearMenus();
- if (Creature* creatureQGiver = object->ToCreature())
- creatureQGiver->AI()->OnQuestReward(_player, quest, packet.Choice.LootItemType, packet.Choice.Item.ItemID);
- break;
- }
- case TYPEID_GAMEOBJECT:
- {
- GameObject* questGiver = object->ToGameObject();
- // Send next quest
- if (Quest const* nextQuest = _player->GetNextQuest(packet.QuestGiverGUID, quest))
- {
- // Only send the quest to the player if the conditions are met
- if (_player->CanTakeQuest(nextQuest, false))
- {
- if (nextQuest->IsAutoAccept() && _player->CanAddQuest(nextQuest, true))
- _player->AddQuestAndCheckCompletion(nextQuest, object);
-
- _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, packet.QuestGiverGUID, true, false);
- }
- }
-
- _player->PlayerTalkClass->ClearMenus();
- questGiver->AI()->OnQuestReward(_player, quest, packet.Choice.LootItemType, packet.Choice.Item.ItemID);
- break;
- }
- default:
- break;
- }
}
}
else