TrinityCore
Loading...
Searching...
No Matches
AuctionBotSeller Class Reference

#include <AuctionHouseBotSeller.h>

+ Inheritance diagram for AuctionBotSeller:

Public Types

typedef std::vector< uint32 > ItemPool
 

Public Member Functions

 AuctionBotSeller ()
 
 ~AuctionBotSeller ()
 
bool Initialize () override
 
bool Update (AuctionHouseType houseType) override
 
void AddNewAuctions (SellerConfiguration &config)
 
void SetItemsRatio (uint32 al, uint32 ho, uint32 ne)
 
void SetItemsRatioForHouse (AuctionHouseType house, uint32 val)
 
void SetItemsAmount (std::array< uint32, MAX_AUCTION_QUALITY > const &amounts)
 
void SetItemsAmountForQuality (AuctionQuality quality, uint32 val)
 
void LoadConfig ()
 
- Public Member Functions inherited from AuctionBotAgent
 AuctionBotAgent ()=default
 
 AuctionBotAgent (AuctionBotAgent const &)=delete
 
 AuctionBotAgent (AuctionBotAgent &&)=delete
 
AuctionBotAgent & operator= (AuctionBotAgent const &)=delete
 
AuctionBotAgent & operator= (AuctionBotAgent &&)=delete
 
virtual ~AuctionBotAgent ()=default
 

Private Member Functions

void LoadSellerValues (SellerConfiguration &config)
 
uint32 SetStat (SellerConfiguration &config)
 
bool GetItemsToSell (SellerConfiguration &config, ItemsToSellArray &itemsToSellArray, AllItemsArray const &addedItem)
 
void SetPricesOfItem (ItemTemplate const *itemProto, SellerConfiguration &config, uint32 &buyout, uint32 &bid, uint32 stackcnt)
 
uint32 GetStackSizeForItem (ItemTemplate const *itemProto, SellerConfiguration &config) const
 
void LoadItemsQuantity (SellerConfiguration &config)
 

Static Private Member Functions

static uint32 GetBuyModifier (ItemTemplate const *prototype)
 
static uint32 GetSellModifier (ItemTemplate const *itemProto)
 

Private Attributes

SellerConfiguration _houseConfig [MAX_AUCTION_HOUSE_TYPE]
 
ItemPool _itemPool [MAX_AUCTION_QUALITY][MAX_ITEM_CLASS]
 

Detailed Description

Definition at line 119 of file AuctionHouseBotSeller.h.

Member Typedef Documentation

◆ ItemPool

typedef std::vector<uint32> AuctionBotSeller::ItemPool

Definition at line 122 of file AuctionHouseBotSeller.h.

Constructor & Destructor Documentation

◆ AuctionBotSeller()

AuctionBotSeller::AuctionBotSeller ( )

Definition at line 30 of file AuctionHouseBotSeller.cpp.

References _houseConfig, Initialize(), and MAX_AUCTION_HOUSE_TYPE.

◆ ~AuctionBotSeller()

AuctionBotSeller::~AuctionBotSeller ( )

Definition at line 37 of file AuctionHouseBotSeller.cpp.

Member Function Documentation

◆ AddNewAuctions()

◆ GetBuyModifier()

◆ GetItemsToSell()

bool AuctionBotSeller::GetItemsToSell ( SellerConfiguration &  config,
ItemsToSellArray &  itemsToSellArray,
AllItemsArray const &  addedItem 
)
private

◆ GetSellModifier()

uint32 AuctionBotSeller::GetSellModifier ( ItemTemplate const *  itemProto)
staticprivate

◆ GetStackSizeForItem()

uint32 AuctionBotSeller::GetStackSizeForItem ( ItemTemplate const *  itemProto,
SellerConfiguration &  config 
) const
private

◆ Initialize()

bool AuctionBotSeller::Initialize ( )
overridevirtual

Implements AuctionBotAgent.

Definition at line 41 of file AuctionHouseBotSeller.cpp.

References _itemPool, BIND_NONE, BIND_ON_ACQUIRE, BIND_ON_EQUIP, BIND_ON_USE, BIND_QUEST, CONFIG_AHBOT_ALLIANCE_ITEM_AMOUNT_RATIO, CONFIG_AHBOT_BIND_EQUIP, CONFIG_AHBOT_BIND_NO, CONFIG_AHBOT_BIND_PICKUP, CONFIG_AHBOT_BIND_QUEST, CONFIG_AHBOT_BIND_USE, CONFIG_AHBOT_BUYPRICE_SELLER, CONFIG_AHBOT_CLASS_ARMOR_ALLOW_ZERO, CONFIG_AHBOT_CLASS_CONSUMABLE_ALLOW_ZERO, CONFIG_AHBOT_CLASS_CONTAINER_ALLOW_ZERO, CONFIG_AHBOT_CLASS_CONTAINER_MAX_ITEM_LEVEL, CONFIG_AHBOT_CLASS_CONTAINER_MIN_ITEM_LEVEL, CONFIG_AHBOT_CLASS_GEM_ALLOW_ZERO, CONFIG_AHBOT_CLASS_GLYPH_ALLOW_ZERO, CONFIG_AHBOT_CLASS_GLYPH_MAX_ITEM_LEVEL, CONFIG_AHBOT_CLASS_GLYPH_MAX_REQ_LEVEL, CONFIG_AHBOT_CLASS_GLYPH_MIN_ITEM_LEVEL, CONFIG_AHBOT_CLASS_GLYPH_MIN_REQ_LEVEL, CONFIG_AHBOT_CLASS_KEY_ALLOW_ZERO, CONFIG_AHBOT_CLASS_MISC_ALLOW_ZERO, CONFIG_AHBOT_CLASS_MISC_MOUNT_MAX_REQ_LEVEL, CONFIG_AHBOT_CLASS_MISC_MOUNT_MAX_SKILL_RANK, CONFIG_AHBOT_CLASS_MISC_MOUNT_MIN_REQ_LEVEL, CONFIG_AHBOT_CLASS_MISC_MOUNT_MIN_SKILL_RANK, CONFIG_AHBOT_CLASS_PROJECTILE_ALLOW_ZERO, CONFIG_AHBOT_CLASS_QUEST_ALLOW_ZERO, CONFIG_AHBOT_CLASS_QUIVER_ALLOW_ZERO, CONFIG_AHBOT_CLASS_REAGENT_ALLOW_ZERO, CONFIG_AHBOT_CLASS_RECIPE_ALLOW_ZERO, CONFIG_AHBOT_CLASS_TRADEGOOD_ALLOW_ZERO, CONFIG_AHBOT_CLASS_TRADEGOOD_MAX_ITEM_LEVEL, CONFIG_AHBOT_CLASS_TRADEGOOD_MIN_ITEM_LEVEL, CONFIG_AHBOT_CLASS_WEAPON_ALLOW_ZERO, CONFIG_AHBOT_HORDE_ITEM_AMOUNT_RATIO, CONFIG_AHBOT_ITEM_MAX_ITEM_LEVEL, CONFIG_AHBOT_ITEM_MAX_REQ_LEVEL, CONFIG_AHBOT_ITEM_MAX_SKILL_RANK, CONFIG_AHBOT_ITEM_MIN_ITEM_LEVEL, CONFIG_AHBOT_ITEM_MIN_REQ_LEVEL, CONFIG_AHBOT_ITEM_MIN_SKILL_RANK, CONFIG_AHBOT_ITEMS_LOOT, CONFIG_AHBOT_ITEMS_MISC, CONFIG_AHBOT_ITEMS_VENDOR, CONFIG_AHBOT_LOCKBOX_ENABLED, CONFIG_AHBOT_NEUTRAL_ITEM_AMOUNT_RATIO, ItemTemplate::GetBaseItemLevel(), ItemTemplate::GetBaseRequiredLevel(), ItemTemplate::GetBonding(), ItemTemplate::GetBuyPrice(), ItemTemplate::GetClass(), ItemTemplate::GetLockID(), ItemTemplate::GetQuality(), ItemTemplate::GetRequiredSkillRank(), ItemTemplate::GetSellPrice(), ItemTemplate::GetSubClass(), Field::GetUInt32(), ItemTemplate::HasFlag(), ITEM_CLASS_ARMOR, ITEM_CLASS_CONSUMABLE, ITEM_CLASS_CONTAINER, ITEM_CLASS_GEM, ITEM_CLASS_GLYPH, ITEM_CLASS_KEY, ITEM_CLASS_MISCELLANEOUS, ITEM_CLASS_PROJECTILE, ITEM_CLASS_QUEST, ITEM_CLASS_QUIVER, ITEM_CLASS_REAGENT, ITEM_CLASS_RECIPE, ITEM_CLASS_TRADE_GOODS, ITEM_CLASS_WEAPON, ITEM_FLAG_HAS_LOOT, ITEM_SUBCLASS_MISCELLANEOUS_MOUNT, LoadConfig(), LOG_LEVEL_DEBUG, MAX_AUCTION_QUALITY, MAX_ITEM_CLASS, sAuctionBotConfig, sItemStore, sLog, sObjectMgr, TC_LOG_DEBUG, TC_LOG_ERROR, and WorldDatabase.

Referenced by AuctionBotSeller(), and AuctionHouseBot::InitializeAgents().

◆ LoadConfig()

void AuctionBotSeller::LoadConfig ( )

◆ LoadItemsQuantity()

void AuctionBotSeller::LoadItemsQuantity ( SellerConfiguration &  config)
private

Definition at line 377 of file AuctionHouseBotSeller.cpp.

References _itemPool, ASSERT, CONFIG_AHBOT_CLASS_ARMOR_PRIORITY, CONFIG_AHBOT_CLASS_CONSUMABLE_PRIORITY, CONFIG_AHBOT_CLASS_CONTAINER_PRIORITY, CONFIG_AHBOT_CLASS_GEM_PRIORITY, CONFIG_AHBOT_CLASS_GENERIC_PRIORITY, CONFIG_AHBOT_CLASS_GLYPH_PRIORITY, CONFIG_AHBOT_CLASS_KEY_PRIORITY, CONFIG_AHBOT_CLASS_MISC_PRIORITY, CONFIG_AHBOT_CLASS_PROJECTILE_PRIORITY, CONFIG_AHBOT_CLASS_QUEST_PRIORITY, CONFIG_AHBOT_CLASS_QUIVER_PRIORITY, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_ARMOR, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_CONSUMABLE, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_CONTAINER, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_GEM, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_GENERIC, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_GLYPH, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_KEY, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_MISC, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_PROJECTILE, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_QUEST, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_QUIVER, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_REAGENT, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_RECIPE, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_TRADEGOOD, CONFIG_AHBOT_CLASS_RANDOMSTACKRATIO_WEAPON, CONFIG_AHBOT_CLASS_REAGENT_PRIORITY, CONFIG_AHBOT_CLASS_RECIPE_PRIORITY, CONFIG_AHBOT_CLASS_TRADEGOOD_PRIORITY, CONFIG_AHBOT_CLASS_WEAPON_PRIORITY, CONFIG_AHBOT_ITEM_GRAY_AMOUNT, SellerConfiguration::GetHouseType(), SellerConfiguration::GetItemsAmountPerClass(), SellerConfiguration::GetItemsAmountPerQuality(), ITEM_CLASS_ARMOR, ITEM_CLASS_CONSUMABLE, ITEM_CLASS_CONTAINER, ITEM_CLASS_GEM, ITEM_CLASS_GLYPH, ITEM_CLASS_ITEM_ENHANCEMENT, ITEM_CLASS_KEY, ITEM_CLASS_MISCELLANEOUS, ITEM_CLASS_PROJECTILE, ITEM_CLASS_QUEST, ITEM_CLASS_QUIVER, ITEM_CLASS_REAGENT, ITEM_CLASS_RECIPE, ITEM_CLASS_TRADE_GOODS, ITEM_CLASS_WEAPON, MAX_AUCTION_QUALITY, MAX_ITEM_CLASS, sAuctionBotConfig, SellerConfiguration::SetItemsAmountPerClass(), SellerConfiguration::SetItemsAmountPerQuality(), and SellerConfiguration::SetRandomStackRatioPerClass().

Referenced by LoadSellerValues(), SetItemsAmount(), SetItemsAmountForQuality(), SetItemsRatio(), and SetItemsRatioForHouse().

◆ LoadSellerValues()

void AuctionBotSeller::LoadSellerValues ( SellerConfiguration &  config)
private

◆ SetItemsAmount()

◆ SetItemsAmountForQuality()

◆ SetItemsRatio()

◆ SetItemsRatioForHouse()

◆ SetPricesOfItem()

◆ SetStat()

◆ Update()

bool AuctionBotSeller::Update ( AuctionHouseType  houseType)
overridevirtual

Member Data Documentation

◆ _houseConfig

◆ _itemPool

ItemPool AuctionBotSeller::_itemPool[MAX_AUCTION_QUALITY][MAX_ITEM_CLASS]
private

Definition at line 140 of file AuctionHouseBotSeller.h.

Referenced by AddNewAuctions(), Initialize(), and LoadItemsQuantity().


The documentation for this class was generated from the following files: