AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "LootMgr.h"
Classes | |
class | LootGroup |
Public Member Functions | |
LootTemplate ()=default | |
~LootTemplate () | |
void | AddEntry (LootStoreItem *item) |
void | Process (Loot &loot, LootStore const &store, uint16 lootMode, Player const *player, uint8 groupId=0) const |
void | CopyConditions (ConditionList conditions) |
bool | CopyConditions (LootItem *li, uint32 conditionLootId=0) const |
bool | HasQuestDrop (LootTemplateMap const &store, uint8 groupId=0) const |
bool | HasQuestDropForPlayer (LootTemplateMap const &store, Player const *player, uint8 groupId=0) const |
void | Verify (LootStore const &store, uint32 Id) const |
void | CheckLootRefs (LootTemplateMap const &store, LootIdSet *ref_set) const |
bool | addConditionItem (Condition *cond) |
bool | isReference (uint32 id) const |
Private Types | |
typedef std::vector< LootGroup * > | LootGroups |
Private Member Functions | |
LootTemplate (LootTemplate const &) | |
LootTemplate & | operator= (LootTemplate const &) |
Private Attributes | |
LootStoreItemList | Entries |
LootGroups | Groups |
|
private |
|
default |
LootTemplate::~LootTemplate | ( | ) |
|
private |
bool LootTemplate::addConditionItem | ( | Condition * | cond | ) |
References LootTemplate::LootGroup::GetEqualChancedItemList(), LootTemplate::LootGroup::GetExplicitlyChancedItemList(), Groups, Condition::isLoaded(), LOG_ERROR, and Condition::SourceEntry.
Referenced by ConditionMgr::addToLootTemplate().
void LootTemplate::AddEntry | ( | LootStoreItem * | item | ) |
References LootStoreItem::groupid, Groups, and LootStoreItem::reference.
void LootTemplate::CheckLootRefs | ( | LootTemplateMap const & | store, |
LootIdSet * | ref_set | ||
) | const |
References LootStore::GetLootFor(), Groups, LootStoreItem::itemid, LootTemplates_Reference, LootStoreItem::reference, and LootStore::ReportNonExistingId().
void LootTemplate::CopyConditions | ( | ConditionList | conditions | ) |
References LootStoreItem::conditions, LootItem::conditions, LootTemplate::LootGroup::GetEqualChancedItemList(), LootTemplate::LootGroup::GetExplicitlyChancedItemList(), LootStore::GetLootFor(), Groups, LootStoreItem::itemid, LootItem::itemid, LootTemplates_Reference, and LootStoreItem::reference.
bool LootTemplate::HasQuestDrop | ( | LootTemplateMap const & | store, |
uint8 | groupId = 0 |
||
) | const |
References LootStoreItem::groupid, Groups, LootStoreItem::needs_quest, and LootStoreItem::reference.
bool LootTemplate::HasQuestDropForPlayer | ( | LootTemplateMap const & | store, |
Player const * | player, | ||
uint8 | groupId = 0 |
||
) | const |
References LootStoreItem::groupid, Groups, Player::HasQuestForItem(), LootStoreItem::itemid, and LootStoreItem::reference.
bool LootTemplate::isReference | ( | uint32 | id | ) | const |
Referenced by ConditionMgr::isSourceTypeValid().
|
private |
void LootTemplate::Process | ( | Loot & | loot, |
LootStore const & | store, | ||
uint16 | lootMode, | ||
Player const * | player, | ||
uint8 | groupId = 0 |
||
) | const |
References Loot::AddItem(), LootStore::GetLootFor(), LootStoreItem::groupid, Groups, LootStore::IsRatesAllowed(), LootStoreItem::lootmode, LootTemplates_Reference, LootStoreItem::maxcount, Process(), RATE_DROP_ITEM_REFERENCED_AMOUNT, LootStoreItem::reference, LootStoreItem::Roll(), sScriptMgr, and sWorld.
Referenced by Loot::FillLoot(), and Process().
|
private |
|
private |
Referenced by addConditionItem(), AddEntry(), CheckLootRefs(), CopyConditions(), HasQuestDrop(), HasQuestDropForPlayer(), Process(), Verify(), and ~LootTemplate().