diff options
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.h | 3 | ||||
| -rw-r--r-- | src/server/game/Handlers/AuctionHouseHandler.cpp | 20 | ||||
| -rw-r--r-- | src/server/game/Handlers/BlackMarketHandler.cpp | 46 | ||||
| -rw-r--r-- | src/server/game/Handlers/NPCHandler.cpp | 7 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.cpp | 14 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.h | 20 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/BlackMarketPackets.cpp | 32 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/BlackMarketPackets.h | 51 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/NPCPackets.cpp | 7 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/NPCPackets.h | 10 | ||||
| -rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 10 | ||||
| -rw-r--r-- | src/server/game/Server/Protocol/Opcodes.h | 8 | ||||
| -rw-r--r-- | src/server/game/Server/WorldSession.h | 18 |
13 files changed, 224 insertions, 22 deletions
diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 270674fdba6..5cb5638faeb 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -755,7 +755,8 @@ enum NPCFlags UNIT_NPC_FLAG_MAILBOX = 0x04000000, // mailbox UNIT_NPC_FLAG_REFORGER = 0x08000000, // reforging UNIT_NPC_FLAG_TRANSMOGRIFIER = 0x10000000, // transmogrification - UNIT_NPC_FLAG_VAULTKEEPER = 0x20000000 // void storage + UNIT_NPC_FLAG_VAULTKEEPER = 0x20000000, // void storage + UNIT_NPC_FLAG_BLACK_MARKET = 0x80000000 // black market }; enum MovementFlags diff --git a/src/server/game/Handlers/AuctionHouseHandler.cpp b/src/server/game/Handlers/AuctionHouseHandler.cpp index 0cabbf3f220..6a3f8665bbf 100644 --- a/src/server/game/Handlers/AuctionHouseHandler.cpp +++ b/src/server/game/Handlers/AuctionHouseHandler.cpp @@ -33,15 +33,12 @@ #include "AuctionHousePackets.h" //void called when player click on auctioneer npc -void WorldSession::HandleAuctionHelloOpcode(WorldPacket& recvData) +void WorldSession::HandleAuctionHelloOpcode(WorldPackets::AuctionHouse::AuctionHello& packet) { - ObjectGuid guid; //NPC guid - recvData >> guid; - - Creature* unit = GetPlayer()->GetNPCIfCanInteractWith(guid, UNIT_NPC_FLAG_AUCTIONEER); + Creature* unit = GetPlayer()->GetNPCIfCanInteractWith(packet.Guid, UNIT_NPC_FLAG_AUCTIONEER); if (!unit) { - TC_LOG_DEBUG("network", "WORLD: HandleAuctionHelloOpcode - Unit (%s) not found or you can't interact with him.", guid.ToString().c_str()); + TC_LOG_DEBUG("network", "WORLD: HandleAuctionHelloOpcode - Unit (%s) not found or you can't interact with him.", packet.Guid.ToString().c_str()); return; } @@ -49,7 +46,7 @@ void WorldSession::HandleAuctionHelloOpcode(WorldPacket& recvData) if (GetPlayer()->HasUnitState(UNIT_STATE_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - SendAuctionHello(guid, unit); + SendAuctionHello(packet.Guid, unit); } //this void causes that auction window is opened @@ -65,11 +62,10 @@ void WorldSession::SendAuctionHello(ObjectGuid guid, Creature* unit) if (!ahEntry) return; - WorldPacket data(SMSG_AUCTION_HELLO, 12); - data << guid; - data << uint32(ahEntry->ID); - data << uint8(1); // 3.3.3: 1 - AH enabled, 0 - AH disabled - SendPacket(&data); + WorldPackets::AuctionHouse::AuctionHelloResponse auctionHelloResponse; + auctionHelloResponse.Guid = guid; + auctionHelloResponse.OpenForBusiness = true; // 3.3.3: 1 - AH enabled, 0 - AH disabled + SendPacket(auctionHelloResponse.Write()); } void WorldSession::SendAuctionCommandResult(AuctionEntry* auction, uint32 action, uint32 errorCode, uint32 /*bidError = 0*/) diff --git a/src/server/game/Handlers/BlackMarketHandler.cpp b/src/server/game/Handlers/BlackMarketHandler.cpp new file mode 100644 index 00000000000..3a23e4b1ec4 --- /dev/null +++ b/src/server/game/Handlers/BlackMarketHandler.cpp @@ -0,0 +1,46 @@ +/* +* Copyright (C) 2008-2015 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/>. +*/ + +#include "BlackMarketPackets.h" +#include "ObjectMgr.h" +#include "Player.h" +#include "WorldPacket.h" +#include "WorldSession.h" + +void WorldSession::HandleBlackMarketOpen(WorldPackets::BlackMarket::BlackMarketOpen& packet) +{ + Creature* unit = GetPlayer()->GetNPCIfCanInteractWith(packet.Guid, UNIT_NPC_FLAG_BLACK_MARKET); + if (!unit) + { + TC_LOG_DEBUG("network", "WORLD: HandleBlackMarketHello - Unit (GUID: %u) not found or you can't interact with him.", packet.Guid.ToString().c_str()); + return; + } + + // remove fake death + if (GetPlayer()->HasUnitState(UNIT_STATE_DIED)) + GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); + + SendBlackMarketOpenResult(packet.Guid, unit); +} + +void WorldSession::SendBlackMarketOpenResult(ObjectGuid guid, Creature* auctioneer) +{ + WorldPackets::BlackMarket::BlackMarketOpenResult packet; + packet.Guid = guid; + packet.Enable = false; + SendPacket(packet.Write()); +} diff --git a/src/server/game/Handlers/NPCHandler.cpp b/src/server/game/Handlers/NPCHandler.cpp index 30f3b45b47b..6e778b6070c 100644 --- a/src/server/game/Handlers/NPCHandler.cpp +++ b/src/server/game/Handlers/NPCHandler.cpp @@ -96,10 +96,9 @@ void WorldSession::HandleBankerActivateOpcode(WorldPackets::NPC::Hello& packet) void WorldSession::SendShowBank(ObjectGuid guid) { - WorldPacket data(SMSG_SHOW_BANK, 8); - data << guid; - m_currentBankerGUID = guid; - SendPacket(&data); + WorldPackets::NPC::ShowBank packet; + packet.Guid = guid; + SendPacket(packet.Write()); } void WorldSession::SendShowMailBox(ObjectGuid guid) diff --git a/src/server/game/Server/Packets/AuctionHousePackets.cpp b/src/server/game/Server/Packets/AuctionHousePackets.cpp index 596419d71c7..a756572b443 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.cpp +++ b/src/server/game/Server/Packets/AuctionHousePackets.cpp @@ -19,6 +19,20 @@ #include "AuctionHouseMgr.h" #include "ObjectGuid.h" +void WorldPackets::AuctionHouse::AuctionHello::Read() +{ + _worldPacket >> Guid; +} + +WorldPacket const* WorldPackets::AuctionHouse::AuctionHelloResponse::Write() +{ + _worldPacket << Guid; + _worldPacket.WriteBit(OpenForBusiness); + _worldPacket.FlushBits(); + + return &_worldPacket; +} + WorldPackets::AuctionHouse::AuctionCommandResult::AuctionCommandResult() : ServerPacket(SMSG_AUCTION_COMMAND_RESULT, 4 + 4 + 4 + 8 + 4 + 8 + 8 + 8) { } diff --git a/src/server/game/Server/Packets/AuctionHousePackets.h b/src/server/game/Server/Packets/AuctionHousePackets.h index 5c8f7f53d5f..d16190b5e71 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.h +++ b/src/server/game/Server/Packets/AuctionHousePackets.h @@ -26,6 +26,26 @@ namespace WorldPackets { namespace AuctionHouse { + class AuctionHello final : public ClientPacket + { + public: + AuctionHello(WorldPacket&& packet) : ClientPacket(CMSG_AUCTION_HELLO, std::move(packet)) { } + + void Read() override; + ObjectGuid Guid; + }; + + class AuctionHelloResponse final : public ServerPacket + { + public: + AuctionHelloResponse() : ServerPacket(SMSG_AUCTION_HELLO, 1 + 16) { } + + WorldPacket const* Write() override; + + ObjectGuid Guid; + bool OpenForBusiness = true; + }; + class AuctionCommandResult final : public ServerPacket { public: diff --git a/src/server/game/Server/Packets/BlackMarketPackets.cpp b/src/server/game/Server/Packets/BlackMarketPackets.cpp new file mode 100644 index 00000000000..5a4bad63d65 --- /dev/null +++ b/src/server/game/Server/Packets/BlackMarketPackets.cpp @@ -0,0 +1,32 @@ +/* +* Copyright (C) 2008-2015 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/>. +*/ + +#include "BlackMarketPackets.h" + +void WorldPackets::BlackMarket::BlackMarketOpen::Read() +{ + _worldPacket >> Guid; +} + +WorldPacket const* WorldPackets::BlackMarket::BlackMarketOpenResult::Write() +{ + _worldPacket << Guid; + _worldPacket.WriteBit(Enable); + _worldPacket.FlushBits(); + + return &_worldPacket; +} diff --git a/src/server/game/Server/Packets/BlackMarketPackets.h b/src/server/game/Server/Packets/BlackMarketPackets.h new file mode 100644 index 00000000000..9c04a639fc0 --- /dev/null +++ b/src/server/game/Server/Packets/BlackMarketPackets.h @@ -0,0 +1,51 @@ +/* +* Copyright (C) 2008-2015 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 BlackMarketPackets_h__ +#define BlackMarketPackets_h__ + +#include "Packet.h" +#include "ObjectGuid.h" +#include "WorldSession.h" + +namespace WorldPackets +{ + namespace BlackMarket + { + class BlackMarketOpen final : public ClientPacket + { + public: + BlackMarketOpen(WorldPacket&& packet) : ClientPacket(CMSG_BLACK_MARKET_OPEN, std::move(packet)) { } + + void Read() override; + + ObjectGuid Guid; + }; + + class BlackMarketOpenResult final : public ServerPacket + { + public: + BlackMarketOpenResult() : ServerPacket(SMSG_BLACK_MARKET_OPEN_RESULT, 15) { } + + WorldPacket const* Write() override; + + ObjectGuid Guid; + bool Enable = true; + }; + } +} +#endif // BlackMarketPackets_h__ diff --git a/src/server/game/Server/Packets/NPCPackets.cpp b/src/server/game/Server/Packets/NPCPackets.cpp index 1df59cd469d..bd3fe1e5803 100644 --- a/src/server/game/Server/Packets/NPCPackets.cpp +++ b/src/server/game/Server/Packets/NPCPackets.cpp @@ -118,3 +118,10 @@ WorldPacket const* WorldPackets::NPC::TrainerList::Write() return &_worldPacket; } + +WorldPacket const* WorldPackets::NPC::ShowBank::Write() +{ + _worldPacket << Guid; + + return &_worldPacket; +} diff --git a/src/server/game/Server/Packets/NPCPackets.h b/src/server/game/Server/Packets/NPCPackets.h index 823632e8f6f..840041983d9 100644 --- a/src/server/game/Server/Packets/NPCPackets.h +++ b/src/server/game/Server/Packets/NPCPackets.h @@ -127,6 +127,16 @@ namespace WorldPackets int32 TrainerID = 1; std::vector<TrainerListSpell> Spells; }; + + class ShowBank final : public ServerPacket + { + public: + ShowBank() : ServerPacket(SMSG_SHOW_BANK, 16) { } + + WorldPacket const* Write() override; + + ObjectGuid Guid; + }; } } diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index c3fcfc98d12..5dbb8391f73 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -19,6 +19,8 @@ #include "Opcodes.h" #include "WorldSession.h" #include "Packets/AchievementPackets.h" +#include "Packets/AuctionHousePackets.h" +#include "Packets/BlackMarketPackets.h" #include "Packets/CharacterPackets.h" #include "Packets/ChannelPackets.h" #include "Packets/ChatPackets.h" @@ -159,7 +161,7 @@ void OpcodeTable::Initialize() DEFINE_OPCODE_HANDLER_OLD(CMSG_ARENA_TEAM_ROSTER, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleArenaTeamRosterOpcode ); DEFINE_HANDLER(CMSG_ATTACKSTOP, STATUS_LOGGEDIN, PROCESS_INPLACE, WorldPackets::Combat::AttackStop, &WorldSession::HandleAttackStopOpcode); DEFINE_HANDLER(CMSG_ATTACKSWING, STATUS_LOGGEDIN, PROCESS_INPLACE, WorldPackets::Combat::AttackSwing, &WorldSession::HandleAttackSwingOpcode); - DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_HELLO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionHelloOpcode ); + DEFINE_HANDLER(CMSG_AUCTION_HELLO, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::AuctionHouse::AuctionHello, &WorldSession::HandleAuctionHelloOpcode); DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_BIDDER_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListBidderItems ); DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListItems ); DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_OWNER_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListOwnerItems ); @@ -198,6 +200,7 @@ void OpcodeTable::Initialize() DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLE_PET_SET_BATTLE_SLOT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL ); DEFINE_OPCODE_HANDLER_OLD(CMSG_BEGIN_TRADE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBeginTradeOpcode ); DEFINE_HANDLER(CMSG_BINDER_ACTIVATE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::NPC::Hello, &WorldSession::HandleBinderActivateOpcode); + DEFINE_HANDLER(CMSG_BLACK_MARKET_OPEN, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::BlackMarket::BlackMarketOpen, &WorldSession::HandleBlackMarketOpen); DEFINE_OPCODE_HANDLER_OLD(CMSG_BUG, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBugOpcode ); DEFINE_OPCODE_HANDLER_OLD(CMSG_BUSY_TRADE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBusyTradeOpcode ); DEFINE_HANDLER(CMSG_BUYBACK_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Item::BuyBackItem, &WorldSession::HandleBuybackItem); @@ -743,7 +746,7 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_BIDDER_LIST_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_BIDDER_NOTIFICATION, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_COMMAND_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_HELLO, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_HELLO, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_LIST_PENDING_SALES, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_LIST_ITEMS_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_OWNER_LIST_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); @@ -787,6 +790,7 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDER_CONFIRM, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDPOINTUPDATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDZONEREPLY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_BLACK_MARKET_OPEN_RESULT, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_BREAK_TARGET, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_BUY_BANK_SLOT_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_BUY_FAILED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); @@ -1323,7 +1327,7 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_TIME_ZONE_INFORMATION, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SETUP_CURRENCY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOWTAXINODES, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_BANK, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_BANK, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_MAILBOX, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_RATINGS, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SOCKET_GEMS_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h index d6008aed049..fd7aaf7c17b 100644 --- a/src/server/game/Server/Protocol/Opcodes.h +++ b/src/server/game/Server/Protocol/Opcodes.h @@ -114,6 +114,9 @@ enum OpcodeClient : uint32 CMSG_BATTLE_PET_SET_BATTLE_SLOT = 0x120B, CMSG_BEGIN_TRADE = 0xBADD, CMSG_BINDER_ACTIVATE = 0x02F3, + CMSG_BLACK_MARKET_BID = 0x13C2, + CMSG_BLACK_MARKET_OPEN = 0x1B39, + CMSG_BLACK_MARKET_REQUEST_ITEMS = 0x0B21, CMSG_BOT_DETECTED2 = 0xBADD, CMSG_BUG = 0xBADD, CMSG_BUSY_TRADE = 0xBADD, @@ -760,6 +763,9 @@ enum OpcodeServer : uint32 SMSG_BINDER_CONFIRM = 0x0B11, SMSG_BINDPOINTUPDATE = 0x0A30, SMSG_BINDZONEREPLY = 0xBADD, + SMSG_BLACK_MARKET_BID_ON_ITEM_RESULT = 0x0825, + SMSG_BLACK_MARKET_OPEN_RESULT = 0x0A05, + SMSG_BLACK_MARKET_ITEM_RESULT = 0x1BC2, SMSG_BREAK_TARGET = 0xBADD, SMSG_BUY_BANK_SLOT_RESULT = 0xBADD, SMSG_BUY_FAILED = 0x013A, @@ -1326,7 +1332,7 @@ enum OpcodeServer : uint32 SMSG_SET_VIGNETTE = 0x09AC, SMSG_SETUP_CURRENCY = 0x0B06, SMSG_SHOWTAXINODES = 0x12A1, - SMSG_SHOW_BANK = 0x0204, + SMSG_SHOW_BANK = 0x1B51, SMSG_SHOW_MAILBOX = 0xBADD, SMSG_SHOW_RATINGS = 0xBADD, SMSG_SOCKET_GEMS_RESULT = 0xBADD, diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index 3cba8396dfc..c67a283acc6 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -75,6 +75,16 @@ class RBACData; namespace WorldPackets { + namespace AuctionHouse + { + class AuctionHello; + } + + namespace BlackMarket + { + class BlackMarketOpen; + } + namespace Character { struct CharacterCreateInfo; @@ -552,6 +562,9 @@ class WorldSession void SendAuctionOwnerNotification(AuctionEntry* auction); void SendAuctionRemovedNotification(uint32 auctionId, uint32 itemEntry, int32 randomPropertyId); + // Black Market + void SendBlackMarketOpenResult(ObjectGuid guid, Creature* auctioneer); + //Item Enchantment void SendEnchantmentLog(ObjectGuid target, ObjectGuid caster, uint32 itemId, uint32 enchantId); void SendItemEnchantTimeUpdate(ObjectGuid Playerguid, ObjectGuid Itemguid, uint32 slot, uint32 Duration); @@ -878,7 +891,7 @@ class WorldSession void HandleSetTradeItemOpcode(WorldPacket& recvPacket); void HandleUnacceptTradeOpcode(WorldPacket& recvPacket); - void HandleAuctionHelloOpcode(WorldPacket& recvPacket); + void HandleAuctionHelloOpcode(WorldPackets::AuctionHouse::AuctionHello& packet); void HandleAuctionListItems(WorldPacket& recvData); void HandleAuctionListBidderItems(WorldPacket& recvData); void HandleAuctionSellItem(WorldPacket& recvData); @@ -887,6 +900,9 @@ class WorldSession void HandleAuctionPlaceBid(WorldPacket& recvData); void HandleAuctionListPendingSales(WorldPacket& recvData); + // Black Market + void HandleBlackMarketOpen(WorldPackets::BlackMarket::BlackMarketOpen& packet); + void HandleGetMailList(WorldPacket& recvData); void HandleSendMail(WorldPacket& recvData); void HandleMailTakeMoney(WorldPacket& recvData); |
