AzerothCore 3.3.5a
OpenSource WoW Emulator
|
Public Member Functions | |
LootGroup () | |
~LootGroup () | |
void | AddEntry (LootStoreItem *item) |
bool | HasQuestDrop (LootTemplateMap const &store) const |
bool | HasQuestDropForPlayer (Player const *player, LootTemplateMap const &store) const |
void | Process (Loot &loot, Player const *player, LootStore const &lootstore, uint16 lootMode, uint16 nonRefIterationsLeft) const |
float | RawTotalChance () const |
float | TotalChance () const |
void | Verify (LootStore const &lootstore, uint32 id, uint8 group_id) const |
void | CollectLootIds (LootIdSet &set) const |
void | CheckLootRefs (LootStore const &lootstore, uint32 Id, LootIdSet *ref_set) const |
LootStoreItemList * | GetExplicitlyChancedItemList () |
LootStoreItemList * | GetEqualChancedItemList () |
void | CopyConditions (ConditionList conditions) |
Private Member Functions | |
LootStoreItem const * | Roll (Loot &loot, Player const *player, LootStore const &store, uint16 lootMode) const |
LootGroup (LootGroup const &) | |
LootGroup & | operator= (LootGroup const &) |
Private Attributes | |
LootStoreItemList | ExplicitlyChanced |
LootStoreItemList | EqualChanced |
|
inline |
LootTemplate::LootGroup::~LootGroup | ( | ) |
References EqualChanced, and ExplicitlyChanced.
|
private |
void LootTemplate::LootGroup::AddEntry | ( | LootStoreItem * | item | ) |
References LootStoreItem::chance.
void LootTemplate::LootGroup::CheckLootRefs | ( | LootStore const & | lootstore, |
uint32 | Id, | ||
LootIdSet * | ref_set | ||
) | const |
References LootStore::GetLootFor(), LootStore::GetName(), LootStoreItem::itemid, LootTemplates_Reference, LootStoreItem::maxcount, LootStoreItem::mincount, LootStoreItem::reference, LootStore::ReportInvalidCount(), and LootStore::ReportNonExistingId().
void LootTemplate::LootGroup::CollectLootIds | ( | LootIdSet & | set | ) | const |
void LootTemplate::LootGroup::CopyConditions | ( | ConditionList | conditions | ) |
|
inline |
References EqualChanced.
Referenced by LootTemplate::addConditionItem(), and LootTemplate::CopyConditions().
|
inline |
References ExplicitlyChanced.
Referenced by LootTemplate::addConditionItem(), and LootTemplate::CopyConditions().
bool LootTemplate::LootGroup::HasQuestDrop | ( | LootTemplateMap const & | store | ) | const |
References LootStoreItem::groupid, LootStoreItem::needs_quest, and LootStoreItem::reference.
bool LootTemplate::LootGroup::HasQuestDropForPlayer | ( | Player const * | player, |
LootTemplateMap const & | store | ||
) | const |
References LootStoreItem::groupid, Player::HasQuestForItem(), LootStoreItem::itemid, and LootStoreItem::reference.
void LootTemplate::LootGroup::Process | ( | Loot & | loot, |
Player const * | player, | ||
LootStore const & | lootstore, | ||
uint16 | lootMode, | ||
uint16 | nonRefIterationsLeft | ||
) | const |
References Loot::AddItem(), LootStore::GetLootFor(), LootStore::IsRatesAllowed(), LootTemplates_Reference, LootTemplate::Process(), RATE_DROP_ITEM_REFERENCED_AMOUNT, sScriptMgr, and sWorld.
float LootTemplate::LootGroup::RawTotalChance | ( | ) | const |
|
private |
References LootStoreItem::chance, rand_chance(), Acore::Containers::SelectRandomContainerElement(), and sScriptMgr.
float LootTemplate::LootGroup::TotalChance | ( | ) | const |
void LootTemplate::LootGroup::Verify | ( | LootStore const & | lootstore, |
uint32 | id, | ||
uint8 | group_id | ||
) | const |
References LootStore::GetName(), and LOG_ERROR.
|
private |
Referenced by GetEqualChancedItemList(), and ~LootGroup().
|
private |
Referenced by GetExplicitlyChancedItemList(), and ~LootGroup().