aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-11-03 20:52:44 +0100
committerShauren <shauren.trinity@gmail.com>2024-11-03 20:52:44 +0100
commit8ff8dfd6207561f66b9c30cf0153f400d4a11ba9 (patch)
tree47b929caff78b6d467d1fd3b5e949bfee80fad4c
parent969be9d33ca95b52771f55afdd3fd6b1524f45aa (diff)
Core/AuctionHouse: Skip own account commodity listing when buying
-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 31c7fa2b7b6..83c99e96feb 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)