diff options
author | Shauren <shauren.trinity@gmail.com> | 2022-12-30 14:08:01 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-12-30 14:08:01 +0100 |
commit | bde93b25d2b899c4623467a094c71333b2b54e8d (patch) | |
tree | 0f97e2c63b76efd9a338fa5bbca19277cd9ec6dc /src/server/game/Handlers/ItemHandler.cpp | |
parent | 7c4c5ba549a958988a1633f75964806dba2ab9c4 (diff) |
Core/Gossip: Integrate banker guid checks into shared gossip interaction data
Diffstat (limited to 'src/server/game/Handlers/ItemHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/ItemHandler.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/server/game/Handlers/ItemHandler.cpp b/src/server/game/Handlers/ItemHandler.cpp index 2c870c0da8d..db374048017 100644 --- a/src/server/game/Handlers/ItemHandler.cpp +++ b/src/server/game/Handlers/ItemHandler.cpp @@ -21,6 +21,7 @@ #include "Creature.h" #include "DatabaseEnv.h" #include "DB2Stores.h" +#include "GossipDef.h" #include "Item.h" #include "ItemPackets.h" #include "Log.h" @@ -94,13 +95,13 @@ void WorldSession::HandleSwapInvItemOpcode(WorldPackets::Item::SwapInvItem& swap if (_player->IsBankPos(INVENTORY_SLOT_BAG_0, swapInvItem.Slot1) && !CanUseBank()) { - TC_LOG_DEBUG("network", "HandleSwapInvItemOpcode - Unit (%s) not found or you can't interact with him.", m_currentBankerGUID.ToString().c_str()); + TC_LOG_DEBUG("network", "HandleSwapInvItemOpcode - Unit (%s) not found or you can't interact with him.", _player->PlayerTalkClass->GetInteractionData().SourceGuid.ToString().c_str()); return; } if (_player->IsBankPos(INVENTORY_SLOT_BAG_0, swapInvItem.Slot2) && !CanUseBank()) { - TC_LOG_DEBUG("network", "HandleSwapInvItemOpcode - Unit (%s) not found or you can't interact with him.", m_currentBankerGUID.ToString().c_str()); + TC_LOG_DEBUG("network", "HandleSwapInvItemOpcode - Unit (%s) not found or you can't interact with him.", _player->PlayerTalkClass->GetInteractionData().SourceGuid.ToString().c_str()); return; } @@ -158,13 +159,13 @@ void WorldSession::HandleSwapItem(WorldPackets::Item::SwapItem& swapItem) if (_player->IsBankPos(swapItem.ContainerSlotA, swapItem.SlotA) && !CanUseBank()) { - TC_LOG_DEBUG("network", "HandleSwapItem - Unit (%s) not found or you can't interact with him.", m_currentBankerGUID.ToString().c_str()); + TC_LOG_DEBUG("network", "HandleSwapItem - Unit (%s) not found or you can't interact with him.", _player->PlayerTalkClass->GetInteractionData().SourceGuid.ToString().c_str()); return; } if (_player->IsBankPos(swapItem.ContainerSlotB, swapItem.SlotB) && !CanUseBank()) { - TC_LOG_DEBUG("network", "HandleSwapItem - Unit (%s) not found or you can't interact with him.", m_currentBankerGUID.ToString().c_str()); + TC_LOG_DEBUG("network", "HandleSwapItem - Unit (%s) not found or you can't interact with him.", _player->PlayerTalkClass->GetInteractionData().SourceGuid.ToString().c_str()); return; } @@ -1182,9 +1183,9 @@ bool WorldSession::CanUseBank(ObjectGuid bankerGUID) const { // bankerGUID parameter is optional, set to 0 by default. if (!bankerGUID) - bankerGUID = m_currentBankerGUID; + bankerGUID = _player->PlayerTalkClass->GetInteractionData().SourceGuid; - bool isUsingBankCommand = (bankerGUID == GetPlayer()->GetGUID() && bankerGUID == m_currentBankerGUID); + bool isUsingBankCommand = (bankerGUID == GetPlayer()->GetGUID() && bankerGUID == _player->PlayerTalkClass->GetInteractionData().SourceGuid); if (!isUsingBankCommand) { |