mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Core/Packets: CMSG_CANCEL_TRADE handler
This commit is contained in:
@@ -29,6 +29,7 @@
|
||||
#include "SocialMgr.h"
|
||||
#include "Language.h"
|
||||
#include "AccountMgr.h"
|
||||
#include "TradePackets.h"
|
||||
|
||||
void WorldSession::SendTradeStatus(TradeStatusInfo const& info)
|
||||
{
|
||||
@@ -655,7 +656,7 @@ void WorldSession::SendCancelTrade()
|
||||
SendTradeStatus(info);
|
||||
}
|
||||
|
||||
void WorldSession::HandleCancelTradeOpcode(WorldPacket& /*recvPacket*/)
|
||||
void WorldSession::HandleCancelTradeOpcode(WorldPackets::Trade::CancelTrade& /*cancelTrade*/)
|
||||
{
|
||||
// sent also after LOGOUT COMPLETE
|
||||
if (_player) // needed because STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT
|
||||
|
||||
37
src/server/game/Server/Packets/TradePackets.h
Normal file
37
src/server/game/Server/Packets/TradePackets.h
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2008-2014 TrinityCore <http://www.trinitycore.org/>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef TradePackets_h__
|
||||
#define TradePackets_h__
|
||||
|
||||
#include "Packet.h"
|
||||
|
||||
namespace WorldPackets
|
||||
{
|
||||
namespace Trade
|
||||
{
|
||||
class CancelTrade final : public ClientPacket
|
||||
{
|
||||
public:
|
||||
CancelTrade(WorldPacket&& packet) : ClientPacket(CMSG_CANCEL_TRADE, std::move(packet) { }
|
||||
|
||||
void Read() override { }
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
#endif // TradePackets_h__
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "WorldSession.h"
|
||||
#include "Packets/CharacterPackets.h"
|
||||
#include "Packets/GuildPackets.h"
|
||||
#include "Packets/TradePackets.h"
|
||||
|
||||
template<class PacketClass, void(WorldSession::*HandlerFunction)(PacketClass&)>
|
||||
class PacketHandler : public OpcodeHandler
|
||||
@@ -195,7 +196,7 @@ void OpcodeTable::Initialize()
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_MOUNT_AURA, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelMountAuraOpcode );
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_QUEUED_SPELL, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_TEMP_ENCHANTMENT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelTempEnchantmentOpcode);
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_TRADE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelTradeOpcode);
|
||||
DEFINE_HANDLER(CMSG_CANCEL_TRADE, STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT, PROCESS_THREADUNSAFE, WorldPackets::Trade::CancelTrade, &WorldSession::HandleCancelTradeOpcode);
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CAST_SPELL, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleCastSpellOpcode );
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGEPLAYER_DIFFICULTY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||
DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleChangeSeatsOnControlledVehicle);
|
||||
|
||||
@@ -95,6 +95,11 @@ namespace WorldPackets
|
||||
{
|
||||
class QueryGuildInfo;
|
||||
}
|
||||
|
||||
namespace Trade
|
||||
{
|
||||
class CancelTrade;
|
||||
}
|
||||
}
|
||||
|
||||
enum AccountDataType
|
||||
@@ -687,7 +692,7 @@ class WorldSession
|
||||
void HandleAcceptTradeOpcode(WorldPacket& recvPacket);
|
||||
void HandleBeginTradeOpcode(WorldPacket& recvPacket);
|
||||
void HandleBusyTradeOpcode(WorldPacket& recvPacket);
|
||||
void HandleCancelTradeOpcode(WorldPacket& recvPacket);
|
||||
void HandleCancelTradeOpcode(WorldPackets::Trade::CancelTrade& cancelTrade);
|
||||
void HandleClearTradeItemOpcode(WorldPacket& recvPacket);
|
||||
void HandleIgnoreTradeOpcode(WorldPacket& recvPacket);
|
||||
void HandleInitiateTradeOpcode(WorldPacket& recvPacket);
|
||||
|
||||
Reference in New Issue
Block a user