diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Server/Packets/GuildPackets.cpp | 147 | ||||
-rw-r--r-- | src/server/game/Server/Packets/GuildPackets.h | 170 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 12 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.h | 12 | ||||
-rw-r--r-- | src/server/game/Server/WorldSession.h | 24 |
5 files changed, 365 insertions, 0 deletions
diff --git a/src/server/game/Server/Packets/GuildPackets.cpp b/src/server/game/Server/Packets/GuildPackets.cpp index 1627aaf232d..c14f58ae8b3 100644 --- a/src/server/game/Server/Packets/GuildPackets.cpp +++ b/src/server/game/Server/Packets/GuildPackets.cpp @@ -661,6 +661,153 @@ void WorldPackets::Guild::GuildBankSwapItems::Read() AutoStore = _worldPacket.ReadBit(); } +void WorldPackets::Guild::DepositGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::StoreGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::SwapItemWithGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::SwapGuildBankItemWithGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab[0]; + _worldPacket >> BankSlot[0]; + _worldPacket >> BankTab[1]; + _worldPacket >> BankSlot[1]; +} + +void WorldPackets::Guild::MoveGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> BankTab1; + _worldPacket >> BankSlot1; +} + +void WorldPackets::Guild::MergeItemWithGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + _worldPacket >> StackCount; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::SplitItemToGuildBank::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + _worldPacket >> StackCount; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::MergeGuildBankItemWithItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + _worldPacket >> StackCount; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::SplitGuildBankItemToInventory::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> ContainerItemSlot; + _worldPacket >> StackCount; + + if (_worldPacket.ReadBit()) + ContainerSlot = boost::in_place(); + + if (ContainerSlot) + _worldPacket >> *ContainerSlot; +} + +void WorldPackets::Guild::AutoStoreGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; +} + +void WorldPackets::Guild::MergeGuildBankItemWithGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> BankTab1; + _worldPacket >> BankSlot1; + _worldPacket >> StackCount; +} + +void WorldPackets::Guild::SplitGuildBankItem::Read() +{ + _worldPacket >> Banker; + _worldPacket >> BankTab; + _worldPacket >> BankSlot; + _worldPacket >> BankTab1; + _worldPacket >> BankSlot1; + _worldPacket >> StackCount; +} + void WorldPackets::Guild::GuildBankLogQuery::Read() { _worldPacket >> Tab; diff --git a/src/server/game/Server/Packets/GuildPackets.h b/src/server/game/Server/Packets/GuildPackets.h index c99b498c4dd..be277c2e38c 100644 --- a/src/server/game/Server/Packets/GuildPackets.h +++ b/src/server/game/Server/Packets/GuildPackets.h @@ -851,6 +851,176 @@ namespace WorldPackets bool BankOnly = false; }; + class DepositGuildBankItem final : public ClientPacket + { + public: + DepositGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_DEPOSIT_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + }; + + class StoreGuildBankItem final : public ClientPacket + { + public: + StoreGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_STORE_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + }; + + class SwapItemWithGuildBankItem final : public ClientPacket + { + public: + SwapItemWithGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_SWAP_ITEM_WITH_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + }; + + class SwapGuildBankItemWithGuildBankItem final : public ClientPacket + { + public: + SwapGuildBankItemWithGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_SWAP_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + std::array<uint8, 2> BankTab = { }; + std::array<uint8, 2> BankSlot = { }; + }; + + class MoveGuildBankItem final : public ClientPacket + { + public: + MoveGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_MOVE_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + uint8 BankTab1 = 0; + uint8 BankSlot1 = 0; + }; + + class MergeItemWithGuildBankItem final : public ClientPacket + { + public: + MergeItemWithGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_MERGE_ITEM_WITH_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + uint32 StackCount = 0; + }; + + class SplitItemToGuildBank final : public ClientPacket + { + public: + SplitItemToGuildBank(WorldPacket&& packet) : ClientPacket(CMSG_SPLIT_ITEM_TO_GUILD_BANK, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + uint32 StackCount = 0; + }; + + class MergeGuildBankItemWithItem final : public ClientPacket + { + public: + MergeGuildBankItemWithItem(WorldPacket&& packet) : ClientPacket(CMSG_MERGE_GUILD_BANK_ITEM_WITH_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + uint32 StackCount = 0; + }; + + class SplitGuildBankItemToInventory final : public ClientPacket + { + public: + SplitGuildBankItemToInventory(WorldPacket&& packet) : ClientPacket(CMSG_SPLIT_GUILD_BANK_ITEM_TO_INVENTORY, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + Optional<uint8> ContainerSlot; + uint8 ContainerItemSlot = 0; + uint32 StackCount = 0; + }; + + class AutoStoreGuildBankItem final : public ClientPacket + { + public: + AutoStoreGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_AUTO_STORE_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + }; + + class MergeGuildBankItemWithGuildBankItem final : public ClientPacket + { + public: + MergeGuildBankItemWithGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_MERGE_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + uint8 BankTab1 = 0; + uint8 BankSlot1 = 0; + uint32 StackCount = 0; + }; + + class SplitGuildBankItem final : public ClientPacket + { + public: + SplitGuildBankItem(WorldPacket&& packet) : ClientPacket(CMSG_SPLIT_GUILD_BANK_ITEM, std::move(packet)) { } + + void Read() override; + + ObjectGuid Banker; + uint8 BankTab = 0; + uint8 BankSlot = 0; + uint8 BankTab1 = 0; + uint8 BankSlot1 = 0; + uint32 StackCount = 0; + }; + class GuildBankLogQuery final : public ClientPacket { public: diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index ddbabb4822a..c698eab64b7 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -180,6 +180,7 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_AUTO_EQUIP_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAutoEquipItemOpcode); DEFINE_HANDLER(CMSG_AUTO_EQUIP_ITEM_SLOT, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAutoEquipItemSlotOpcode); DEFINE_HANDLER(CMSG_AUTO_STORE_BAG_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAutoStoreBagItemOpcode); + DEFINE_HANDLER(CMSG_AUTO_STORE_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAzeriteEmpoweredItemSelectPower); DEFINE_HANDLER(CMSG_AZERITE_EMPOWERED_ITEM_VIEWED, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAzeriteEmpoweredItemViewed); DEFINE_HANDLER(CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleAzeriteEssenceActivateEssence); @@ -364,6 +365,7 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_DELETE_EQUIPMENT_SET, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDeleteEquipmentSet); DEFINE_HANDLER(CMSG_DEL_FRIEND, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDelFriendOpcode); DEFINE_HANDLER(CMSG_DEL_IGNORE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDelIgnoreOpcode); + DEFINE_HANDLER(CMSG_DEPOSIT_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_DEPOSIT_REAGENT_BANK, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_DESTROY_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleDestroyItemOpcode); DEFINE_HANDLER(CMSG_DF_BOOT_PLAYER_VOTE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLfgSetBootVoteOpcode); @@ -548,6 +550,9 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_MAIL_TAKE_MONEY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMailTakeMoney); DEFINE_HANDLER(CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MASTER_LOOT_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLootMasterGiveOpcode); + DEFINE_HANDLER(CMSG_MERGE_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MERGE_GUILD_BANK_ITEM_WITH_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MERGE_ITEM_WITH_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MINIMAP_PING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMinimapPingOpcode); DEFINE_HANDLER(CMSG_MISSILE_TRAJECTORY_COLLISION, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMissileTrajectoryCollision); DEFINE_HANDLER(CMSG_MOUNT_CLEAR_FANFARE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); @@ -578,6 +583,7 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_MOVE_FORCE_WALK_SPEED_CHANGE_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleForceSpeedChangeAck); DEFINE_HANDLER(CMSG_MOVE_GRAVITY_DISABLE_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementAckMessage); DEFINE_HANDLER(CMSG_MOVE_GRAVITY_ENABLE_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementAckMessage); + DEFINE_HANDLER(CMSG_MOVE_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MOVE_HEARTBEAT, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes); DEFINE_HANDLER(CMSG_MOVE_HOVER_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementAckMessage); DEFINE_HANDLER(CMSG_MOVE_INIT_ACTIVE_MOVER_COMPLETE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); @@ -833,11 +839,15 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_SORT_REAGENT_BANK_BAGS, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSortReagentBankBags); DEFINE_HANDLER(CMSG_SPELL_CLICK, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSpellClick); DEFINE_HANDLER(CMSG_SPIRIT_HEALER_ACTIVATE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSpiritHealerActivate); + DEFINE_HANDLER(CMSG_SPLIT_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_SPLIT_GUILD_BANK_ITEM_TO_INVENTORY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SPLIT_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSplitItemOpcode); + DEFINE_HANDLER(CMSG_SPLIT_ITEM_TO_GUILD_BANK, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_STAND_STATE_CHANGE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleStandStateChangeOpcode); DEFINE_HANDLER(CMSG_START_CHALLENGE_MODE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_START_SPECTATOR_WAR_GAME, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_START_WAR_GAME, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_STORE_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SUBMIT_USER_FEEDBACK, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSubmitUserFeedback); DEFINE_HANDLER(CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SUMMON_RESPONSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSummonResponseOpcode); @@ -845,8 +855,10 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_SURRENDER_ARENA, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SUSPEND_COMMS_ACK, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SUSPEND_TOKEN_RESPONSE, STATUS_TRANSFER, PROCESS_THREADUNSAFE, &WorldSession::HandleSuspendTokenResponse); + DEFINE_HANDLER(CMSG_SWAP_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SWAP_INV_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSwapInvItemOpcode); DEFINE_HANDLER(CMSG_SWAP_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSwapItem); + DEFINE_HANDLER(CMSG_SWAP_ITEM_WITH_GUILD_BANK_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_SWAP_SUB_GROUPS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapSubGroupsOpcode); DEFINE_HANDLER(CMSG_SWAP_VOID_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleVoidSwapItem); DEFINE_HANDLER(CMSG_TABARD_VENDOR_ACTIVATE, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleTabardVendorActivateOpcode); diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h index afad1fccf3f..9e7250813df 100644 --- a/src/server/game/Server/Protocol/Opcodes.h +++ b/src/server/game/Server/Protocol/Opcodes.h @@ -94,6 +94,7 @@ enum OpcodeClient : uint16 CMSG_AUTO_EQUIP_ITEM = 0x399A, CMSG_AUTO_EQUIP_ITEM_SLOT = 0x399F, CMSG_AUTO_STORE_BAG_ITEM = 0x399B, + CMSG_AUTO_STORE_GUILD_BANK_ITEM = 0x34C6, CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER = 0x3386, CMSG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x3368, CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE = 0x3388, @@ -278,6 +279,7 @@ enum OpcodeClient : uint16 CMSG_DELETE_EQUIPMENT_SET = 0x3519, CMSG_DEL_FRIEND = 0x36D1, CMSG_DEL_IGNORE = 0x36D5, + CMSG_DEPOSIT_GUILD_BANK_ITEM = 0x34BD, CMSG_DEPOSIT_REAGENT_BANK = 0x334A, CMSG_DESTROY_ITEM = 0x32A1, CMSG_DF_BOOT_PLAYER_VOTE = 0x3615, @@ -462,6 +464,9 @@ enum OpcodeClient : uint16 CMSG_MAIL_TAKE_MONEY = 0x3549, CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT = 0x322E, CMSG_MASTER_LOOT_ITEM = 0x3216, + CMSG_MERGE_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM = 0x34C7, + CMSG_MERGE_GUILD_BANK_ITEM_WITH_ITEM = 0x34C4, + CMSG_MERGE_ITEM_WITH_GUILD_BANK_ITEM = 0x34C2, CMSG_MINIMAP_PING = 0x364B, CMSG_MISSILE_TRAJECTORY_COLLISION = 0x318B, CMSG_MOUNT_CLEAR_FANFARE = 0x312D, @@ -492,6 +497,7 @@ enum OpcodeClient : uint16 CMSG_MOVE_FORCE_WALK_SPEED_CHANGE_ACK = 0x3A20, CMSG_MOVE_GRAVITY_DISABLE_ACK = 0x3A34, CMSG_MOVE_GRAVITY_ENABLE_ACK = 0x3A35, + CMSG_MOVE_GUILD_BANK_ITEM = 0x34C1, CMSG_MOVE_HEARTBEAT = 0x3A0F, CMSG_MOVE_HOVER_ACK = 0x3A12, CMSG_MOVE_INIT_ACTIVE_MOVER_COMPLETE = 0x3A43, @@ -747,11 +753,15 @@ enum OpcodeClient : uint16 CMSG_SORT_REAGENT_BANK_BAGS = 0x3349, CMSG_SPELL_CLICK = 0x349B, CMSG_SPIRIT_HEALER_ACTIVATE = 0x34B5, + CMSG_SPLIT_GUILD_BANK_ITEM = 0x34C8, + CMSG_SPLIT_GUILD_BANK_ITEM_TO_INVENTORY = 0x34C5, CMSG_SPLIT_ITEM = 0x399E, + CMSG_SPLIT_ITEM_TO_GUILD_BANK = 0x34C3, CMSG_STAND_STATE_CHANGE = 0x318A, CMSG_START_CHALLENGE_MODE = 0x355C, CMSG_START_SPECTATOR_WAR_GAME = 0x35DF, CMSG_START_WAR_GAME = 0x35DE, + CMSG_STORE_GUILD_BANK_ITEM = 0x34BE, CMSG_SUBMIT_USER_FEEDBACK = 0x3697, CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE = 0x33E9, CMSG_SUMMON_RESPONSE = 0x366A, @@ -759,8 +769,10 @@ enum OpcodeClient : uint16 CMSG_SURRENDER_ARENA = 0x3174, CMSG_SUSPEND_COMMS_ACK = 0x3764, CMSG_SUSPEND_TOKEN_RESPONSE = 0x376A, + CMSG_SWAP_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM = 0x34C0, CMSG_SWAP_INV_ITEM = 0x399D, CMSG_SWAP_ITEM = 0x399C, + CMSG_SWAP_ITEM_WITH_GUILD_BANK_ITEM = 0x34BF, CMSG_SWAP_SUB_GROUPS = 0x364D, CMSG_SWAP_VOID_ITEM = 0x31A6, CMSG_TABARD_VENDOR_ACTIVATE = 0x32B9, diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index 3a84425e49c..f030d9fa046 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -363,6 +363,18 @@ namespace WorldPackets class GuildBankDepositMoney; class GuildBankWithdrawMoney; class GuildBankSwapItems; + class DepositGuildBankItem; + class StoreGuildBankItem; + class SwapItemWithGuildBankItem; + class SwapGuildBankItemWithGuildBankItem; + class MoveGuildBankItem; + class MergeItemWithGuildBankItem; + class SplitItemToGuildBank; + class MergeGuildBankItemWithItem; + class SplitGuildBankItemToInventory; + class AutoStoreGuildBankItem; + class MergeGuildBankItemWithGuildBankItem; + class SplitGuildBankItem; class GuildBankBuyTab; class GuildBankUpdateTab; class GuildBankLogQuery; @@ -1635,6 +1647,18 @@ class TC_GAME_API WorldSession void HandleGuildBankDepositMoney(WorldPackets::Guild::GuildBankDepositMoney& packet); void HandleGuildBankWithdrawMoney(WorldPackets::Guild::GuildBankWithdrawMoney& packet); void HandleGuildBankSwapItems(WorldPackets::Guild::GuildBankSwapItems& packet); + void HandleDepositGuildBankItem(WorldPackets::Guild::DepositGuildBankItem& depositGuildBankItem); + void HandleStoreGuildBankItem(WorldPackets::Guild::StoreGuildBankItem& storeGuildBankItem); + void HandleSwapItemWithGuildBankItem(WorldPackets::Guild::SwapItemWithGuildBankItem& swapItemWithGuildBankItem); + void HandleSwapGuildBankItemWithGuildBankItem(WorldPackets::Guild::SwapGuildBankItemWithGuildBankItem& swapGuildBankItemWithGuildBankItem); + void HandleMoveGuildBankItem(WorldPackets::Guild::MoveGuildBankItem& moveGuildBankItem); + void HandleMergeItemWithGuildBankItem(WorldPackets::Guild::MergeItemWithGuildBankItem& mergeItemWithGuildBankItem); + void HandleSplitItemToGuildBank(WorldPackets::Guild::SplitItemToGuildBank& splitItemToGuildBank); + void HandleMergeGuildBankItemWithItem(WorldPackets::Guild::MergeGuildBankItemWithItem& mergeGuildBankItemWithItem); + void HandleSplitGuildBankItemToInventory(WorldPackets::Guild::SplitGuildBankItemToInventory& splitGuildBankItemToInventory); + void HandleAutoStoreGuildBankItem(WorldPackets::Guild::AutoStoreGuildBankItem& autoStoreGuildBankItem); + void HandleMergeGuildBankItemWithGuildBankItem(WorldPackets::Guild::MergeGuildBankItemWithGuildBankItem& mergeGuildBankItemWithGuildBankItem); + void HandleSplitGuildBankItem(WorldPackets::Guild::SplitGuildBankItem& splitGuildBankItem); void HandleGuildBankUpdateTab(WorldPackets::Guild::GuildBankUpdateTab& packet); void HandleGuildBankBuyTab(WorldPackets::Guild::GuildBankBuyTab& packet); |