aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-11-03 20:52:44 +0100
committerOvahlord <dreadkiller@gmx.de>2024-12-24 20:17:42 +0100
commit93832c87288bb2dd808aa9a2bebe7bc7bc6f014c (patch)
tree7def56e0c36877532825cd935a974733cfee7fc1 /src
parent3b18a3353bb2f693a3389ee2f790923f7d001206 (diff)
Core/AuctionHouse: Skip own account commodity listing when buying
(cherry picked from commit 8ff8dfd6207561f66b9c30cf0153f400d4a11ba9)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/AuctionHouse/AuctionHouseMgr.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
index 09c7251d0b2..a17bb9a5a86 100644
--- a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
+++ b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp
@@ -1482,6 +1482,9 @@ CommodityQuote const* AuctionHouseObject::CreateCommodityQuote(Player const* pla
uint32 remainingQuantity = quantity;
for (AuctionPosting const* auction : bucketItr->second.Auctions)
{
+ if (auction->Owner == player->GetGUID() || auction->OwnerAccount == player->GetSession()->GetAccountGUID())
+ continue;
+
for (Item* auctionItem : auction->Items)
{
if (auctionItem->GetCount() >= remainingQuantity)
@@ -1541,6 +1544,9 @@ bool AuctionHouseObject::BuyCommodity(CharacterDatabaseTransaction trans, Player
for (auto auctionItr = bucketItr->second.Auctions.begin(); auctionItr != bucketItr->second.Auctions.end();)
{
AuctionPosting* auction = *auctionItr++;
+ if (auction->Owner == player->GetGUID() || auction->OwnerAccount == player->GetSession()->GetAccountGUID())
+ continue;
+
auctions.push_back(auction);
for (Item* auctionItem : auction->Items)
{
@@ -1607,6 +1613,9 @@ bool AuctionHouseObject::BuyCommodity(CharacterDatabaseTransaction trans, Player
for (auto auctionItr = bucketItr->second.Auctions.begin(); auctionItr != bucketItr->second.Auctions.end();)
{
AuctionPosting* auction = *auctionItr++;
+ if (auction->Owner == player->GetGUID() || auction->OwnerAccount == player->GetSession()->GetAccountGUID())
+ continue;
+
if (!uniqueSeller)
uniqueSeller = auction->Owner;
else if (*uniqueSeller != auction->Owner)