aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/DuelHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2015-01-10 20:57:53 +0100
committerShauren <shauren.trinity@gmail.com>2015-01-10 20:57:53 +0100
commitec5800c845ff202f5bc4e62026919b92b6726fba (patch)
treeeaab7602d4b5dd9ca03edaa04156183f193f2078 /src/server/game/Handlers/DuelHandler.cpp
parentbd5c7cc637263f53108891def60959bd81e32854 (diff)
Core/PacketIO: Reenabled most opcodes for WorldSession::DosProtection::GetMaxPacketCounterAllowed
Diffstat (limited to 'src/server/game/Handlers/DuelHandler.cpp')
-rw-r--r--src/server/game/Handlers/DuelHandler.cpp27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/server/game/Handlers/DuelHandler.cpp b/src/server/game/Handlers/DuelHandler.cpp
index 8f47bcf3e13..75e5781caa8 100644
--- a/src/server/game/Handlers/DuelHandler.cpp
+++ b/src/server/game/Handlers/DuelHandler.cpp
@@ -17,31 +17,32 @@
*/
#include "Common.h"
-#include "WorldPacket.h"
+#include "DuelPackets.h"
#include "WorldSession.h"
#include "Log.h"
#include "Opcodes.h"
#include "UpdateData.h"
#include "Player.h"
-void WorldSession::HandleDuelAcceptedOpcode(WorldPacket& recvPacket)
+void WorldSession::HandleDuelResponseOpcode(WorldPackets::Duel::DuelResponse& duelResponse)
{
- ObjectGuid guid;
- Player* player;
- Player* plTarget;
-
- recvPacket >> guid;
+ if (duelResponse.Accepted)
+ HandleDuelAccepted();
+ else
+ HandleDuelCancelled();
+}
+void WorldSession::HandleDuelAccepted()
+{
if (!GetPlayer()->duel) // ignore accept from duel-sender
return;
- player = GetPlayer();
- plTarget = player->duel->opponent;
+ Player* player = GetPlayer();
+ Player* plTarget = player->duel->opponent;
if (player == player->duel->initiator || !plTarget || player == plTarget || player->duel->startTime != 0 || plTarget->duel->startTime != 0)
return;
- //TC_LOG_DEBUG("network", "WORLD: Received CMSG_DUEL_ACCEPTED");
TC_LOG_DEBUG("network", "Player 1 is: %s (%s)", player->GetGUID().ToString().c_str(), player->GetName().c_str());
TC_LOG_DEBUG("network", "Player 2 is: %s (%s)", plTarget->GetGUID().ToString().c_str(), plTarget->GetName().c_str());
@@ -53,12 +54,8 @@ void WorldSession::HandleDuelAcceptedOpcode(WorldPacket& recvPacket)
plTarget->SendDuelCountdown(3000);
}
-void WorldSession::HandleDuelCancelledOpcode(WorldPacket& recvPacket)
+void WorldSession::HandleDuelCancelled()
{
- TC_LOG_DEBUG("network", "WORLD: Received CMSG_DUEL_CANCELLED");
- ObjectGuid guid;
- recvPacket >> guid;
-
// no duel requested
if (!GetPlayer()->duel)
return;