aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/QuestHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/QuestHandler.cpp')
-rw-r--r--src/server/game/Handlers/QuestHandler.cpp41
1 files changed, 1 insertions, 40 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp
index a7db18deddb..55de0abacfd 100644
--- a/src/server/game/Handlers/QuestHandler.cpp
+++ b/src/server/game/Handlers/QuestHandler.cpp
@@ -640,46 +640,7 @@ void WorldSession::HandleQuestgiverStatusMultipleQuery(WorldPacket& /*recvPacket
{
TC_LOG_DEBUG("network", "WORLD: Received CMSG_QUESTGIVER_STATUS_MULTIPLE_QUERY");
- uint32 count = 0;
-
- WorldPacket data(SMSG_QUESTGIVER_STATUS_MULTIPLE, 4);
- data << uint32(count); // placeholder
-
- for (auto itr = _player->m_clientGUIDs.begin(); itr != _player->m_clientGUIDs.end(); ++itr)
- {
- uint32 questStatus = DIALOG_STATUS_NONE;
-
- if (itr->IsAnyTypeCreature())
- {
- // need also pet quests case support
- Creature* questgiver = ObjectAccessor::GetCreatureOrPetOrVehicle(*GetPlayer(), *itr);
- if (!questgiver || questgiver->IsHostileTo(_player))
- continue;
- if (!questgiver->HasFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER))
- continue;
-
- questStatus = _player->GetQuestDialogStatus(questgiver);
-
- data << uint64(questgiver->GetGUID());
- data << uint8(questStatus);
- ++count;
- }
- else if (itr->IsGameObject())
- {
- GameObject* questgiver = GetPlayer()->GetMap()->GetGameObject(*itr);
- if (!questgiver || questgiver->GetGoType() != GAMEOBJECT_TYPE_QUESTGIVER)
- continue;
-
- questStatus = _player->GetQuestDialogStatus(questgiver);
-
- data << uint64(questgiver->GetGUID());
- data << uint8(questStatus);
- ++count;
- }
- }
-
- data.put<uint32>(0, count); // write real count
- SendPacket(&data);
+ _player->SendQuestGiverStatusMultiple();
}
void WorldSession::HandleQueryQuestsCompleted(WorldPacket & /*recvData*/)