TrinityCore
Item Class Reference

#include <Item.h>

+ Inheritance diagram for Item:

Classes

struct  ValuesUpdateForPlayerWithMaskSender
 

Public Member Functions

ItemCloneItem (uint32 count, Player const *player=nullptr) const
 
 Item ()
 
 ~Item ()
 
virtual bool Create (ObjectGuid::LowType guidlow, uint32 itemId, ItemContext context, Player const *owner)
 
std::string GetNameForLocaleIdx (LocaleConstant locale) const override
 
ItemTemplate const * GetTemplate () const
 
BonusData const * GetBonus () const
 
ObjectGuid GetOwnerGUID () const
 
void SetOwnerGUID (ObjectGuid guid)
 
ObjectGuid GetContainedIn () const
 
void SetContainedIn (ObjectGuid guid)
 
ObjectGuid GetCreator () const
 
void SetCreator (ObjectGuid guid)
 
ObjectGuid GetGiftCreator () const
 
void SetGiftCreator (ObjectGuid guid)
 
PlayerGetOwner () const
 
void SetExpiration (uint32 expiration)
 
ItemBondingType GetBonding () const
 
void SetBinding (bool val)
 
bool HasItemFlag (ItemFieldFlags flag) const
 
void SetItemFlag (ItemFieldFlags flags)
 
void RemoveItemFlag (ItemFieldFlags flags)
 
void ReplaceAllItemFlags (ItemFieldFlags flags)
 
bool HasItemFlag2 (ItemFieldFlags2 flag) const
 
void SetItemFlag2 (ItemFieldFlags2 flags)
 
void RemoveItemFlag2 (ItemFieldFlags2 flags)
 
void ReplaceAllItemFlags2 (ItemFieldFlags2 flags)
 
bool IsSoulBound () const
 
bool IsBoundAccountWide () const
 
bool IsBattlenetAccountBound () const
 
bool IsBindedNotWith (Player const *player) const
 
bool IsBoundByEnchant () const
 
virtual void SaveToDB (CharacterDatabaseTransaction trans)
 
virtual bool LoadFromDB (ObjectGuid::LowType guid, ObjectGuid ownerGuid, Field *fields, uint32 entry)
 
void LoadArtifactData (Player const *owner, uint64 xp, uint32 artifactAppearanceId, uint32 artifactTier, std::vector< ArtifactPowerData > &powers)
 
void CheckArtifactRelicSlotUnlock (Player const *owner)
 
void AddBonuses (uint32 bonusListID)
 
std::vector< int32 > const & GetBonusListIDs () const
 
void SetBonuses (std::vector< int32 > bonusListIDs)
 
void ClearBonuses ()
 
virtual void DeleteFromDB (CharacterDatabaseTransaction trans)
 
void DeleteFromInventoryDB (CharacterDatabaseTransaction trans)
 
void SaveRefundDataToDB ()
 
void DeleteRefundDataFromDB (CharacterDatabaseTransaction *trans)
 
BagToBag ()
 
Bag const * ToBag () const
 
AzeriteItemToAzeriteItem ()
 
AzeriteItem const * ToAzeriteItem () const
 
AzeriteEmpoweredItemToAzeriteEmpoweredItem ()
 
AzeriteEmpoweredItem const * ToAzeriteEmpoweredItem () const
 
bool IsRefundable () const
 
bool IsBOPTradeable () const
 
bool IsWrapped () const
 
bool IsLocked () const
 
bool IsBag () const
 
bool IsAzeriteItem () const
 
bool IsAzeriteEmpoweredItem () const
 
bool IsCurrencyToken () const
 
bool IsNotEmptyBag () const
 
bool IsBroken () const
 
void SetDurability (uint32 durability)
 
void SetMaxDurability (uint32 maxDurability)
 
bool CanBeTraded (bool mail=false, bool trade=false) const
 
void SetInTrade (bool b=true)
 
bool IsInTrade () const
 
uint64 CalculateDurabilityRepairCost (float discount) const
 
bool HasEnchantRequiredSkill (Player const *player) const
 
uint32 GetEnchantRequiredLevel () const
 
bool IsFitToSpellRequirements (SpellInfo const *spellInfo) const
 
bool IsLimitedToAnotherMapOrZone (uint32 cur_mapId, uint32 cur_zoneId) const
 
bool GemsFitSockets () const
 
uint32 GetCount () const
 
void SetCount (uint32 value)
 
uint32 GetMaxStackCount () const
 
uint8 GetGemCountWithID (uint32 GemID) const
 
uint8 GetGemCountWithLimitCategory (uint32 limitCategory) const
 
InventoryResult CanBeMergedPartlyWith (ItemTemplate const *proto) const
 
uint8 GetSlot () const
 
BagGetContainer ()
 
uint8 GetBagSlot () const
 
void SetSlot (uint8 slot)
 
uint16 GetPos () const
 
void SetContainer (Bag *container)
 
bool IsInBag () const
 
bool IsEquipped () const
 
uint32 GetSkill ()
 
ItemRandomBonusListId GetItemRandomBonusListId () const
 
void SetItemRandomBonusList (ItemRandomBonusListId bonusListId)
 
void SetEnchantment (EnchantmentSlot slot, uint32 id, uint32 duration, uint32 charges, ObjectGuid caster=ObjectGuid::Empty)
 
void SetEnchantmentDuration (EnchantmentSlot slot, uint32 duration, Player *owner)
 
void SetEnchantmentCharges (EnchantmentSlot slot, uint32 charges)
 
void ClearEnchantment (EnchantmentSlot slot)
 
uint32 GetEnchantmentId (EnchantmentSlot slot) const
 
uint32 GetEnchantmentDuration (EnchantmentSlot slot) const
 
uint32 GetEnchantmentCharges (EnchantmentSlot slot) const
 
UF::SocketedGem const * GetGem (uint16 slot) const
 
void SetGem (uint16 slot, ItemDynamicFieldGems const *gem, uint32 gemScalingLevel)
 
std::string const & GetText () const
 
void SetText (std::string const &text)
 
void SendUpdateSockets ()
 
void SendTimeUpdate (Player *owner)
 
void UpdateDuration (Player *owner, uint32 diff)
 
void SetCreatePlayedTime (uint32 createPlayedTime)
 
int32 GetSpellCharges (uint8 index=0) const
 
void SetSpellCharges (uint8 index, int32 value)
 
LootGetLootForPlayer (Player const *) const override
 
ItemUpdateState GetState () const
 
void SetState (ItemUpdateState state, Player *forplayer=nullptr)
 
bool IsInUpdateQueue () const
 
uint16 GetQueuePos () const
 
void FSetState (ItemUpdateState state)
 
bool hasQuest (uint32 quest_id) const override
 
bool hasInvolvedQuest (uint32) const override
 
bool IsPotion () const
 
bool IsVellum () const
 
bool IsConjuredConsumable () const
 
bool IsRangedWeapon () const
 
uint32 GetQuality () const
 
uint32 GetItemLevel (Player const *owner) const
 
int32 GetRequiredLevel () const
 
int32 GetItemStatType (uint32 index) const
 
float GetItemStatValue (uint32 index, Player const *owner) const
 
SocketColor GetSocketColor (uint32 index) const
 
uint32 GetAppearanceModId () const
 
void SetAppearanceModId (uint32 appearanceModId)
 
uint32 GetDisplayId (Player const *owner) const
 
ItemModifiedAppearanceEntry const * GetItemModifiedAppearance () const
 
float GetRepairCostMultiplier () const
 
uint32 GetScalingContentTuningId () const
 
ItemDisenchantLootEntry const * GetDisenchantLoot (Player const *owner) const
 
void SetFixedLevel (uint8 level)
 
Trinity::IteratorPair< ItemEffectEntry const *const * > GetEffects () const
 
void SetNotRefundable (Player *owner, bool changestate=true, CharacterDatabaseTransaction *trans=nullptr, bool addToCollection=true)
 
void SetRefundRecipient (ObjectGuid const &guid)
 
void SetPaidMoney (uint64 money)
 
void SetPaidExtendedCost (uint32 iece)
 
ObjectGuid const & GetRefundRecipient () const
 
uint64 GetPaidMoney () const
 
uint32 GetPaidExtendedCost () const
 
void UpdatePlayedTime (Player *owner)
 
uint32 GetPlayedTime ()
 
bool IsRefundExpired ()
 
void SetSoulboundTradeable (GuidSet const &allowedLooters)
 
void ClearSoulboundTradeable (Player *currentOwner)
 
bool CheckSoulboundTradeExpire ()
 
void BuildUpdate (UpdateDataMapType &) override
 
void BuildValuesUpdateWithFlag (ByteBuffer *data, UF::UpdateFieldFlag flags, Player const *target) const override
 
void BuildValuesUpdateForPlayerWithMask (UpdateData *data, UF::ObjectData::Mask const &requestedObjectMask, UF::ItemData::Mask const &requestedItemMask, Player const *target) const
 
bool AddToObjectUpdate () override
 
void RemoveFromObjectUpdate () override
 
uint32 GetScriptId () const
 
bool IsValidTransmogrificationTarget () const
 
bool HasStats () const
 
uint32 GetBuyPrice (Player const *owner, bool &standardPrice) const
 
uint32 GetSellPrice (Player const *owner) const
 
uint32 GetVisibleEntry (Player const *owner) const
 
uint16 GetVisibleAppearanceModId (Player const *owner) const
 
uint32 GetVisibleModifiedAppearanceId (Player const *owner) const
 
int32 GetVisibleSecondaryModifiedAppearanceId (Player const *owner) const
 
uint32 GetVisibleEnchantmentId (Player const *owner) const
 
uint16 GetVisibleItemVisual (Player const *owner) const
 
uint32 GetModifier (ItemModifier modifier) const
 
void SetModifier (ItemModifier modifier, uint32 value)
 
ObjectGuid GetChildItem () const
 
void SetChildItem (ObjectGuid childItem)
 
bool IsArtifactDisabled () const
 
UF::ArtifactPower const * GetArtifactPower (uint32 artifactPowerId) const
 
void AddArtifactPower (ArtifactPowerData const *artifactPower)
 
void SetArtifactPower (uint16 artifactPowerId, uint8 purchasedRank, uint8 currentRankWithBonus)
 
void InitArtifactPowers (uint8 artifactId, uint8 artifactTier)
 
uint32 GetTotalUnlockedArtifactPowers () const
 
uint32 GetTotalPurchasedArtifactPowers () const
 
void ApplyArtifactPowerEnchantmentBonuses (EnchantmentSlot slot, uint32 enchantId, bool apply, Player *owner)
 
void CopyArtifactDataFromParent (Item *parent)
 
void SetArtifactXP (uint64 xp)
 
void GiveArtifactXp (uint64 amount, Item *sourceItem, uint32 artifactCategoryId)
 
ItemContext GetContext () const
 
void SetContext (ItemContext context)
 
void SetPetitionId (uint32 petitionId)
 
void SetPetitionNumSignatures (uint32 signatures)
 
std::string GetDebugInfo () const override
 
- Public Member Functions inherited from Object
virtual ~Object ()
 
bool IsInWorld () const
 
virtual void AddToWorld ()
 
virtual void RemoveFromWorld ()
 
ObjectGuid const & GetGUID () const
 
uint32 GetEntry () const
 
void SetEntry (uint32 entry)
 
float GetObjectScale () const
 
virtual void SetObjectScale (float scale)
 
uint32 GetDynamicFlags () const
 
bool HasDynamicFlag (uint32 flag) const
 
void SetDynamicFlag (uint32 flag)
 
void RemoveDynamicFlag (uint32 flag)
 
void ReplaceAllDynamicFlags (uint32 flag)
 
TypeID GetTypeId () const
 
bool isType (uint16 mask) const
 
virtual void BuildCreateUpdateBlockForPlayer (UpdateData *data, Player *target) const
 
void SendUpdateToPlayer (Player *player)
 
void BuildValuesUpdateBlockForPlayer (UpdateData *data, Player const *target) const
 
void BuildValuesUpdateBlockForPlayerWithFlag (UpdateData *data, UF::UpdateFieldFlag flags, Player const *target) const
 
void BuildDestroyUpdateBlock (UpdateData *data) const
 
void BuildOutOfRangeUpdateBlock (UpdateData *data) const
 
ByteBufferPrepareValuesUpdateBuffer (UpdateData *data) const
 
virtual void DestroyForPlayer (Player *target) const
 
void SendOutOfRangeForPlayer (Player *target) const
 
virtual void ClearUpdateMask (bool remove)
 
virtual std::string GetNameForLocaleIdx (LocaleConstant locale) const =0
 
virtual bool hasQuest (uint32) const
 
virtual bool hasInvolvedQuest (uint32) const
 
void SetIsNewObject (bool enable)
 
bool IsDestroyedObject () const
 
void SetDestroyedObject (bool destroyed)
 
virtual void BuildUpdate (UpdateDataMapType &)
 
void BuildFieldsUpdate (Player *, UpdateDataMapType &) const
 
bool IsWorldObject () const
 
WorldObjectToWorldObject ()
 
WorldObject const * ToWorldObject () const
 
bool IsItem () const
 
ItemToItem ()
 
Item const * ToItem () const
 
bool IsPlayer () const
 
PlayerToPlayer ()
 
Player const * ToPlayer () const
 
bool IsCreature () const
 
CreatureToCreature ()
 
Creature const * ToCreature () const
 
bool IsUnit () const
 
UnitToUnit ()
 
Unit const * ToUnit () const
 
bool IsGameObject () const
 
GameObjectToGameObject ()
 
GameObject const * ToGameObject () const
 
bool IsCorpse () const
 
CorpseToCorpse ()
 
Corpse const * ToCorpse () const
 
bool IsDynObject () const
 
DynamicObjectToDynObject ()
 
DynamicObject const * ToDynObject () const
 
bool IsAreaTrigger () const
 
AreaTriggerToAreaTrigger ()
 
AreaTrigger const * ToAreaTrigger () const
 
bool IsSceneObject () const
 
SceneObjectToSceneObject ()
 
SceneObject const * ToSceneObject () const
 
bool IsConversation () const
 
ConversationToConversation ()
 
Conversation const * ToConversation () const
 
template<typename T >
void ForceUpdateFieldChange (UF::UpdateFieldSetter< T > const &)
 
virtual std::string GetDebugInfo () const
 
Trinity::unique_weak_ptr< ObjectGetWeakPtr () const
 
virtual LootGetLootForPlayer (Player const *player) const
 
virtual void BuildValuesUpdateWithFlag (ByteBuffer *data, UF::UpdateFieldFlag flags, Player const *target) const
 

Static Public Member Functions

static ItemCreateItem (uint32 itemEntry, uint32 count, ItemContext context, Player const *player=nullptr, bool addDefaultBonuses=true)
 
static void DeleteFromDB (CharacterDatabaseTransaction trans, ObjectGuid::LowType itemGuid)
 
static void DeleteFromInventoryDB (CharacterDatabaseTransaction trans, ObjectGuid::LowType itemGuid)
 
static uint32 GetItemLevel (ItemTemplate const *itemTemplate, BonusData const &bonusData, uint32 level, uint32 fixedLevel, uint32 minItemLevel, uint32 minItemLevelCutoff, uint32 maxItemLevel, bool pvpBonus, uint32 azeriteLevel)
 
static ItemDisenchantLootEntry const * GetDisenchantLoot (ItemTemplate const *itemTemplate, uint32 quality, uint32 itemLevel)
 
static bool HasStats (WorldPackets::Item::ItemInstance const &itemInstance, BonusData const *bonus)
 
static bool CanTransmogrifyItemWithItem (Item const *item, ItemModifiedAppearanceEntry const *itemModifiedAppearance)
 
static uint32 GetBuyPrice (ItemTemplate const *proto, uint32 quality, uint32 itemLevel, bool &standardPrice)
 
static uint32 GetSellPrice (ItemTemplate const *proto, uint32 quality, uint32 itemLevel)
 
- Static Public Member Functions inherited from Object
static ObjectGuid GetGUID (Object const *o)
 
static WorldObjectToWorldObject (Object *o)
 
static WorldObject const * ToWorldObject (Object const *o)
 
static ItemToItem (Object *o)
 
static Item const * ToItem (Object const *o)
 
static PlayerToPlayer (Object *o)
 
static Player const * ToPlayer (Object const *o)
 
static CreatureToCreature (Object *o)
 
static Creature const * ToCreature (Object const *o)
 
static UnitToUnit (Object *o)
 
static Unit const * ToUnit (Object const *o)
 
static GameObjectToGameObject (Object *o)
 
static GameObject const * ToGameObject (Object const *o)
 
static CorpseToCorpse (Object *o)
 
static Corpse const * ToCorpse (Object const *o)
 
static DynamicObjectToDynObject (Object *o)
 
static DynamicObject const * ToDynObject (Object const *o)
 
static AreaTriggerToAreaTrigger (Object *o)
 
static AreaTrigger const * ToAreaTrigger (Object const *o)
 
static SceneObjectToSceneObject (Object *o)
 
static SceneObject const * ToSceneObject (Object const *o)
 
static ConversationToConversation (Object *o)
 
static Conversation const * ToConversation (Object const *o)
 

Public Attributes

std::unique_ptr< Lootm_loot
 
bool m_lootGenerated
 
UF::UpdateField< UF::ItemData, 0, TYPEID_ITEMm_itemData
 
- Public Attributes inherited from Object
UF::UpdateFieldHolder m_values
 
UF::UpdateField< UF::ObjectData, 0, TYPEID_OBJECTm_objectData
 

Protected Member Functions

UF::UpdateFieldFlag GetUpdateFieldFlagsFor (Player const *target) const override
 
void BuildValuesCreate (ByteBuffer *data, Player const *target) const override
 
void BuildValuesUpdate (ByteBuffer *data, Player const *target) const override
 
void ClearUpdateMask (bool remove) override
 
- Protected Member Functions inherited from Object
 Object ()
 
void _Create (ObjectGuid const &guid)
 
template<typename T >
void SetUpdateFieldValue (UF::UpdateFieldSetter< T > setter, typename UF::UpdateFieldSetter< T >::value_type value)
 
template<typename T >
void SetUpdateFieldFlagValue (UF::UpdateFieldSetter< T > setter, typename UF::UpdateFieldSetter< T >::value_type flag)
 
template<typename T >
void RemoveUpdateFieldFlagValue (UF::UpdateFieldSetter< T > setter, typename UF::UpdateFieldSetter< T >::value_type flag)
 
template<typename T >
UF::DynamicUpdateFieldSetter< T >::insert_result AddDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter)
 
template<typename T >
UF::DynamicUpdateFieldSetter< T >::insert_result InsertDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter, uint32 index)
 
template<typename T >
void RemoveDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter, uint32 index)
 
template<typename T >
void ClearDynamicUpdateFieldValues (UF::DynamicUpdateFieldSetter< T > setter)
 
template<typename T >
void RemoveOptionalUpdateFieldValue (UF::OptionalUpdateFieldSetter< T > setter)
 
template<typename T >
void SetUpdateFieldStatValue (UF::UpdateFieldSetter< T > setter, typename UF::UpdateFieldSetter< T >::value_type value)
 
template<typename T >
void ApplyModUpdateFieldValue (UF::UpdateFieldSetter< T > setter, typename UF::UpdateFieldSetter< T >::value_type mod, bool apply)
 
template<typename T >
void ApplyPercentModUpdateFieldValue (UF::UpdateFieldSetter< T > setter, float percent, bool apply)
 
template<typename Action >
void DoWithSuppressingObjectUpdates (Action &&action)
 
void BuildMovementUpdate (ByteBuffer *data, CreateObjectBits flags, Player *target) const
 
virtual UF::UpdateFieldFlag GetUpdateFieldFlagsFor (Player const *target) const
 
virtual void BuildValuesCreate (ByteBuffer *data, Player const *target) const =0
 
virtual void BuildValuesUpdate (ByteBuffer *data, Player const *target) const =0
 
virtual bool AddToObjectUpdate ()=0
 
virtual void RemoveFromObjectUpdate ()=0
 
void AddToObjectUpdateIfNeeded ()
 

Protected Attributes

BonusData _bonusData
 
- Protected Attributes inherited from Object
uint16 m_objectType
 
TypeID m_objectTypeId
 
CreateObjectBits m_updateFlag
 
bool m_objectUpdated
 

Private Attributes

std::string m_text
 
uint8 m_slot
 
Bagm_container
 
ItemUpdateState uState
 
int16 uQueuePos
 
bool mb_in_trade
 
time_t m_lastPlayedTimeUpdate
 
ObjectGuid m_refundRecipient
 
uint64 m_paidMoney
 
uint32 m_paidExtendedCost
 
GuidSet allowedGUIDs
 
ItemRandomBonusListId m_randomBonusListId
 
ObjectGuid m_childItem
 
std::unordered_map< uint32, uint16m_artifactPowerIdToIndex
 
std::array< uint32, MAX_ITEM_PROTO_SOCKETSm_gemScalingLevels
 

Friends

void AddItemToUpdateQueueOf (Item *item, Player *player)
 
void RemoveItemFromUpdateQueueOf (Item *item, Player *player)
 

Detailed Description

Definition at line 169 of file Item.h.

Constructor & Destructor Documentation

◆ Item()

Item::Item ( )

Definition at line 444 of file Item.cpp.

+ Here is the call graph for this function:

◆ ~Item()

Item::~Item ( )
default

Member Function Documentation

◆ AddArtifactPower()

void Item::AddArtifactPower ( ArtifactPowerData const *  artifactPower)

Definition at line 2588 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ AddBonuses()

void Item::AddBonuses ( uint32  bonusListID)

Definition at line 2534 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ AddToObjectUpdate()

bool Item::AddToObjectUpdate ( )
overridevirtual

Implements Object.

Definition at line 1797 of file Item.cpp.

+ Here is the call graph for this function:

◆ ApplyArtifactPowerEnchantmentBonuses()

void Item::ApplyArtifactPowerEnchantmentBonuses ( EnchantmentSlot  slot,
uint32  enchantId,
bool  apply,
Player owner 
)

Definition at line 2664 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ BuildUpdate()

void Item::BuildUpdate ( UpdateDataMapType data_map)
overridevirtual

Reimplemented from Object.

Definition at line 1693 of file Item.cpp.

+ Here is the call graph for this function:

◆ BuildValuesCreate()

void Item::BuildValuesCreate ( ByteBuffer data,
Player const *  target 
) const
overrideprotectedvirtual

Implements Object.

Definition at line 1708 of file Item.cpp.

+ Here is the call graph for this function:

◆ BuildValuesUpdate()

void Item::BuildValuesUpdate ( ByteBuffer data,
Player const *  target 
) const
overrideprotectedvirtual

Implements Object.

Definition at line 1719 of file Item.cpp.

+ Here is the call graph for this function:

◆ BuildValuesUpdateForPlayerWithMask()

void Item::BuildValuesUpdateForPlayerWithMask ( UpdateData data,
UF::ObjectData::Mask const &  requestedObjectMask,
UF::ItemData::Mask const &  requestedItemMask,
Player const *  target 
) const

Definition at line 1751 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ BuildValuesUpdateWithFlag()

void Item::BuildValuesUpdateWithFlag ( ByteBuffer data,
UF::UpdateFieldFlag  flags,
Player const *  target 
) const
overridevirtual

Reimplemented from Object.

Definition at line 1735 of file Item.cpp.

+ Here is the call graph for this function:

◆ CalculateDurabilityRepairCost()

uint64 Item::CalculateDurabilityRepairCost ( float  discount) const

Definition at line 1291 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CanBeMergedPartlyWith()

InventoryResult Item::CanBeMergedPartlyWith ( ItemTemplate const *  proto) const

Definition at line 1370 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CanBeTraded()

bool Item::CanBeTraded ( bool  mail = false,
bool  trade = false 
) const

Definition at line 1250 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CanTransmogrifyItemWithItem()

bool Item::CanTransmogrifyItemWithItem ( Item const *  item,
ItemModifiedAppearanceEntry const *  itemModifiedAppearance 
)
static

Definition at line 2067 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CheckArtifactRelicSlotUnlock()

void Item::CheckArtifactRelicSlotUnlock ( Player const *  owner)

Definition at line 1072 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CheckSoulboundTradeExpire()

bool Item::CheckSoulboundTradeExpire ( )

Definition at line 1927 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ClearBonuses()

void Item::ClearBonuses ( )

Definition at line 2562 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ClearEnchantment()

void Item::ClearEnchantment ( EnchantmentSlot  slot)

Definition at line 1468 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ClearSoulboundTradeable()

void Item::ClearSoulboundTradeable ( Player currentOwner)

Definition at line 1913 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ClearUpdateMask()

void Item::ClearUpdateMask ( bool  remove)
overrideprotectedvirtual

Reimplemented from Object.

Definition at line 1791 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CloneItem()

Item * Item::CloneItem ( uint32  count,
Player const *  player = nullptr 
) const

Definition at line 1655 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CopyArtifactDataFromParent()

void Item::CopyArtifactDataFromParent ( Item parent)

Definition at line 2753 of file Item.cpp.

+ Here is the call graph for this function:

◆ Create()

bool Item::Create ( ObjectGuid::LowType  guidlow,
uint32  itemId,
ItemContext  context,
Player const *  owner 
)
virtual

Reimplemented in AzeriteEmpoweredItem, AzeriteItem, and Bag.

Definition at line 468 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CreateItem()

Item * Item::CreateItem ( uint32  itemEntry,
uint32  count,
ItemContext  context,
Player const *  player = nullptr,
bool  addDefaultBonuses = true 
)
static

Definition at line 1625 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeleteFromDB() [1/2]

void Item::DeleteFromDB ( CharacterDatabaseTransaction  trans)
virtual

Reimplemented in AzeriteEmpoweredItem, AzeriteItem, and Bag.

Definition at line 1119 of file Item.cpp.

+ Here is the call graph for this function:

◆ DeleteFromDB() [2/2]

void Item::DeleteFromDB ( CharacterDatabaseTransaction  trans,
ObjectGuid::LowType  itemGuid 
)
static

Definition at line 1088 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeleteFromInventoryDB() [1/2]

void Item::DeleteFromInventoryDB ( CharacterDatabaseTransaction  trans)

Definition at line 1136 of file Item.cpp.

+ Here is the call graph for this function:

◆ DeleteFromInventoryDB() [2/2]

void Item::DeleteFromInventoryDB ( CharacterDatabaseTransaction  trans,
ObjectGuid::LowType  itemGuid 
)
static

Definition at line 1129 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeleteRefundDataFromDB()

void Item::DeleteRefundDataFromDB ( CharacterDatabaseTransaction trans)

Definition at line 1832 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FSetState()

void Item::FSetState ( ItemUpdateState  state)
inline

Definition at line 326 of file Item.h.

+ Here is the caller graph for this function:

◆ GemsFitSockets()

bool Item::GemsFitSockets ( ) const

Definition at line 1544 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetAppearanceModId()

uint32 Item::GetAppearanceModId ( ) const
inline

Definition at line 345 of file Item.h.

+ Here is the caller graph for this function:

◆ GetArtifactPower()

UF::ArtifactPower const * Item::GetArtifactPower ( uint32  artifactPowerId) const

Definition at line 2579 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetBagSlot()

uint8 Item::GetBagSlot ( ) const

Definition at line 1239 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBonding()

ItemBondingType Item::GetBonding ( ) const
inline

Definition at line 200 of file Item.h.

+ Here is the caller graph for this function:

◆ GetBonus()

BonusData const * Item::GetBonus ( ) const
inline

Definition at line 186 of file Item.h.

+ Here is the caller graph for this function:

◆ GetBonusListIDs()

std::vector< int32 > const & Item::GetBonusListIDs ( ) const
inline

Definition at line 229 of file Item.h.

+ Here is the caller graph for this function:

◆ GetBuyPrice() [1/2]

uint32 Item::GetBuyPrice ( ItemTemplate const *  proto,
uint32  quality,
uint32  itemLevel,
bool &  standardPrice 
)
static

Definition at line 2120 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetBuyPrice() [2/2]

uint32 Item::GetBuyPrice ( Player const *  owner,
bool &  standardPrice 
) const

Definition at line 2115 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetChildItem()

ObjectGuid Item::GetChildItem ( ) const
inline

Definition at line 423 of file Item.h.

+ Here is the caller graph for this function:

◆ GetContainedIn()

ObjectGuid Item::GetContainedIn ( ) const
inline

Definition at line 190 of file Item.h.

◆ GetContainer()

Bag * Item::GetContainer ( )
inline

Definition at line 281 of file Item.h.

+ Here is the caller graph for this function:

◆ GetContext()

ItemContext Item::GetContext ( ) const
inline

Definition at line 441 of file Item.h.

+ Here is the caller graph for this function:

◆ GetCount()

uint32 Item::GetCount ( ) const
inline

Definition at line 273 of file Item.h.

+ Here is the caller graph for this function:

◆ GetCreator()

ObjectGuid Item::GetCreator ( ) const
inline

Definition at line 192 of file Item.h.

+ Here is the caller graph for this function:

◆ GetDebugInfo()

std::string Item::GetDebugInfo ( ) const
overridevirtual

Reimplemented from Object.

Definition at line 2819 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetDisenchantLoot() [1/2]

ItemDisenchantLootEntry const * Item::GetDisenchantLoot ( ItemTemplate const *  itemTemplate,
uint32  quality,
uint32  itemLevel 
)
static

Definition at line 2368 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetDisenchantLoot() [2/2]

ItemDisenchantLootEntry const * Item::GetDisenchantLoot ( Player const *  owner) const

Definition at line 2360 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetDisplayId()

uint32 Item::GetDisplayId ( Player const *  owner) const

Definition at line 2405 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetEffects()

Trinity::IteratorPair< ItemEffectEntry const *const * > Item::GetEffects ( ) const
inline

Definition at line 354 of file Item.h.

+ Here is the caller graph for this function:

◆ GetEnchantmentCharges()

uint32 Item::GetEnchantmentCharges ( EnchantmentSlot  slot) const
inline

Definition at line 300 of file Item.h.

+ Here is the caller graph for this function:

◆ GetEnchantmentDuration()

uint32 Item::GetEnchantmentDuration ( EnchantmentSlot  slot) const
inline

Definition at line 299 of file Item.h.

+ Here is the caller graph for this function:

◆ GetEnchantmentId()

uint32 Item::GetEnchantmentId ( EnchantmentSlot  slot) const
inline

Definition at line 298 of file Item.h.

+ Here is the caller graph for this function:

◆ GetEnchantRequiredLevel()

uint32 Item::GetEnchantRequiredLevel ( ) const

Definition at line 1344 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetGem()

UF::SocketedGem const * Item::GetGem ( uint16  slot) const

Definition at line 1481 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetGemCountWithID()

uint8 Item::GetGemCountWithID ( uint32  GemID) const

Definition at line 1576 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetGemCountWithLimitCategory()

uint8 Item::GetGemCountWithLimitCategory ( uint32  limitCategory) const

Definition at line 1584 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetGiftCreator()

ObjectGuid Item::GetGiftCreator ( ) const
inline

Definition at line 194 of file Item.h.

+ Here is the caller graph for this function:

◆ GetItemLevel() [1/2]

uint32 Item::GetItemLevel ( ItemTemplate const *  itemTemplate,
BonusData const &  bonusData,
uint32  level,
uint32  fixedLevel,
uint32  minItemLevel,
uint32  minItemLevelCutoff,
uint32  maxItemLevel,
bool  pvpBonus,
uint32  azeriteLevel 
)
static

Definition at line 2293 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetItemLevel() [2/2]

uint32 Item::GetItemLevel ( Player const *  owner) const

Definition at line 2279 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetItemModifiedAppearance()

ItemModifiedAppearanceEntry const * Item::GetItemModifiedAppearance ( ) const

Definition at line 2418 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetItemRandomBonusListId()

ItemRandomBonusListId Item::GetItemRandomBonusListId ( ) const
inline

Definition at line 292 of file Item.h.

+ Here is the caller graph for this function:

◆ GetItemStatType()

int32 Item::GetItemStatType ( uint32  index) const
inline

Definition at line 342 of file Item.h.

+ Here is the caller graph for this function:

◆ GetItemStatValue()

float Item::GetItemStatValue ( uint32  index,
Player const *  owner 
) const

Definition at line 2335 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetLootForPlayer()

Loot * Item::GetLootForPlayer ( Player const *  ) const
inlineoverridevirtual

Reimplemented from Object.

Definition at line 319 of file Item.h.

◆ GetMaxStackCount()

uint32 Item::GetMaxStackCount ( ) const
inline

Definition at line 275 of file Item.h.

+ Here is the caller graph for this function:

◆ GetModifier()

uint32 Item::GetModifier ( ItemModifier  modifier) const

Definition at line 2423 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetNameForLocaleIdx()

std::string Item::GetNameForLocaleIdx ( LocaleConstant  locale) const
overridevirtual

Implements Object.

Definition at line 524 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetOwner()

Player * Item::GetOwner ( ) const

Definition at line 1146 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetOwnerGUID()

ObjectGuid Item::GetOwnerGUID ( ) const
inline

Definition at line 188 of file Item.h.

+ Here is the caller graph for this function:

◆ GetPaidExtendedCost()

uint32 Item::GetPaidExtendedCost ( ) const
inline

Definition at line 364 of file Item.h.

+ Here is the caller graph for this function:

◆ GetPaidMoney()

uint64 Item::GetPaidMoney ( ) const
inline

Definition at line 363 of file Item.h.

+ Here is the caller graph for this function:

◆ GetPlayedTime()

uint32 Item::GetPlayedTime ( )

Definition at line 1895 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetPos()

uint16 Item::GetPos ( ) const
inline

Definition at line 284 of file Item.h.

+ Here is the caller graph for this function:

◆ GetQuality()

uint32 Item::GetQuality ( ) const
inline

Definition at line 337 of file Item.h.

+ Here is the caller graph for this function:

◆ GetQueuePos()

uint16 Item::GetQueuePos ( ) const
inline

Definition at line 325 of file Item.h.

+ Here is the caller graph for this function:

◆ GetRefundRecipient()

ObjectGuid const & Item::GetRefundRecipient ( ) const
inline

Definition at line 362 of file Item.h.

+ Here is the caller graph for this function:

◆ GetRepairCostMultiplier()

float Item::GetRepairCostMultiplier ( ) const
inline

Definition at line 349 of file Item.h.

+ Here is the caller graph for this function:

◆ GetRequiredLevel()

int32 Item::GetRequiredLevel ( ) const

Definition at line 2807 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetScalingContentTuningId()

uint32 Item::GetScalingContentTuningId ( ) const
inline

Definition at line 350 of file Item.h.

+ Here is the caller graph for this function:

◆ GetScriptId()

uint32 Item::GetScriptId ( ) const
inline

Definition at line 402 of file Item.h.

+ Here is the caller graph for this function:

◆ GetSellPrice() [1/2]

uint32 Item::GetSellPrice ( ItemTemplate const *  proto,
uint32  quality,
uint32  itemLevel 
)
static

Definition at line 2253 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetSellPrice() [2/2]

uint32 Item::GetSellPrice ( Player const *  owner) const

Definition at line 2248 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSkill()

uint32 Item::GetSkill ( )

Definition at line 1152 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSlot()

uint8 Item::GetSlot ( ) const
inline

Definition at line 280 of file Item.h.

+ Here is the caller graph for this function:

◆ GetSocketColor()

SocketColor Item::GetSocketColor ( uint32  index) const
inline

Definition at line 344 of file Item.h.

+ Here is the caller graph for this function:

◆ GetSpellCharges()

int32 Item::GetSpellCharges ( uint8  index = 0) const
inline

Definition at line 314 of file Item.h.

+ Here is the caller graph for this function:

◆ GetState()

ItemUpdateState Item::GetState ( ) const
inline

Definition at line 322 of file Item.h.

+ Here is the caller graph for this function:

◆ GetTemplate()

ItemTemplate const * Item::GetTemplate ( ) const

Definition at line 1141 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetText()

std::string const & Item::GetText ( ) const
inline

Definition at line 304 of file Item.h.

◆ GetTotalPurchasedArtifactPowers()

uint32 Item::GetTotalPurchasedArtifactPowers ( ) const

Definition at line 2655 of file Item.cpp.

+ Here is the caller graph for this function:

◆ GetTotalUnlockedArtifactPowers()

uint32 Item::GetTotalUnlockedArtifactPowers ( ) const

Definition at line 2632 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetUpdateFieldFlagsFor()

UF::UpdateFieldFlag Item::GetUpdateFieldFlagsFor ( Player const *  target) const
overrideprotectedvirtual

Reimplemented from Object.

Definition at line 1700 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVisibleAppearanceModId()

uint16 Item::GetVisibleAppearanceModId ( Player const *  owner) const

Definition at line 2480 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVisibleEnchantmentId()

uint32 Item::GetVisibleEnchantmentId ( Player const *  owner) const

Definition at line 2514 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVisibleEntry()

uint32 Item::GetVisibleEntry ( Player const *  owner) const

Definition at line 2468 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVisibleItemVisual()

uint16 Item::GetVisibleItemVisual ( Player const *  owner) const

Definition at line 2526 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVisibleModifiedAppearanceId()

uint32 Item::GetVisibleModifiedAppearanceId ( Player const *  owner) const

Definition at line 2492 of file Item.cpp.

+ Here is the call graph for this function:

◆ GetVisibleSecondaryModifiedAppearanceId()

int32 Item::GetVisibleSecondaryModifiedAppearanceId ( Player const *  owner) const

Definition at line 2505 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GiveArtifactXp()

void Item::GiveArtifactXp ( uint64  amount,
Item sourceItem,
uint32  artifactCategoryId 
)

Definition at line 2760 of file Item.cpp.

+ Here is the call graph for this function:

◆ HasEnchantRequiredSkill()

bool Item::HasEnchantRequiredSkill ( Player const *  player) const

Definition at line 1330 of file Item.cpp.

+ Here is the call graph for this function:

◆ hasInvolvedQuest()

bool Item::hasInvolvedQuest ( uint32  ) const
inlineoverridevirtual

Reimplemented from Object.

Definition at line 332 of file Item.h.

◆ HasItemFlag()

bool Item::HasItemFlag ( ItemFieldFlags  flag) const
inline

Definition at line 208 of file Item.h.

+ Here is the caller graph for this function:

◆ HasItemFlag2()

bool Item::HasItemFlag2 ( ItemFieldFlags2  flag) const
inline

Definition at line 213 of file Item.h.

◆ hasQuest()

bool Item::hasQuest ( uint32  quest_id) const
inlineoverridevirtual

Reimplemented from Object.

Definition at line 331 of file Item.h.

◆ HasStats() [1/2]

bool Item::HasStats ( ) const

Definition at line 1961 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ HasStats() [2/2]

bool Item::HasStats ( WorldPackets::Item::ItemInstance const &  itemInstance,
BonusData const *  bonus 
)
static

Definition at line 1972 of file Item.cpp.

◆ InitArtifactPowers()

void Item::InitArtifactPowers ( uint8  artifactId,
uint8  artifactTier 
)

Definition at line 2614 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsArtifactDisabled()

bool Item::IsArtifactDisabled ( ) const

Definition at line 2571 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsAzeriteEmpoweredItem()

bool Item::IsAzeriteEmpoweredItem ( ) const
inline

Definition at line 254 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsAzeriteItem()

bool Item::IsAzeriteItem ( ) const
inline

Definition at line 253 of file Item.h.

+ Here is the call graph for this function:

◆ IsBag()

bool Item::IsBag ( ) const
inline

Definition at line 252 of file Item.h.

+ Here is the caller graph for this function:

◆ IsBattlenetAccountBound()

bool Item::IsBattlenetAccountBound ( ) const
inline

Definition at line 220 of file Item.h.

+ Here is the caller graph for this function:

◆ IsBindedNotWith()

bool Item::IsBindedNotWith ( Player const *  player) const

Definition at line 1672 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsBOPTradeable()

bool Item::IsBOPTradeable ( ) const
inline

Definition at line 249 of file Item.h.

+ Here is the caller graph for this function:

◆ IsBoundAccountWide()

bool Item::IsBoundAccountWide ( ) const
inline

Definition at line 219 of file Item.h.

+ Here is the caller graph for this function:

◆ IsBoundByEnchant()

bool Item::IsBoundByEnchant ( ) const

Definition at line 1358 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsBroken()

bool Item::IsBroken ( ) const
inline

Definition at line 257 of file Item.h.

+ Here is the caller graph for this function:

◆ IsConjuredConsumable()

bool Item::IsConjuredConsumable ( ) const
inline

Definition at line 335 of file Item.h.

◆ IsCurrencyToken()

bool Item::IsCurrencyToken ( ) const
inline

Definition at line 255 of file Item.h.

+ Here is the caller graph for this function:

◆ IsEquipped()

bool Item::IsEquipped ( ) const

Definition at line 1244 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsFitToSpellRequirements()

bool Item::IsFitToSpellRequirements ( SpellInfo const *  spellInfo) const

Definition at line 1387 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsInBag()

bool Item::IsInBag ( ) const
inline

Definition at line 287 of file Item.h.

+ Here is the caller graph for this function:

◆ IsInTrade()

bool Item::IsInTrade ( ) const
inline

Definition at line 262 of file Item.h.

+ Here is the caller graph for this function:

◆ IsInUpdateQueue()

bool Item::IsInUpdateQueue ( ) const
inline

Definition at line 324 of file Item.h.

+ Here is the caller graph for this function:

◆ IsLimitedToAnotherMapOrZone()

bool Item::IsLimitedToAnotherMapOrZone ( uint32  cur_mapId,
uint32  cur_zoneId 
) const

Definition at line 1596 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsLocked()

bool Item::IsLocked ( ) const
inline

Definition at line 251 of file Item.h.

+ Here is the caller graph for this function:

◆ IsNotEmptyBag()

bool Item::IsNotEmptyBag ( ) const

Definition at line 535 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsPotion()

bool Item::IsPotion ( ) const
inline

Definition at line 333 of file Item.h.

+ Here is the caller graph for this function:

◆ IsRangedWeapon()

bool Item::IsRangedWeapon ( ) const
inline

Definition at line 336 of file Item.h.

◆ IsRefundable()

bool Item::IsRefundable ( ) const
inline

Definition at line 248 of file Item.h.

+ Here is the caller graph for this function:

◆ IsRefundExpired()

bool Item::IsRefundExpired ( )

Definition at line 1902 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsSoulBound()

bool Item::IsSoulBound ( ) const
inline

Definition at line 218 of file Item.h.

+ Here is the caller graph for this function:

◆ IsValidTransmogrificationTarget()

bool Item::IsValidTransmogrificationTarget ( ) const

Definition at line 1939 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsVellum()

bool Item::IsVellum ( ) const
inline

Definition at line 334 of file Item.h.

+ Here is the caller graph for this function:

◆ IsWrapped()

bool Item::IsWrapped ( ) const
inline

Definition at line 250 of file Item.h.

+ Here is the caller graph for this function:

◆ LoadArtifactData()

void Item::LoadArtifactData ( Player const *  owner,
uint64  xp,
uint32  artifactAppearanceId,
uint32  artifactTier,
std::vector< ArtifactPowerData > &  powers 
)

Definition at line 1003 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadFromDB()

bool Item::LoadFromDB ( ObjectGuid::LowType  guid,
ObjectGuid  ownerGuid,
Field fields,
uint32  entry 
)
virtual

Reimplemented in Bag.

Definition at line 828 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RemoveFromObjectUpdate()

void Item::RemoveFromObjectUpdate ( )
overridevirtual

Implements Object.

Definition at line 1808 of file Item.cpp.

+ Here is the call graph for this function:

◆ RemoveItemFlag()

void Item::RemoveItemFlag ( ItemFieldFlags  flags)
inline

Definition at line 210 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RemoveItemFlag2()

void Item::RemoveItemFlag2 ( ItemFieldFlags2  flags)
inline

Definition at line 215 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ReplaceAllItemFlags()

void Item::ReplaceAllItemFlags ( ItemFieldFlags  flags)
inline

Definition at line 211 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ReplaceAllItemFlags2()

void Item::ReplaceAllItemFlags2 ( ItemFieldFlags2  flags)
inline

Definition at line 216 of file Item.h.

+ Here is the call graph for this function:

◆ SaveRefundDataToDB()

void Item::SaveRefundDataToDB ( )

Definition at line 1814 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SaveToDB()

void Item::SaveToDB ( CharacterDatabaseTransaction  trans)
virtual

Reimplemented in AzeriteEmpoweredItem, AzeriteItem, and Bag.

Definition at line 561 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SendTimeUpdate()

void Item::SendTimeUpdate ( Player owner)

Definition at line 1613 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SendUpdateSockets()

void Item::SendUpdateSockets ( )

Definition at line 1603 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetAppearanceModId()

void Item::SetAppearanceModId ( uint32  appearanceModId)
inline

Definition at line 346 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetArtifactPower()

void Item::SetArtifactPower ( uint16  artifactPowerId,
uint8  purchasedRank,
uint8  currentRankWithBonus 
)

Definition at line 2599 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetArtifactXP()

void Item::SetArtifactXP ( uint64  xp)
inline

Definition at line 438 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetBinding()

void Item::SetBinding ( bool  val)
inline

Definition at line 201 of file Item.h.

+ Here is the caller graph for this function:

◆ SetBonuses()

void Item::SetBonuses ( std::vector< int32 bonusListIDs)

Definition at line 2549 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetChildItem()

void Item::SetChildItem ( ObjectGuid  childItem)
inline

Definition at line 424 of file Item.h.

+ Here is the caller graph for this function:

◆ SetContainedIn()

void Item::SetContainedIn ( ObjectGuid  guid)
inline

Definition at line 191 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetContainer()

void Item::SetContainer ( Bag container)
inline

Definition at line 285 of file Item.h.

+ Here is the caller graph for this function:

◆ SetContext()

void Item::SetContext ( ItemContext  context)
inline

Definition at line 442 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetCount()

void Item::SetCount ( uint32  value)

Definition at line 1275 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetCreatePlayedTime()

void Item::SetCreatePlayedTime ( uint32  createPlayedTime)
inline

Definition at line 311 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetCreator()

void Item::SetCreator ( ObjectGuid  guid)
inline

Definition at line 193 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetDurability()

void Item::SetDurability ( uint32  durability)
inline

Definition at line 258 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetEnchantment()

void Item::SetEnchantment ( EnchantmentSlot  slot,
uint32  id,
uint32  duration,
uint32  charges,
ObjectGuid  caster = ObjectGuid::Empty 
)

Definition at line 1421 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetEnchantmentCharges()

void Item::SetEnchantmentCharges ( EnchantmentSlot  slot,
uint32  charges 
)

Definition at line 1459 of file Item.cpp.

+ Here is the call graph for this function:

◆ SetEnchantmentDuration()

void Item::SetEnchantmentDuration ( EnchantmentSlot  slot,
uint32  duration,
Player owner 
)

Definition at line 1449 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetExpiration()

void Item::SetExpiration ( uint32  expiration)
inline

Definition at line 198 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetFixedLevel()

void Item::SetFixedLevel ( uint8  level)

Definition at line 2793 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetGem()

void Item::SetGem ( uint16  slot,
ItemDynamicFieldGems const *  gem,
uint32  gemScalingLevel 
)

Definition at line 1487 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetGiftCreator()

void Item::SetGiftCreator ( ObjectGuid  guid)
inline

Definition at line 195 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetInTrade()

void Item::SetInTrade ( bool  b = true)
inline

Definition at line 261 of file Item.h.

+ Here is the caller graph for this function:

◆ SetItemFlag()

void Item::SetItemFlag ( ItemFieldFlags  flags)
inline

Definition at line 209 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetItemFlag2()

void Item::SetItemFlag2 ( ItemFieldFlags2  flags)
inline

Definition at line 214 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetItemRandomBonusList()

void Item::SetItemRandomBonusList ( ItemRandomBonusListId  bonusListId)

Definition at line 1158 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetMaxDurability()

void Item::SetMaxDurability ( uint32  maxDurability)
inline

Definition at line 259 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetModifier()

void Item::SetModifier ( ItemModifier  modifier,
uint32  value 
)

Definition at line 2436 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetNotRefundable()

void Item::SetNotRefundable ( Player owner,
bool  changestate = true,
CharacterDatabaseTransaction trans = nullptr,
bool  addToCollection = true 
)

Definition at line 1843 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetOwnerGUID()

void Item::SetOwnerGUID ( ObjectGuid  guid)
inline

Definition at line 189 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetPaidExtendedCost()

void Item::SetPaidExtendedCost ( uint32  iece)
inline

Definition at line 360 of file Item.h.

+ Here is the caller graph for this function:

◆ SetPaidMoney()

void Item::SetPaidMoney ( uint64  money)
inline

Definition at line 359 of file Item.h.

+ Here is the caller graph for this function:

◆ SetPetitionId()

void Item::SetPetitionId ( uint32  petitionId)
inline

Definition at line 444 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetPetitionNumSignatures()

void Item::SetPetitionNumSignatures ( uint32  signatures)
inline

Definition at line 445 of file Item.h.

+ Here is the call graph for this function:

◆ SetRefundRecipient()

void Item::SetRefundRecipient ( ObjectGuid const &  guid)
inline

Definition at line 358 of file Item.h.

+ Here is the caller graph for this function:

◆ SetSlot()

void Item::SetSlot ( uint8  slot)
inline

Definition at line 283 of file Item.h.

+ Here is the caller graph for this function:

◆ SetSoulboundTradeable()

void Item::SetSoulboundTradeable ( GuidSet const &  allowedLooters)

Definition at line 1907 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetSpellCharges()

void Item::SetSpellCharges ( uint8  index,
int32  value 
)
inline

Definition at line 315 of file Item.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetState()

void Item::SetState ( ItemUpdateState  state,
Player forplayer = nullptr 
)

Definition at line 1166 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetText()

void Item::SetText ( std::string const &  text)
inline

Definition at line 305 of file Item.h.

+ Here is the caller graph for this function:

◆ ToAzeriteEmpoweredItem() [1/2]

AzeriteEmpoweredItem * Item::ToAzeriteEmpoweredItem ( )
inline

Definition at line 245 of file Item.h.

+ Here is the caller graph for this function:

◆ ToAzeriteEmpoweredItem() [2/2]

AzeriteEmpoweredItem const * Item::ToAzeriteEmpoweredItem ( ) const
inline

Definition at line 246 of file Item.h.

◆ ToAzeriteItem() [1/2]

AzeriteItem * Item::ToAzeriteItem ( )
inline

Definition at line 243 of file Item.h.

+ Here is the caller graph for this function:

◆ ToAzeriteItem() [2/2]

AzeriteItem const * Item::ToAzeriteItem ( ) const
inline

Definition at line 244 of file Item.h.

◆ ToBag() [1/2]

Bag * Item::ToBag ( )
inline

Definition at line 241 of file Item.h.

+ Here is the caller graph for this function:

◆ ToBag() [2/2]

Bag const * Item::ToBag ( ) const
inline

Definition at line 242 of file Item.h.

◆ UpdateDuration()

void Item::UpdateDuration ( Player owner,
uint32  diff 
)

Definition at line 542 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UpdatePlayedTime()

void Item::UpdatePlayedTime ( Player owner)

Definition at line 1867 of file Item.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ AddItemToUpdateQueueOf

void AddItemToUpdateQueueOf ( Item item,
Player player 
)
friend

Definition at line 1197 of file Item.cpp.

◆ RemoveItemFromUpdateQueueOf

void RemoveItemFromUpdateQueueOf ( Item item,
Player player 
)
friend

Definition at line 1218 of file Item.cpp.

Member Data Documentation

◆ _bonusData

BonusData Item::_bonusData
protected

Definition at line 452 of file Item.h.

◆ allowedGUIDs

GuidSet Item::allowedGUIDs
private

Definition at line 465 of file Item.h.

◆ m_artifactPowerIdToIndex

std::unordered_map<uint32, uint16> Item::m_artifactPowerIdToIndex
private

Definition at line 468 of file Item.h.

◆ m_childItem

ObjectGuid Item::m_childItem
private

Definition at line 467 of file Item.h.

◆ m_container

Bag* Item::m_container
private

Definition at line 457 of file Item.h.

◆ m_gemScalingLevels

std::array<uint32, MAX_ITEM_PROTO_SOCKETS> Item::m_gemScalingLevels
private

Definition at line 469 of file Item.h.

◆ m_itemData

UF::UpdateField<UF::ItemData, 0, TYPEID_ITEM> Item::m_itemData

Definition at line 449 of file Item.h.

◆ m_lastPlayedTimeUpdate

time_t Item::m_lastPlayedTimeUpdate
private

Definition at line 461 of file Item.h.

◆ m_loot

std::unique_ptr<Loot> Item::m_loot

Definition at line 317 of file Item.h.

◆ m_lootGenerated

bool Item::m_lootGenerated

Definition at line 318 of file Item.h.

◆ m_paidExtendedCost

uint32 Item::m_paidExtendedCost
private

Definition at line 464 of file Item.h.

◆ m_paidMoney

uint64 Item::m_paidMoney
private

Definition at line 463 of file Item.h.

◆ m_randomBonusListId

ItemRandomBonusListId Item::m_randomBonusListId
private

Definition at line 466 of file Item.h.

◆ m_refundRecipient

ObjectGuid Item::m_refundRecipient
private

Definition at line 462 of file Item.h.

◆ m_slot

uint8 Item::m_slot
private

Definition at line 456 of file Item.h.

◆ m_text

std::string Item::m_text
private

Definition at line 455 of file Item.h.

◆ mb_in_trade

bool Item::mb_in_trade
private

Definition at line 460 of file Item.h.

◆ uQueuePos

int16 Item::uQueuePos
private

Definition at line 459 of file Item.h.

◆ uState

ItemUpdateState Item::uState
private

Definition at line 458 of file Item.h.


The documentation for this class was generated from the following files: