diff options
| author | Vincent-Michael <Vincent_Michael@gmx.de> | 2015-08-08 01:30:42 +0200 |
|---|---|---|
| committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2015-08-08 01:30:42 +0200 |
| commit | a76fdb9d38c78d931375de235171e11ac75c5cbb (patch) | |
| tree | 23c421c4e64e6dc48ecfa2d9102352f97d32c1d1 /src/server/game/Server | |
| parent | 32284d3e9ca55ad906fab8eb360da555dc1cfbb3 (diff) | |
Core/Misc:
- Updated and enabled CMSG_QUEST_PUSH_RESULT opcode
- Update QuestPushReason enum for 6.2.0
Diffstat (limited to 'src/server/game/Server')
| -rw-r--r-- | src/server/game/Server/Packets/QuestPackets.cpp | 9 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/QuestPackets.h | 16 | ||||
| -rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 2 | ||||
| -rw-r--r-- | src/server/game/Server/WorldSession.h | 3 |
4 files changed, 25 insertions, 5 deletions
diff --git a/src/server/game/Server/Packets/QuestPackets.cpp b/src/server/game/Server/Packets/QuestPackets.cpp index 474b8eef4a0..ac1374d8e7a 100644 --- a/src/server/game/Server/Packets/QuestPackets.cpp +++ b/src/server/game/Server/Packets/QuestPackets.cpp @@ -495,10 +495,17 @@ void WorldPackets::Quest::QuestConfirmAccept::Read() _worldPacket >> QuestID; } -WorldPacket const* WorldPackets::Quest::QuestPushResult::Write() +WorldPacket const* WorldPackets::Quest::QuestPushResultResponse::Write() { _worldPacket << SenderGUID; _worldPacket << uint8(Result); return &_worldPacket; } + +void WorldPackets::Quest::QuestPushResult::Read() +{ + _worldPacket >> SenderGUID; + _worldPacket >> QuestID; + _worldPacket >> Result; +} diff --git a/src/server/game/Server/Packets/QuestPackets.h b/src/server/game/Server/Packets/QuestPackets.h index 90f0c39d27b..022458a07eb 100644 --- a/src/server/game/Server/Packets/QuestPackets.h +++ b/src/server/game/Server/Packets/QuestPackets.h @@ -485,10 +485,10 @@ namespace WorldPackets int32 QuestID = 0; }; - class QuestPushResult final : public ServerPacket + class QuestPushResultResponse final : public ServerPacket { public: - QuestPushResult() : ServerPacket(SMSG_QUEST_PUSH_RESULT, 16 + 1) { } + QuestPushResultResponse() : ServerPacket(SMSG_QUEST_PUSH_RESULT, 16 + 1) { } WorldPacket const* Write() override; @@ -503,6 +503,18 @@ namespace WorldPackets WorldPacket const* Write() override { return &_worldPacket; } }; + + class QuestPushResult final : public ClientPacket + { + public: + QuestPushResult(WorldPacket&& packet) : ClientPacket(CMSG_QUEST_PUSH_RESULT, std::move(packet)) { } + + void Read() override; + + ObjectGuid SenderGUID; + uint32 QuestID = 0; + uint8 Result = 0; + }; } } diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 883a1693cec..f1fc365bbdc 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -648,7 +648,7 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_QUEST_GIVER_STATUS_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, WorldPackets::Quest::QuestGiverStatusQuery, &WorldSession::HandleQuestgiverStatusQueryOpcode); DEFINE_HANDLER(CMSG_QUEST_LOG_REMOVE_QUEST, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Quest::QuestLogRemoveQuest, &WorldSession::HandleQuestLogRemoveQuest); DEFINE_HANDLER(CMSG_QUEST_POI_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Query::QuestPOIQuery, &WorldSession::HandleQuestPOIQuery); - DEFINE_OPCODE_HANDLER_OLD(CMSG_QUEST_PUSH_RESULT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestPushResult ); + DEFINE_HANDLER(CMSG_QUEST_PUSH_RESULT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Quest::QuestPushResult, &WorldSession::HandleQuestPushResult); DEFINE_HANDLER(CMSG_QUEUED_MESSAGES_END, STATUS_UNHANDLED, PROCESS_INPLACE, WorldPackets::Null, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_RANDOM_ROLL, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Misc::RandomRollClient, &WorldSession::HandleRandomRollOpcode); DEFINE_HANDLER(CMSG_READY_CHECK_RESPONSE, STATUS_LOGGEDIN, PROCESS_INPLACE, WorldPackets::Party::ReadyCheckResponseClient, &WorldSession::HandleReadyCheckResponseOpcode); diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index cf2848a2799..f7d4fa0bbe4 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -476,6 +476,7 @@ namespace WorldPackets class QuestGiverQueryQuest; class QuestGiverAcceptQuest; class QuestLogRemoveQuest; + class QuestPushResult; } namespace RaF @@ -1316,7 +1317,7 @@ class WorldSession void HandleQuestgiverCompleteQuest(WorldPackets::Quest::QuestGiverCompleteQuest& packet); void HandleQuestgiverQuestAutoLaunch(WorldPacket& recvPacket); void HandlePushQuestToParty(WorldPacket& recvPacket); - void HandleQuestPushResult(WorldPacket& recvPacket); + void HandleQuestPushResult(WorldPackets::Quest::QuestPushResult& packet); void HandleChatMessageOpcode(WorldPackets::Chat::ChatMessage& chatMessage); void HandleChatMessageWhisperOpcode(WorldPackets::Chat::ChatMessageWhisper& chatMessageWhisper); |
