AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "ItemTemplate.h"
Public Member Functions | |
bool | HasSignature () const |
bool | CanChangeEquipStateInCombat () const |
bool | IsCurrencyToken () const |
uint32 | GetMaxStackSize () const |
float | getDPS () const |
int32 | getFeralBonus (int32 extraDPS=0) const |
float | GetItemLevelIncludingQuality (uint8 pLevel) const |
uint32 | GetSkill () const |
bool | IsPotion () const |
bool | IsWeaponVellum () const |
bool | IsArmorVellum () const |
bool | IsConjuredConsumable () const |
bool | HasStat (ItemModType stat) const |
bool | HasSpellPowerStat () const |
void | InitializeQueryData () |
|
inline |
References Class, INVTYPE_HOLDABLE, INVTYPE_RELIC, INVTYPE_SHIELD, ITEM_CLASS_PROJECTILE, and ITEM_CLASS_WEAPON.
Referenced by Player::CanEquipItem(), and Player::CanUnequipItem().
|
inline |
Referenced by getFeralBonus().
References Class, getDPS(), INVTYPE_2HWEAPON, INVTYPE_WEAPON, INVTYPE_WEAPONMAINHAND, INVTYPE_WEAPONOFFHAND, and ITEM_CLASS_WEAPON.
Referenced by Player::_ApplyItemBonuses(), and Player::UpdateAttackPowerAndDamage().
|
inline |
References ITEM_QUALITY_ARTIFACT, ITEM_QUALITY_EPIC, ITEM_QUALITY_HEIRLOOM, ITEM_QUALITY_LEGENDARY, ITEM_QUALITY_NORMAL, ITEM_QUALITY_POOR, ITEM_QUALITY_RARE, ITEM_QUALITY_UNCOMMON, ItemLevel, and Quality.
Referenced by Player::GetAverageItemLevel().
|
inline |
References Stackable.
Referenced by Player::_LoadItem(), Player::_StoreOrEquipNewItem(), Loot::AddItem(), Item::CanBeMergedPartlyWith(), Player::CanStoreItem_InBag(), Player::CanStoreItem_InInventorySlots(), Player::CanStoreItem_InSpecificSlot(), Player::CanStoreItems(), Spell::CheckItems(), Player::Create(), Item::CreateItem(), Spell::DoCreateItem(), Item::GetMaxStackCount(), send_commandscript::HandleSendItemsCommand(), HasSignature(), Player::SendItemRetrievalMail(), Player::StoreNewItem(), and Player::SwapItem().
|
inline |
References Class, ITEM_CLASS_ARMOR, ITEM_CLASS_WEAPON, MAX_ITEM_SUBCLASS_ARMOR, MAX_ITEM_SUBCLASS_WEAPON, SKILL_2H_AXES, SKILL_2H_MACES, SKILL_2H_SWORDS, SKILL_ASSASSINATION, SKILL_AXES, SKILL_BOWS, SKILL_CLOTH, SKILL_CROSSBOWS, SKILL_DAGGERS, SKILL_FISHING, SKILL_FIST_WEAPONS, SKILL_GUNS, SKILL_LEATHER, SKILL_MACES, SKILL_MAIL, SKILL_PLATE_MAIL, SKILL_POLEARMS, SKILL_SHIELD, SKILL_STAVES, SKILL_SWORDS, SKILL_THROWN, SKILL_WANDS, and SubClass.
Referenced by Item::GetSkill().
|
inline |
References Class, Flags, GetMaxStackSize(), ITEM_CLASS_CONSUMABLE, ITEM_CLASS_QUEST, ITEM_FLAG_NO_CREATOR, and ItemId.
Referenced by Spell::DoCreateItem().
bool ItemTemplate::HasSpellPowerStat | ( | ) | const |
References EFFECT_0, EFFECT_2, SpellInfo::Effects, MAX_ITEM_PROTO_SPELLS, SPELL_AURA_MOD_DAMAGE_DONE, SPELL_AURA_MOD_DAMAGE_TAKEN, SPELL_AURA_MOD_HEALING, SPELL_AURA_MOD_HEALING_DONE, SPELL_AURA_MOD_SPELL_DAMAGE_OF_ATTACK_POWER, SPELL_AURA_MOD_SPELL_DAMAGE_OF_STAT_PERCENT, SPELL_AURA_MOD_SPELL_HEALING_OF_ATTACK_POWER, SPELL_AURA_MOD_SPELL_HEALING_OF_STAT_PERCENT, SPELL_SCHOOL_MASK_SPELL, _Spell::SpellId, and sSpellMgr.
Referenced by Player::CanRollForItemInLFG().
bool ItemTemplate::HasStat | ( | ItemModType | stat | ) | const |
References ItemStat, MAX_ITEM_PROTO_STATS, and StatsCount.
Referenced by Player::CanRollForItemInLFG().
void ItemTemplate::InitializeQueryData | ( | ) |
References AllowableClass, AllowableRace, AmmoType, ArcaneRes, Area, Armor, ArmorDamageModifier, BagFamily, Block, Bonding, BuyPrice, SpellInfo::CategoryRecoveryTime, Class, ContainerSlots, Damage, _Damage::DamageMax, _Damage::DamageMin, _Damage::DamageType, Delay, Description, DisplayInfoID, Duration, FireRes, Flags, Flags2, FrostRes, GemProperties, SpellInfo::GetCategory(), HolidayId, HolyRes, WorldPacket::Initialize(), InventoryType, ItemId, ItemLevel, ItemLimitCategory, ItemSet, ItemStat, _ItemStat::ItemStatType, _ItemStat::ItemStatValue, LanguageID, LockID, Map, Material, MAX_ITEM_PROTO_DAMAGES, MAX_ITEM_PROTO_SOCKETS, MAX_ITEM_PROTO_SPELLS, MaxCount, MaxDurability, Name1, NatureRes, PageMaterial, PageText, Quality, queryData, RandomProperty, RandomSuffix, RangedModRange, SpellInfo::RecoveryTime, RequiredCityRank, RequiredDisenchantSkill, RequiredHonorRank, RequiredLevel, RequiredReputationFaction, RequiredReputationRank, RequiredSkill, RequiredSkillRank, RequiredSpell, ScalingStatDistribution, ScalingStatValue, SellPrice, ShadowRes, Sheath, SMSG_ITEM_QUERY_SINGLE_RESPONSE, socketBonus, SoundOverrideSubclass, sSpellMgr, Stackable, StartQuest, StatsCount, SubClass, and TotemCategory.
|
inline |
References Class, ITEM_CLASS_TRADE_GOODS, ITEM_SUBCLASS_ARMOR_ENCHANTMENT, and SubClass.
Referenced by Item::IsArmorVellum(), and Item::IsFitToSpellRequirements().
|
inline |
References Class, Flags, ITEM_CLASS_CONSUMABLE, and ITEM_FLAG_CONJURED.
Referenced by Item::IsConjuredConsumable().
|
inline |
References BAG_FAMILY_MASK_CURRENCY_TOKENS, and BagFamily.
Referenced by LootItemStorage::AddNewStoredLoot(), Player::CanStoreItem(), Player::CanStoreItem_InSpecificSlot(), Player::CanStoreItems(), and Item::IsCurrencyToken().
|
inline |
References Class, ITEM_CLASS_CONSUMABLE, ITEM_SUBCLASS_POTION, and SubClass.
Referenced by Item::IsPotion().
|
inline |
References Class, ITEM_CLASS_TRADE_GOODS, ITEM_SUBCLASS_WEAPON_ENCHANTMENT, and SubClass.
Referenced by Item::IsFitToSpellRequirements(), and Item::IsWeaponVellum().
uint32 ItemTemplate::AllowableClass |
uint32 ItemTemplate::AllowableRace |
uint32 ItemTemplate::AmmoType |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
int32 ItemTemplate::ArcaneRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::Area |
uint32 ItemTemplate::Armor |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
float ItemTemplate::ArmorDamageModifier |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::BagFamily |
uint32 ItemTemplate::Block |
uint32 ItemTemplate::Bonding |
Referenced by Player::_StoreItem(), LootItem::AllowedForPlayer(), Player::BuyItemFromVendorSlot(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleUseItemOpcode(), InitializeQueryData(), instance_trial_of_the_crusader::instance_trial_of_the_crusader_InstanceMapScript::IsValidDedicatedInsanityItem(), Item::LoadFromDB(), and Player::VisualizeItem().
uint32 ItemTemplate::BuyCount |
int32 ItemTemplate::BuyPrice |
uint32 ItemTemplate::Class |
Referenced by Player::_ApplyAmmoBonuses(), Player::_ApplyItemBonuses(), LootItem::AllowedForPlayer(), AuctionHouseObject::BuildListAuctionItems(), CanChangeEquipStateInCombat(), Player::CanEquipItem(), Player::CanRollForItemInLFG(), Player::CanStoreItem_InBag(), Player::CanStoreItems(), Player::CanUseItem(), Player::CheckAmmoCompatibility(), Spell::CheckItems(), Player::Create(), Player::DurabilityRepair(), Player::EquipItem(), getFeralBonus(), Player::GetShield(), GetSkill(), Item::GetSpell(), Player::GetWeaponForAttack(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSellItemOpcode(), WorldSession::HandleUseItemOpcode(), HasSignature(), InitializeQueryData(), IsArmorVellum(), IsConjuredConsumable(), Item::IsFitToSpellRequirements(), IsPotion(), Unit::IsTriggeredAtSpellProcEvent(), boss_algalon_the_observer::boss_algalon_the_observerAI::IsValidHeraldItem(), IsWeaponVellum(), and ItemCanGoIntoBag().
uint32 ItemTemplate::ContainerSlots |
_Damage ItemTemplate::Damage[MAX_ITEM_PROTO_DAMAGES] |
uint32 ItemTemplate::Delay |
std::string ItemTemplate::Description |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::DisenchantID |
uint32 ItemTemplate::DisplayInfoID |
uint32 ItemTemplate::Duration |
Referenced by Item::Create(), WorldSession::HandleItemQuerySingleOpcode(), InitializeQueryData(), and Item::LoadFromDB().
int32 ItemTemplate::FireRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::Flags |
Referenced by Player::_SaveInventory(), Player::_StoreOrEquipNewItem(), Loot::AddItem(), LootItem::AllowedForPlayer(), Player::CanEquipUniqueItem(), Spell::CheckItems(), Player::DestroyItem(), WorldSession::DoLootRelease(), Spell::EffectEnchantItemPerm(), Spell::EffectMilling(), Spell::EffectProspecting(), WorldSession::HandleAuctionSellItem(), WorldSession::HandleDestroyItemOpcode(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleOpenItemOpcode(), WorldSession::HandleSendMail(), WorldSession::HandleSocketOpcode(), WorldSession::HandleUseItemOpcode(), WorldSession::HandleWrapItemOpcode(), HasSignature(), InitializeQueryData(), IsConjuredConsumable(), LootItemStorage::LoadStoredLoot(), LootItem::LootItem(), and Spell::TakeReagents().
uint32 ItemTemplate::Flags2 |
uint32 ItemTemplate::FlagsCu |
Referenced by LootItem::AllowedForPlayer(), LootItem::LootItem(), and Player::UpdateItemDuration().
uint32 ItemTemplate::FoodType |
Referenced by Pet::HaveInDiet().
int32 ItemTemplate::FrostRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::GemProperties |
uint32 ItemTemplate::HolidayId |
Referenced by Player::CanUseItem(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
int32 ItemTemplate::HolyRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::InventoryType |
Referenced by Player::AutoUnequipOffhandIfNeed(), Player::BuildEnumData(), AuctionHouseObject::BuildListAuctionItems(), AuraEffect::CalculateAmount(), Player::CanEquipItem(), Player::CanRollForItemInLFG(), Player::CanUseAmmo(), Spell::CheckCast(), Player::CreateCorpse(), Spell::DoSpellHitOnUnit(), Player::EquipItem(), Player::FindEquipSlot(), GenerateEnchSuffixFactor(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleUseItemOpcode(), InitializeQueryData(), Item::IsBag(), Item::IsFitToSpellRequirements(), Player::IsTwoHandUsed(), boss_algalon_the_observer::boss_algalon_the_observerAI::IsValidHeraldItem(), ObjectMgr::LoadItemSetNames(), NewItemOrBag(), LootGroupInvalidSelector::operator()(), Spell::TakeAmmo(), and Spell::WriteAmmoToPacket().
uint32 ItemTemplate::ItemId |
Referenced by AddItemsSetItem(), AuctionHouseObject::BuildListAuctionItems(), Player::BuyItemFromVendorSlot(), Player::CanBankItem(), Item::CanBeMergedPartlyWith(), Player::CanEquipUniqueItem(), Player::CanTakeMoreSimilarItems(), Player::CastItemUseSpell(), Item::GenerateItemRandomPropertyId(), misc_commandscript::HandleAddItemCommand(), WorldSession::HandleAuctionSellItem(), WorldSession::HandleItemQuerySingleOpcode(), item_commandscript::HandleItemRefundCommand(), npc_commandscript::HandleNpcAddVendorItemCommand(), npc_commandscript::HandleNpcDeleteVendorItemCommand(), WorldSession::HandleOpenItemOpcode(), WorldSession::HandleSocketOpcode(), HasSignature(), InitializeQueryData(), LinkValidator< LinkTags::item >::IsTextValid(), instance_trial_of_the_crusader::instance_trial_of_the_crusader_InstanceMapScript::IsValidDedicatedInsanityItem(), LootGroupInvalidSelector::operator()(), Player::PrettyPrintRequirementsItemsList(), WorldSession::recoveryItem(), RemoveItemsSetItem(), SortAuction(), and Spell::TakeReagents().
uint32 ItemTemplate::ItemLevel |
Referenced by Player::CanRollForItemInLFG(), Spell::CheckCast(), Spell::CheckItems(), Player::DurabilityRepair(), Spell::EffectFeedPet(), GenerateEnchSuffixFactor(), Player::GetAverageItemLevelForDF(), GetItemLevelIncludingQuality(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSellItemOpcode(), InitializeQueryData(), instance_trial_of_the_crusader::instance_trial_of_the_crusader_InstanceMapScript::IsValidDedicatedInsanityItem(), boss_algalon_the_observer::boss_algalon_the_observerAI::IsValidHeraldItem(), AchievementCriteriaData::Meets(), WorldSession::recoveryItem(), and AchievementMgr::UpdateAchievementCriteria().
uint32 ItemTemplate::ItemLimitCategory |
Referenced by Player::CanEquipUniqueItem(), Player::CanTakeMoreSimilarItems(), Spell::CheckItems(), Item::GetGemCountWithLimitCategory(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSocketOpcode(), Player::HasItemOrGemWithLimitCategoryEquipped(), InitializeQueryData(), Player::SendEquipError(), and Spell::WriteCastResultInfo().
uint32 ItemTemplate::ItemSet |
_ItemStat ItemTemplate::ItemStat[MAX_ITEM_PROTO_STATS] |
uint32 ItemTemplate::LanguageID |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::LockID |
uint32 ItemTemplate::Map |
int32 ItemTemplate::Material |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
int32 ItemTemplate::MaxCount |
Referenced by Player::AddQuestAndCheckCompletion(), Player::CanTakeMoreSimilarItems(), WorldSession::HandleItemQuerySingleOpcode(), send_commandscript::HandleSendItemsCommand(), WorldSession::HandleWrapItemOpcode(), Player::HasQuestForItem(), InitializeQueryData(), and Player::SendItemRetrievalMail().
uint32 ItemTemplate::MaxDurability |
uint32 ItemTemplate::MaxMoneyLoot |
Referenced by Player::SendLoot().
uint32 ItemTemplate::MinMoneyLoot |
Referenced by Player::SendLoot().
std::string ItemTemplate::Name1 |
Referenced by AuctionHouseObject::BuildListAuctionItems(), WorldSession::HandleAuctionSellItem(), WorldSession::HandleItemQuerySingleOpcode(), item_commandscript::HandleItemRefundCommand(), npc_commandscript::HandleNpcAddVendorItemCommand(), npc_commandscript::HandleNpcDeleteVendorItemCommand(), InitializeQueryData(), LinkValidator< LinkTags::item >::IsTextValid(), ObjectMgr::LoadItemSetNames(), Player::PrettyPrintRequirementsItemsList(), and SortAuction().
int32 ItemTemplate::NatureRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::PageMaterial |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::PageText |
uint32 ItemTemplate::Quality |
Referenced by AuctionHouseObject::BuildListAuctionItems(), Player::CanUseItem(), Spell::CheckItems(), Player::DurabilityRepair(), GenerateEnchSuffixFactor(), GetItemLevelIncludingQuality(), Group::GroupLoot(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSellItemOpcode(), InitializeQueryData(), LinkValidator< LinkTags::item >::IsColorValid(), AchievementCriteriaData::Meets(), Group::NeedBeforeGreed(), Player::PrettyPrintRequirementsItemsList(), WorldSession::recoveryItem(), SortAuction(), and AchievementMgr::UpdateAchievementCriteria().
WorldPacket ItemTemplate::queryData |
Referenced by InitializeQueryData().
int32 ItemTemplate::RandomProperty |
int32 ItemTemplate::RandomSuffix |
float ItemTemplate::RangedModRange |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::RequiredCityRank |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::RequiredDisenchantSkill |
uint32 ItemTemplate::RequiredHonorRank |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::RequiredLevel |
uint32 ItemTemplate::RequiredReputationFaction |
uint32 ItemTemplate::RequiredReputationRank |
uint32 ItemTemplate::RequiredSkill |
uint32 ItemTemplate::RequiredSkillRank |
uint32 ItemTemplate::RequiredSpell |
uint32 ItemTemplate::ScalingStatDistribution |
uint32 ItemTemplate::ScalingStatValue |
uint32 ItemTemplate::ScriptId |
Referenced by Item::GetScriptId(), and ScriptMgr::OnItemExpire().
uint32 ItemTemplate::SellPrice |
int32 ItemTemplate::ShadowRes |
Referenced by Player::_ApplyItemBonuses(), WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
uint32 ItemTemplate::Sheath |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
_Socket ItemTemplate::Socket[MAX_ITEM_PROTO_SOCKETS] |
Referenced by Player::ApplyEnchantment(), Spell::CheckItems(), Item::GemsFitSockets(), Player::GetItemCount(), Bag::GetItemCount(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSocketOpcode(), Player::HasItemOrGemWithIdEquipped(), Player::HasItemOrGemWithLimitCategoryEquipped(), Item::HasSocket(), and Player::ToggleMetaGemsActive().
uint32 ItemTemplate::socketBonus |
int32 ItemTemplate::SoundOverrideSubclass |
Referenced by WorldSession::HandleItemQuerySingleOpcode(), and InitializeQueryData().
_Spell ItemTemplate::Spells[MAX_ITEM_PROTO_SPELLS] |
Referenced by LootItem::AllowedForPlayer(), Player::ApplyEquipCooldown(), Player::ApplyItemEquipSpell(), AuctionHouseObject::BuildListAuctionItems(), Player::CastItemCombatSpell(), Player::CastItemUseSpell(), Spell::CheckItems(), Player::Create(), Item::Create(), Player::DestroyItem(), Spell::EffectRechargeManaGem(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleUseItemOpcode(), Player::StoreItem(), Spell::TakeCastItem(), Spell::TakeReagents(), and Player::UpdateAttackPowerAndDamage().
int32 ItemTemplate::Stackable |
uint32 ItemTemplate::StartQuest |
uint32 ItemTemplate::StatsCount |
uint32 ItemTemplate::SubClass |
Referenced by Player::_ApplyItemBonuses(), AuctionHouseObject::BuildListAuctionItems(), Player::CanEquipItem(), Player::CanRollForItemInLFG(), Player::CanStoreItem_InBag(), Player::CanStoreItems(), Player::CheckAmmoCompatibility(), Spell::CheckItems(), Player::Create(), Player::DurabilityRepair(), Player::FindEquipSlot(), GetSkill(), Item::GetSpell(), WorldSession::HandleItemQuerySingleOpcode(), WorldSession::HandleSellItemOpcode(), InitializeQueryData(), IsArmorVellum(), Item::IsFitToSpellRequirements(), IsPotion(), Unit::IsTriggeredAtSpellProcEvent(), IsWeaponVellum(), ItemCanGoIntoBag(), Spell::TakeAmmo(), and Player::UpdateWeaponSkill().
uint32 ItemTemplate::TotemCategory |