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.cpp24
1 files changed, 10 insertions, 14 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp
index 08345bc59d7..bed1cc72f66 100644
--- a/src/server/game/Handlers/QuestHandler.cpp
+++ b/src/server/game/Handlers/QuestHandler.cpp
@@ -340,30 +340,26 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPackets::Quest::Quest
_player->PlayerTalkClass->SendQuestGiverOfferReward(quest, packet.QuestGiverGUID, true);
}
-void WorldSession::HandleQuestgiverRequestRewardOpcode(WorldPacket& recvData)
+void WorldSession::HandleQuestgiverRequestRewardOpcode(WorldPackets::Quest::QuestGiverRequestReward& packet)
{
- uint32 questId;
- ObjectGuid guid;
- recvData >> guid >> questId;
+ TC_LOG_DEBUG("network", "WORLD: Received CMSG_QUESTGIVER_REQUEST_REWARD npc = %s, quest = %u", packet.QuestGiverGUID.ToString().c_str(), packet.QuestID);
- TC_LOG_DEBUG("network", "WORLD: Received CMSG_QUESTGIVER_REQUEST_REWARD npc = %s, quest = %u", guid.ToString().c_str(), questId);
-
- Object* object = ObjectAccessor::GetObjectByTypeMask(*_player, guid, TYPEMASK_UNIT | TYPEMASK_GAMEOBJECT);
- if (!object || !object->hasInvolvedQuest(questId))
+ Object* object = ObjectAccessor::GetObjectByTypeMask(*_player, packet.QuestGiverGUID, TYPEMASK_UNIT | TYPEMASK_GAMEOBJECT);
+ if (!object || !object->hasInvolvedQuest(packet.QuestID))
return;
// some kind of WPE protection
if (!_player->CanInteractWithQuestGiver(object))
return;
- if (_player->CanCompleteQuest(questId))
- _player->CompleteQuest(questId);
+ if (_player->CanCompleteQuest(packet.QuestID))
+ _player->CompleteQuest(packet.QuestID);
- if (_player->GetQuestStatus(questId) != QUEST_STATUS_COMPLETE)
+ if (_player->GetQuestStatus(packet.QuestID) != QUEST_STATUS_COMPLETE)
return;
- if (Quest const* quest = sObjectMgr->GetQuestTemplate(questId))
- _player->PlayerTalkClass->SendQuestGiverOfferReward(quest, guid, true);
+ if (Quest const* quest = sObjectMgr->GetQuestTemplate(packet.QuestID))
+ _player->PlayerTalkClass->SendQuestGiverOfferReward(quest, packet.QuestGiverGUID, true);
}
void WorldSession::HandleQuestgiverCancel(WorldPacket& /*recvData*/)
@@ -455,7 +451,7 @@ void WorldSession::HandleQuestConfirmAccept(WorldPacket& recvData)
if (!_player->IsInSameRaidWith(originalPlayer))
return;
- if (!!originalPlayer->CanShareQuest(questId))
+ if (!originalPlayer->CanShareQuest(questId))
return;
if (!_player->CanTakeQuest(quest, true))