From 9fe6756cf26e916d69673879c31e09ee57ef6470 Mon Sep 17 00:00:00 2001 From: NoName <322016+Faq@users.noreply.github.com> Date: Wed, 15 Jul 2020 00:15:33 +0300 Subject: Core/PacketIO: Updated corpse related packet structures (#24922) # Conflicts: # src/server/game/Entities/Player/Player.cpp # src/server/game/Handlers/MiscHandler.cpp # src/server/game/Handlers/QueryHandler.cpp # src/server/game/Maps/MapManager.cpp # src/server/game/Server/Packets/MiscPackets.cpp # src/server/game/Server/Packets/QueryPackets.h # src/server/game/Server/Protocol/Opcodes.cpp # src/server/game/Server/Protocol/Opcodes.h # src/server/game/Server/WorldSession.h * + For SMSG_DEATH_RELEASE_LOC G3D::Vector3 -> TaggedPosition + removed non 3.3.5 packets Co-authored-by: Peter Keresztes Schmidt Co-authored-by: Mogadischu Co-authored-by: Shauren --- src/server/game/Handlers/MiscHandler.cpp | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) (limited to 'src/server/game/Handlers/MiscHandler.cpp') diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp index 324d5701939..d3c14538c58 100644 --- a/src/server/game/Handlers/MiscHandler.cpp +++ b/src/server/game/Handlers/MiscHandler.cpp @@ -55,12 +55,10 @@ #include #include -void WorldSession::HandleRepopRequestOpcode(WorldPacket& recvData) +void WorldSession::HandleRepopRequest(WorldPackets::Misc::RepopRequest& /*packet*/) { TC_LOG_DEBUG("network", "WORLD: Recvd CMSG_REPOP_REQUEST Message"); - recvData.read_skip(); - if (GetPlayer()->IsAlive() || GetPlayer()->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_GHOST)) return; @@ -521,13 +519,10 @@ void WorldSession::HandleBugOpcode(WorldPacket& recvData) CharacterDatabase.Execute(stmt); } -void WorldSession::HandleReclaimCorpseOpcode(WorldPacket& recvData) +void WorldSession::HandleReclaimCorpse(WorldPackets::Misc::ReclaimCorpse& /*packet*/) { TC_LOG_DEBUG("network", "WORLD: Received CMSG_RECLAIM_CORPSE"); - ObjectGuid guid; - recvData >> guid; - if (_player->IsAlive()) return; @@ -557,25 +552,20 @@ void WorldSession::HandleReclaimCorpseOpcode(WorldPacket& recvData) _player->SpawnCorpseBones(); } -void WorldSession::HandleResurrectResponseOpcode(WorldPacket& recvData) +void WorldSession::HandleResurrectResponse(WorldPackets::Misc::ResurrectResponse& packet) { TC_LOG_DEBUG("network", "WORLD: Received CMSG_RESURRECT_RESPONSE"); - ObjectGuid guid; - uint8 status; - recvData >> guid; - recvData >> status; - if (GetPlayer()->IsAlive()) return; - if (status == 0) + if (packet.Response == 0) { GetPlayer()->ClearResurrectRequestData(); // reject return; } - if (!GetPlayer()->IsResurrectRequestedBy(guid)) + if (!GetPlayer()->IsResurrectRequestedBy(packet.Resurrecter)) return; GetPlayer()->ResurrectUsingRequestData(); -- cgit v1.2.3