AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
ItemTemplate Struct Reference

#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
 
bool HasFlag (ItemFlags flag) const
 
bool HasFlag2 (ItemFlags2 flag) const
 
bool HasFlagCu (ItemFlagsCustom flag) const
 
void InitializeQueryData ()
 

Public Attributes

uint32 ItemId
 
uint32 Class
 
uint32 SubClass
 
int32 SoundOverrideSubclass
 
std::string Name1
 
uint32 DisplayInfoID
 
uint32 Quality
 
ItemFlags Flags
 
ItemFlags2 Flags2
 
uint32 BuyCount
 
int32 BuyPrice
 
uint32 SellPrice
 
uint32 InventoryType
 
uint32 AllowableClass
 
uint32 AllowableRace
 
uint32 ItemLevel
 
uint32 RequiredLevel
 
uint32 RequiredSkill
 
uint32 RequiredSkillRank
 
uint32 RequiredSpell
 
uint32 RequiredHonorRank
 
uint32 RequiredCityRank
 
uint32 RequiredReputationFaction
 
uint32 RequiredReputationRank
 
int32 MaxCount
 
int32 Stackable
 
uint32 ContainerSlots
 
uint32 StatsCount
 
_ItemStat ItemStat [MAX_ITEM_PROTO_STATS]
 
uint32 ScalingStatDistribution
 
uint32 ScalingStatValue
 
_Damage Damage [MAX_ITEM_PROTO_DAMAGES]
 
uint32 Armor
 
int32 HolyRes
 
int32 FireRes
 
int32 NatureRes
 
int32 FrostRes
 
int32 ShadowRes
 
int32 ArcaneRes
 
uint32 Delay
 
uint32 AmmoType
 
float RangedModRange
 
_Spell Spells [MAX_ITEM_PROTO_SPELLS]
 
uint32 Bonding
 
std::string Description
 
uint32 PageText
 
uint32 LanguageID
 
uint32 PageMaterial
 
uint32 StartQuest
 
uint32 LockID
 
int32 Material
 
uint32 Sheath
 
int32 RandomProperty
 
int32 RandomSuffix
 
uint32 Block
 
uint32 ItemSet
 
uint32 MaxDurability
 
uint32 Area
 
uint32 Map
 
uint32 BagFamily
 
uint32 TotemCategory
 
_Socket Socket [MAX_ITEM_PROTO_SOCKETS]
 
uint32 socketBonus
 
uint32 GemProperties
 
uint32 RequiredDisenchantSkill
 
float ArmorDamageModifier
 
uint32 Duration
 
uint32 ItemLimitCategory
 
uint32 HolidayId
 
uint32 ScriptId
 
uint32 DisenchantID
 
uint32 FoodType
 
uint32 MinMoneyLoot
 
uint32 MaxMoneyLoot
 
ItemFlagsCustom FlagsCu
 
WorldPacket queryData
 

Detailed Description

Member Function Documentation

◆ CanChangeEquipStateInCombat()

bool ItemTemplate::CanChangeEquipStateInCombat ( ) const
inline
708 {
709 switch (InventoryType)
710 {
711 case INVTYPE_RELIC:
712 case INVTYPE_SHIELD:
713 case INVTYPE_HOLDABLE:
714 return true;
715 }
716
717 switch (Class)
718 {
721 return true;
722 }
723
724 return false;
725 }
InventoryType
Definition: ItemTemplate.h:255
@ INVTYPE_HOLDABLE
Definition: ItemTemplate.h:279
@ INVTYPE_RELIC
Definition: ItemTemplate.h:284
@ INVTYPE_SHIELD
Definition: ItemTemplate.h:270
@ ITEM_CLASS_PROJECTILE
Definition: ItemTemplate.h:297
@ ITEM_CLASS_WEAPON
Definition: ItemTemplate.h:293
uint32 Class
Definition: ItemTemplate.h:621

References Class, INVTYPE_HOLDABLE, INVTYPE_RELIC, INVTYPE_SHIELD, ITEM_CLASS_PROJECTILE, and ITEM_CLASS_WEAPON.

Referenced by Player::CanEquipItem(), and Player::CanUnequipItem().

◆ getDPS()

float ItemTemplate::getDPS ( ) const
inline
735 {
736 if (Delay == 0)
737 return 0;
738 float temp = 0;
739 for (auto i : Damage)
740 temp += i.DamageMin + i.DamageMax;
741 return temp * 500 / Delay;
742 }
_Damage Damage[MAX_ITEM_PROTO_DAMAGES]
Definition: ItemTemplate.h:651
uint32 Delay
Definition: ItemTemplate.h:659

References Damage, and Delay.

Referenced by getFeralBonus().

◆ getFeralBonus()

int32 ItemTemplate::getFeralBonus ( int32  extraDPS = 0) const
inline
745 {
746 constexpr uint32 feralApEnabledInventoryTypeMaks = 1 << INVTYPE_WEAPON | 1 << INVTYPE_2HWEAPON | 1 << INVTYPE_WEAPONMAINHAND | 1 << INVTYPE_WEAPONOFFHAND;
747
748 // 0x02A5F3 - is mask for Melee weapon from ItemSubClassMask.dbc
749 if (Class == ITEM_CLASS_WEAPON && (1 << InventoryType) & feralApEnabledInventoryTypeMaks)
750 {
751 int32 bonus = int32((extraDPS + getDPS()) * 14.0f) - 767;
752 if (bonus < 0)
753 return 0;
754 return bonus;
755 }
756 return 0;
757 }
std::int32_t int32
Definition: Define.h:103
std::uint32_t uint32
Definition: Define.h:107
@ INVTYPE_WEAPON
Definition: ItemTemplate.h:269
@ INVTYPE_WEAPONMAINHAND
Definition: ItemTemplate.h:277
@ INVTYPE_WEAPONOFFHAND
Definition: ItemTemplate.h:278
@ INVTYPE_2HWEAPON
Definition: ItemTemplate.h:273
float getDPS() const
Definition: ItemTemplate.h:734

References Class, getDPS(), INVTYPE_2HWEAPON, INVTYPE_WEAPON, INVTYPE_WEAPONMAINHAND, INVTYPE_WEAPONOFFHAND, and ITEM_CLASS_WEAPON.

Referenced by Player::_ApplyItemBonuses(), and Player::UpdateAttackPowerAndDamage().

◆ GetItemLevelIncludingQuality()

float ItemTemplate::GetItemLevelIncludingQuality ( uint8  pLevel) const
inline
760 {
761 auto itemLevel = (float)ItemLevel;
762 switch (Quality)
763 {
767 itemLevel -= 26.0f;
768 break;
770 itemLevel -= 13.0f;
771 break;
773 itemLevel = pLevel * 2.33f;
774 break;
778 default:
779 break;
780 }
781 return std::max<float>(0.f, itemLevel);
782 }
@ ITEM_QUALITY_UNCOMMON
Definition: SharedDefines.h:331
@ ITEM_QUALITY_RARE
Definition: SharedDefines.h:332
@ ITEM_QUALITY_NORMAL
Definition: SharedDefines.h:330
@ ITEM_QUALITY_LEGENDARY
Definition: SharedDefines.h:334
@ ITEM_QUALITY_HEIRLOOM
Definition: SharedDefines.h:336
@ ITEM_QUALITY_POOR
Definition: SharedDefines.h:329
@ ITEM_QUALITY_ARTIFACT
Definition: SharedDefines.h:335
@ ITEM_QUALITY_EPIC
Definition: SharedDefines.h:333
uint32 Quality
Definition: ItemTemplate.h:626
uint32 ItemLevel
Definition: ItemTemplate.h:635

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().

◆ GetMaxStackSize()

◆ GetSkill()

uint32 ItemTemplate::GetSkill ( ) const
inline
785 {
786 const static uint32 item_weapon_skills[MAX_ITEM_SUBCLASS_WEAPON] =
787 {
793 };
794
795 const static uint32 item_armor_skills[MAX_ITEM_SUBCLASS_ARMOR] =
796 {
798 };
799
800 switch (Class)
801 {
804 return 0;
805 else
806 return item_weapon_skills[SubClass];
807
808 case ITEM_CLASS_ARMOR:
810 return 0;
811 else
812 return item_armor_skills[SubClass];
813
814 default:
815 return 0;
816 }
817 }
@ SKILL_BOWS
Definition: SharedDefines.h:2873
@ SKILL_MACES
Definition: SharedDefines.h:2877
@ SKILL_PLATE_MAIL
Definition: SharedDefines.h:2951
@ SKILL_LEATHER
Definition: SharedDefines.h:2963
@ SKILL_WANDS
Definition: SharedDefines.h:2941
@ SKILL_GUNS
Definition: SharedDefines.h:2874
@ SKILL_SHIELD
Definition: SharedDefines.h:2965
@ SKILL_CROSSBOWS
Definition: SharedDefines.h:2940
@ SKILL_THROWN
Definition: SharedDefines.h:2914
@ SKILL_FISHING
Definition: SharedDefines.h:2957
@ SKILL_SWORDS
Definition: SharedDefines.h:2871
@ SKILL_DAGGERS
Definition: SharedDefines.h:2913
@ SKILL_2H_AXES
Definition: SharedDefines.h:2912
@ SKILL_CLOTH
Definition: SharedDefines.h:2964
@ SKILL_POLEARMS
Definition: SharedDefines.h:2942
@ SKILL_2H_SWORDS
Definition: SharedDefines.h:2878
@ SKILL_MAIL
Definition: SharedDefines.h:2962
@ SKILL_FIST_WEAPONS
Definition: SharedDefines.h:2966
@ SKILL_2H_MACES
Definition: SharedDefines.h:2906
@ SKILL_AXES
Definition: SharedDefines.h:2872
@ SKILL_STAVES
Definition: SharedDefines.h:2894
@ SKILL_ASSASSINATION
Definition: SharedDefines.h:2946
#define MAX_ITEM_SUBCLASS_ARMOR
Definition: ItemTemplate.h:403
@ ITEM_CLASS_ARMOR
Definition: ItemTemplate.h:295
#define MAX_ITEM_SUBCLASS_WEAPON
Definition: ItemTemplate.h:371
uint32 SubClass
Definition: ItemTemplate.h:622

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().

◆ HasFlag()

◆ HasFlag2()

bool ItemTemplate::HasFlag2 ( ItemFlags2  flag) const
inline
828{ return (Flags2 & flag) != 0; }
ItemFlags2 Flags2
Definition: ItemTemplate.h:628

References Flags2.

Referenced by LootItem::AllowedForPlayer(), Player::BuyItemFromVendorSlot(), Player::CanUseItem(), VendorItem::IsGoldRequired(), and Group::NeedBeforeGreed().

◆ HasFlagCu()

bool ItemTemplate::HasFlagCu ( ItemFlagsCustom  flag) const
inline
829{ return (FlagsCu & flag) != 0; }
ItemFlagsCustom FlagsCu
Definition: ItemTemplate.h:694

References FlagsCu.

Referenced by LootItem::AllowedForPlayer(), LootItem::LootItem(), and Player::UpdateItemDuration().

◆ HasSignature()

bool ItemTemplate::HasSignature ( ) const
inline
699 {
700 return GetMaxStackSize() == 1 &&
704 ItemId != 6948; /*Hearthstone*/
705 }
@ ITEM_FLAG_NO_CREATOR
Definition: ItemTemplate.h:164
@ ITEM_CLASS_QUEST
Definition: ItemTemplate.h:303
@ ITEM_CLASS_CONSUMABLE
Definition: ItemTemplate.h:291
uint32 GetMaxStackSize() const
Definition: ItemTemplate.h:729
bool HasFlag(ItemFlags flag) const
Definition: ItemTemplate.h:827
uint32 ItemId
Definition: ItemTemplate.h:620

References Class, GetMaxStackSize(), HasFlag(), ITEM_CLASS_CONSUMABLE, ITEM_CLASS_QUEST, ITEM_FLAG_NO_CREATOR, and ItemId.

Referenced by Spell::DoCreateItem().

◆ HasSpellPowerStat()

bool ItemTemplate::HasSpellPowerStat ( ) const
361{
362 bool invalid = false;
363 for (uint8 i = 0; i < MAX_ITEM_PROTO_SPELLS; ++i)
364 {
365 _Spell const& spellData = Spells[i];
366 if (!spellData.SpellId)
367 {
368 continue;
369 }
370
371 SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellData.SpellId);
372 if (!spellInfo)
373 {
374 continue;
375 }
376
377 for (uint8 j = EFFECT_0; j <= EFFECT_2; ++j)
378 {
379 switch (spellInfo->Effects[j].ApplyAuraName)
380 {
385 invalid = true;
386 break;
391 if (!(spellInfo->Effects[j].MiscValue & SPELL_SCHOOL_MASK_SPELL))
392 {
393 return false;
394 }
395 invalid = true;
396 break;
397 default:
398 break;
399 }
400 }
401 }
402
403 return invalid;
404}
std::uint8_t uint8
Definition: Define.h:109
@ EFFECT_0
Definition: SharedDefines.h:31
@ EFFECT_2
Definition: SharedDefines.h:33
@ SPELL_SCHOOL_MASK_SPELL
Definition: SharedDefines.h:308
@ SPELL_AURA_MOD_SPELL_DAMAGE_OF_ATTACK_POWER
Definition: SpellAuraDefines.h:300
@ SPELL_AURA_MOD_SPELL_DAMAGE_OF_STAT_PERCENT
Definition: SpellAuraDefines.h:237
@ SPELL_AURA_MOD_HEALING_DONE
Definition: SpellAuraDefines.h:198
@ SPELL_AURA_MOD_SPELL_HEALING_OF_STAT_PERCENT
Definition: SpellAuraDefines.h:238
@ SPELL_AURA_MOD_DAMAGE_TAKEN
Definition: SpellAuraDefines.h:77
@ SPELL_AURA_MOD_SPELL_HEALING_OF_ATTACK_POWER
Definition: SpellAuraDefines.h:301
@ SPELL_AURA_MOD_HEALING
Definition: SpellAuraDefines.h:178
@ SPELL_AURA_MOD_DAMAGE_DONE
Definition: SpellAuraDefines.h:76
#define sSpellMgr
Definition: SpellMgr.h:825
#define MAX_ITEM_PROTO_SPELLS
Definition: ItemTemplate.h:615
Spells
Definition: BattlegroundIC.h:711
Definition: ItemTemplate.h:590
int32 SpellId
Definition: ItemTemplate.h:591
Definition: SpellInfo.h:316
std::array< SpellEffectInfo, MAX_SPELL_EFFECTS > Effects
Definition: SpellInfo.h:393

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().

◆ HasStat()

bool ItemTemplate::HasStat ( ItemModType  stat) const
343{
344 for (uint8 i = 0; i < MAX_ITEM_PROTO_STATS; ++i)
345 {
346 if (i >= StatsCount)
347 {
348 break;
349 }
350
351 if (ItemStat[i].ItemStatType == stat)
352 {
353 return true;
354 }
355 }
356
357 return false;
358}
#define MAX_ITEM_PROTO_STATS
Definition: ItemTemplate.h:616
_ItemStat ItemStat[MAX_ITEM_PROTO_STATS]
Definition: ItemTemplate.h:648
uint32 StatsCount
Definition: ItemTemplate.h:647

References ItemStat, MAX_ITEM_PROTO_STATS, and StatsCount.

Referenced by Player::CanRollForItemInLFG().

◆ InitializeQueryData()

void ItemTemplate::InitializeQueryData ( )
407{
409
410 queryData << ItemId;
411 queryData << Class;
414 queryData << Name1;
415 queryData << uint8(0x00); //pProto->Name2; // blizz not send name there, just uint8(0x00); <-- \0 = empty string = empty name...
416 queryData << uint8(0x00); //pProto->Name3; // blizz not send name there, just uint8(0x00);
417 queryData << uint8(0x00); //pProto->Name4; // blizz not send name there, just uint8(0x00);
420 queryData << Flags;
421 queryData << Flags2;
439 queryData << StatsCount; // item stats count
440 for (uint32 i = 0; i < StatsCount; ++i)
441 {
444 }
445 queryData << ScalingStatDistribution; // scaling stats distribution
446 queryData << ScalingStatValue; // some kind of flags used to determine stat values column
447 for (int i = 0; i < MAX_ITEM_PROTO_DAMAGES; ++i)
448 {
452 }
453
454 // resistances (7)
455 queryData << Armor;
462
463 queryData << Delay;
466
467 for (int s = 0; s < MAX_ITEM_PROTO_SPELLS; ++s)
468 {
469 // send DBC data for cooldowns in same way as it used in Spell::SendSpellCooldown
470 // use `item_template` or if not set then only use spell cooldowns
471 SpellInfo const* spell = sSpellMgr->GetSpellInfo(Spells[s].SpellId);
472 if (spell)
473 {
474 bool db_data = Spells[s].SpellCooldown >= 0 || Spells[s].SpellCategoryCooldown >= 0;
475
476 queryData << Spells[s].SpellId;
477 queryData << Spells[s].SpellTrigger;
478 queryData << int32(Spells[s].SpellCharges);
479
480 if (db_data)
481 {
484 queryData << uint32(Spells[s].SpellCategoryCooldown);
485 }
486 else
487 {
488 queryData << uint32(spell->RecoveryTime);
489 queryData << uint32(spell->GetCategory());
491 }
492 }
493 else
494 {
495 queryData << uint32(0);
496 queryData << uint32(0);
497 queryData << uint32(0);
498 queryData << uint32(-1);
499 queryData << uint32(0);
500 queryData << uint32(-1);
501 }
502 }
509 queryData << LockID;
511 queryData << Sheath;
514 queryData << Block;
517 queryData << Area;
518 queryData << Map; // Added in 1.12.x & 2.0.1 client branch
521 for (int s = 0; s < MAX_ITEM_PROTO_SOCKETS; ++s)
522 {
523 queryData << Socket[s].Color;
524 queryData << Socket[s].Content;
525 }
530 queryData << Duration; // added in 2.4.2.8209, duration (seconds)
531 queryData << ItemLimitCategory; // WotLK, ItemLimitCategory
532 queryData << HolidayId; // Holiday.dbc?
533}
SpellCategory
Definition: SharedDefines.h:342
#define MAX_ITEM_PROTO_SOCKETS
Definition: ItemTemplate.h:614
#define MAX_ITEM_PROTO_DAMAGES
Definition: ItemTemplate.h:613
@ SMSG_ITEM_QUERY_SINGLE_RESPONSE
Definition: Opcodes.h:118
float DamageMin
Definition: ItemTemplate.h:579
uint32 DamageType
Definition: ItemTemplate.h:581
float DamageMax
Definition: ItemTemplate.h:580
int32 ItemStatValue
Definition: ItemTemplate.h:587
uint32 ItemStatType
Definition: ItemTemplate.h:586
int32 RandomProperty
Definition: ItemTemplate.h:672
int32 FrostRes
Definition: ItemTemplate.h:656
uint32 Map
Definition: ItemTemplate.h:678
uint32 Block
Definition: ItemTemplate.h:674
int32 ArcaneRes
Definition: ItemTemplate.h:658
uint32 RequiredCityRank
Definition: ItemTemplate.h:641
uint32 RequiredSkill
Definition: ItemTemplate.h:637
int32 ShadowRes
Definition: ItemTemplate.h:657
uint32 RequiredSpell
Definition: ItemTemplate.h:639
int32 MaxCount
Definition: ItemTemplate.h:644
uint32 ScalingStatValue
Definition: ItemTemplate.h:650
std::string Description
Definition: ItemTemplate.h:664
uint32 AllowableClass
Definition: ItemTemplate.h:633
uint32 RequiredSkillRank
Definition: ItemTemplate.h:638
uint32 RequiredHonorRank
Definition: ItemTemplate.h:640
int32 HolyRes
Definition: ItemTemplate.h:653
float RangedModRange
Definition: ItemTemplate.h:661
uint32 Sheath
Definition: ItemTemplate.h:671
float ArmorDamageModifier
Definition: ItemTemplate.h:685
int32 Material
Definition: ItemTemplate.h:670
uint32 Area
Definition: ItemTemplate.h:677
int32 BuyPrice
Definition: ItemTemplate.h:630
uint32 socketBonus
Definition: ItemTemplate.h:682
uint32 RequiredDisenchantSkill
Definition: ItemTemplate.h:684
uint32 TotemCategory
Definition: ItemTemplate.h:680
uint32 PageMaterial
Definition: ItemTemplate.h:667
uint32 RequiredLevel
Definition: ItemTemplate.h:636
std::string Name1
Definition: ItemTemplate.h:624
uint32 LockID
Definition: ItemTemplate.h:669
uint32 ItemSet
Definition: ItemTemplate.h:675
uint32 HolidayId
Definition: ItemTemplate.h:688
uint32 GemProperties
Definition: ItemTemplate.h:683
uint32 RequiredReputationRank
Definition: ItemTemplate.h:643
WorldPacket queryData
Definition: ItemTemplate.h:695
uint32 ContainerSlots
Definition: ItemTemplate.h:646
uint32 DisplayInfoID
Definition: ItemTemplate.h:625
uint32 AllowableRace
Definition: ItemTemplate.h:634
uint32 RequiredReputationFaction
Definition: ItemTemplate.h:642
uint32 ItemLimitCategory
Definition: ItemTemplate.h:687
uint32 PageText
Definition: ItemTemplate.h:665
uint32 ScalingStatDistribution
Definition: ItemTemplate.h:649
int32 NatureRes
Definition: ItemTemplate.h:655
uint32 MaxDurability
Definition: ItemTemplate.h:676
uint32 BagFamily
Definition: ItemTemplate.h:679
uint32 InventoryType
Definition: ItemTemplate.h:632
uint32 LanguageID
Definition: ItemTemplate.h:666
uint32 AmmoType
Definition: ItemTemplate.h:660
int32 RandomSuffix
Definition: ItemTemplate.h:673
uint32 Duration
Definition: ItemTemplate.h:686
uint32 Armor
Definition: ItemTemplate.h:652
uint32 StartQuest
Definition: ItemTemplate.h:668
int32 SoundOverrideSubclass
Definition: ItemTemplate.h:623
int32 FireRes
Definition: ItemTemplate.h:654
uint32 Bonding
Definition: ItemTemplate.h:663
uint32 SellPrice
Definition: ItemTemplate.h:631
Definition: Player.h:199
void Initialize(uint16 opcode, std::size_t newres=200)
Definition: WorldPacket.h:68
uint32 GetCategory() const
Definition: SpellInfo.cpp:871
uint32 RecoveryTime
Definition: SpellInfo.h:348
uint32 CategoryRecoveryTime
Definition: SpellInfo.h:349
Definition: Socket.h:52

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.

◆ IsArmorVellum()

bool ItemTemplate::IsArmorVellum ( ) const
inline
@ ITEM_SUBCLASS_ARMOR_ENCHANTMENT
Definition: ItemTemplate.h:439
@ ITEM_CLASS_TRADE_GOODS
Definition: ItemTemplate.h:298

References Class, ITEM_CLASS_TRADE_GOODS, ITEM_SUBCLASS_ARMOR_ENCHANTMENT, and SubClass.

Referenced by Item::IsArmorVellum(), and Item::IsFitToSpellRequirements().

◆ IsConjuredConsumable()

bool ItemTemplate::IsConjuredConsumable ( ) const
inline
@ ITEM_FLAG_CONJURED
Definition: ItemTemplate.h:148

References Class, HasFlag(), ITEM_CLASS_CONSUMABLE, and ITEM_FLAG_CONJURED.

Referenced by Item::IsConjuredConsumable().

◆ IsCurrencyToken()

bool ItemTemplate::IsCurrencyToken ( ) const
inline

◆ IsPotion()

bool ItemTemplate::IsPotion ( ) const
inline
@ ITEM_SUBCLASS_POTION
Definition: ItemTemplate.h:315

References Class, ITEM_CLASS_CONSUMABLE, ITEM_SUBCLASS_POTION, and SubClass.

Referenced by Item::IsPotion().

◆ IsWeaponVellum()

bool ItemTemplate::IsWeaponVellum ( ) const
inline

Member Data Documentation

◆ AllowableClass

◆ AllowableRace

◆ AmmoType

uint32 ItemTemplate::AmmoType

◆ ArcaneRes

◆ Area

◆ Armor

◆ ArmorDamageModifier

float ItemTemplate::ArmorDamageModifier

◆ BagFamily

◆ Block

◆ Bonding

◆ BuyCount

◆ BuyPrice

◆ Class

◆ ContainerSlots

◆ Damage

◆ Delay

◆ Description

std::string ItemTemplate::Description

◆ DisenchantID

◆ DisplayInfoID

◆ Duration

◆ FireRes

◆ Flags

◆ Flags2

◆ FlagsCu

ItemFlagsCustom ItemTemplate::FlagsCu

Referenced by HasFlagCu().

◆ FoodType

uint32 ItemTemplate::FoodType

Referenced by Pet::HaveInDiet().

◆ FrostRes

◆ GemProperties

◆ HolidayId

◆ HolyRes

◆ InventoryType

◆ ItemId

◆ ItemLevel

◆ ItemLimitCategory

◆ ItemSet

◆ ItemStat

◆ LanguageID

uint32 ItemTemplate::LanguageID

◆ LockID

◆ Map

◆ Material

int32 ItemTemplate::Material

◆ MaxCount

◆ MaxDurability

◆ MaxMoneyLoot

uint32 ItemTemplate::MaxMoneyLoot

Referenced by Player::SendLoot().

◆ MinMoneyLoot

uint32 ItemTemplate::MinMoneyLoot

Referenced by Player::SendLoot().

◆ Name1

◆ NatureRes

◆ PageMaterial

uint32 ItemTemplate::PageMaterial

◆ PageText

◆ Quality

◆ queryData

WorldPacket ItemTemplate::queryData

Referenced by InitializeQueryData().

◆ RandomProperty

◆ RandomSuffix

◆ RangedModRange

float ItemTemplate::RangedModRange

◆ RequiredCityRank

uint32 ItemTemplate::RequiredCityRank

◆ RequiredDisenchantSkill

◆ RequiredHonorRank

uint32 ItemTemplate::RequiredHonorRank

◆ RequiredLevel

◆ RequiredReputationFaction

◆ RequiredReputationRank

◆ RequiredSkill

◆ RequiredSkillRank

◆ RequiredSpell

◆ ScalingStatDistribution

◆ ScalingStatValue

◆ ScriptId

uint32 ItemTemplate::ScriptId

◆ SellPrice

◆ ShadowRes

◆ Sheath

◆ Socket

◆ socketBonus

◆ SoundOverrideSubclass

int32 ItemTemplate::SoundOverrideSubclass

◆ Spells

◆ Stackable

◆ StartQuest

◆ StatsCount

◆ SubClass

◆ TotemCategory