TrinityCore
ItemTemplate.h File Reference
#include "Common.h"
#include "DB2Structure.h"
#include "Errors.h"
#include "SharedDefines.h"
#include <bitset>
#include <vector>
+ Include dependency graph for ItemTemplate.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ItemTemplate
 

Macros

#define MAX_BIND_TYPE   5
 
#define SOCKET_COLOR_STANDARD   (SOCKET_COLOR_RED | SOCKET_COLOR_YELLOW | SOCKET_COLOR_BLUE)
 
#define MAX_INVTYPE   35
 
#define MAX_ITEM_CLASS   20
 
#define MAX_ITEM_SUBCLASS_CONSUMABLE   10
 
#define MAX_ITEM_SUBCLASS_CONTAINER   12
 
#define ITEM_SUBCLASS_MASK_WEAPON_RANGED
 
#define MAX_ITEM_SUBCLASS_WEAPON   21
 
#define MAX_ITEM_SUBCLASS_GEM   12
 
#define MAX_ITEM_SUBCLASS_ARMOR   12
 
#define MAX_ITEM_SUBCLASS_REAGENT   3
 
#define MAX_ITEM_SUBCLASS_PROJECTILE   5
 
#define MAX_ITEM_SUBCLASS_TRADE_GOODS   20
 
#define MAX_ITEM_SUBCLASS_ITEM_ENHANCEMENT   15
 
#define MAX_ITEM_SUBCLASS_RECIPE   12
 
#define MAX_ITEM_SUBCLASS_MONEY   1
 
#define MAX_ITEM_SUBCLASS_QUIVER   4
 
#define MAX_ITEM_SUBCLASS_QUEST   9
 
#define MAX_ITEM_SUBCLASS_KEY   2
 
#define MAX_ITEM_SUBCLASS_PERMANENT   1
 
#define MAX_ITEM_SUBCLASS_MISCELLANEOUS   7
 
#define MAX_ITEM_SUBCLASS_GLYPH   13
 
#define MAX_ITEM_SUBCLASS_BATTLE_PET   1
 
#define MAX_ITEM_SUBCLASS_WOW_TOKEN   1
 
#define MAX_ITEM_SUBCLASS_PROFESSION   14
 
#define MAX_ITEM_SUBCLASS_TOTAL   21
 

Enumerations

enum  ItemModType {
  ITEM_MOD_MANA = 0 , ITEM_MOD_HEALTH = 1 , ITEM_MOD_AGILITY = 3 , ITEM_MOD_STRENGTH = 4 ,
  ITEM_MOD_INTELLECT = 5 , ITEM_MOD_SPIRIT = 6 , ITEM_MOD_STAMINA = 7 , ITEM_MOD_DEFENSE_SKILL_RATING = 12 ,
  ITEM_MOD_DODGE_RATING = 13 , ITEM_MOD_PARRY_RATING = 14 , ITEM_MOD_BLOCK_RATING = 15 , ITEM_MOD_HIT_MELEE_RATING = 16 ,
  ITEM_MOD_HIT_RANGED_RATING = 17 , ITEM_MOD_HIT_SPELL_RATING = 18 , ITEM_MOD_CRIT_MELEE_RATING = 19 , ITEM_MOD_CRIT_RANGED_RATING = 20 ,
  ITEM_MOD_CRIT_SPELL_RATING = 21 , ITEM_MOD_CORRUPTION = 22 , ITEM_MOD_CORRUPTION_RESISTANCE = 23 , ITEM_MOD_MODIFIED_CRAFTING_STAT_1 = 24 ,
  ITEM_MOD_MODIFIED_CRAFTING_STAT_2 = 25 , ITEM_MOD_CRIT_TAKEN_RANGED_RATING = 26 , ITEM_MOD_CRIT_TAKEN_SPELL_RATING = 27 , ITEM_MOD_HASTE_MELEE_RATING = 28 ,
  ITEM_MOD_HASTE_RANGED_RATING = 29 , ITEM_MOD_HASTE_SPELL_RATING = 30 , ITEM_MOD_HIT_RATING = 31 , ITEM_MOD_CRIT_RATING = 32 ,
  ITEM_MOD_HIT_TAKEN_RATING = 33 , ITEM_MOD_CRIT_TAKEN_RATING = 34 , ITEM_MOD_RESILIENCE_RATING = 35 , ITEM_MOD_HASTE_RATING = 36 ,
  ITEM_MOD_EXPERTISE_RATING = 37 , ITEM_MOD_ATTACK_POWER = 38 , ITEM_MOD_RANGED_ATTACK_POWER = 39 , ITEM_MOD_VERSATILITY = 40 ,
  ITEM_MOD_SPELL_HEALING_DONE = 41 , ITEM_MOD_SPELL_DAMAGE_DONE = 42 , ITEM_MOD_MANA_REGENERATION = 43 , ITEM_MOD_ARMOR_PENETRATION_RATING = 44 ,
  ITEM_MOD_SPELL_POWER = 45 , ITEM_MOD_HEALTH_REGEN = 46 , ITEM_MOD_SPELL_PENETRATION = 47 , ITEM_MOD_BLOCK_VALUE = 48 ,
  ITEM_MOD_MASTERY_RATING = 49 , ITEM_MOD_EXTRA_ARMOR = 50 , ITEM_MOD_FIRE_RESISTANCE = 51 , ITEM_MOD_FROST_RESISTANCE = 52 ,
  ITEM_MOD_HOLY_RESISTANCE = 53 , ITEM_MOD_SHADOW_RESISTANCE = 54 , ITEM_MOD_NATURE_RESISTANCE = 55 , ITEM_MOD_ARCANE_RESISTANCE = 56 ,
  ITEM_MOD_PVP_POWER = 57 , ITEM_MOD_CR_UNUSED_0 = 58 , ITEM_MOD_CR_UNUSED_1 = 59 , ITEM_MOD_CR_UNUSED_3 = 60 ,
  ITEM_MOD_CR_SPEED = 61 , ITEM_MOD_CR_LIFESTEAL = 62 , ITEM_MOD_CR_AVOIDANCE = 63 , ITEM_MOD_CR_STURDINESS = 64 ,
  ITEM_MOD_CR_UNUSED_7 = 65 , ITEM_MOD_CR_UNUSED_27 = 66 , ITEM_MOD_CR_UNUSED_9 = 67 , ITEM_MOD_CR_UNUSED_10 = 68 ,
  ITEM_MOD_CR_UNUSED_11 = 69 , ITEM_MOD_CR_UNUSED_12 = 70 , ITEM_MOD_AGI_STR_INT = 71 , ITEM_MOD_AGI_STR = 72 ,
  ITEM_MOD_AGI_INT = 73 , ITEM_MOD_STR_INT = 74
}
 
enum  ItemSpelltriggerType {
  ITEM_SPELLTRIGGER_ON_USE = 0 , ITEM_SPELLTRIGGER_ON_EQUIP = 1 , ITEM_SPELLTRIGGER_ON_PROC = 2 , ITEM_SPELLTRIGGER_SUMMONED_BY_SPELL = 3 ,
  ITEM_SPELLTRIGGER_ON_DEATH = 4 , ITEM_SPELLTRIGGER_ON_PICKUP = 5 , ITEM_SPELLTRIGGER_ON_LEARN = 6 , ITEM_SPELLTRIGGER_ON_LOOTED = 7
}
 
enum  ItemBondingType {
  BIND_NONE = 0 , BIND_ON_ACQUIRE = 1 , BIND_ON_EQUIP = 2 , BIND_ON_USE = 3 ,
  BIND_QUEST = 4
}
 
enum  ItemFieldFlags : uint32 {
  ITEM_FIELD_FLAG_SOULBOUND = 0x00000001 , ITEM_FIELD_FLAG_TRANSLATED = 0x00000002 , ITEM_FIELD_FLAG_UNLOCKED = 0x00000004 , ITEM_FIELD_FLAG_WRAPPED = 0x00000008 ,
  ITEM_FIELD_FLAG_UNK2 = 0x00000010 , ITEM_FIELD_FLAG_UNK3 = 0x00000020 , ITEM_FIELD_FLAG_UNK4 = 0x00000040 , ITEM_FIELD_FLAG_UNK5 = 0x00000080 ,
  ITEM_FIELD_FLAG_BOP_TRADEABLE = 0x00000100 , ITEM_FIELD_FLAG_READABLE = 0x00000200 , ITEM_FIELD_FLAG_UNK6 = 0x00000400 , ITEM_FIELD_FLAG_UNK7 = 0x00000800 ,
  ITEM_FIELD_FLAG_REFUNDABLE = 0x00001000 , ITEM_FIELD_FLAG_UNK8 = 0x00002000 , ITEM_FIELD_FLAG_UNK9 = 0x00004000 , ITEM_FIELD_FLAG_UNK10 = 0x00008000 ,
  ITEM_FIELD_FLAG_UNK11 = 0x00010000 , ITEM_FIELD_FLAG_UNK12 = 0x00020000 , ITEM_FIELD_FLAG_UNK13 = 0x00040000 , ITEM_FIELD_FLAG_CHILD = 0x00080000 ,
  ITEM_FIELD_FLAG_UNK15 = 0x00100000 , ITEM_FIELD_FLAG_NEW_ITEM = 0x00200000 , ITEM_FIELD_FLAG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x00400000 , ITEM_FIELD_FLAG_UNK18 = 0x00800000 ,
  ITEM_FIELD_FLAG_UNK19 = 0x01000000 , ITEM_FIELD_FLAG_UNK20 = 0x02000000 , ITEM_FIELD_FLAG_UNK21 = 0x04000000 , ITEM_FIELD_FLAG_UNK22 = 0x08000000 ,
  ITEM_FIELD_FLAG_UNK23 = 0x10000000 , ITEM_FIELD_FLAG_UNK24 = 0x20000000 , ITEM_FIELD_FLAG_UNK25 = 0x40000000 , ITEM_FIELD_FLAG_UNK26 = 0x80000000
}
 
enum  ItemFieldFlags2 : uint32 { ITEM_FIELD_FLAG2_EQUIPPED = 0x1 }
 
enum  ItemFlags : uint32 {
  ITEM_FLAG_NO_PICKUP = 0x00000001 , ITEM_FLAG_CONJURED = 0x00000002 , ITEM_FLAG_HAS_LOOT = 0x00000004 , ITEM_FLAG_HEROIC_TOOLTIP = 0x00000008 ,
  ITEM_FLAG_DEPRECATED = 0x00000010 , ITEM_FLAG_NO_USER_DESTROY = 0x00000020 , ITEM_FLAG_PLAYERCAST = 0x00000040 , ITEM_FLAG_NO_EQUIP_COOLDOWN = 0x00000080 ,
  ITEM_FLAG_LEGACY = 0x00000100 , ITEM_FLAG_IS_WRAPPER = 0x00000200 , ITEM_FLAG_USES_RESOURCES = 0x00000400 , ITEM_FLAG_MULTI_DROP = 0x00000800 ,
  ITEM_FLAG_ITEM_PURCHASE_RECORD = 0x00001000 , ITEM_FLAG_PETITION = 0x00002000 , ITEM_FLAG_HAS_TEXT = 0x00004000 , ITEM_FLAG_NO_DISENCHANT = 0x00008000 ,
  ITEM_FLAG_REAL_DURATION = 0x00010000 , ITEM_FLAG_NO_CREATOR = 0x00020000 , ITEM_FLAG_IS_PROSPECTABLE = 0x00040000 , ITEM_FLAG_UNIQUE_EQUIPPABLE = 0x00080000 ,
  ITEM_FLAG_DISABLE_AUTO_QUOTES = 0x00100000 , ITEM_FLAG_IGNORE_DEFAULT_ARENA_RESTRICTIONS = 0x00200000 , ITEM_FLAG_NO_DURABILITY_LOSS = 0x00400000 , ITEM_FLAG_USE_WHEN_SHAPESHIFTED = 0x00800000 ,
  ITEM_FLAG_HAS_QUEST_GLOW = 0x01000000 , ITEM_FLAG_HIDE_UNUSABLE_RECIPE = 0x02000000 , ITEM_FLAG_NOT_USEABLE_IN_ARENA = 0x04000000 , ITEM_FLAG_IS_BOUND_TO_ACCOUNT = 0x08000000 ,
  ITEM_FLAG_NO_REAGENT_COST = 0x10000000 , ITEM_FLAG_IS_MILLABLE = 0x20000000 , ITEM_FLAG_REPORT_TO_GUILD_CHAT = 0x40000000 , ITEM_FLAG_NO_PROGRESSIVE_LOOT = 0x80000000
}
 
enum  ItemFlags2 : uint32 {
  ITEM_FLAG2_FACTION_HORDE = 0x00000001 , ITEM_FLAG2_FACTION_ALLIANCE = 0x00000002 , ITEM_FLAG2_DONT_IGNORE_BUY_PRICE = 0x00000004 , ITEM_FLAG2_CLASSIFY_AS_CASTER = 0x00000008 ,
  ITEM_FLAG2_CLASSIFY_AS_PHYSICAL = 0x00000010 , ITEM_FLAG2_EVERYONE_CAN_ROLL_NEED = 0x00000020 , ITEM_FLAG2_NO_TRADE_BIND_ON_ACQUIRE = 0x00000040 , ITEM_FLAG2_CAN_TRADE_BIND_ON_ACQUIRE = 0x00000080 ,
  ITEM_FLAG2_CAN_ONLY_ROLL_GREED = 0x00000100 , ITEM_FLAG2_CASTER_WEAPON = 0x00000200 , ITEM_FLAG2_DELETE_ON_LOGIN = 0x00000400 , ITEM_FLAG2_INTERNAL_ITEM = 0x00000800 ,
  ITEM_FLAG2_NO_VENDOR_VALUE = 0x00001000 , ITEM_FLAG2_SHOW_BEFORE_DISCOVERED = 0x00002000 , ITEM_FLAG2_OVERRIDE_GOLD_COST = 0x00004000 , ITEM_FLAG2_IGNORE_DEFAULT_RATED_BG_RESTRICTIONS = 0x00008000 ,
  ITEM_FLAG2_NOT_USABLE_IN_RATED_BG = 0x00010000 , ITEM_FLAG2_BNET_ACCOUNT_TRADE_OK = 0x00020000 , ITEM_FLAG2_CONFIRM_BEFORE_USE = 0x00040000 , ITEM_FLAG2_REEVALUATE_BONDING_ON_TRANSFORM = 0x00080000 ,
  ITEM_FLAG2_NO_TRANSFORM_ON_CHARGE_DEPLETION = 0x00100000 , ITEM_FLAG2_NO_ALTER_ITEM_VISUAL = 0x00200000 , ITEM_FLAG2_NO_SOURCE_FOR_ITEM_VISUAL = 0x00400000 , ITEM_FLAG2_IGNORE_QUALITY_FOR_ITEM_VISUAL_SOURCE = 0x00800000 ,
  ITEM_FLAG2_NO_DURABILITY = 0x01000000 , ITEM_FLAG2_ROLE_TANK = 0x02000000 , ITEM_FLAG2_ROLE_HEALER = 0x04000000 , ITEM_FLAG2_ROLE_DAMAGE = 0x08000000 ,
  ITEM_FLAG2_CAN_DROP_IN_CHALLENGE_MODE = 0x10000000 , ITEM_FLAG2_NEVER_STACK_IN_LOOT_UI = 0x20000000 , ITEM_FLAG2_DISENCHANT_TO_LOOT_TABLE = 0x40000000 , ITEM_FLAG2_USED_IN_A_TRADESKILL = 0x80000000
}
 
enum  ItemFlags3 {
  ITEM_FLAG3_DONT_DESTROY_ON_QUEST_ACCEPT = 0x00000001 , ITEM_FLAG3_ITEM_CAN_BE_UPGRADED = 0x00000002 , ITEM_FLAG3_UPGRADE_FROM_ITEM_OVERRIDES_DROP_UPGRADE = 0x00000004 , ITEM_FLAG3_ALWAYS_FFA_IN_LOOT = 0x00000008 ,
  ITEM_FLAG3_HIDE_UPGRADE_LEVELS_IF_NOT_UPGRADED = 0x00000010 , ITEM_FLAG3_UPDATE_INTERACTIONS = 0x00000020 , ITEM_FLAG3_UPDATE_DOESNT_LEAVE_PROGRESSIVE_WIN_HISTORY = 0x00000040 , ITEM_FLAG3_IGNORE_ITEM_HISTORY_TRACKER = 0x00000080 ,
  ITEM_FLAG3_IGNORE_ITEM_LEVEL_CAP_IN_PVP = 0x00000100 , ITEM_FLAG3_DISPLAY_AS_HEIRLOOM = 0x00000200 , ITEM_FLAG3_SKIP_USE_CHECK_ON_PICKUP = 0x00000400 , ITEM_FLAG3_OBSOLETE = 0x00000800 ,
  ITEM_FLAG3_DONT_DISPLAY_IN_GUILD_NEWS = 0x00001000 , ITEM_FLAG3_PVP_TOURNAMENT_GEAR = 0x00002000 , ITEM_FLAG3_REQUIRES_STACK_CHANGE_LOG = 0x00004000 , ITEM_FLAG3_UNUSED_FLAG = 0x00008000 ,
  ITEM_FLAG3_HIDE_NAME_SUFFIX = 0x00010000 , ITEM_FLAG3_PUSH_LOOT = 0x00020000 , ITEM_FLAG3_DONT_REPORT_LOOT_LOG_TO_PARTY = 0x00040000 , ITEM_FLAG3_ALWAYS_ALLOW_DUAL_WIELD = 0x00080000 ,
  ITEM_FLAG3_OBLITERATABLE = 0x00100000 , ITEM_FLAG3_ACTS_AS_TRANSMOG_HIDDEN_VISUAL_OPTION = 0x00200000 , ITEM_FLAG3_EXPIRE_ON_WEEKLY_RESET = 0x00400000 , ITEM_FLAG3_DOESNT_SHOW_UP_IN_TRANSMOG_UNTIL_COLLECTED = 0x00800000 ,
  ITEM_FLAG3_CAN_STORE_ENCHANTS = 0x01000000 , ITEM_FLAG3_HIDE_QUEST_ITEM_FROM_OBJECT_TOOLTIP = 0x02000000 , ITEM_FLAG3_DO_NOT_TOAST = 0x04000000 , ITEM_FLAG3_IGNORE_CREATION_CONTEXT_FOR_PROGRESSIVE_WIN_HISTORY = 0x08000000 ,
  ITEM_FLAG3_FORCE_ALL_SPECS_FOR_ITEM_HISTORY = 0x10000000 , ITEM_FLAG3_SAVE_ON_CONSUME = 0x20000000 , ITEM_FLAG3_CONTAINER_SAVES_PLAYER_DATA = 0x40000000 , ITEM_FLAG3_NO_VOID_STORAGE = 0x80000000
}
 
enum  ItemFlags4 {
  ITEM_FLAG4_HANDLE_ON_USE_EFFECT_IMMEDIATELY = 0x00000001 , ITEM_FLAG4_ALWAYS_SHOW_ITEM_LEVEL_IN_TOOLTIP = 0x00000002 , ITEM_FLAG4_SHOWS_GENERATION_WITH_RANDOM_STATS = 0x00000004 , ITEM_FLAG4_ACTIVATE_ON_EQUIP_EFFECTS_WHEN_TRANSMOGRIFIED = 0x00000008 ,
  ITEM_FLAG4_ENFORCE_TRANSMOG_WITH_CHILD_ITEM = 0x00000010 , ITEM_FLAG4_SCRAPABLE = 0x00000020 , ITEM_FLAG4_BYPASS_REP_REQUIREMENTS_FOR_TRANSMOG = 0x00000040 , ITEM_FLAG4_DISPLAY_ONLY_ON_DEFINED_RACES = 0x00000080 ,
  ITEM_FLAG4_REGULATED_COMMODITY = 0x00000100 , ITEM_FLAG4_CREATE_LOOT_IMMEDIATELY = 0x00000200 , ITEM_FLAG4_GENERATE_LOOT_SPEC_ITEM = 0x00000400 , ITEM_FLAG4_HIDDEN_IN_REWARD_SUMMARIES = 0x00000800 ,
  ITEM_FLAG4_DISALLOW_WHILE_LEVEL_LINKED = 0x00001000 , ITEM_FLAG4_DISALLOW_ENCHANT = 0x00002000 , ITEM_FLAG4_SQUISH_USING_ITEM_LEVEL_AS_PLAYER_LEVEL = 0x00004000 , ITEM_FLAG4_ALWAYS_SHOW_SELL_PRICE_IN_TOOLTIP = 0x00008000 ,
  ITEM_FLAG4_COSMETIC_ITEM = 0x00010000 , ITEM_FLAG4_NO_SPELL_EFFECT_TOOLTIP_PREFIXES = 0x00020000 , ITEM_FLAG4_IGNORE_COSMETIC_COLLECTION_BEHAVIOR = 0x00040000 , ITEM_FLAG4_NPC_ONLY = 0x00080000 ,
  ITEM_FLAG4_NOT_RESTORABLE = 0x00100000 , ITEM_FLAG4_DONT_DISPLAY_AS_CRAFTING_REAGENT = 0x00200000 , ITEM_FLAG4_DISPLAY_REAGENT_QUALITY_AS_CRAFTED_QUALITY = 0x00400000 , ITEM_FLAG4_NO_SALVAGE = 0x00800000 ,
  ITEM_FLAG4_RECRAFTABLE = 0x01000000 , ITEM_FLAG4_CC_TRINKET = 0x02000000 , ITEM_FLAG4_KEEP_THROUGH_FACTION_CHANGE = 0x04000000 , ITEM_FLAG4_NOT_MULTICRAFTABLE = 0x08000000 ,
  ITEM_FLAG4_DONT_REPORT_LOOT_LOG_TO_SELF = 0x10000000
}
 
enum  ItemFlagsCustom { ITEM_FLAGS_CU_UNUSED = 0x0001 , ITEM_FLAGS_CU_IGNORE_QUEST_STATUS = 0x0002 , ITEM_FLAGS_CU_FOLLOW_LOOT_RULES = 0x0004 }
 
enum  BAG_FAMILY_MASK {
  BAG_FAMILY_MASK_NONE = 0x00000000 , BAG_FAMILY_MASK_ARROWS = 0x00000001 , BAG_FAMILY_MASK_BULLETS = 0x00000002 , BAG_FAMILY_MASK_SOUL_SHARDS = 0x00000004 ,
  BAG_FAMILY_MASK_LEATHERWORKING_SUPP = 0x00000008 , BAG_FAMILY_MASK_INSCRIPTION_SUPP = 0x00000010 , BAG_FAMILY_MASK_HERBS = 0x00000020 , BAG_FAMILY_MASK_ENCHANTING_SUPP = 0x00000040 ,
  BAG_FAMILY_MASK_ENGINEERING_SUPP = 0x00000080 , BAG_FAMILY_MASK_KEYS = 0x00000100 , BAG_FAMILY_MASK_GEMS = 0x00000200 , BAG_FAMILY_MASK_MINING_SUPP = 0x00000400 ,
  BAG_FAMILY_MASK_SOULBOUND_EQUIPMENT = 0x00000800 , BAG_FAMILY_MASK_VANITY_PETS = 0x00001000 , BAG_FAMILY_MASK_CURRENCY_TOKENS = 0x00002000 , BAG_FAMILY_MASK_QUEST_ITEMS = 0x00004000 ,
  BAG_FAMILY_MASK_FISHING_SUPP = 0x00008000 , BAG_FAMILY_MASK_COOKING_SUPP = 0x00010000
}
 
enum  SocketColor {
  SOCKET_COLOR_META = 0x000001 , SOCKET_COLOR_RED = 0x000002 , SOCKET_COLOR_YELLOW = 0x000004 , SOCKET_COLOR_BLUE = 0x000008 ,
  SOCKET_COLOR_HYDRAULIC = 0x000010 , SOCKET_COLOR_COGWHEEL = 0x000020 , SOCKET_COLOR_PRISMATIC = 0x00000E , SOCKET_COLOR_RELIC_IRON = 0x000040 ,
  SOCKET_COLOR_RELIC_BLOOD = 0x000080 , SOCKET_COLOR_RELIC_SHADOW = 0x000100 , SOCKET_COLOR_RELIC_FEL = 0x000200 , SOCKET_COLOR_RELIC_ARCANE = 0x000400 ,
  SOCKET_COLOR_RELIC_FROST = 0x000800 , SOCKET_COLOR_RELIC_FIRE = 0x001000 , SOCKET_COLOR_RELIC_WATER = 0x002000 , SOCKET_COLOR_RELIC_LIFE = 0x004000 ,
  SOCKET_COLOR_RELIC_WIND = 0x008000 , SOCKET_COLOR_RELIC_HOLY = 0x010000 , SOCKET_COLOR_PUNCHCARD_RED = 0x020000 , SOCKET_COLOR_PUNCHCARD_YELLOW = 0x040000 ,
  SOCKET_COLOR_PUNCHCARD_BLUE = 0x080000 , SOCKET_COLOR_DOMINATION = 0x100000 , SOCKET_COLOR_CYPHER = 0x200000 , SOCKET_COLOR_TINKER = 0x400000 ,
  SOCKET_COLOR_PRIMORDIAL = 0x800000
}
 
enum  InventoryType : uint8 {
  INVTYPE_NON_EQUIP = 0 , INVTYPE_HEAD = 1 , INVTYPE_NECK = 2 , INVTYPE_SHOULDERS = 3 ,
  INVTYPE_BODY = 4 , INVTYPE_CHEST = 5 , INVTYPE_WAIST = 6 , INVTYPE_LEGS = 7 ,
  INVTYPE_FEET = 8 , INVTYPE_WRISTS = 9 , INVTYPE_HANDS = 10 , INVTYPE_FINGER = 11 ,
  INVTYPE_TRINKET = 12 , INVTYPE_WEAPON = 13 , INVTYPE_SHIELD = 14 , INVTYPE_RANGED = 15 ,
  INVTYPE_CLOAK = 16 , INVTYPE_2HWEAPON = 17 , INVTYPE_BAG = 18 , INVTYPE_TABARD = 19 ,
  INVTYPE_ROBE = 20 , INVTYPE_WEAPONMAINHAND = 21 , INVTYPE_WEAPONOFFHAND = 22 , INVTYPE_HOLDABLE = 23 ,
  INVTYPE_AMMO = 24 , INVTYPE_THROWN = 25 , INVTYPE_RANGEDRIGHT = 26 , INVTYPE_QUIVER = 27 ,
  INVTYPE_RELIC = 28 , INVTYPE_PROFESSION_TOOL = 29 , INVTYPE_PROFESSION_GEAR = 30 , INVTYPE_EQUIPABLE_SPELL_OFFENSIVE = 31 ,
  INVTYPE_EQUIPABLE_SPELL_UTILITY = 32 , INVTYPE_EQUIPABLE_SPELL_DEFENSIVE = 33 , INVTYPE_EQUIPABLE_SPELL_MOBILITY = 34
}
 
enum  ItemClass : uint8 {
  ITEM_CLASS_CONSUMABLE = 0 , ITEM_CLASS_CONTAINER = 1 , ITEM_CLASS_WEAPON = 2 , ITEM_CLASS_GEM = 3 ,
  ITEM_CLASS_ARMOR = 4 , ITEM_CLASS_REAGENT = 5 , ITEM_CLASS_PROJECTILE = 6 , ITEM_CLASS_TRADE_GOODS = 7 ,
  ITEM_CLASS_ITEM_ENHANCEMENT = 8 , ITEM_CLASS_RECIPE = 9 , ITEM_CLASS_MONEY = 10 , ITEM_CLASS_QUIVER = 11 ,
  ITEM_CLASS_QUEST = 12 , ITEM_CLASS_KEY = 13 , ITEM_CLASS_PERMANENT = 14 , ITEM_CLASS_MISCELLANEOUS = 15 ,
  ITEM_CLASS_GLYPH = 16 , ITEM_CLASS_BATTLE_PETS = 17 , ITEM_CLASS_WOW_TOKEN = 18 , ITEM_CLASS_PROFESSION = 19
}
 
enum  ItemSubclassConsumable {
  ITEM_SUBCLASS_CONSUMABLE = 0 , ITEM_SUBCLASS_POTION = 1 , ITEM_SUBCLASS_ELIXIR = 2 , ITEM_SUBCLASS_FLASK = 3 ,
  ITEM_SUBCLASS_SCROLL = 4 , ITEM_SUBCLASS_FOOD_DRINK = 5 , ITEM_SUBCLASS_ITEM_ENHANCEMENT = 6 , ITEM_SUBCLASS_BANDAGE = 7 ,
  ITEM_SUBCLASS_CONSUMABLE_OTHER = 8 , ITEM_SUBCLASS_VANTUS_RUNE = 9
}
 
enum  ItemSubclassContainer {
  ITEM_SUBCLASS_CONTAINER = 0 , ITEM_SUBCLASS_SOUL_CONTAINER = 1 , ITEM_SUBCLASS_HERB_CONTAINER = 2 , ITEM_SUBCLASS_ENCHANTING_CONTAINER = 3 ,
  ITEM_SUBCLASS_ENGINEERING_CONTAINER = 4 , ITEM_SUBCLASS_GEM_CONTAINER = 5 , ITEM_SUBCLASS_MINING_CONTAINER = 6 , ITEM_SUBCLASS_LEATHERWORKING_CONTAINER = 7 ,
  ITEM_SUBCLASS_INSCRIPTION_CONTAINER = 8 , ITEM_SUBCLASS_TACKLE_CONTAINER = 9 , ITEM_SUBCLASS_COOKING_CONTAINER = 10 , ITEM_SUBCLASS_REAGENT_CONTAINER = 11
}
 
enum  ItemSubclassWeapon {
  ITEM_SUBCLASS_WEAPON_AXE = 0 , ITEM_SUBCLASS_WEAPON_AXE2 = 1 , ITEM_SUBCLASS_WEAPON_BOW = 2 , ITEM_SUBCLASS_WEAPON_GUN = 3 ,
  ITEM_SUBCLASS_WEAPON_MACE = 4 , ITEM_SUBCLASS_WEAPON_MACE2 = 5 , ITEM_SUBCLASS_WEAPON_POLEARM = 6 , ITEM_SUBCLASS_WEAPON_SWORD = 7 ,
  ITEM_SUBCLASS_WEAPON_SWORD2 = 8 , ITEM_SUBCLASS_WEAPON_WARGLAIVES = 9 , ITEM_SUBCLASS_WEAPON_STAFF = 10 , ITEM_SUBCLASS_WEAPON_EXOTIC = 11 ,
  ITEM_SUBCLASS_WEAPON_EXOTIC2 = 12 , ITEM_SUBCLASS_WEAPON_FIST_WEAPON = 13 , ITEM_SUBCLASS_WEAPON_MISCELLANEOUS = 14 , ITEM_SUBCLASS_WEAPON_DAGGER = 15 ,
  ITEM_SUBCLASS_WEAPON_THROWN = 16 , ITEM_SUBCLASS_WEAPON_SPEAR = 17 , ITEM_SUBCLASS_WEAPON_CROSSBOW = 18 , ITEM_SUBCLASS_WEAPON_WAND = 19 ,
  ITEM_SUBCLASS_WEAPON_FISHING_POLE = 20
}
 
enum  ItemSubclassGem {
  ITEM_SUBCLASS_GEM_INTELLECT = 0 , ITEM_SUBCLASS_GEM_AGILITY = 1 , ITEM_SUBCLASS_GEM_STRENGTH = 2 , ITEM_SUBCLASS_GEM_STAMINA = 3 ,
  ITEM_SUBCLASS_GEM_SPIRIT = 4 , ITEM_SUBCLASS_GEM_CRITICAL_STRIKE = 5 , ITEM_SUBCLASS_GEM_MASTERY = 6 , ITEM_SUBCLASS_GEM_HASTE = 7 ,
  ITEM_SUBCLASS_GEM_VERSATILITY = 8 , ITEM_SUBCLASS_GEM_OTHER = 9 , ITEM_SUBCLASS_GEM_MULTIPLE_STATS = 10 , ITEM_SUBCLASS_GEM_ARTIFACT_RELIC = 11
}
 
enum  ItemSubclassArmor {
  ITEM_SUBCLASS_ARMOR_MISCELLANEOUS = 0 , ITEM_SUBCLASS_ARMOR_CLOTH = 1 , ITEM_SUBCLASS_ARMOR_LEATHER = 2 , ITEM_SUBCLASS_ARMOR_MAIL = 3 ,
  ITEM_SUBCLASS_ARMOR_PLATE = 4 , ITEM_SUBCLASS_ARMOR_COSMETIC = 5 , ITEM_SUBCLASS_ARMOR_SHIELD = 6 , ITEM_SUBCLASS_ARMOR_LIBRAM = 7 ,
  ITEM_SUBCLASS_ARMOR_IDOL = 8 , ITEM_SUBCLASS_ARMOR_TOTEM = 9 , ITEM_SUBCLASS_ARMOR_SIGIL = 10 , ITEM_SUBCLASS_ARMOR_RELIC = 11
}
 
enum  ItemSubclassReagent { ITEM_SUBCLASS_REAGENT = 0 , ITEM_SUBCLASS_KEYSTONE = 1 , ITEM_SUBCLASS_CONTEXT_TOKEN = 2 }
 
enum  ItemSubclassProjectile {
  ITEM_SUBCLASS_WAND = 0 , ITEM_SUBCLASS_BOLT = 1 , ITEM_SUBCLASS_ARROW = 2 , ITEM_SUBCLASS_BULLET = 3 ,
  ITEM_SUBCLASS_THROWN = 4
}
 
enum  ItemSubclassTradeGoods {
  ITEM_SUBCLASS_TRADE_GOODS = 0 , ITEM_SUBCLASS_PARTS = 1 , ITEM_SUBCLASS_EXPLOSIVES = 2 , ITEM_SUBCLASS_DEVICES = 3 ,
  ITEM_SUBCLASS_JEWELCRAFTING = 4 , ITEM_SUBCLASS_CLOTH = 5 , ITEM_SUBCLASS_LEATHER = 6 , ITEM_SUBCLASS_METAL_STONE = 7 ,
  ITEM_SUBCLASS_MEAT = 8 , ITEM_SUBCLASS_HERB = 9 , ITEM_SUBCLASS_ELEMENTAL = 10 , ITEM_SUBCLASS_TRADE_GOODS_OTHER = 11 ,
  ITEM_SUBCLASS_ENCHANTING = 12 , ITEM_SUBCLASS_MATERIAL = 13 , ITEM_SUBCLASS_ENCHANTMENT = 14 , ITEM_SUBCLASS_WEAPON_ENCHANTMENT = 15 ,
  ITEM_SUBCLASS_INSCRIPTION = 16 , ITEM_SUBCLASS_EXPLOSIVES_DEVICES = 17 , ITEM_SUBCLASS_OPTIONAL_REAGENT = 18 , ITEM_SUBCLASS_FINISHING_REAGENT = 19
}
 
enum  ItemSubclassItemEnhancement {
  ITEM_SUBCLASS_ITEM_ENHANCEMENT_HEAD = 0 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_NECK = 1 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_SHOULDER = 2 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_CLOAK = 3 ,
  ITEM_SUBCLASS_ITEM_ENHANCEMENT_CHEST = 4 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_WRIST = 5 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_HANDS = 6 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_WAIST = 7 ,
  ITEM_SUBCLASS_ITEM_ENHANCEMENT_LEGS = 8 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_FEET = 9 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_FINGER = 10 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_WEAPON = 11 ,
  ITEM_SUBCLASS_ITEM_ENHANCEMENT_TWO_HANDED_WEAPON = 12 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_SHIELD_OFF_HAND = 13 , ITEM_SUBCLASS_ITEM_ENHANCEMENT_MISC = 14
}
 
enum  ItemSubclassRecipe {
  ITEM_SUBCLASS_BOOK = 0 , ITEM_SUBCLASS_LEATHERWORKING_PATTERN = 1 , ITEM_SUBCLASS_TAILORING_PATTERN = 2 , ITEM_SUBCLASS_ENGINEERING_SCHEMATIC = 3 ,
  ITEM_SUBCLASS_BLACKSMITHING = 4 , ITEM_SUBCLASS_COOKING_RECIPE = 5 , ITEM_SUBCLASS_ALCHEMY_RECIPE = 6 , ITEM_SUBCLASS_FIRST_AID_MANUAL = 7 ,
  ITEM_SUBCLASS_ENCHANTING_FORMULA = 8 , ITEM_SUBCLASS_FISHING_MANUAL = 9 , ITEM_SUBCLASS_JEWELCRAFTING_RECIPE = 10 , ITEM_SUBCLASS_INSCRIPTION_TECHNIQUE = 11
}
 
enum  ItemSubclassMoney { ITEM_SUBCLASS_MONEY = 0 }
 
enum  ItemSubclassQuiver { ITEM_SUBCLASS_QUIVER0 = 0 , ITEM_SUBCLASS_QUIVER1 = 1 , ITEM_SUBCLASS_QUIVER = 2 , ITEM_SUBCLASS_AMMO_POUCH = 3 }
 
enum  ItemSubclassQuest { ITEM_SUBCLASS_QUEST = 0 , ITEM_SUBCLASS_QUEST_UNK3 = 3 , ITEM_SUBCLASS_QUEST_UNK8 = 8 }
 
enum  ItemSubclassKey { ITEM_SUBCLASS_KEY = 0 , ITEM_SUBCLASS_LOCKPICK = 1 }
 
enum  ItemSubclassPermanent { ITEM_SUBCLASS_PERMANENT = 0 }
 
enum  ItemSubclassJunk {
  ITEM_SUBCLASS_MISCELLANEOUS_JUNK = 0 , ITEM_SUBCLASS_MISCELLANEOUS_REAGENT = 1 , ITEM_SUBCLASS_MISCELLANEOUS_COMPANION_PET = 2 , ITEM_SUBCLASS_MISCELLANEOUS_HOLIDAY = 3 ,
  ITEM_SUBCLASS_MISCELLANEOUS_OTHER = 4 , ITEM_SUBCLASS_MISCELLANEOUS_MOUNT = 5 , ITEM_SUBCLASS_MISCELLANEOUS_MOUNT_EQUIPMENT = 6
}
 
enum  ItemSubclassGlyph {
  ITEM_SUBCLASS_GLYPH_WARRIOR = 1 , ITEM_SUBCLASS_GLYPH_PALADIN = 2 , ITEM_SUBCLASS_GLYPH_HUNTER = 3 , ITEM_SUBCLASS_GLYPH_ROGUE = 4 ,
  ITEM_SUBCLASS_GLYPH_PRIEST = 5 , ITEM_SUBCLASS_GLYPH_DEATH_KNIGHT = 6 , ITEM_SUBCLASS_GLYPH_SHAMAN = 7 , ITEM_SUBCLASS_GLYPH_MAGE = 8 ,
  ITEM_SUBCLASS_GLYPH_WARLOCK = 9 , ITEM_SUBCLASS_GLYPH_MONK = 10 , ITEM_SUBCLASS_GLYPH_DRUID = 11 , ITEM_SUBCLASS_GLYPH_DEMON_HUNTER = 12
}
 
enum  ItemSubclassBattlePet { ITEM_SUBCLASS_BATTLE_PET = 0 }
 
enum  ItemSubclassWowToken { ITEM_SUBCLASS_WOW_TOKEN = 0 }
 
enum  ItemSubclassProfession {
  ITEM_SUBCLASS_PROFESSION_BLACKSMITHING = 0 , ITEM_SUBCLASS_PROFESSION_LEATHERWORKING = 1 , ITEM_SUBCLASS_PROFESSION_ALCHEMY = 2 , ITEM_SUBCLASS_PROFESSION_HERBALISM = 3 ,
  ITEM_SUBCLASS_PROFESSION_COOKING = 4 , ITEM_SUBCLASS_PROFESSION_MINING = 5 , ITEM_SUBCLASS_PROFESSION_TAILORING = 6 , ITEM_SUBCLASS_PROFESSION_ENGINEERING = 7 ,
  ITEM_SUBCLASS_PROFESSION_ENCHANTING = 8 , ITEM_SUBCLASS_PROFESSION_FISHING = 9 , ITEM_SUBCLASS_PROFESSION_SKINNING = 10 , ITEM_SUBCLASS_PROFESSION_JEWELCRAFTING = 11 ,
  ITEM_SUBCLASS_PROFESSION_INSCRIPTION = 12 , ITEM_SUBCLASS_PROFESSION_ARCHAEOLOGY = 13
}
 
enum  ItemLevelConstants : uint32 { MIN_ITEM_LEVEL = 1 , MAX_ITEM_LEVEL = 1300 }
 

Functions

 DEFINE_ENUM_FLAG (ItemFieldFlags)
 
 DEFINE_ENUM_FLAG (ItemFieldFlags2)
 

Variables

int32 const SocketColorToGemTypeMask [26]
 
const uint32 MaxItemSubclassValues [MAX_ITEM_CLASS]
 

Macro Definition Documentation

◆ ITEM_SUBCLASS_MASK_WEAPON_RANGED

#define ITEM_SUBCLASS_MASK_WEAPON_RANGED
Value:
(\
@ ITEM_SUBCLASS_WEAPON_CROSSBOW
Definition: ItemTemplate.h:498
@ ITEM_SUBCLASS_WEAPON_GUN
Definition: ItemTemplate.h:483
@ ITEM_SUBCLASS_WEAPON_BOW
Definition: ItemTemplate.h:482

Definition at line 503 of file ItemTemplate.h.

◆ MAX_BIND_TYPE

#define MAX_BIND_TYPE   5

Definition at line 123 of file ItemTemplate.h.

◆ MAX_INVTYPE

#define MAX_INVTYPE   35

Definition at line 416 of file ItemTemplate.h.

◆ MAX_ITEM_CLASS

#define MAX_ITEM_CLASS   20

Definition at line 442 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_ARMOR

#define MAX_ITEM_SUBCLASS_ARMOR   12

Definition at line 543 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_BATTLE_PET

#define MAX_ITEM_SUBCLASS_BATTLE_PET   1

Definition at line 707 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_CONSUMABLE

#define MAX_ITEM_SUBCLASS_CONSUMABLE   10

Definition at line 458 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_CONTAINER

#define MAX_ITEM_SUBCLASS_CONTAINER   12

Definition at line 476 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_GEM

#define MAX_ITEM_SUBCLASS_GEM   12

Definition at line 525 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_GLYPH

#define MAX_ITEM_SUBCLASS_GLYPH   13

Definition at line 700 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_ITEM_ENHANCEMENT

#define MAX_ITEM_SUBCLASS_ITEM_ENHANCEMENT   15

Definition at line 610 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_KEY

#define MAX_ITEM_SUBCLASS_KEY   2

Definition at line 662 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_MISCELLANEOUS

#define MAX_ITEM_SUBCLASS_MISCELLANEOUS   7

Definition at line 682 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_MONEY

#define MAX_ITEM_SUBCLASS_MONEY   1

Definition at line 635 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_PERMANENT

#define MAX_ITEM_SUBCLASS_PERMANENT   1

Definition at line 669 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_PROFESSION

#define MAX_ITEM_SUBCLASS_PROFESSION   14

Definition at line 734 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_PROJECTILE

#define MAX_ITEM_SUBCLASS_PROJECTILE   5

Definition at line 563 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_QUEST

#define MAX_ITEM_SUBCLASS_QUEST   9

Definition at line 654 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_QUIVER

#define MAX_ITEM_SUBCLASS_QUIVER   4

Definition at line 645 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_REAGENT

#define MAX_ITEM_SUBCLASS_REAGENT   3

Definition at line 552 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_RECIPE

#define MAX_ITEM_SUBCLASS_RECIPE   12

Definition at line 628 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_TOTAL

#define MAX_ITEM_SUBCLASS_TOTAL   21

Definition at line 760 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_TRADE_GOODS

#define MAX_ITEM_SUBCLASS_TRADE_GOODS   20

Definition at line 589 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_WEAPON

#define MAX_ITEM_SUBCLASS_WEAPON   21

Definition at line 507 of file ItemTemplate.h.

◆ MAX_ITEM_SUBCLASS_WOW_TOKEN

#define MAX_ITEM_SUBCLASS_WOW_TOKEN   1

Definition at line 714 of file ItemTemplate.h.

◆ SOCKET_COLOR_STANDARD

#define SOCKET_COLOR_STANDARD   (SOCKET_COLOR_RED | SOCKET_COLOR_YELLOW | SOCKET_COLOR_BLUE)

Definition at line 375 of file ItemTemplate.h.

Enumeration Type Documentation

◆ BAG_FAMILY_MASK

Enumerator
BAG_FAMILY_MASK_NONE 
BAG_FAMILY_MASK_ARROWS 
BAG_FAMILY_MASK_BULLETS 
BAG_FAMILY_MASK_SOUL_SHARDS 
BAG_FAMILY_MASK_LEATHERWORKING_SUPP 
BAG_FAMILY_MASK_INSCRIPTION_SUPP 
BAG_FAMILY_MASK_HERBS 
BAG_FAMILY_MASK_ENCHANTING_SUPP 
BAG_FAMILY_MASK_ENGINEERING_SUPP 
BAG_FAMILY_MASK_KEYS 
BAG_FAMILY_MASK_GEMS 
BAG_FAMILY_MASK_MINING_SUPP 
BAG_FAMILY_MASK_SOULBOUND_EQUIPMENT 
BAG_FAMILY_MASK_VANITY_PETS 
BAG_FAMILY_MASK_CURRENCY_TOKENS 
BAG_FAMILY_MASK_QUEST_ITEMS 
BAG_FAMILY_MASK_FISHING_SUPP 
BAG_FAMILY_MASK_COOKING_SUPP 

Definition at line 322 of file ItemTemplate.h.

◆ InventoryType

Enumerator
INVTYPE_NON_EQUIP 
INVTYPE_HEAD 
INVTYPE_NECK 
INVTYPE_SHOULDERS 
INVTYPE_BODY 
INVTYPE_CHEST 
INVTYPE_WAIST 
INVTYPE_LEGS 
INVTYPE_FEET 
INVTYPE_WRISTS 
INVTYPE_HANDS 
INVTYPE_FINGER 
INVTYPE_TRINKET 
INVTYPE_WEAPON 
INVTYPE_SHIELD 
INVTYPE_RANGED 
INVTYPE_CLOAK 
INVTYPE_2HWEAPON 
INVTYPE_BAG 
INVTYPE_TABARD 
INVTYPE_ROBE 
INVTYPE_WEAPONMAINHAND 
INVTYPE_WEAPONOFFHAND 
INVTYPE_HOLDABLE 
INVTYPE_AMMO 
INVTYPE_THROWN 
INVTYPE_RANGEDRIGHT 
INVTYPE_QUIVER 
INVTYPE_RELIC 
INVTYPE_PROFESSION_TOOL 
INVTYPE_PROFESSION_GEAR 
INVTYPE_EQUIPABLE_SPELL_OFFENSIVE 
INVTYPE_EQUIPABLE_SPELL_UTILITY 
INVTYPE_EQUIPABLE_SPELL_DEFENSIVE 
INVTYPE_EQUIPABLE_SPELL_MOBILITY 

Definition at line 377 of file ItemTemplate.h.

◆ ItemBondingType

Enumerator
BIND_NONE 
BIND_ON_ACQUIRE 
BIND_ON_EQUIP 
BIND_ON_USE 
BIND_QUEST 

Definition at line 114 of file ItemTemplate.h.

◆ ItemClass

enum ItemClass : uint8
Enumerator
ITEM_CLASS_CONSUMABLE 
ITEM_CLASS_CONTAINER 
ITEM_CLASS_WEAPON 
ITEM_CLASS_GEM 
ITEM_CLASS_ARMOR 
ITEM_CLASS_REAGENT 
ITEM_CLASS_PROJECTILE 
ITEM_CLASS_TRADE_GOODS 
ITEM_CLASS_ITEM_ENHANCEMENT 
ITEM_CLASS_RECIPE 
ITEM_CLASS_MONEY 
ITEM_CLASS_QUIVER 
ITEM_CLASS_QUEST 
ITEM_CLASS_KEY 
ITEM_CLASS_PERMANENT 
ITEM_CLASS_MISCELLANEOUS 
ITEM_CLASS_GLYPH 
ITEM_CLASS_BATTLE_PETS 
ITEM_CLASS_WOW_TOKEN 
ITEM_CLASS_PROFESSION 

Definition at line 418 of file ItemTemplate.h.

◆ ItemFieldFlags

Enumerator
ITEM_FIELD_FLAG_SOULBOUND 
ITEM_FIELD_FLAG_TRANSLATED 
ITEM_FIELD_FLAG_UNLOCKED 
ITEM_FIELD_FLAG_WRAPPED 
ITEM_FIELD_FLAG_UNK2 
ITEM_FIELD_FLAG_UNK3 
ITEM_FIELD_FLAG_UNK4 
ITEM_FIELD_FLAG_UNK5 
ITEM_FIELD_FLAG_BOP_TRADEABLE 
ITEM_FIELD_FLAG_READABLE 
ITEM_FIELD_FLAG_UNK6 
ITEM_FIELD_FLAG_UNK7 
ITEM_FIELD_FLAG_REFUNDABLE 
ITEM_FIELD_FLAG_UNK8 
ITEM_FIELD_FLAG_UNK9 
ITEM_FIELD_FLAG_UNK10 
ITEM_FIELD_FLAG_UNK11 
ITEM_FIELD_FLAG_UNK12 
ITEM_FIELD_FLAG_UNK13 
ITEM_FIELD_FLAG_CHILD 
ITEM_FIELD_FLAG_UNK15 
ITEM_FIELD_FLAG_NEW_ITEM 
ITEM_FIELD_FLAG_AZERITE_EMPOWERED_ITEM_VIEWED 
ITEM_FIELD_FLAG_UNK18 
ITEM_FIELD_FLAG_UNK19 
ITEM_FIELD_FLAG_UNK20 
ITEM_FIELD_FLAG_UNK21 
ITEM_FIELD_FLAG_UNK22 
ITEM_FIELD_FLAG_UNK23 
ITEM_FIELD_FLAG_UNK24 
ITEM_FIELD_FLAG_UNK25 
ITEM_FIELD_FLAG_UNK26 

Definition at line 129 of file ItemTemplate.h.

◆ ItemFieldFlags2

Enumerator
ITEM_FIELD_FLAG2_EQUIPPED 

Definition at line 167 of file ItemTemplate.h.

◆ ItemFlags

enum ItemFlags : uint32
Enumerator
ITEM_FLAG_NO_PICKUP 
ITEM_FLAG_CONJURED 
ITEM_FLAG_HAS_LOOT 
ITEM_FLAG_HEROIC_TOOLTIP 
ITEM_FLAG_DEPRECATED 
ITEM_FLAG_NO_USER_DESTROY 
ITEM_FLAG_PLAYERCAST 
ITEM_FLAG_NO_EQUIP_COOLDOWN 
ITEM_FLAG_LEGACY 
ITEM_FLAG_IS_WRAPPER 
ITEM_FLAG_USES_RESOURCES 
ITEM_FLAG_MULTI_DROP 
ITEM_FLAG_ITEM_PURCHASE_RECORD 
ITEM_FLAG_PETITION 
ITEM_FLAG_HAS_TEXT 
ITEM_FLAG_NO_DISENCHANT 
ITEM_FLAG_REAL_DURATION 
ITEM_FLAG_NO_CREATOR 
ITEM_FLAG_IS_PROSPECTABLE 
ITEM_FLAG_UNIQUE_EQUIPPABLE 
ITEM_FLAG_DISABLE_AUTO_QUOTES 
ITEM_FLAG_IGNORE_DEFAULT_ARENA_RESTRICTIONS 
ITEM_FLAG_NO_DURABILITY_LOSS 
ITEM_FLAG_USE_WHEN_SHAPESHIFTED 
ITEM_FLAG_HAS_QUEST_GLOW 
ITEM_FLAG_HIDE_UNUSABLE_RECIPE 
ITEM_FLAG_NOT_USEABLE_IN_ARENA 
ITEM_FLAG_IS_BOUND_TO_ACCOUNT 
ITEM_FLAG_NO_REAGENT_COST 
ITEM_FLAG_IS_MILLABLE 
ITEM_FLAG_REPORT_TO_GUILD_CHAT 
ITEM_FLAG_NO_PROGRESSIVE_LOOT 

Definition at line 174 of file ItemTemplate.h.

◆ ItemFlags2

Enumerator
ITEM_FLAG2_FACTION_HORDE 
ITEM_FLAG2_FACTION_ALLIANCE 
ITEM_FLAG2_DONT_IGNORE_BUY_PRICE 
ITEM_FLAG2_CLASSIFY_AS_CASTER 
ITEM_FLAG2_CLASSIFY_AS_PHYSICAL 
ITEM_FLAG2_EVERYONE_CAN_ROLL_NEED 
ITEM_FLAG2_NO_TRADE_BIND_ON_ACQUIRE 
ITEM_FLAG2_CAN_TRADE_BIND_ON_ACQUIRE 
ITEM_FLAG2_CAN_ONLY_ROLL_GREED 
ITEM_FLAG2_CASTER_WEAPON 
ITEM_FLAG2_DELETE_ON_LOGIN 
ITEM_FLAG2_INTERNAL_ITEM 
ITEM_FLAG2_NO_VENDOR_VALUE 
ITEM_FLAG2_SHOW_BEFORE_DISCOVERED 
ITEM_FLAG2_OVERRIDE_GOLD_COST 
ITEM_FLAG2_IGNORE_DEFAULT_RATED_BG_RESTRICTIONS 
ITEM_FLAG2_NOT_USABLE_IN_RATED_BG 
ITEM_FLAG2_BNET_ACCOUNT_TRADE_OK 
ITEM_FLAG2_CONFIRM_BEFORE_USE 
ITEM_FLAG2_REEVALUATE_BONDING_ON_TRANSFORM 
ITEM_FLAG2_NO_TRANSFORM_ON_CHARGE_DEPLETION 
ITEM_FLAG2_NO_ALTER_ITEM_VISUAL 
ITEM_FLAG2_NO_SOURCE_FOR_ITEM_VISUAL 
ITEM_FLAG2_IGNORE_QUALITY_FOR_ITEM_VISUAL_SOURCE 
ITEM_FLAG2_NO_DURABILITY 
ITEM_FLAG2_ROLE_TANK 
ITEM_FLAG2_ROLE_HEALER 
ITEM_FLAG2_ROLE_DAMAGE 
ITEM_FLAG2_CAN_DROP_IN_CHALLENGE_MODE 
ITEM_FLAG2_NEVER_STACK_IN_LOOT_UI 
ITEM_FLAG2_DISENCHANT_TO_LOOT_TABLE 
ITEM_FLAG2_USED_IN_A_TRADESKILL 

Definition at line 210 of file ItemTemplate.h.

◆ ItemFlags3

enum ItemFlags3
Enumerator
ITEM_FLAG3_DONT_DESTROY_ON_QUEST_ACCEPT 
ITEM_FLAG3_ITEM_CAN_BE_UPGRADED 
ITEM_FLAG3_UPGRADE_FROM_ITEM_OVERRIDES_DROP_UPGRADE 
ITEM_FLAG3_ALWAYS_FFA_IN_LOOT 
ITEM_FLAG3_HIDE_UPGRADE_LEVELS_IF_NOT_UPGRADED 
ITEM_FLAG3_UPDATE_INTERACTIONS 
ITEM_FLAG3_UPDATE_DOESNT_LEAVE_PROGRESSIVE_WIN_HISTORY 
ITEM_FLAG3_IGNORE_ITEM_HISTORY_TRACKER 
ITEM_FLAG3_IGNORE_ITEM_LEVEL_CAP_IN_PVP 
ITEM_FLAG3_DISPLAY_AS_HEIRLOOM 
ITEM_FLAG3_SKIP_USE_CHECK_ON_PICKUP 
ITEM_FLAG3_OBSOLETE 
ITEM_FLAG3_DONT_DISPLAY_IN_GUILD_NEWS 
ITEM_FLAG3_PVP_TOURNAMENT_GEAR 
ITEM_FLAG3_REQUIRES_STACK_CHANGE_LOG 
ITEM_FLAG3_UNUSED_FLAG 
ITEM_FLAG3_HIDE_NAME_SUFFIX 
ITEM_FLAG3_PUSH_LOOT 
ITEM_FLAG3_DONT_REPORT_LOOT_LOG_TO_PARTY 
ITEM_FLAG3_ALWAYS_ALLOW_DUAL_WIELD 
ITEM_FLAG3_OBLITERATABLE 
ITEM_FLAG3_ACTS_AS_TRANSMOG_HIDDEN_VISUAL_OPTION 
ITEM_FLAG3_EXPIRE_ON_WEEKLY_RESET 
ITEM_FLAG3_DOESNT_SHOW_UP_IN_TRANSMOG_UNTIL_COLLECTED 
ITEM_FLAG3_CAN_STORE_ENCHANTS 
ITEM_FLAG3_HIDE_QUEST_ITEM_FROM_OBJECT_TOOLTIP 
ITEM_FLAG3_DO_NOT_TOAST 
ITEM_FLAG3_IGNORE_CREATION_CONTEXT_FOR_PROGRESSIVE_WIN_HISTORY 
ITEM_FLAG3_FORCE_ALL_SPECS_FOR_ITEM_HISTORY 
ITEM_FLAG3_SAVE_ON_CONSUME 
ITEM_FLAG3_CONTAINER_SAVES_PLAYER_DATA 
ITEM_FLAG3_NO_VOID_STORAGE 

Definition at line 246 of file ItemTemplate.h.

◆ ItemFlags4

enum ItemFlags4
Enumerator
ITEM_FLAG4_HANDLE_ON_USE_EFFECT_IMMEDIATELY 
ITEM_FLAG4_ALWAYS_SHOW_ITEM_LEVEL_IN_TOOLTIP 
ITEM_FLAG4_SHOWS_GENERATION_WITH_RANDOM_STATS 
ITEM_FLAG4_ACTIVATE_ON_EQUIP_EFFECTS_WHEN_TRANSMOGRIFIED 
ITEM_FLAG4_ENFORCE_TRANSMOG_WITH_CHILD_ITEM 
ITEM_FLAG4_SCRAPABLE 
ITEM_FLAG4_BYPASS_REP_REQUIREMENTS_FOR_TRANSMOG 
ITEM_FLAG4_DISPLAY_ONLY_ON_DEFINED_RACES 
ITEM_FLAG4_REGULATED_COMMODITY 
ITEM_FLAG4_CREATE_LOOT_IMMEDIATELY 
ITEM_FLAG4_GENERATE_LOOT_SPEC_ITEM 
ITEM_FLAG4_HIDDEN_IN_REWARD_SUMMARIES 
ITEM_FLAG4_DISALLOW_WHILE_LEVEL_LINKED 
ITEM_FLAG4_DISALLOW_ENCHANT 
ITEM_FLAG4_SQUISH_USING_ITEM_LEVEL_AS_PLAYER_LEVEL 
ITEM_FLAG4_ALWAYS_SHOW_SELL_PRICE_IN_TOOLTIP 
ITEM_FLAG4_COSMETIC_ITEM 
ITEM_FLAG4_NO_SPELL_EFFECT_TOOLTIP_PREFIXES 
ITEM_FLAG4_IGNORE_COSMETIC_COLLECTION_BEHAVIOR 
ITEM_FLAG4_NPC_ONLY 
ITEM_FLAG4_NOT_RESTORABLE 
ITEM_FLAG4_DONT_DISPLAY_AS_CRAFTING_REAGENT 
ITEM_FLAG4_DISPLAY_REAGENT_QUALITY_AS_CRAFTED_QUALITY 
ITEM_FLAG4_NO_SALVAGE 
ITEM_FLAG4_RECRAFTABLE 
ITEM_FLAG4_CC_TRINKET 
ITEM_FLAG4_KEEP_THROUGH_FACTION_CHANGE 
ITEM_FLAG4_NOT_MULTICRAFTABLE 
ITEM_FLAG4_DONT_REPORT_LOOT_LOG_TO_SELF 

Definition at line 282 of file ItemTemplate.h.

◆ ItemFlagsCustom

Enumerator
ITEM_FLAGS_CU_UNUSED 
ITEM_FLAGS_CU_IGNORE_QUEST_STATUS 
ITEM_FLAGS_CU_FOLLOW_LOOT_RULES 

Definition at line 315 of file ItemTemplate.h.

◆ ItemLevelConstants

Enumerator
MIN_ITEM_LEVEL 
MAX_ITEM_LEVEL 

Definition at line 762 of file ItemTemplate.h.

◆ ItemModType

Enumerator
ITEM_MOD_MANA 
ITEM_MOD_HEALTH 
ITEM_MOD_AGILITY 
ITEM_MOD_STRENGTH 
ITEM_MOD_INTELLECT 
ITEM_MOD_SPIRIT 
ITEM_MOD_STAMINA 
ITEM_MOD_DEFENSE_SKILL_RATING 
ITEM_MOD_DODGE_RATING 
ITEM_MOD_PARRY_RATING 
ITEM_MOD_BLOCK_RATING 
ITEM_MOD_HIT_MELEE_RATING 
ITEM_MOD_HIT_RANGED_RATING 
ITEM_MOD_HIT_SPELL_RATING 
ITEM_MOD_CRIT_MELEE_RATING 
ITEM_MOD_CRIT_RANGED_RATING 
ITEM_MOD_CRIT_SPELL_RATING 
ITEM_MOD_CORRUPTION 
ITEM_MOD_CORRUPTION_RESISTANCE 
ITEM_MOD_MODIFIED_CRAFTING_STAT_1 
ITEM_MOD_MODIFIED_CRAFTING_STAT_2 
ITEM_MOD_CRIT_TAKEN_RANGED_RATING 
ITEM_MOD_CRIT_TAKEN_SPELL_RATING 
ITEM_MOD_HASTE_MELEE_RATING 
ITEM_MOD_HASTE_RANGED_RATING 
ITEM_MOD_HASTE_SPELL_RATING 
ITEM_MOD_HIT_RATING 
ITEM_MOD_CRIT_RATING 
ITEM_MOD_HIT_TAKEN_RATING 
ITEM_MOD_CRIT_TAKEN_RATING 
ITEM_MOD_RESILIENCE_RATING 
ITEM_MOD_HASTE_RATING 
ITEM_MOD_EXPERTISE_RATING 
ITEM_MOD_ATTACK_POWER 
ITEM_MOD_RANGED_ATTACK_POWER 
ITEM_MOD_VERSATILITY 
ITEM_MOD_SPELL_HEALING_DONE 
ITEM_MOD_SPELL_DAMAGE_DONE 
ITEM_MOD_MANA_REGENERATION 
ITEM_MOD_ARMOR_PENETRATION_RATING 
ITEM_MOD_SPELL_POWER 
ITEM_MOD_HEALTH_REGEN 
ITEM_MOD_SPELL_PENETRATION 
ITEM_MOD_BLOCK_VALUE 
ITEM_MOD_MASTERY_RATING 
ITEM_MOD_EXTRA_ARMOR 
ITEM_MOD_FIRE_RESISTANCE 
ITEM_MOD_FROST_RESISTANCE 
ITEM_MOD_HOLY_RESISTANCE 
ITEM_MOD_SHADOW_RESISTANCE 
ITEM_MOD_NATURE_RESISTANCE 
ITEM_MOD_ARCANE_RESISTANCE 
ITEM_MOD_PVP_POWER 
ITEM_MOD_CR_UNUSED_0 
ITEM_MOD_CR_UNUSED_1 
ITEM_MOD_CR_UNUSED_3 
ITEM_MOD_CR_SPEED 
ITEM_MOD_CR_LIFESTEAL 
ITEM_MOD_CR_AVOIDANCE 
ITEM_MOD_CR_STURDINESS 
ITEM_MOD_CR_UNUSED_7 
ITEM_MOD_CR_UNUSED_27 
ITEM_MOD_CR_UNUSED_9 
ITEM_MOD_CR_UNUSED_10 
ITEM_MOD_CR_UNUSED_11 
ITEM_MOD_CR_UNUSED_12 
ITEM_MOD_AGI_STR_INT 
ITEM_MOD_AGI_STR 
ITEM_MOD_AGI_INT 
ITEM_MOD_STR_INT 

Definition at line 28 of file ItemTemplate.h.

◆ ItemSpelltriggerType

Enumerator
ITEM_SPELLTRIGGER_ON_USE 
ITEM_SPELLTRIGGER_ON_EQUIP 
ITEM_SPELLTRIGGER_ON_PROC 
ITEM_SPELLTRIGGER_SUMMONED_BY_SPELL 
ITEM_SPELLTRIGGER_ON_DEATH 
ITEM_SPELLTRIGGER_ON_PICKUP 
ITEM_SPELLTRIGGER_ON_LEARN 
ITEM_SPELLTRIGGER_ON_LOOTED 

Definition at line 102 of file ItemTemplate.h.

◆ ItemSubclassArmor

Enumerator
ITEM_SUBCLASS_ARMOR_MISCELLANEOUS 
ITEM_SUBCLASS_ARMOR_CLOTH 
ITEM_SUBCLASS_ARMOR_LEATHER 
ITEM_SUBCLASS_ARMOR_MAIL 
ITEM_SUBCLASS_ARMOR_PLATE 
ITEM_SUBCLASS_ARMOR_COSMETIC 
ITEM_SUBCLASS_ARMOR_SHIELD 
ITEM_SUBCLASS_ARMOR_LIBRAM 
ITEM_SUBCLASS_ARMOR_IDOL 
ITEM_SUBCLASS_ARMOR_TOTEM 
ITEM_SUBCLASS_ARMOR_SIGIL 
ITEM_SUBCLASS_ARMOR_RELIC 

Definition at line 527 of file ItemTemplate.h.

◆ ItemSubclassBattlePet

Enumerator
ITEM_SUBCLASS_BATTLE_PET 

Definition at line 702 of file ItemTemplate.h.

◆ ItemSubclassConsumable

Enumerator
ITEM_SUBCLASS_CONSUMABLE 
ITEM_SUBCLASS_POTION 
ITEM_SUBCLASS_ELIXIR 
ITEM_SUBCLASS_FLASK 
ITEM_SUBCLASS_SCROLL 
ITEM_SUBCLASS_FOOD_DRINK 
ITEM_SUBCLASS_ITEM_ENHANCEMENT 
ITEM_SUBCLASS_BANDAGE 
ITEM_SUBCLASS_CONSUMABLE_OTHER 
ITEM_SUBCLASS_VANTUS_RUNE 

Definition at line 444 of file ItemTemplate.h.

◆ ItemSubclassContainer

Enumerator
ITEM_SUBCLASS_CONTAINER 
ITEM_SUBCLASS_SOUL_CONTAINER 
ITEM_SUBCLASS_HERB_CONTAINER 
ITEM_SUBCLASS_ENCHANTING_CONTAINER 
ITEM_SUBCLASS_ENGINEERING_CONTAINER 
ITEM_SUBCLASS_GEM_CONTAINER 
ITEM_SUBCLASS_MINING_CONTAINER 
ITEM_SUBCLASS_LEATHERWORKING_CONTAINER 
ITEM_SUBCLASS_INSCRIPTION_CONTAINER 
ITEM_SUBCLASS_TACKLE_CONTAINER 
ITEM_SUBCLASS_COOKING_CONTAINER 
ITEM_SUBCLASS_REAGENT_CONTAINER 

Definition at line 460 of file ItemTemplate.h.

◆ ItemSubclassGem

Enumerator
ITEM_SUBCLASS_GEM_INTELLECT 
ITEM_SUBCLASS_GEM_AGILITY 
ITEM_SUBCLASS_GEM_STRENGTH 
ITEM_SUBCLASS_GEM_STAMINA 
ITEM_SUBCLASS_GEM_SPIRIT 
ITEM_SUBCLASS_GEM_CRITICAL_STRIKE 
ITEM_SUBCLASS_GEM_MASTERY 
ITEM_SUBCLASS_GEM_HASTE 
ITEM_SUBCLASS_GEM_VERSATILITY 
ITEM_SUBCLASS_GEM_OTHER 
ITEM_SUBCLASS_GEM_MULTIPLE_STATS 
ITEM_SUBCLASS_GEM_ARTIFACT_RELIC 

Definition at line 509 of file ItemTemplate.h.

◆ ItemSubclassGlyph

Enumerator
ITEM_SUBCLASS_GLYPH_WARRIOR 
ITEM_SUBCLASS_GLYPH_PALADIN 
ITEM_SUBCLASS_GLYPH_HUNTER 
ITEM_SUBCLASS_GLYPH_ROGUE 
ITEM_SUBCLASS_GLYPH_PRIEST 
ITEM_SUBCLASS_GLYPH_DEATH_KNIGHT 
ITEM_SUBCLASS_GLYPH_SHAMAN 
ITEM_SUBCLASS_GLYPH_MAGE 
ITEM_SUBCLASS_GLYPH_WARLOCK 
ITEM_SUBCLASS_GLYPH_MONK 
ITEM_SUBCLASS_GLYPH_DRUID 
ITEM_SUBCLASS_GLYPH_DEMON_HUNTER 

Definition at line 684 of file ItemTemplate.h.

◆ ItemSubclassItemEnhancement

Enumerator
ITEM_SUBCLASS_ITEM_ENHANCEMENT_HEAD 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_NECK 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_SHOULDER 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_CLOAK 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_CHEST 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_WRIST 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_HANDS 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_WAIST 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_LEGS 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_FEET 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_FINGER 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_WEAPON 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_TWO_HANDED_WEAPON 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_SHIELD_OFF_HAND 
ITEM_SUBCLASS_ITEM_ENHANCEMENT_MISC 

Definition at line 591 of file ItemTemplate.h.

◆ ItemSubclassJunk

Enumerator
ITEM_SUBCLASS_MISCELLANEOUS_JUNK 
ITEM_SUBCLASS_MISCELLANEOUS_REAGENT 
ITEM_SUBCLASS_MISCELLANEOUS_COMPANION_PET 
ITEM_SUBCLASS_MISCELLANEOUS_HOLIDAY 
ITEM_SUBCLASS_MISCELLANEOUS_OTHER 
ITEM_SUBCLASS_MISCELLANEOUS_MOUNT 
ITEM_SUBCLASS_MISCELLANEOUS_MOUNT_EQUIPMENT 

Definition at line 671 of file ItemTemplate.h.

◆ ItemSubclassKey

Enumerator
ITEM_SUBCLASS_KEY 
ITEM_SUBCLASS_LOCKPICK 

Definition at line 656 of file ItemTemplate.h.

◆ ItemSubclassMoney

Enumerator
ITEM_SUBCLASS_MONEY 

Definition at line 630 of file ItemTemplate.h.

◆ ItemSubclassPermanent

Enumerator
ITEM_SUBCLASS_PERMANENT 

Definition at line 664 of file ItemTemplate.h.

◆ ItemSubclassProfession

Enumerator
ITEM_SUBCLASS_PROFESSION_BLACKSMITHING 
ITEM_SUBCLASS_PROFESSION_LEATHERWORKING 
ITEM_SUBCLASS_PROFESSION_ALCHEMY 
ITEM_SUBCLASS_PROFESSION_HERBALISM 
ITEM_SUBCLASS_PROFESSION_COOKING 
ITEM_SUBCLASS_PROFESSION_MINING 
ITEM_SUBCLASS_PROFESSION_TAILORING 
ITEM_SUBCLASS_PROFESSION_ENGINEERING 
ITEM_SUBCLASS_PROFESSION_ENCHANTING 
ITEM_SUBCLASS_PROFESSION_FISHING 
ITEM_SUBCLASS_PROFESSION_SKINNING 
ITEM_SUBCLASS_PROFESSION_JEWELCRAFTING 
ITEM_SUBCLASS_PROFESSION_INSCRIPTION 
ITEM_SUBCLASS_PROFESSION_ARCHAEOLOGY 

Definition at line 716 of file ItemTemplate.h.

◆ ItemSubclassProjectile

Enumerator
ITEM_SUBCLASS_WAND 
ITEM_SUBCLASS_BOLT 
ITEM_SUBCLASS_ARROW 
ITEM_SUBCLASS_BULLET 
ITEM_SUBCLASS_THROWN 

Definition at line 554 of file ItemTemplate.h.

◆ ItemSubclassQuest

Enumerator
ITEM_SUBCLASS_QUEST 
ITEM_SUBCLASS_QUEST_UNK3 
ITEM_SUBCLASS_QUEST_UNK8 

Definition at line 647 of file ItemTemplate.h.

◆ ItemSubclassQuiver

Enumerator
ITEM_SUBCLASS_QUIVER0 
ITEM_SUBCLASS_QUIVER1 
ITEM_SUBCLASS_QUIVER 
ITEM_SUBCLASS_AMMO_POUCH 

Definition at line 637 of file ItemTemplate.h.

◆ ItemSubclassReagent

Enumerator
ITEM_SUBCLASS_REAGENT 
ITEM_SUBCLASS_KEYSTONE 
ITEM_SUBCLASS_CONTEXT_TOKEN 

Definition at line 545 of file ItemTemplate.h.

◆ ItemSubclassRecipe

Enumerator
ITEM_SUBCLASS_BOOK 
ITEM_SUBCLASS_LEATHERWORKING_PATTERN 
ITEM_SUBCLASS_TAILORING_PATTERN 
ITEM_SUBCLASS_ENGINEERING_SCHEMATIC 
ITEM_SUBCLASS_BLACKSMITHING 
ITEM_SUBCLASS_COOKING_RECIPE 
ITEM_SUBCLASS_ALCHEMY_RECIPE 
ITEM_SUBCLASS_FIRST_AID_MANUAL 
ITEM_SUBCLASS_ENCHANTING_FORMULA 
ITEM_SUBCLASS_FISHING_MANUAL 
ITEM_SUBCLASS_JEWELCRAFTING_RECIPE 
ITEM_SUBCLASS_INSCRIPTION_TECHNIQUE 

Definition at line 612 of file ItemTemplate.h.

◆ ItemSubclassTradeGoods

Enumerator
ITEM_SUBCLASS_TRADE_GOODS 
ITEM_SUBCLASS_PARTS 
ITEM_SUBCLASS_EXPLOSIVES 
ITEM_SUBCLASS_DEVICES 
ITEM_SUBCLASS_JEWELCRAFTING 
ITEM_SUBCLASS_CLOTH 
ITEM_SUBCLASS_LEATHER 
ITEM_SUBCLASS_METAL_STONE 
ITEM_SUBCLASS_MEAT 
ITEM_SUBCLASS_HERB 
ITEM_SUBCLASS_ELEMENTAL 
ITEM_SUBCLASS_TRADE_GOODS_OTHER 
ITEM_SUBCLASS_ENCHANTING 
ITEM_SUBCLASS_MATERIAL 
ITEM_SUBCLASS_ENCHANTMENT 
ITEM_SUBCLASS_WEAPON_ENCHANTMENT 
ITEM_SUBCLASS_INSCRIPTION 
ITEM_SUBCLASS_EXPLOSIVES_DEVICES 
ITEM_SUBCLASS_OPTIONAL_REAGENT 
ITEM_SUBCLASS_FINISHING_REAGENT 

Definition at line 565 of file ItemTemplate.h.

◆ ItemSubclassWeapon

Enumerator
ITEM_SUBCLASS_WEAPON_AXE 
ITEM_SUBCLASS_WEAPON_AXE2 
ITEM_SUBCLASS_WEAPON_BOW 
ITEM_SUBCLASS_WEAPON_GUN 
ITEM_SUBCLASS_WEAPON_MACE 
ITEM_SUBCLASS_WEAPON_MACE2 
ITEM_SUBCLASS_WEAPON_POLEARM 
ITEM_SUBCLASS_WEAPON_SWORD 
ITEM_SUBCLASS_WEAPON_SWORD2 
ITEM_SUBCLASS_WEAPON_WARGLAIVES 
ITEM_SUBCLASS_WEAPON_STAFF 
ITEM_SUBCLASS_WEAPON_EXOTIC 
ITEM_SUBCLASS_WEAPON_EXOTIC2 
ITEM_SUBCLASS_WEAPON_FIST_WEAPON 
ITEM_SUBCLASS_WEAPON_MISCELLANEOUS 
ITEM_SUBCLASS_WEAPON_DAGGER 
ITEM_SUBCLASS_WEAPON_THROWN 
ITEM_SUBCLASS_WEAPON_SPEAR 
ITEM_SUBCLASS_WEAPON_CROSSBOW 
ITEM_SUBCLASS_WEAPON_WAND 
ITEM_SUBCLASS_WEAPON_FISHING_POLE 

Definition at line 478 of file ItemTemplate.h.

◆ ItemSubclassWowToken

Enumerator
ITEM_SUBCLASS_WOW_TOKEN 

Definition at line 709 of file ItemTemplate.h.

◆ SocketColor

Enumerator
SOCKET_COLOR_META 
SOCKET_COLOR_RED 
SOCKET_COLOR_YELLOW 
SOCKET_COLOR_BLUE 
SOCKET_COLOR_HYDRAULIC 
SOCKET_COLOR_COGWHEEL 
SOCKET_COLOR_PRISMATIC 
SOCKET_COLOR_RELIC_IRON 
SOCKET_COLOR_RELIC_BLOOD 
SOCKET_COLOR_RELIC_SHADOW 
SOCKET_COLOR_RELIC_FEL 
SOCKET_COLOR_RELIC_ARCANE 
SOCKET_COLOR_RELIC_FROST 
SOCKET_COLOR_RELIC_FIRE 
SOCKET_COLOR_RELIC_WATER 
SOCKET_COLOR_RELIC_LIFE 
SOCKET_COLOR_RELIC_WIND 
SOCKET_COLOR_RELIC_HOLY 
SOCKET_COLOR_PUNCHCARD_RED 
SOCKET_COLOR_PUNCHCARD_YELLOW 
SOCKET_COLOR_PUNCHCARD_BLUE 
SOCKET_COLOR_DOMINATION 
SOCKET_COLOR_CYPHER 
SOCKET_COLOR_TINKER 
SOCKET_COLOR_PRIMORDIAL 

Definition at line 344 of file ItemTemplate.h.

Function Documentation

◆ DEFINE_ENUM_FLAG() [1/2]

DEFINE_ENUM_FLAG ( ItemFieldFlags  )

◆ DEFINE_ENUM_FLAG() [2/2]

DEFINE_ENUM_FLAG ( ItemFieldFlags2  )

Variable Documentation

◆ MaxItemSubclassValues

const uint32 MaxItemSubclassValues[MAX_ITEM_CLASS]
Initial value:
=
{
}
#define MAX_ITEM_SUBCLASS_MONEY
Definition: ItemTemplate.h:635
#define MAX_ITEM_SUBCLASS_WOW_TOKEN
Definition: ItemTemplate.h:714
#define MAX_ITEM_SUBCLASS_RECIPE
Definition: ItemTemplate.h:628
#define MAX_ITEM_SUBCLASS_KEY
Definition: ItemTemplate.h:662
#define MAX_ITEM_SUBCLASS_REAGENT
Definition: ItemTemplate.h:552
#define MAX_ITEM_SUBCLASS_MISCELLANEOUS
Definition: ItemTemplate.h:682
#define MAX_ITEM_SUBCLASS_PERMANENT
Definition: ItemTemplate.h:669
#define MAX_ITEM_SUBCLASS_ARMOR
Definition: ItemTemplate.h:543
#define MAX_ITEM_SUBCLASS_TRADE_GOODS
Definition: ItemTemplate.h:589
#define MAX_ITEM_SUBCLASS_GEM
Definition: ItemTemplate.h:525
#define MAX_ITEM_SUBCLASS_CONTAINER
Definition: ItemTemplate.h:476
#define MAX_ITEM_SUBCLASS_CONSUMABLE
Definition: ItemTemplate.h:458
#define MAX_ITEM_SUBCLASS_QUIVER
Definition: ItemTemplate.h:645
#define MAX_ITEM_SUBCLASS_BATTLE_PET
Definition: ItemTemplate.h:707
#define MAX_ITEM_SUBCLASS_PROJECTILE
Definition: ItemTemplate.h:563
#define MAX_ITEM_SUBCLASS_QUEST
Definition: ItemTemplate.h:654
#define MAX_ITEM_SUBCLASS_ITEM_ENHANCEMENT
Definition: ItemTemplate.h:610
#define MAX_ITEM_SUBCLASS_WEAPON
Definition: ItemTemplate.h:507
#define MAX_ITEM_SUBCLASS_PROFESSION
Definition: ItemTemplate.h:734
#define MAX_ITEM_SUBCLASS_GLYPH
Definition: ItemTemplate.h:700

Definition at line 736 of file ItemTemplate.h.

◆ SocketColorToGemTypeMask

int32 const SocketColorToGemTypeMask[26]
extern

Definition at line 23 of file ItemTemplate.cpp.