![]() |
TrinityCore
|
#include <BlackMarketMgr.h>
Public Types | |
| typedef std::unordered_map< int32, BlackMarketEntry * > | BlackMarketEntryMap |
| typedef std::unordered_map< int32, BlackMarketTemplate const * > | BlackMarketTemplateMap |
Public Member Functions | |
| BlackMarketMgr (BlackMarketMgr const &)=delete | |
| BlackMarketMgr (BlackMarketMgr &&)=delete | |
| BlackMarketMgr & | operator= (BlackMarketMgr const &)=delete |
| BlackMarketMgr & | operator= (BlackMarketMgr &&)=delete |
| void | LoadTemplates () |
| void | LoadAuctions () |
| void | Update (bool updateTime=false) |
| void | RefreshAuctions () |
| time_t | GetLastUpdate () const |
| bool | IsEnabled () const |
| void | BuildItemsResponse (WorldPackets::BlackMarket::BlackMarketRequestItemsResult &packet, Player *player) |
| BlackMarketEntry * | GetAuctionByID (int32 marketId) const |
| BlackMarketTemplate const * | GetTemplateByID (int32 marketId) const |
| void | AddAuction (BlackMarketEntry *auction) |
| void | AddTemplate (BlackMarketTemplate *templ) |
| void | SendAuctionWonMail (BlackMarketEntry *entry, CharacterDatabaseTransaction trans) |
| void | SendAuctionOutbidMail (BlackMarketEntry *entry, CharacterDatabaseTransaction trans) |
Static Public Member Functions | |
| static BlackMarketMgr * | Instance () |
Private Member Functions | |
| BlackMarketMgr () | |
| ~BlackMarketMgr () | |
Private Attributes | |
| BlackMarketEntryMap | _auctions |
| BlackMarketTemplateMap | _templates |
| time_t | _lastUpdate = time_t(0) |
Definition at line 120 of file BlackMarketMgr.h.
| typedef std::unordered_map<int32, BlackMarketEntry*> BlackMarketMgr::BlackMarketEntryMap |
Definition at line 134 of file BlackMarketMgr.h.
| typedef std::unordered_map<int32, BlackMarketTemplate const*> BlackMarketMgr::BlackMarketTemplateMap |
Definition at line 135 of file BlackMarketMgr.h.
|
private |
Definition at line 38 of file BlackMarketMgr.cpp.
|
private |
Definition at line 42 of file BlackMarketMgr.cpp.
References _auctions, and _templates.
|
delete |
|
delete |
| void BlackMarketMgr::AddAuction | ( | BlackMarketEntry * | auction | ) |
Definition at line 253 of file BlackMarketMgr.cpp.
References _auctions, and BlackMarketEntry::GetMarketId().
Referenced by LoadAuctions(), and RefreshAuctions().
| void BlackMarketMgr::AddTemplate | ( | BlackMarketTemplate * | templ | ) |
Definition at line 258 of file BlackMarketMgr.cpp.
References _templates, and BlackMarketTemplate::MarketID.
Referenced by LoadTemplates().
| void BlackMarketMgr::BuildItemsResponse | ( | WorldPackets::BlackMarket::BlackMarketRequestItemsResult & | packet, |
| Player * | player | ||
| ) |
Definition at line 218 of file BlackMarketMgr.cpp.
References _auctions, _lastUpdate, WorldPackets::BlackMarket::BlackMarketItem::CurrentBid, ObjectGuid::GetCounter(), BaseEntity::GetGUID(), WorldPackets::BlackMarket::BlackMarketItem::HighBid, BlackMarketTemplate::Item, WorldPackets::BlackMarket::BlackMarketItem::Item, WorldPackets::BlackMarket::BlackMarketRequestItemsResult::Items, WorldPackets::BlackMarket::BlackMarketRequestItemsResult::LastUpdateID, WorldPackets::BlackMarket::BlackMarketItem::MarketID, BlackMarketTemplate::MinBid, WorldPackets::BlackMarket::BlackMarketItem::MinBid, WorldPackets::BlackMarket::BlackMarketItem::MinIncrement, WorldPackets::BlackMarket::BlackMarketItem::NumBids, BlackMarketTemplate::Quantity, WorldPackets::BlackMarket::BlackMarketItem::Quantity, WorldPackets::BlackMarket::BlackMarketItem::SecondsRemaining, BlackMarketTemplate::SellerNPC, and WorldPackets::BlackMarket::BlackMarketItem::SellerNPC.
| BlackMarketEntry * BlackMarketMgr::GetAuctionByID | ( | int32 | marketId | ) | const |
Definition at line 344 of file BlackMarketMgr.cpp.
References _auctions.
Referenced by RefreshAuctions().
|
inline |
Definition at line 143 of file BlackMarketMgr.h.
| BlackMarketTemplate const * BlackMarketMgr::GetTemplateByID | ( | int32 | marketId | ) | const |
Definition at line 353 of file BlackMarketMgr.cpp.
References _templates.
|
static |
Definition at line 51 of file BlackMarketMgr.cpp.
| bool BlackMarketMgr::IsEnabled | ( | ) | const |
Definition at line 213 of file BlackMarketMgr.cpp.
References CONFIG_BLACKMARKET_ENABLED, and sWorld.
| void BlackMarketMgr::LoadAuctions | ( | ) |
Definition at line 94 of file BlackMarketMgr.cpp.
References _auctions, _lastUpdate, AddAuction(), CHAR_SEL_BLACKMARKET_AUCTIONS, CharacterDatabase, BlackMarketEntry::DeleteFromDB(), GameTime::GetGameTime(), getMSTime(), GetMSTimeDiffToNow(), BlackMarketEntry::IsCompleted(), BlackMarketEntry::LoadFromDB(), and TC_LOG_INFO.
| void BlackMarketMgr::LoadTemplates | ( | ) |
Definition at line 57 of file BlackMarketMgr.cpp.
References _templates, AddTemplate(), getMSTime(), GetMSTimeDiffToNow(), BlackMarketTemplate::LoadFromDB(), TC_LOG_INFO, and WorldDatabase.
|
delete |
|
delete |
| void BlackMarketMgr::RefreshAuctions | ( | ) |
Definition at line 166 of file BlackMarketMgr.cpp.
References _auctions, _templates, AddAuction(), CharacterDatabase, CONFIG_BLACKMARKET_MAXAUCTIONS, BlackMarketEntry::DeleteFromDB(), GetAuctionByID(), BlackMarketEntry::Initialize(), BlackMarketEntry::IsCompleted(), Trinity::Containers::RandomResize(), roll_chance(), BlackMarketEntry::SaveToDB(), sWorld, and Update().
| void BlackMarketMgr::SendAuctionOutbidMail | ( | BlackMarketEntry * | entry, |
| CharacterDatabaseTransaction | trans | ||
| ) |
Definition at line 323 of file BlackMarketMgr.cpp.
References MailDraft::AddMoney(), BMAH_AUCTION_OUTBID, BlackMarketEntry::BuildAuctionMailBody(), BlackMarketEntry::BuildAuctionMailSubject(), ObjectAccessor::FindConnectedPlayer(), BlackMarketEntry::GetBidder(), BlackMarketEntry::GetCurrentBid(), Player::GetSession(), BlackMarketEntry::GetTemplate(), MAIL_CHECK_MASK_COPIED, sCharacterCache, WorldSession::SendBlackMarketOutbidNotification(), and MailDraft::SendMailTo().
| void BlackMarketMgr::SendAuctionWonMail | ( | BlackMarketEntry * | entry, |
| CharacterDatabaseTransaction | trans | ||
| ) |
Definition at line 263 of file BlackMarketMgr.cpp.
References Item::AddBonuses(), MailDraft::AddItem(), Black_Market, BMAH_AUCTION_WON, BlackMarketEntry::BuildAuctionMailBody(), BlackMarketEntry::BuildAuctionMailSubject(), Item::CreateItem(), ObjectAccessor::FindConnectedPlayer(), WorldSession::GetAccountId(), BlackMarketEntry::GetBidder(), Item::GetCount(), BlackMarketEntry::GetCurrentBid(), ItemTemplate::GetDefaultLocaleName(), Object::GetEntry(), BlackMarketEntry::GetMailSent(), WorldObject::GetName(), Player::GetSession(), BlackMarketEntry::GetTemplate(), Item::GetTemplate(), GOLD, AccountMgr::HasPermission(), WorldSession::HasPermission(), BlackMarketTemplate::Item, WorldPackets::Item::ItemInstance::ItemBonus, WorldPackets::Item::ItemInstance::ItemID, LANG_UNKNOWN, MAIL_CHECK_MASK_COPIED, BlackMarketEntry::MailSent(), BlackMarketTemplate::Quantity, rbac::RBAC_PERM_LOG_GM_TRADE, Item::SaveToDB(), sCharacterCache, WorldSession::SendBlackMarketWonNotification(), MailDraft::SendMailTo(), Item::SetOwnerGUID(), sLog, sObjectMgr, and sRealmList.
Referenced by Update().
| void BlackMarketMgr::Update | ( | bool | updateTime = false | ) |
Definition at line 145 of file BlackMarketMgr.cpp.
References _auctions, _lastUpdate, CharacterDatabase, BlackMarketEntry::GetBidder(), GameTime::GetGameTime(), BlackMarketEntry::IsCompleted(), SendAuctionWonMail(), and BlackMarketEntry::Update().
Referenced by RefreshAuctions().
|
private |
Definition at line 159 of file BlackMarketMgr.h.
Referenced by AddAuction(), BuildItemsResponse(), GetAuctionByID(), LoadAuctions(), RefreshAuctions(), Update(), and ~BlackMarketMgr().
|
private |
Definition at line 161 of file BlackMarketMgr.h.
Referenced by BuildItemsResponse(), LoadAuctions(), and Update().
|
private |
Definition at line 160 of file BlackMarketMgr.h.
Referenced by AddTemplate(), GetTemplateByID(), LoadTemplates(), RefreshAuctions(), and ~BlackMarketMgr().