TrinityCore
Player Class Reference

#include <Player.h>

Classes

struct  BgBattlegroundQueueID_Rec
 

Public Member Functions

 Player (WorldSession *session)
 
 ~Player ()
 
PlayerAIAI () const
 
void CleanupsBeforeDelete (bool finalCleanup=true) override
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
void SetObjectScale (float scale) override
 
bool TeleportTo (uint32 mapid, float x, float y, float z, float orientation, uint32 options=0)
 
bool TeleportTo (WorldLocation const &loc, uint32 options=0)
 
bool TeleportToBGEntryPoint ()
 
bool HasSummonPending () const
 
void SendSummonRequestFrom (Unit *summoner)
 
void SummonIfPossible (bool agree)
 
bool Create (ObjectGuid::LowType guidlow, WorldPackets::Character::CharacterCreateInfo const *createInfo)
 
void Update (uint32 time) override
 
bool IsImmunedToSpellEffect (SpellInfo const *spellInfo, SpellEffectInfo const &spellEffectInfo, WorldObject const *caster) const override
 
void SetInWater (bool inWater) override
 
bool IsInWater () const override
 
bool IsUnderWater () const override
 
bool IsInAreaTriggerRadius (AreaTriggerEntry const *trigger) const
 
void SendInitialPacketsBeforeAddToMap ()
 
void SendInitialPacketsAfterAddToMap ()
 
void SendSupercededSpell (uint32 oldSpell, uint32 newSpell) const
 
void SendTransferAborted (uint32 mapid, TransferAbortReason reason, uint8 arg=0, int32 mapDifficultyXConditionID=0) const
 
void SendInstanceResetWarning (uint32 mapid, Difficulty difficulty, uint32 time, bool welcome) const
 
bool CanInteractWithQuestGiver (Object *questGiver) const
 
CreatureGetNPCIfCanInteractWith (ObjectGuid const &guid, NPCFlags npcFlags, NPCFlags2 npcFlags2) const
 
GameObjectGetGameObjectIfCanInteractWith (ObjectGuid const &guid) const
 
GameObjectGetGameObjectIfCanInteractWith (ObjectGuid const &guid, GameobjectTypes type) const
 
void ToggleAFK ()
 
void ToggleDND ()
 
bool isAFK () const
 
bool isDND () const
 
uint8 GetChatFlags () const
 
int64 GetBarberShopCost (Trinity::IteratorPair< UF::ChrCustomizationChoice const *> newCustomizations) const
 
PlayerSocialGetSocial () const
 
void RemoveSocial ()
 
void InitTaxiNodesForLevel ()
 
bool ActivateTaxiPathTo (std::vector< uint32 > const &nodes, Creature *npc=nullptr, uint32 spellid=0, uint32 preferredMountDisplay=0)
 
bool ActivateTaxiPathTo (uint32 taxi_path_id, uint32 spellid=0)
 
void FinishTaxiFlight ()
 
void CleanupAfterTaxiFlight ()
 
void ContinueTaxiFlight () const
 
bool isAcceptWhispers () const
 
void SetAcceptWhispers (bool on)
 
bool IsGameMaster () const
 
bool CanBeGameMaster () const
 
void SetGameMaster (bool on)
 
bool isGMChat () const
 
void SetGMChat (bool on)
 
bool isTaxiCheater () const
 
void SetTaxiCheater (bool on)
 
bool isGMVisible () const
 
void SetGMVisible (bool on)
 
void SetPvPDeath (bool on)
 
bool HasRaceChanged () const
 
void SetHasRaceChanged ()
 
bool HasBeenGrantedLevelsFromRaF () const
 
void SetBeenGrantedLevelsFromRaF ()
 
bool HasLevelBoosted () const
 
void SetHasLevelBoosted ()
 
uint32 GetXP () const
 
uint32 GetXPForNextLevel () const
 
void SetXP (uint32 xp)
 
void GiveXP (uint32 xp, Unit *victim, float group_rate=1.0f)
 
void GiveLevel (uint8 level)
 
void InitStatsForLevel (bool reapplyMods=false)
 
bool GetCommandStatus (uint32 command) const
 
void SetCommandStatusOn (uint32 command)
 
void SetCommandStatusOff (uint32 command)
 
uint32 GetTotalPlayedTime () const
 
uint32 GetLevelPlayedTime () const
 
void setDeathState (DeathState s) override
 
PetGetPet () const
 
PetSummonPet (uint32 entry, float x, float y, float z, float ang, PetType petType, uint32 despwtime)
 
void RemovePet (Pet *pet, PetSaveMode mode, bool returnreagent=false)
 
void AddPetAura (PetAura const *petSpell)
 
void RemovePetAura (PetAura const *petSpell)
 
void Say (std::string const &text, Language language, WorldObject const *=nullptr) override
 Handles said message in regular chat based on declared language and in config pre-defined Range. More...
 
void Say (uint32 textId, WorldObject const *target=nullptr) override
 
void Yell (std::string const &text, Language language, WorldObject const *=nullptr) override
 Handles yelled message in regular chat based on declared language and in config pre-defined Range. More...
 
void Yell (uint32 textId, WorldObject const *target=nullptr) override
 
void TextEmote (std::string const &text, WorldObject const *=nullptr, bool=false) override
 Outputs an universal text which is supposed to be an action. More...
 
void TextEmote (uint32 textId, WorldObject const *target=nullptr, bool isBossEmote=false) override
 
void Whisper (std::string const &text, Language language, Player *receiver, bool=false) override
 Handles whispers from Addons and players based on sender, receiver's guid and language. More...
 
void Whisper (uint32 textId, Player *target, bool isBossWhisper=false) override
 
void WhisperAddon (std::string const &text, std::string const &prefix, bool isLogged, Player *receiver)
 
bool CanUnderstandLanguage (Language language) const
 
template<typename T >
bool ForEachItem (ItemSearchLocation location, T callback) const
 Iterate over each item in the player storage. More...
 
void UpdateAverageItemLevelTotal ()
 
void UpdateAverageItemLevelEquipped ()
 
uint8 FindEquipSlot (Item const *item, uint32 slot, bool swap) const
 
uint32 GetFreeInventorySlotCount (EnumFlag< ItemSearchLocation > location=ItemSearchLocation::Inventory) const
 
uint32 GetItemCount (uint32 item, bool inBankAlso=false, Item *skipItem=nullptr) const
 
uint32 GetItemCountWithLimitCategory (uint32 limitCategory, Item *skipItem=nullptr) const
 
ItemGetItemByGuid (ObjectGuid guid) const
 
ItemGetItemByEntry (uint32 entry, ItemSearchLocation where=ItemSearchLocation::Default) const
 
std::vector< Item * > GetItemListByEntry (uint32 entry, bool inBankAlso=false) const
 
ItemGetItemByPos (uint16 pos) const
 
ItemGetItemByPos (uint8 bag, uint8 slot) const
 
ItemGetUseableItemByPos (uint8 bag, uint8 slot) const
 
BagGetBagByPos (uint8 slot) const
 
ItemGetWeaponForAttack (WeaponAttackType attackType, bool useable=false) const
 
ItemGetShield (bool useable=false) const
 
ItemGetChildItemByGuid (ObjectGuid guid) const
 
std::vector< Item * > & GetItemUpdateQueue ()
 
bool IsValidPos (uint16 pos, bool explicit_pos) const
 
bool IsValidPos (uint8 bag, uint8 slot, bool explicit_pos) const
 
uint8 GetInventorySlotCount () const
 
void SetInventorySlotCount (uint8 slots)
 
uint8 GetBankBagSlotCount () const
 
void SetBankBagSlotCount (uint8 count)
 
bool HasItemCount (uint32 item, uint32 count=1, bool inBankAlso=false) const
 
bool HasItemFitToSpellRequirements (SpellInfo const *spellInfo, Item const *ignoreItem=nullptr) const
 
bool CanNoReagentCast (SpellInfo const *spellInfo) const
 
void SetNoRegentCostMask (flag128 mask)
 
bool HasItemOrGemWithIdEquipped (uint32 item, uint32 count, uint8 except_slot=NULL_SLOT) const
 
bool HasItemWithLimitCategoryEquipped (uint32 limitCategory, uint32 count, uint8 except_slot=NULL_SLOT) const
 
bool HasGemWithLimitCategoryEquipped (uint32 limitCategory, uint32 count, uint8 except_slot=NULL_SLOT) const
 
InventoryResult CanTakeMoreSimilarItems (Item *pItem, uint32 *offendingItemId=nullptr) const
 
InventoryResult CanTakeMoreSimilarItems (uint32 entry, uint32 count, uint32 *offendingItemId=nullptr) const
 
InventoryResult CanStoreNewItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 item, uint32 count, uint32 *no_space_count=nullptr) const
 
InventoryResult CanStoreItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, Item *pItem, bool swap=false) const
 
InventoryResult CanStoreItems (Item **items, int count, uint32 *offendingItemId) const
 
InventoryResult CanEquipNewItem (uint8 slot, uint16 &dest, uint32 item, bool swap) const
 
InventoryResult CanEquipItem (uint8 slot, uint16 &dest, Item *pItem, bool swap, bool not_loading=true) const
 
InventoryResult CanEquipChildItem (Item *parentItem) const
 
InventoryResult CanEquipUniqueItem (Item *pItem, uint8 except_slot=NULL_SLOT, uint32 limit_count=1) const
 
InventoryResult CanEquipUniqueItem (ItemTemplate const *itemProto, uint8 except_slot=NULL_SLOT, uint32 limit_count=1) const
 
InventoryResult CanUnequipItems (uint32 item, uint32 count) const
 
InventoryResult CanUnequipItem (uint16 src, bool swap) const
 
InventoryResult CanBankItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, Item *pItem, bool swap, bool not_loading=true) const
 
InventoryResult CanUseItem (Item *pItem, bool not_loading=true) const
 
bool HasItemTotemCategory (uint32 TotemCategory) const
 
InventoryResult CanUseItem (ItemTemplate const *pItem, bool skipRequiredLevelCheck=false) const
 
InventoryResult CanRollForItemInLFG (ItemTemplate const *item, WorldObject const *lootedObject) const
 
ItemStoreNewItem (ItemPosCountVec const &pos, uint32 itemId, bool update, ItemRandomBonusListId randomBonusListId=0, GuidSet const &allowedLooters=GuidSet(), ItemContext context=ItemContext::NONE, std::vector< int32 > const &bonusListIDs=std::vector< int32 >(), bool addToCollection=true)
 
ItemStoreItem (ItemPosCountVec const &pos, Item *pItem, bool update)
 
ItemEquipNewItem (uint16 pos, uint32 item, ItemContext context, bool update)
 
ItemEquipItem (uint16 pos, Item *pItem, bool update)
 
void AutoUnequipOffhandIfNeed (bool force=false)
 
void EquipChildItem (uint8 parentBag, uint8 parentSlot, Item *parentItem)
 
void AutoUnequipChildItem (Item *parentItem)
 
bool StoreNewItemInBestSlots (uint32 item_id, uint32 item_count)
 
void AutoStoreLoot (uint8 bag, uint8 slot, uint32 loot_id, LootStore const &store, ItemContext context=ItemContext::NONE, bool broadcast=false)
 
void AutoStoreLoot (uint32 loot_id, LootStore const &store, ItemContext context=ItemContext::NONE, bool broadcast=false)
 
void StoreLootItem (uint8 lootSlot, Loot *loot, AELootResult *aeResult=nullptr)
 
InventoryResult CanTakeMoreSimilarItems (uint32 entry, uint32 count, Item *pItem, uint32 *no_space_count=nullptr, uint32 *offendingItemId=nullptr) const
 
InventoryResult CanStoreItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 entry, uint32 count, Item *pItem=nullptr, bool swap=false, uint32 *no_space_count=nullptr) const
 
void AddRefundReference (ObjectGuid it)
 
void DeleteRefundReference (ObjectGuid it)
 
void SendNewCurrency (uint32 id) const
 send initialization of new currency for client More...
 
void SendCurrencies () const
 send full data about all currencies to client More...
 
void SendPvpRewards () const
 send conquest currency points and their cap week/arena More...
 
uint32 GetCurrency (uint32 id) const
 return count of currency witch has plr More...
 
uint32 GetCurrencyOnWeek (uint32 id) const
 return count of currency gaind on current week More...
 
uint32 GetCurrencyWeekCap (uint32 id) const
 return week cap by currency id More...
 
uint32 GetTrackedCurrencyCount (uint32 id) const
 return tracked currency count by currency id More...
 
bool HasCurrency (uint32 id, uint32 count) const
 return presence related currency More...
 
void SetCreateCurrency (uint32 id, uint32 count, bool printLog=true)
 initialize currency count for custom initialization at create character More...
 
void ResetCurrencyWeekCap ()
 
- Public Member Functions inherited from Unit
virtual ~Unit ()
 
bool IsAIEnabled () const
 
void AIUpdateTick (uint32 diff, bool force=false)
 
UnitAIGetAI () const
 
void SetAI (UnitAI *newAI)
 
void ScheduleAIChange ()
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
void CleanupBeforeRemoveFromMap (bool finalCleanup)
 
void CleanupsBeforeDelete (bool finalCleanup=true) override
 
virtual bool IsAffectedByDiminishingReturns () const
 
DiminishingLevels GetDiminishing (DiminishingGroup group) const
 
void IncrDiminishing (SpellInfo const *auraSpellInfo)
 
bool ApplyDiminishingToDuration (SpellInfo const *auraSpellInfo, int32 &duration, WorldObject *caster, DiminishingLevels previousLevel) const
 
void ApplyDiminishingAura (DiminishingGroup group, bool apply)
 
void ClearDiminishings ()
 
void setAttackTimer (WeaponAttackType type, uint32 time)
 
void resetAttackTimer (WeaponAttackType type=BASE_ATTACK)
 
uint32 getAttackTimer (WeaponAttackType type) const
 
bool isAttackReady (WeaponAttackType type=BASE_ATTACK) const
 
bool haveOffhandWeapon () const
 
bool CanDualWield () const
 
virtual void SetCanDualWield (bool value)
 
float GetCombatReach () const override
 
void SetCombatReach (float combatReach)
 
float GetBoundingRadius () const
 
void SetBoundingRadius (float boundingRadius)
 
bool IsWithinCombatRange (Unit const *obj, float dist2compare) const
 
bool IsWithinMeleeRange (Unit const *obj) const
 
bool IsWithinMeleeRangeAt (Position const &pos, Unit const *obj) const
 
float GetMeleeRange (Unit const *target) const
 
bool IsWithinBoundaryRadius (const Unit *obj) const
 
void _addAttacker (Unit *pAttacker)
 
void _removeAttacker (Unit *pAttacker)
 
UnitgetAttackerForHelper () const
 
bool Attack (Unit *victim, bool meleeAttack)
 
void CastStop (uint32 except_spellid=0)
 
bool AttackStop ()
 
void RemoveAllAttackers ()
 
AttackerSet const & getAttackers () const
 
bool isAttackingPlayer () const
 
UnitGetVictim () const
 
UnitEnsureVictim () const
 
void ValidateAttackersAndOwnTarget ()
 
void CombatStop (bool includingCast=false, bool mutualPvP=true)
 
void CombatStopWithPets (bool includingCast=false)
 
void StopAttackFaction (uint32 faction_id)
 
UnitSelectNearbyTarget (Unit *exclude=nullptr, float dist=NOMINAL_MELEE_RANGE) const
 
void SendMeleeAttackStop (Unit *victim=nullptr)
 
void SendMeleeAttackStart (Unit *victim)
 
void AddUnitState (uint32 f)
 
bool HasUnitState (const uint32 f) const
 
void ClearUnitState (uint32 f)
 
bool CanFreeMove () const
 
uint32 HasUnitTypeMask (uint32 mask) const
 
void AddUnitTypeMask (uint32 mask)
 
bool IsSummon () const
 
bool IsGuardian () const
 
bool IsPet () const
 
bool IsHunterPet () const
 
bool IsTotem () const
 
bool IsVehicle () const
 
uint8 getLevel () const
 
uint8 GetLevelForTarget (WorldObject const *) const override
 
void SetLevel (uint8 lvl)
 
uint8 getRace () const
 
void SetRace (uint8 race)
 
uint64 getRaceMask () const
 
uint8 getClass () const
 
void SetClass (uint8 classId)
 
uint32 getClassMask () const
 
uint8 getGender () const
 
void SetGender (uint8 sex)
 
float GetStat (Stats stat) const
 
void SetStat (Stats stat, int32 val)
 
uint32 GetArmor () const
 
void SetArmor (int32 val, int32 bonusVal)
 
int32 GetResistance (SpellSchools school) const
 
int32 GetBonusResistanceMod (SpellSchools school) const
 
int32 GetResistance (SpellSchoolMask mask) const
 
void SetResistance (SpellSchools school, int32 val)
 
void SetBonusResistanceMod (SpellSchools school, int32 val)
 
uint64 GetHealth () const
 
uint64 GetMaxHealth () const
 
bool IsFullHealth () const
 
bool HealthBelowPct (int32 pct) const
 
bool HealthBelowPctDamaged (int32 pct, uint32 damage) const
 
bool HealthAbovePct (int32 pct) const
 
bool HealthAbovePctHealed (int32 pct, uint32 heal) const
 
float GetHealthPct () const
 
uint64 CountPctFromMaxHealth (int32 pct) const
 
uint64 CountPctFromCurHealth (int32 pct) const
 
void SetHealth (uint64 val)
 
void SetMaxHealth (uint64 val)
 
void SetFullHealth ()
 
int64 ModifyHealth (int64 val)
 
int64 GetHealthGain (int64 dVal)
 
virtual float GetHealthMultiplierForTarget (WorldObject const *) const
 
virtual float GetDamageMultiplierForTarget (WorldObject const *) const
 
virtual float GetArmorMultiplierForTarget (WorldObject const *) const
 
Powers GetPowerType () const
 
void SetPowerType (Powers power)
 
void SetOverrideDisplayPowerId (uint32 powerDisplayId)
 
void UpdateDisplayPower ()
 
int32 GetPower (Powers power) const
 
int32 GetMinPower (Powers power) const
 
int32 GetMaxPower (Powers power) const
 
float GetPowerPct (Powers power) const
 
int32 CountPctFromMaxPower (Powers power, int32 pct) const
 
void SetPower (Powers power, int32 val, bool withPowerUpdate=true)
 
void SetMaxPower (Powers power, int32 val)
 
void TriggerOnPowerChangeAuras (Powers power, int32 oldVal, int32 newVal)
 
void SetFullPower (Powers power)
 
int32 ModifyPower (Powers power, int32 val, bool withPowerUpdate=true)
 
void ApplyModManaCostMultiplier (float manaCostMultiplier, bool apply)
 
void ApplyModManaCostModifier (SpellSchools school, int32 mod, bool apply)
 
uint32 GetBaseAttackTime (WeaponAttackType att) const
 
void SetBaseAttackTime (WeaponAttackType att, uint32 val)
 
void UpdateAttackTimeField (WeaponAttackType att)
 
void ApplyAttackTimePercentMod (WeaponAttackType att, float val, bool apply)
 
void ApplyCastTimePercentMod (float val, bool apply)
 
void SetModCastingSpeed (float castingSpeed)
 
void SetModSpellHaste (float spellHaste)
 
void SetModHaste (float haste)
 
void SetModRangedHaste (float rangedHaste)
 
void SetModHasteRegen (float hasteRegen)
 
void SetModTimeRate (float timeRate)
 
bool HasUnitFlag (UnitFlags flags) const
 
void AddUnitFlag (UnitFlags flags)
 
void RemoveUnitFlag (UnitFlags flags)
 
void SetUnitFlags (UnitFlags flags)
 
bool HasUnitFlag2 (UnitFlags2 flags) const
 
void AddUnitFlag2 (UnitFlags2 flags)
 
void RemoveUnitFlag2 (UnitFlags2 flags)
 
void SetUnitFlags2 (UnitFlags2 flags)
 
bool HasUnitFlag3 (UnitFlags3 flags) const
 
void AddUnitFlag3 (UnitFlags3 flags)
 
void RemoveUnitFlag3 (UnitFlags3 flags)
 
void SetUnitFlags3 (UnitFlags3 flags)
 
void SetCreatedBySpell (int32 spellId)
 
Emote GetEmoteState () const
 
void SetEmoteState (Emote emote)
 
SheathState GetSheath () const
 
void SetSheath (SheathState sheathed)
 
uint32 GetFaction () const override
 
void SetFaction (uint32 faction) override
 
bool IsInPartyWith (Unit const *unit) const
 
bool IsInRaidWith (Unit const *unit) const
 
void GetPartyMembers (std::list< Unit *> &units)
 
bool IsContestedGuard () const
 
UnitPVPStateFlags GetPvpFlags () const
 
bool HasPvpFlag (UnitPVPStateFlags flags) const
 
void AddPvpFlag (UnitPVPStateFlags flags)
 
void RemovePvpFlag (UnitPVPStateFlags flags)
 
void SetPvpFlags (UnitPVPStateFlags flags)
 
bool IsInSanctuary () const
 
bool IsPvP () const
 
bool IsFFAPvP () const
 
UnitPetFlag GetPetFlags () const
 
bool HasPetFlag (UnitPetFlag flags) const
 
void AddPetFlag (UnitPetFlag flags)
 
void RemovePetFlag (UnitPetFlag flags)
 
void SetPetFlags (UnitPetFlag flags)
 
uint32 GetCreatureType () const
 
uint32 GetCreatureTypeMask () const
 
UnitStandStateType GetStandState () const
 
bool IsSitState () const
 
bool IsStandState () const
 
void SetStandState (UnitStandStateType state, uint32 animKitID=0)
 
void AddVisFlags (UnitVisFlags flags)
 
void RemoveVisFlags (UnitVisFlags flags)
 
void SetVisFlags (UnitVisFlags flags)
 
void SetAnimTier (UnitBytes1_Flags animTier, bool notifyClient)
 
bool IsMounted () const
 
uint32 GetMountDisplayId () const
 
void SetMountDisplayId (uint32 mountDisplayId)
 
uint32 GetCosmeticMountDisplayId () const
 
void SetCosmeticMountDisplayId (uint32 mountDisplayId)
 
void Mount (uint32 mount, uint32 vehicleId=0, uint32 creatureEntry=0)
 
void Dismount ()
 
MountCapabilityEntry const * GetMountCapability (uint32 mountType) const
 
void SendDurabilityLoss (Player *receiver, uint32 percent)
 
void PlayOneShotAnimKitId (uint16 animKitId)
 
void SetAIAnimKitId (uint16 animKitId)
 
uint16 GetAIAnimKitId () const override
 
void SetMovementAnimKitId (uint16 animKitId)
 
uint16 GetMovementAnimKitId () const override
 
void SetMeleeAnimKitId (uint16 animKitId)
 
uint16 GetMeleeAnimKitId () const override
 
uint16 GetMaxSkillValueForLevel (Unit const *target=nullptr) const
 
void KillSelf (bool durabilityLoss=true, bool skipSettingDeathState=false)
 
void GetProcAurasTriggeredOnEvent (AuraApplicationProcContainer &aurasTriggeringProc, AuraApplicationList *procAuras, ProcEventInfo &eventInfo)
 
void TriggerAurasProcOnEvent (AuraApplicationList *myProcAuras, AuraApplicationList *targetProcAuras, Unit *actionTarget, uint32 typeMaskActor, uint32 typeMaskActionTarget, uint32 spellTypeMask, uint32 spellPhaseMask, uint32 hitMask, Spell *spell, DamageInfo *damageInfo, HealInfo *healInfo)
 
void TriggerAurasProcOnEvent (ProcEventInfo &eventInfo, AuraApplicationProcContainer &procAuras)
 
void HandleEmoteCommand (uint32 anim_id, Player *target=nullptr, Trinity::IteratorPair< int32 const *> spellVisualKitIds={})
 
void AttackerStateUpdate (Unit *victim, WeaponAttackType attType=BASE_ATTACK, bool extra=false)
 
void FakeAttackerStateUpdate (Unit *victim, WeaponAttackType attType=BASE_ATTACK)
 
void CalculateMeleeDamage (Unit *victim, CalcDamageInfo *damageInfo, WeaponAttackType attackType=BASE_ATTACK)
 
void DealMeleeDamage (CalcDamageInfo *damageInfo, bool durabilityLoss)
 
void HandleProcExtraAttackFor (Unit *victim)
 
void CalculateSpellDamageTaken (SpellNonMeleeDamage *damageInfo, int32 damage, SpellInfo const *spellInfo, WeaponAttackType attackType=BASE_ATTACK, bool crit=false)
 
void DealSpellDamage (SpellNonMeleeDamage const *damageInfo, bool durabilityLoss)
 
uint32 GetDamageReduction (uint32 damage) const
 
int32 CalculateAOEAvoidance (int32 damage, uint32 schoolMask, ObjectGuid const &casterGuid) const
 
float MeleeSpellMissChance (Unit const *victim, WeaponAttackType attType, SpellInfo const *spellInfo) const override
 
SpellMissInfo MeleeSpellHitResult (Unit *victim, SpellInfo const *spellInfo) const override
 
float GetUnitDodgeChance (WeaponAttackType attType, Unit const *victim) const
 
float GetUnitParryChance (WeaponAttackType attType, Unit const *victim) const
 
float GetUnitBlockChance (WeaponAttackType attType, Unit const *victim) const
 
float GetUnitMissChance () const
 
float GetUnitCriticalChanceDone (WeaponAttackType attackType) const
 
float GetUnitCriticalChanceTaken (Unit const *attacker, WeaponAttackType attackType, float critDone) const
 
float GetUnitCriticalChanceAgainst (WeaponAttackType attackType, Unit const *victim) const
 
int32 GetMechanicResistChance (SpellInfo const *spellInfo) const
 
bool CanUseAttackType (uint8 attacktype) const
 
float GetWeaponProcChance () const
 
float GetPPMProcChance (uint32 WeaponSpeed, float PPM, SpellInfo const *spellProto) const
 
MeleeHitOutcome RollMeleeOutcomeAgainst (Unit const *victim, WeaponAttackType attType) const
 
bool HasNpcFlag (NPCFlags flags) const
 
void AddNpcFlag (NPCFlags flags)
 
void RemoveNpcFlag (NPCFlags flags)
 
void SetNpcFlags (NPCFlags flags)
 
bool HasNpcFlag2 (NPCFlags2 flags) const
 
void AddNpcFlag2 (NPCFlags2 flags)
 
void RemoveNpcFlag2 (NPCFlags2 flags)
 
void SetNpcFlags2 (NPCFlags2 flags)
 
bool IsVendor () const
 
bool IsTrainer () const
 
bool IsQuestGiver () const
 
bool IsGossip () const
 
bool IsTaxi () const
 
bool IsGuildMaster () const
 
bool IsBattleMaster () const
 
bool IsBanker () const
 
bool IsInnkeeper () const
 
bool IsSpiritHealer () const
 
bool IsSpiritGuide () const
 
bool IsTabardDesigner () const
 
bool IsAuctioner () const
 
bool IsArmorer () const
 
bool IsWildBattlePet () const
 
bool IsServiceProvider () const
 
bool IsSpiritService () const
 
bool IsCritter () const
 
bool IsInFlight () const
 
bool CanHaveThreatList () const
 ====================== THREAT & COMBAT ==================== More...
 
bool IsEngaged () const
 
bool IsEngagedBy (Unit const *who) const
 
void EngageWithTarget (Unit *who)
 
CombatManagerGetCombatManager ()
 
CombatManager const & GetCombatManager () const
 
void AttackedTarget (Unit *target, bool canInitialAggro)
 
bool IsImmuneToAll () const
 
void SetImmuneToAll (bool apply, bool keepCombat)
 
virtual void SetImmuneToAll (bool apply)
 
bool IsImmuneToPC () const
 
void SetImmuneToPC (bool apply, bool keepCombat)
 
virtual void SetImmuneToPC (bool apply)
 
bool IsImmuneToNPC () const
 
void SetImmuneToNPC (bool apply, bool keepCombat)
 
virtual void SetImmuneToNPC (bool apply)
 
bool IsInCombat () const
 
bool IsInCombatWith (Unit const *who) const
 
void SetInCombatWith (Unit *enemy)
 
void ClearInCombat ()
 
void UpdatePetCombatState ()
 
bool IsThreatened () const
 
bool IsThreatenedBy (Unit const *who) const
 
ThreatManagerGetThreatManager ()
 
ThreatManager const & GetThreatManager () const
 
void SendClearTarget ()
 
bool HasAuraTypeWithFamilyFlags (AuraType auraType, uint32 familyName, flag128 familyFlags) const
 
bool HasBreakableByDamageAuraType (AuraType type, uint32 excludeAura=0) const
 
bool HasBreakableByDamageCrowdControlAura (Unit *excludeCasterChannel=nullptr) const
 
bool HasStealthAura () const
 
bool HasInvisibilityAura () const
 
bool IsFeared () const
 
bool HasRootAura () const
 
bool IsPolymorphed () const
 
bool IsFrozen () const
 
bool isTargetableForAttack (bool checkFakeDeath=true) const
 
bool isInAccessiblePlaceFor (Creature const *c) const
 
void SendHealSpellLog (HealInfo &healInfo, bool critical=false)
 
int32 HealBySpell (HealInfo &healInfo, bool critical=false)
 
void SendEnergizeSpellLog (Unit *victim, uint32 spellId, int32 damage, int32 overEnergize, Powers powerType)
 
void EnergizeBySpell (Unit *victim, SpellInfo const *spellInfo, int32 damage, Powers powerType)
 
AuraAddAura (uint32 spellId, Unit *target)
 
AuraAddAura (SpellInfo const *spellInfo, uint32 effMask, Unit *target)
 
void SetAuraStack (uint32 spellId, Unit *target, uint32 stack)
 
void SendCancelOrphanSpellVisual (uint32 id)
 
void SendPlayOrphanSpellVisual (ObjectGuid const &target, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendPlayOrphanSpellVisual (Position const &targetLocation, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendCancelSpellVisual (uint32 id)
 
void SendPlaySpellVisual (Unit *target, uint32 spellVisualId, uint16 missReason, uint16 reflectStatus, float travelSpeed, bool speedAsTime=false)
 
void SendPlaySpellVisual (Position const &targetPosition, float o, uint32 spellVisualId, uint16 missReason, uint16 reflectStatus, float travelSpeed, bool speedAsTime=false)
 
void SendCancelSpellVisualKit (uint32 id)
 
void SendPlaySpellVisualKit (uint32 id, uint32 type, uint32 duration) const
 
void CancelSpellMissiles (uint32 spellId, bool reverseMissile=false)
 
void DeMorph ()
 
void SendAttackStateUpdate (CalcDamageInfo *damageInfo)
 
void SendAttackStateUpdate (uint32 HitInfo, Unit *target, uint8 SwingType, SpellSchoolMask damageSchoolMask, uint32 Damage, uint32 AbsorbDamage, uint32 Resist, VictimState TargetState, uint32 BlockedAmount)
 
void SendSpellNonMeleeDamageLog (SpellNonMeleeDamage const *log)
 
void SendPeriodicAuraLog (SpellPeriodicAuraLogInfo *pInfo)
 
void SendSpellDamageResist (Unit *target, uint32 spellId)
 
void SendSpellDamageImmune (Unit *target, uint32 spellId, bool isPeriodic)
 
void NearTeleportTo (Position const &pos, bool casting=false)
 
void NearTeleportTo (float x, float y, float z, float orientation, bool casting=false)
 
void SendTeleportPacket (Position const &pos)
 
void UpdateOrientation (float orientation)
 Only server-side orientation update, does not broadcast to client. More...
 
void UpdateHeight (float newZ)
 Only server-side height update, does not broadcast to client. More...
 
void SendMoveKnockBack (Player *player, float speedXY, float speedZ, float vcos, float vsin)
 
void KnockbackFrom (float x, float y, float speedXY, float speedZ, Movement::SpellEffectExtraData const *spellEffectExtraData=nullptr)
 
void JumpTo (float speedXY, float speedZ, bool forward=true)
 
void JumpTo (WorldObject *obj, float speedZ, bool withOrientation=false)
 
void MonsterMoveWithSpeed (float x, float y, float z, float speed, bool generatePath=false, bool forceDestination=false)
 
void SendSetPlayHoverAnim (bool enable)
 
void SetHoverHeight (float hoverHeight)
 
bool IsLevitating () const
 
bool IsWalking () const
 
bool IsHovering () const
 
bool SetWalk (bool enable)
 
bool SetDisableGravity (bool disable)
 
bool SetFall (bool enable)
 
bool SetSwim (bool enable)
 
bool SetCanFly (bool enable)
 
bool SetWaterWalking (bool enable)
 
bool SetFeatherFall (bool enable)
 
bool SetHover (bool enable)
 
bool SetCollision (bool disable)
 
bool SetCanTransitionBetweenSwimAndFly (bool enable)
 
bool SetCanTurnWhileFalling (bool enable)
 
bool SetCanDoubleJump (bool enable)
 
void SendSetVehicleRecId (uint32 vehicleId)
 
MovementForces const * GetMovementForces () const
 
void ApplyMovementForce (ObjectGuid id, Position origin, float magnitude, uint8 type, Position direction={}, ObjectGuid transportGuid=ObjectGuid::Empty)
 
void RemoveMovementForce (ObjectGuid id)
 
bool SetIgnoreMovementForces (bool ignore)
 
void UpdateMovementForcesModMagnitude ()
 
void SetInFront (WorldObject const *target)
 
void SetFacingTo (float const ori, bool force=true)
 
void SetFacingToObject (WorldObject const *object, bool force=true)
 
bool IsAlive () const
 
bool isDying () const
 
bool isDead () const
 
DeathState getDeathState () const
 
ObjectGuid GetOwnerGUID () const override
 
void SetOwnerGUID (ObjectGuid owner)
 
ObjectGuid GetCreatorGUID () const
 
void SetCreatorGUID (ObjectGuid creator)
 
ObjectGuid GetMinionGUID () const
 
void SetMinionGUID (ObjectGuid guid)
 
ObjectGuid GetPetGUID () const
 
void SetPetGUID (ObjectGuid guid)
 
ObjectGuid GetCritterGUID () const
 
void SetCritterGUID (ObjectGuid guid)
 
ObjectGuid GetBattlePetCompanionGUID () const
 
void SetBattlePetCompanionGUID (ObjectGuid guid)
 
ObjectGuid GetDemonCreatorGUID () const
 
void SetDemonCreatorGUID (ObjectGuid guid)
 
ObjectGuid GetCharmerGUID () const
 
UnitGetCharmer () const
 
ObjectGuid GetCharmedGUID () const
 
UnitGetCharmed () const
 
bool IsControlledByPlayer () const
 
PlayerGetControllingPlayer () const
 
ObjectGuid GetCharmerOrOwnerGUID () const override
 
bool IsCharmedOwnedByPlayerOrPlayer () const
 
GuardianGetGuardianPet () const
 
MinionGetFirstMinion () const
 
UnitGetCharmerOrOwner () const
 
void SetMinion (Minion *minion, bool apply)
 
void GetAllMinionsByEntry (std::list< TempSummon *> &Minions, uint32 entry)
 
void RemoveAllMinionsByEntry (uint32 entry)
 
void SetCharm (Unit *target, bool apply)
 
UnitGetNextRandomRaidMemberOrPet (float radius)
 
bool SetCharmedBy (Unit *charmer, CharmType type, AuraApplication const *aurApp=nullptr)
 
void RemoveCharmedBy (Unit *charmer)
 
void RestoreFaction ()
 
UnitGetFirstControlled () const
 
void RemoveAllControlled ()
 
bool IsCharmed () const
 
bool isPossessed () const
 
bool isPossessedByPlayer () const
 
bool isPossessing () const
 
bool isPossessing (Unit *u) const
 
CharmInfoGetCharmInfo ()
 
CharmInfoInitCharmInfo ()
 
void DeleteCharmInfo ()
 
void SetPetNumberForClient (uint32 petNumber)
 
void SetPetNameTimestamp (uint32 timestamp)
 
UnitGetUnitBeingMoved () const
 
PlayerGetPlayerBeingMoved () const
 
PlayerGetPlayerMovingMe () const
 
SharedVisionList const & GetSharedVisionList ()
 
void AddPlayerToVision (Player *player)
 
void RemovePlayerFromVision (Player *player)
 
bool HasSharedVision () const
 
void RemoveBindSightAuras ()
 
void RemoveCharmAuras ()
 
PetCreateTamedPetFrom (Creature *creatureTarget, uint32 spell_id=0)
 
PetCreateTamedPetFrom (uint32 creatureEntry, uint32 spell_id=0)
 
bool InitTamedPet (Pet *pet, uint8 level, uint32 spell_id)
 
void SetWildBattlePetLevel (uint32 wildBattlePetLevel)
 
uint32 GetWildBattlePetLevel () const
 
Aura_TryStackingOrRefreshingExistingAura (AuraCreateInfo &createInfo)
 
void _AddAura (UnitAura *aura, Unit *caster)
 
AuraApplication_CreateAuraApplication (Aura *aura, uint32 effMask)
 
void _ApplyAuraEffect (Aura *aura, uint8 effIndex)
 
void _ApplyAura (AuraApplication *aurApp, uint32 effMask)
 
void _UnapplyAura (AuraApplicationMap::iterator &i, AuraRemoveMode removeMode)
 
void _UnapplyAura (AuraApplication *aurApp, AuraRemoveMode removeMode)
 
void _RemoveNoStackAurasDueToAura (Aura *aura)
 
void _RegisterAuraEffect (AuraEffect *aurEff, bool apply)
 
AuraMapGetOwnedAuras ()
 
AuraMap const & GetOwnedAuras () const
 
void RemoveOwnedAura (AuraMap::iterator &i, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveOwnedAura (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveOwnedAura (Aura *aura, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
AuraGetOwnedAura (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, Aura *except=nullptr) const
 
AuraApplicationMapGetAppliedAuras ()
 
AuraApplicationMap const & GetAppliedAuras () const
 
void RemoveAura (AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAura (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAura (AuraApplication *aurApp, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAura (Aura *aur, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAppliedAuras (std::function< bool(AuraApplication const *)> const &check)
 
void RemoveOwnedAuras (std::function< bool(Aura const *)> const &check)
 
void RemoveAppliedAuras (uint32 spellId, std::function< bool(AuraApplication const *)> const &check)
 
void RemoveOwnedAuras (uint32 spellId, std::function< bool(Aura const *)> const &check)
 
void RemoveAurasByType (AuraType auraType, std::function< bool(AuraApplication const *)> const &check)
 
void RemoveAurasDueToSpell (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAuraFromStack (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT, uint16 num=1)
 
void RemoveAurasDueToSpellByDispel (uint32 spellId, uint32 dispellerSpellId, ObjectGuid casterGUID, WorldObject *dispeller, uint8 chargesRemoved=1)
 
void RemoveAurasDueToSpellBySteal (uint32 spellId, ObjectGuid casterGUID, WorldObject *stealer)
 
void RemoveAurasDueToItemSpell (uint32 spellId, ObjectGuid castItemGuid)
 
void RemoveAurasByType (AuraType auraType, ObjectGuid casterGUID=ObjectGuid::Empty, Aura *except=nullptr, bool negative=true, bool positive=true)
 
void RemoveNotOwnSingleTargetAuras (bool onPhaseChange=false)
 
template<typename InterruptFlags >
void RemoveAurasWithInterruptFlags (InterruptFlags flag, uint32 except=0)
 
void RemoveAurasWithAttribute (uint32 flags)
 
void RemoveAurasWithFamily (SpellFamilyNames family, flag128 const &familyFlag, ObjectGuid casterGUID)
 
void RemoveAurasWithMechanic (uint32 mechanic_mask, AuraRemoveMode removemode=AURA_REMOVE_BY_DEFAULT, uint32 except=0)
 
void RemoveMovementImpairingAuras (bool withRoot)
 
void RemoveAurasByShapeShift ()
 
void RemoveAreaAurasDueToLeaveWorld ()
 
void RemoveAllAuras ()
 
void RemoveArenaAuras ()
 
void RemoveAurasOnEvade ()
 
void RemoveAllAurasOnDeath ()
 
void RemoveAllAurasRequiringDeadTarget ()
 
void RemoveAllAurasExceptType (AuraType type)
 
void RemoveAllAurasExceptType (AuraType type1, AuraType type2)
 
void RemoveAllGroupBuffsFromCaster (ObjectGuid casterGUID)
 
void DelayOwnedAuras (uint32 spellId, ObjectGuid caster, int32 delaytime)
 
void _RemoveAllAuraStatMods ()
 
void _ApplyAllAuraStatMods ()
 
AuraEffectList const & GetAuraEffectsByType (AuraType type) const
 
AuraEffectListGetAuraEffectsByType (AuraType type)
 
AuraListGetSingleCastAuras ()
 
AuraList const & GetSingleCastAuras () const
 
AuraEffectGetAuraEffect (uint32 spellId, uint8 effIndex, ObjectGuid casterGUID=ObjectGuid::Empty) const
 
AuraEffectGetAuraEffectOfRankedSpell (uint32 spellId, uint8 effIndex, ObjectGuid casterGUID=ObjectGuid::Empty) const
 
AuraEffectGetAuraEffect (AuraType type, SpellFamilyNames family, flag128 const &familyFlag, ObjectGuid casterGUID=ObjectGuid::Empty) const
 
AuraApplicationGetAuraApplication (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraApplication *except=nullptr) const
 
AuraApplicationGetAuraApplication (uint32 spellId, std::function< bool(AuraApplication const *)> const &predicate) const
 
AuraApplicationGetAuraApplication (uint32 spellId, std::function< bool(Aura const *)> const &predicate) const
 
AuraApplicationGetAuraApplication (std::function< bool(AuraApplication const *)> const &predicate) const
 
AuraApplicationGetAuraApplication (std::function< bool(Aura const *)> const &predicate) const
 
AuraGetAura (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
 
AuraGetAura (uint32 spellId, std::function< bool(Aura const *)> const &predicate) const
 
AuraGetAura (std::function< bool(Aura const *)> const &predicate) const
 
AuraApplicationGetAuraApplicationOfRankedSpell (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraApplication *except=nullptr) const
 
AuraGetAuraOfRankedSpell (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
 
void GetDispellableAuraList (WorldObject const *caster, uint32 dispelMask, DispelChargesList &dispelList, bool isReflect=false) const
 
bool HasAuraEffect (uint32 spellId, uint8 effIndex, ObjectGuid caster=ObjectGuid::Empty) const
 
uint32 GetAuraCount (uint32 spellId) const
 
bool HasAura (uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
 
bool HasAura (std::function< bool(Aura const *)> const &predicate) const
 
bool HasAuraType (AuraType auraType) const
 
bool HasAuraTypeWithCaster (AuraType auraType, ObjectGuid caster) const
 
bool HasAuraTypeWithMiscvalue (AuraType auraType, int32 miscValue) const
 
bool HasAuraTypeWithAffectMask (AuraType auraType, SpellInfo const *affectedSpell) const
 
bool HasAuraTypeWithValue (AuraType auraType, int32 value) const
 
template<typename InterruptFlags >
bool HasNegativeAuraWithInterruptFlag (InterruptFlags flag, ObjectGuid guid=ObjectGuid::Empty) const
 
bool HasAuraWithMechanic (uint32 mechanicMask) const
 
bool HasStrongerAuraWithDR (SpellInfo const *auraSpellInfo, Unit *caster) const
 
AuraEffectIsScriptOverriden (SpellInfo const *spell, int32 script) const
 
uint32 GetDiseasesByCaster (ObjectGuid casterGUID, bool remove=false)
 
uint32 GetDoTsByCaster (ObjectGuid casterGUID) const
 
int32 GetTotalAuraModifier (AuraType auraType) const
 
float GetTotalAuraMultiplier (AuraType auraType) const
 
int32 GetMaxPositiveAuraModifier (AuraType auraType) const
 
int32 GetMaxNegativeAuraModifier (AuraType auraType) const
 
int32 GetTotalAuraModifier (AuraType auraType, std::function< bool(AuraEffect const *)> const &predicate) const
 
float GetTotalAuraMultiplier (AuraType auraType, std::function< bool(AuraEffect const *)> const &predicate) const
 
int32 GetMaxPositiveAuraModifier (AuraType auraType, std::function< bool(AuraEffect const *)> const &predicate) const
 
int32 GetMaxNegativeAuraModifier (AuraType auraType, std::function< bool(AuraEffect const *)> const &predicate) const
 
int32 GetTotalAuraModifierByMiscMask (AuraType auraType, uint32 misc_mask) const
 
float GetTotalAuraMultiplierByMiscMask (AuraType auraType, uint32 misc_mask) const
 
int32 GetMaxPositiveAuraModifierByMiscMask (AuraType auraType, uint32 misc_mask, AuraEffect const *except=nullptr) const
 
int32 GetMaxNegativeAuraModifierByMiscMask (AuraType auraType, uint32 misc_mask) const
 
int32 GetTotalAuraModifierByMiscValue (AuraType auraType, int32 misc_value) const
 
float GetTotalAuraMultiplierByMiscValue (AuraType auraType, int32 misc_value) const
 
int32 GetMaxPositiveAuraModifierByMiscValue (AuraType auraType, int32 misc_value) const
 
int32 GetMaxNegativeAuraModifierByMiscValue (AuraType auraType, int32 misc_value) const
 
int32 GetTotalAuraModifierByAffectMask (AuraType auraType, SpellInfo const *affectedSpell) const
 
float GetTotalAuraMultiplierByAffectMask (AuraType auraType, SpellInfo const *affectedSpell) const
 
int32 GetMaxPositiveAuraModifierByAffectMask (AuraType auraType, SpellInfo const *affectedSpell) const
 
int32 GetMaxNegativeAuraModifierByAffectMask (AuraType auraType, SpellInfo const *affectedSpell) const
 
void InitStatBuffMods ()
 
void UpdateStatBuffMod (Stats stat)
 
void UpdateStatBuffModForClient (Stats stat)
 
void SetCreateStat (Stats stat, float val)
 
void SetCreateHealth (uint32 val)
 
uint32 GetCreateHealth () const
 
void SetCreateMana (uint32 val)
 
uint32 GetCreateMana () const
 
int32 GetCreatePowers (Powers power) const
 
float GetPosStat (Stats stat) const
 
float GetNegStat (Stats stat) const
 
float GetCreateStat (Stats stat) const
 
uint32 GetChannelSpellId () const
 
void SetChannelSpellId (uint32 channelSpellId)
 
uint32 GetChannelSpellXSpellVisualId () const
 
uint32 GetChannelScriptVisualId () const
 
void SetChannelVisual (SpellCastVisual channelVisual)
 
void AddChannelObject (ObjectGuid guid)
 
void SetChannelObject (uint32 slot, ObjectGuid guid)
 
void RemoveChannelObject (ObjectGuid guid)
 
void ClearChannelObjects ()
 
void SetCurrentCastSpell (Spell *pSpell)
 
void InterruptSpell (CurrentSpellTypes spellType, bool withDelayed=true, bool withInstant=true)
 
void FinishSpell (CurrentSpellTypes spellType, bool ok=true)
 
bool IsNonMeleeSpellCast (bool withDelayed, bool skipChanneled=false, bool skipAutorepeat=false, bool isAutoshoot=false, bool skipInstant=true) const
 
void InterruptNonMeleeSpells (bool withDelayed, uint32 spellid=0, bool withInstant=true)
 
SpellGetCurrentSpell (CurrentSpellTypes spellType) const
 
SpellGetCurrentSpell (uint32 spellType) const
 
SpellFindCurrentSpellBySpellId (uint32 spell_id) const
 
int32 GetCurrentSpellCastTime (uint32 spell_id) const
 
uint32 GetCastSpellXSpellVisualId (SpellInfo const *spellInfo) const override
 
virtual bool IsFocusing (Spell const *=nullptr, bool=false)
 
virtual bool IsMovementPreventedByCasting () const
 
bool CanCastSpellWhileMoving (SpellInfo const *spellInfo) const
 
SpellHistoryGetSpellHistory ()
 
SpellHistory const * GetSpellHistory () const
 
ShapeshiftForm GetShapeshiftForm () const
 
void SetShapeshiftForm (ShapeshiftForm form)
 
bool IsInFeralForm () const
 
bool IsInDisallowedMountForm () const
 
bool IsDisallowedMountForm (uint32 spellId, ShapeshiftForm form, uint32 displayId) const
 
void HandleStatFlatModifier (UnitMods unitMod, UnitModifierFlatType modifierType, float amount, bool apply)
 
void ApplyStatPctModifier (UnitMods unitMod, UnitModifierPctType modifierType, float amount)
 
void SetStatFlatModifier (UnitMods unitMod, UnitModifierFlatType modifierType, float val)
 
void SetStatPctModifier (UnitMods unitMod, UnitModifierPctType modifierType, float val)
 
float GetFlatModifierValue (UnitMods unitMod, UnitModifierFlatType modifierType) const
 
float GetPctModifierValue (UnitMods unitMod, UnitModifierPctType modifierType) const
 
void UpdateUnitMod (UnitMods unitMod)
 
void UpdateAllDamageDoneMods ()
 
void UpdateDamagePctDoneMods (WeaponAttackType attackType)
 
void UpdateAllDamagePctDoneMods ()
 
float GetTotalStatValue (Stats stat) const
 
float GetTotalAuraModValue (UnitMods unitMod) const
 
SpellSchools GetSpellSchoolByAuraGroup (UnitMods unitMod) const
 
Stats GetStatByAuraGroup (UnitMods unitMod) const
 
bool CanModifyStats () const
 
void SetCanModifyStats (bool modifyStats)
 
virtual void UpdateAllResistances ()
 
void SetAttackPower (int32 attackPower)
 
void SetAttackPowerModPos (int32 attackPowerMod)
 
void SetAttackPowerModNeg (int32 attackPowerMod)
 
void SetAttackPowerMultiplier (float attackPowerMult)
 
void SetRangedAttackPower (int32 attackPower)
 
void SetRangedAttackPowerModPos (int32 attackPowerMod)
 
void SetRangedAttackPowerModNeg (int32 attackPowerMod)
 
void SetRangedAttackPowerMultiplier (float attackPowerMult)
 
void SetMainHandWeaponAttackPower (int32 attackPower)
 
void SetOffHandWeaponAttackPower (int32 attackPower)
 
void SetRangedWeaponAttackPower (int32 attackPower)
 
virtual void UpdateDamagePhysical (WeaponAttackType attType)
 
float GetTotalAttackPowerValue (WeaponAttackType attType, bool includeWeapon=true) const
 
float GetWeaponDamageRange (WeaponAttackType attType, WeaponDamageRange type) const
 
void SetBaseWeaponDamage (WeaponAttackType attType, WeaponDamageRange damageRange, float value)
 
uint32 CalculateDamage (WeaponAttackType attType, bool normalized, bool addTotalPct) const
 
float GetAPMultiplier (WeaponAttackType attType, bool normalized) const
 
bool isInFrontInMap (Unit const *target, float distance, float arc=float(M_PI)) const
 
bool isInBackInMap (Unit const *target, float distance, float arc=float(M_PI)) const
 
bool IsVisible () const
 
void SetVisible (bool x)
 
void OnPhaseChange ()
 
void UpdateObjectVisibility (bool forced=true) override
 
VisibleAuraContainer const & GetVisibleAuras () const
 
bool HasVisibleAura (AuraApplication *aurApp) const
 
void SetVisibleAura (AuraApplication *aurApp)
 
void SetVisibleAuraUpdate (AuraApplication *aurApp)
 
void RemoveVisibleAura (AuraApplication *aurApp)
 
bool HasInterruptFlag (SpellAuraInterruptFlags flags) const
 
bool HasInterruptFlag (SpellAuraInterruptFlags2 flags) const
 
void AddInterruptMask (SpellAuraInterruptFlags flags, SpellAuraInterruptFlags2 flags2)
 
void UpdateInterruptMask ()
 
uint32 GetDisplayId () const
 
virtual void SetDisplayId (uint32 modelId, float displayScale=1.f)
 
uint32 GetNativeDisplayId () const
 
float GetNativeDisplayScale () const
 
void RestoreDisplayId (bool ignorePositiveAurasPreventingMounting=false)
 
void SetNativeDisplayId (uint32 displayId, float displayScale=1.f)
 
void SetTransformSpell (uint32 spellid)
 
uint32 GetTransformSpell () const
 
void _RegisterDynObject (DynamicObject *dynObj)
 
void _UnregisterDynObject (DynamicObject *dynObj)
 
DynamicObjectGetDynObject (uint32 spellId) const
 
std::vector< DynamicObject * > GetDynObjects (uint32 spellId) const
 
void RemoveDynObject (uint32 spellId)
 
void RemoveAllDynObjects ()
 
GameObjectGetGameObject (uint32 spellId) const
 
std::vector< GameObject * > GetGameObjects (uint32 spellId) const
 
void AddGameObject (GameObject *gameObj)
 
void RemoveGameObject (GameObject *gameObj, bool del)
 
void RemoveGameObject (uint32 spellid, bool del)
 
void RemoveAllGameObjects ()
 
void _RegisterAreaTrigger (AreaTrigger *areaTrigger)
 
void _UnregisterAreaTrigger (AreaTrigger *areaTrigger)
 
AreaTriggerGetAreaTrigger (uint32 spellId) const
 
std::vector< AreaTrigger * > GetAreaTriggers (uint32 spellId) const
 
void RemoveAreaTrigger (uint32 spellId)
 
void RemoveAreaTrigger (AuraEffect const *aurEff)
 
void RemoveAllAreaTriggers ()
 
void ModifyAuraState (AuraStateType flag, bool apply)
 
uint32 BuildAuraStateUpdateForTarget (Unit const *target) const
 
bool HasAuraState (AuraStateType flag, SpellInfo const *spellProto=nullptr, Unit const *Caster=nullptr) const
 
void UnsummonAllTotems ()
 
bool IsMagnet () const
 
UnitGetMeleeHitRedirectTarget (Unit *victim, SpellInfo const *spellInfo=nullptr)
 
int32 SpellBaseDamageBonusDone (SpellSchoolMask schoolMask) const
 
uint32 SpellDamageBonusDone (Unit *victim, SpellInfo const *spellProto, uint32 pdamage, DamageEffectType damagetype, SpellEffectInfo const &spellEffectInfo, uint32 stack=1) const
 
float SpellDamagePctDone (Unit *victim, SpellInfo const *spellProto, DamageEffectType damagetype) const
 
uint32 SpellDamageBonusTaken (Unit *caster, SpellInfo const *spellProto, uint32 pdamage, DamageEffectType damagetype) const
 
int32 SpellBaseHealingBonusDone (SpellSchoolMask schoolMask) const
 
uint32 SpellHealingBonusDone (Unit *victim, SpellInfo const *spellProto, uint32 healamount, DamageEffectType damagetype, SpellEffectInfo const &spellEffectInfo, uint32 stack=1) const
 
float SpellHealingPctDone (Unit *victim, SpellInfo const *spellProto) const
 
uint32 SpellHealingBonusTaken (Unit *caster, SpellInfo const *spellProto, uint32 healamount, DamageEffectType damagetype) const
 
uint32 MeleeDamageBonusDone (Unit *pVictim, uint32 damage, WeaponAttackType attType, DamageEffectType damagetype, SpellInfo const *spellProto=nullptr, SpellSchoolMask damageSchoolMask=SPELL_SCHOOL_MASK_NORMAL)
 
uint32 MeleeDamageBonusTaken (Unit *attacker, uint32 pdamage, WeaponAttackType attType, DamageEffectType damagetype, SpellInfo const *spellProto=nullptr, SpellSchoolMask damageSchoolMask=SPELL_SCHOOL_MASK_NORMAL)
 
bool isSpellBlocked (Unit *victim, SpellInfo const *spellProto, WeaponAttackType attackType=BASE_ATTACK)
 
bool isBlockCritical ()
 
float SpellCritChanceDone (Spell *spell, AuraEffect const *aurEff, SpellSchoolMask schoolMask, WeaponAttackType attackType=BASE_ATTACK) const
 
float SpellCritChanceTaken (Unit const *caster, Spell *spell, AuraEffect const *aurEff, SpellSchoolMask schoolMask, float doneChance, WeaponAttackType attackType=BASE_ATTACK) const
 
void ApplySpellImmune (uint32 spellId, uint32 op, uint32 type, bool apply)
 
virtual bool IsImmunedToSpell (SpellInfo const *spellInfo, WorldObject const *caster) const
 
uint32 GetSchoolImmunityMask () const
 
uint32 GetDamageImmunityMask () const
 
uint32 GetMechanicImmunityMask () const
 
bool IsImmunedToDamage (SpellSchoolMask meleeSchoolMask) const
 
bool IsImmunedToDamage (SpellInfo const *spellInfo) const
 
void UpdateSpeed (UnitMoveType mtype)
 
float GetSpeed (UnitMoveType mtype) const
 
float GetSpeedRate (UnitMoveType mtype) const
 
void SetSpeed (UnitMoveType mtype, float newValue)
 
void SetSpeedRate (UnitMoveType mtype, float rate)
 
void FollowerAdded (AbstractFollower *f)
 
void FollowerRemoved (AbstractFollower *f)
 
void RemoveAllFollowers ()
 
MotionMasterGetMotionMaster ()
 
MotionMaster const * GetMotionMaster () const
 
virtual MovementGeneratorType GetDefaultMovementType () const
 
bool IsStopped () const
 
void StopMoving ()
 
void PauseMovement (uint32 timer=0, uint8 slot=0, bool forced=true)
 
void ResumeMovement (uint32 timer=0, uint8 slot=0)
 
void AddUnitMovementFlag (uint32 f)
 
void RemoveUnitMovementFlag (uint32 f)
 
bool HasUnitMovementFlag (uint32 f) const
 
uint32 GetUnitMovementFlags () const
 
void SetUnitMovementFlags (uint32 f)
 
void AddExtraUnitMovementFlag (uint32 f)
 
void RemoveExtraUnitMovementFlag (uint32 f)
 
bool HasExtraUnitMovementFlag (uint32 f) const
 
uint32 GetExtraUnitMovementFlags () const
 
void SetExtraUnitMovementFlags (uint32 f)
 
bool IsSplineEnabled () const
 
void SetControlled (bool apply, UnitState state)
 
void ApplyControlStatesIfNeeded ()
 
uint32 GetComboPoints () const
 --------—Combo point system----------------— More...
 
void AddComboPoints (int8 count, Spell *spell=nullptr)
 
void GainSpellComboPoints (int8 count)
 
void ClearComboPoints ()
 
void SendPetActionFeedback (PetActionFeedback msg, uint32 spellId)
 -------—Pet responses methods--------------— More...
 
void SendPetTalk (uint32 pettalk)
 
void SendPetAIReaction (ObjectGuid guid)
 
void PropagateSpeedChange ()
 -------—End of Pet responses methods-------— More...
 
void ClearAllReactives ()
 
void StartReactiveTimer (ReactiveType reactive)
 
void UpdateReactives (uint32 p_time)
 
void UpdateAuraForGroup ()
 
bool CanProc () const
 
void SetCantProc (bool apply)
 
uint32 GetModelForForm (ShapeshiftForm form, uint32 spellId) const
 
bool CreateVehicleKit (uint32 id, uint32 creatureEntry, bool loading=false)
 
void RemoveVehicleKit (bool onRemoveFromWorld=false)
 
VehicleGetVehicleKit () const
 
VehicleGetVehicle () const
 
void SetVehicle (Vehicle *vehicle)
 
bool IsOnVehicle (Unit const *vehicle) const
 
UnitGetVehicleBase () const
 
CreatureGetVehicleCreatureBase () const
 
ObjectGuid GetTransGUID () const override
 
TransportBaseGetDirectTransport () const
 Returns the transport this unit is on directly (if on vehicle and transport, return vehicle) More...
 
void HandleSpellClick (Unit *clicker, int8 seatId=-1)
 
void EnterVehicle (Unit *base, int8 seatId=-1)
 
void ExitVehicle (Position const *exitPosition=nullptr)
 
void ChangeSeat (int8 seatId, bool next=true)
 
void _ExitVehicle (Position const *exitPosition=nullptr)
 
void _EnterVehicle (Vehicle *vehicle, int8 seatId, AuraApplication const *aurApp=nullptr)
 
bool isMoving () const
 
bool isTurning () const
 
bool IsFlying () const
 
bool IsFalling () const
 
virtual bool CanSwim () const
 
float GetHoverOffset () const
 
void RewardRage (uint32 baseRage)
 
virtual float GetFollowAngle () const
 
void OutDebugInfo () const
 
bool IsDuringRemoveFromWorld () const
 
PetToPet ()
 
Pet const * ToPet () const
 
TotemToTotem ()
 
Totem const * ToTotem () const
 
TempSummonToTempSummon ()
 
TempSummon const * ToTempSummon () const
 
ObjectGuid GetTarget () const
 
void SetInstantCast (bool set)
 
bool CanInstantCast () const
 
int32 GetHighestExclusiveSameEffectSpellGroupValue (AuraEffect const *aurEff, AuraType auraType, bool checkMiscValue=false, int32 miscValue=0) const
 
bool IsHighestExclusiveAura (Aura const *aura, bool removeOtherAuraApplications=false)
 
virtual void Talk (std::string const &text, ChatMsg msgType, Language language, float textRange, WorldObject const *target)
 
virtual void Talk (uint32 textId, ChatMsg msgType, float textRange, WorldObject const *target)
 
float GetCollisionHeight () const override
 
uint32 GetVirtualItemId (uint32 slot) const
 
uint16 GetVirtualItemAppearanceMod (uint32 slot) const
 
void SetVirtualItem (uint32 slot, uint32 itemId, uint16 appearanceModId=0, uint16 itemVisual=0)
 
void BuildValuesUpdateWithFlag (ByteBuffer *data, UF::UpdateFieldFlag flags, Player const *target) const override
 
void BuildValuesUpdateForPlayerWithMask (UpdateData *data, UF::ObjectData::Mask const &requestedObjectMask, UF::UnitData::Mask const &requestedUnitMask, Player const *target) const
 
- Public Member Functions inherited from WorldObject
virtual ~WorldObject ()
 
void GetNearPoint2D (WorldObject const *searcher, float &x, float &y, float distance, float absAngle) const
 
void GetNearPoint (WorldObject const *searcher, float &x, float &y, float &z, float distance2d, float absAngle) const
 
void GetClosePoint (float &x, float &y, float &z, float size, float distance2d=0, float relAngle=0) const
 
void MovePosition (Position &pos, float dist, float angle)
 
Position GetNearPosition (float dist, float angle)
 
void MovePositionToFirstCollision (Position &pos, float dist, float angle)
 
Position GetFirstCollisionPosition (float dist, float angle)
 
Position GetRandomNearPosition (float radius)
 
void GetContactPoint (WorldObject const *obj, float &x, float &y, float &z, float distance2d=CONTACT_DISTANCE) const
 
void UpdateGroundPositionZ (float x, float y, float &z) const
 
void UpdateAllowedPositionZ (float x, float y, float &z) const
 
void GetRandomPoint (Position const &srcPos, float distance, float &rand_x, float &rand_y, float &rand_z) const
 
Position GetRandomPoint (Position const &srcPos, float distance) const
 
uint32 GetInstanceId () const
 
bool IsInPhase (WorldObject const *obj) const
 
PhaseShiftGetPhaseShift ()
 
PhaseShift const & GetPhaseShift () const
 
PhaseShiftGetSuppressedPhaseShift ()
 
PhaseShift const & GetSuppressedPhaseShift () const
 
int32 GetDBPhase () const
 
void SetDBPhase (int32 p)
 
uint32 GetZoneId () const
 
uint32 GetAreaId () const
 
void GetZoneAndAreaId (uint32 &zoneid, uint32 &areaid) const
 
bool IsOutdoors () const
 
bool IsInWorldPvpZone () const
 
InstanceScriptGetInstanceScript () const
 
std::string const & GetName () const
 
void SetName (std::string newname)
 
std::string GetNameForLocaleIdx (LocaleConstant) const override
 
float GetDistance (WorldObject const *obj) const
 
float GetDistance (Position const &pos) const
 
float GetDistance (float x, float y, float z) const
 
float GetDistance2d (WorldObject const *obj) const
 
float GetDistance2d (float x, float y) const
 
float GetDistanceZ (WorldObject const *obj) const
 
bool IsSelfOrInSameMap (WorldObject const *obj) const
 
bool IsInMap (WorldObject const *obj) const
 
bool IsWithinDist3d (float x, float y, float z, float dist) const
 
bool IsWithinDist3d (Position const *pos, float dist) const
 
bool IsWithinDist2d (float x, float y, float dist) const
 
bool IsWithinDist2d (Position const *pos, float dist) const
 
bool IsWithinDist (WorldObject const *obj, float dist2compare, bool is3D=true) const
 
bool IsWithinDistInMap (WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
 
bool IsWithinLOS (float x, float y, float z, LineOfSightChecks checks=LINEOFSIGHT_ALL_CHECKS, VMAP::ModelIgnoreFlags ignoreFlags=VMAP::ModelIgnoreFlags::Nothing) const
 
bool IsWithinLOSInMap (WorldObject const *obj, LineOfSightChecks checks=LINEOFSIGHT_ALL_CHECKS, VMAP::ModelIgnoreFlags ignoreFlags=VMAP::ModelIgnoreFlags::Nothing) const
 
Position GetHitSpherePointFor (Position const &dest) const
 
void GetHitSpherePointFor (Position const &dest, float &x, float &y, float &z) const
 
bool GetDistanceOrder (WorldObject const *obj1, WorldObject const *obj2, bool is3D=true) const
 
bool IsInRange (WorldObject const *obj, float minRange, float maxRange, bool is3D=true) const
 
bool IsInRange2d (float x, float y, float minRange, float maxRange) const
 
bool IsInRange3d (float x, float y, float z, float minRange, float maxRange) const
 
bool isInFront (WorldObject const *target, float arc=float(M_PI)) const
 
bool isInBack (WorldObject const *target, float arc=float(M_PI)) const
 
bool IsInBetween (Position const &pos1, Position const &pos2, float size=0) const
 
bool IsInBetween (WorldObject const *obj1, WorldObject const *obj2, float size=0) const
 
void SendCombatLogMessage (WorldPackets::CombatLog::CombatLogServerPacket *combatLog) const
 
void PlayDistanceSound (uint32 soundId, Player *target=nullptr)
 
void PlayDirectSound (uint32 soundId, Player *target=nullptr, uint32 broadcastTextId=0)
 
void PlayDirectMusic (uint32 musicId, Player *target=nullptr)
 
virtual void SaveRespawnTime (uint32=0, bool=true)
 
void AddObjectToRemoveList ()
 
float GetGridActivationRange () const
 
float GetVisibilityRange () const
 
float GetSightRange (WorldObject const *target=nullptr) const
 
bool CanSeeOrDetect (WorldObject const *obj, bool ignoreStealth=false, bool distanceCheck=false, bool checkAlert=false) const
 
MapGetMap () const
 
MapFindMap () const
 
void SetZoneScript ()
 
ZoneScriptGetZoneScript () const
 
ScenarioGetScenario () const
 
TempSummonSummonCreature (uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime=0, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
 
TempSummonSummonCreature (uint32 entry, Position const &pos, TempSummonType despawnType, Milliseconds despawnTime, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
 
TempSummonSummonCreature (uint32 entry, float x, float y, float z, float o=0, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
 
GameObjectSummonGameObject (uint32 entry, Position const &pos, QuaternionData const &rot, uint32 respawnTime, GOSummonType summonType=GO_SUMMON_TIMED_OR_CORPSE_DESPAWN)
 
GameObjectSummonGameObject (uint32 entry, float x, float y, float z, float ang, QuaternionData const &rot, uint32 respawnTime)
 
CreatureSummonTrigger (float x, float y, float z, float ang, uint32 dur, CreatureAI *(*GetAI)(Creature *)=nullptr)
 
void SummonCreatureGroup (uint8 group, std::list< TempSummon *> *list=nullptr)
 
CreatureFindNearestCreature (uint32 entry, float range, bool alive=true) const
 
GameObjectFindNearestGameObject (uint32 entry, float range) const
 
GameObjectFindNearestGameObjectOfType (GameobjectTypes type, float range) const
 
PlayerSelectNearestPlayer (float distance) const
 
ObjectGuid GetCharmerOrOwnerOrOwnGUID () const
 
UnitGetOwner () const
 
UnitGetCharmerOrOwner () const
 
UnitGetCharmerOrOwnerOrSelf () const
 
PlayerGetCharmerOrOwnerPlayerOrPlayerItself () const
 
PlayerGetAffectingPlayer () const
 
PlayerGetSpellModOwner () const
 
int32 CalculateSpellDamage (Unit const *target, SpellEffectInfo const &spellEffectInfo, int32 const *basePoints=nullptr, float *variance=nullptr, uint32 castItemId=0, int32 itemLevel=-1) const
 
float GetSpellMaxRangeForTarget (Unit const *target, SpellInfo const *spellInfo) const
 
float GetSpellMinRangeForTarget (Unit const *target, SpellInfo const *spellInfo) const
 
float ApplyEffectModifiers (SpellInfo const *spellInfo, uint8 effIndex, float value) const
 
int32 CalcSpellDuration (SpellInfo const *spellInfo) const
 
int32 ModSpellDuration (SpellInfo const *spellInfo, WorldObject const *target, int32 duration, bool positive, uint32 effectMask) const
 
void ModSpellCastTime (SpellInfo const *spellInfo, int32 &castTime, Spell *spell=nullptr) const
 
void ModSpellDurationTime (SpellInfo const *spellInfo, int32 &durationTime, Spell *spell=nullptr) const
 
SpellMissInfo MagicSpellHitResult (Unit *victim, SpellInfo const *spellInfo) const
 
SpellMissInfo SpellHitResult (Unit *victim, SpellInfo const *spellInfo, bool canReflect=false) const
 
void SendSpellMiss (Unit *target, uint32 spellID, SpellMissInfo missInfo)
 
FactionTemplateEntry const * GetFactionTemplateEntry () const
 
ReputationRank GetReactionTo (WorldObject const *target) const
 
bool IsHostileTo (WorldObject const *target) const
 
bool IsHostileToPlayers () const
 
bool IsFriendlyTo (WorldObject const *target) const
 
bool IsNeutralToAll () const
 
void CastSpell (CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
 
bool IsValidAttackTarget (WorldObject const *target, SpellInfo const *bySpell=nullptr) const
 
bool IsValidAssistTarget (WorldObject const *target, SpellInfo const *bySpell=nullptr) const
 
UnitGetMagicHitRedirectTarget (Unit *victim, SpellInfo const *spellInfo)
 
template<typename Container >
void GetGameObjectListWithEntryInGrid (Container &gameObjectContainer, uint32 entry, float maxSearchRange=250.0f) const
 
template<typename Container >
void GetCreatureListWithEntryInGrid (Container &creatureContainer, uint32 entry, float maxSearchRange=250.0f) const
 
template<typename Container >
void GetPlayerListInGrid (Container &playerContainer, float maxSearchRange) const
 
void DestroyForNearbyPlayers ()
 
virtual void UpdateObjectVisibilityOnCreate ()
 
void UpdatePositionData ()
 
void BuildUpdate (UpdateDataMapType &) override
 
void AddToObjectUpdate () override
 
void RemoveFromObjectUpdate () override
 
void AddToNotify (uint16 f)
 
bool isNeedNotify (uint16 f) const
 
uint16 GetNotifyFlags () const
 
void ResetAllNotifies ()
 
bool isActiveObject () const
 
void setActive (bool isActiveObject)
 
bool IsFarVisible () const
 
void SetFarVisible (bool on)
 
bool IsVisibilityOverridden () const
 
void SetVisibilityDistanceOverride (VisibilityDistanceType type)
 
void SetWorldObject (bool apply)
 
bool IsPermanentWorldObject () const
 
bool IsWorldObject () const
 
TransportGetTransport () const
 
float GetTransOffsetX () const
 
float GetTransOffsetY () const
 
float GetTransOffsetZ () const
 
float GetTransOffsetO () const
 
Position const & GetTransOffset () const
 
uint32 GetTransTime () const
 
int8 GetTransSeat () const
 
void SetTransport (Transport *t)
 
virtual float GetStationaryX () const
 
virtual float GetStationaryY () const
 
virtual float GetStationaryZ () const
 
virtual float GetStationaryO () const
 
float GetFloorZ () const
 
float GetMapWaterOrGroundLevel (float x, float y, float z, float *ground=nullptr) const
 
float GetMapHeight (float x, float y, float z, bool vmap=true, float distanceToSearch=50.0f) const
 
bool IsPrivateObject () const
 
ObjectGuid GetPrivateObjectOwner () const
 
void SetPrivateObjectOwner (ObjectGuid const &owner)
 
bool CheckPrivateObjectOwnerVisibility (WorldObject const *seer) const
 
- Public Member Functions inherited from Object
virtual ~Object ()
 
bool IsInWorld () const
 
ObjectGuid const & GetGUID () const
 
uint32 GetEntry () const
 
void SetEntry (uint32 entry)
 
float GetObjectScale () const
 
uint32 GetDynamicFlags () const
 
bool HasDynamicFlag (uint32 flag) const
 
void AddDynamicFlag (uint32 flag)
 
void RemoveDynamicFlag (uint32 flag)
 
void SetDynamicFlags (uint32 flag)
 
TypeID GetTypeId () const
 
bool isType (uint16 mask) 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
 
ByteBuffer PrepareValuesUpdateBuffer () const
 
virtual bool hasQuest (uint32) const
 
virtual bool hasInvolvedQuest (uint32) const
 
void SetIsNewObject (bool enable)
 
void BuildFieldsUpdate (Player *, UpdateDataMapType &) 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 IsConversation () const
 
ConversationToConversation ()
 
Conversation const * ToConversation () const
 
template<typename T >
void ForceUpdateFieldChange (UF::UpdateFieldSetter< T > const &)
 
- Public Member Functions inherited from WorldLocation
 WorldLocation (uint32 mapId=MAPID_INVALID, float x=0.f, float y=0.f, float z=0.f, float o=0.f)
 
 WorldLocation (uint32 mapId, Position const &position)
 
void WorldRelocate (WorldLocation const &loc)
 
void WorldRelocate (WorldLocation const *loc)
 
void WorldRelocate (uint32 mapId, Position const &pos)
 
void WorldRelocate (uint32 mapId=MAPID_INVALID, float x=0.f, float y=0.f, float z=0.f, float o=0.f)
 
WorldLocation GetWorldLocation () const
 
uint32 GetMapId () const
 
- Public Member Functions inherited from Position
 Position (float x=0, float y=0, float z=0, float o=0)
 
bool operator== (Position const &a) const
 
bool operator!= (Position const &a) const
 
void Relocate (float x, float y)
 
void Relocate (float x, float y, float z)
 
void Relocate (float x, float y, float z, float o)
 
void Relocate (Position const &pos)
 
void Relocate (Position const *pos)
 
void RelocateOffset (Position const &offset)
 
void SetOrientation (float orientation)
 
float GetPositionX () const
 
float GetPositionY () const
 
float GetPositionZ () const
 
float GetOrientation () const
 
void GetPosition (float &x, float &y) const
 
void GetPosition (float &x, float &y, float &z) const
 
void GetPosition (float &x, float &y, float &z, float &o) const
 
Position GetPosition () const
 
Streamer< XY > PositionXYStream ()
 
ConstStreamer< XY > PositionXYStream () const
 
Streamer< XYZ > PositionXYZStream ()
 
ConstStreamer< XYZ > PositionXYZStream () const
 
Streamer< XYZO > PositionXYZOStream ()
 
ConstStreamer< XYZO > PositionXYZOStream () const
 
Streamer< PackedXYZ > PositionPackedXYZStream ()
 
ConstStreamer< PackedXYZ > PositionPackedXYZStream () const
 
bool IsPositionValid () const
 
float GetExactDist2dSq (const float x, const float y) const
 
float GetExactDist2dSq (Position const &pos) const
 
float GetExactDist2dSq (Position const *pos) const
 
float GetExactDist2d (const float x, const float y) const
 
float GetExactDist2d (Position const &pos) const
 
float GetExactDist2d (Position const *pos) const
 
float GetExactDistSq (float x, float y, float z) const
 
float GetExactDistSq (Position const &pos) const
 
float GetExactDistSq (Position const *pos) const
 
float GetExactDist (float x, float y, float z) const
 
float GetExactDist (Position const &pos) const
 
float GetExactDist (Position const *pos) const
 
void GetPositionOffsetTo (Position const &endPos, Position &retOffset) const
 
Position GetPositionWithOffset (Position const &offset) const
 
float GetAbsoluteAngle (float x, float y) const
 
float GetAbsoluteAngle (Position const &pos) const
 
float GetAbsoluteAngle (Position const *pos) const
 
float ToAbsoluteAngle (float relAngle) const
 
float ToRelativeAngle (float absAngle) const
 
float GetRelativeAngle (float x, float y) const
 
float GetRelativeAngle (Position const &pos) const
 
float GetRelativeAngle (Position const *pos) const
 
void GetSinCos (float x, float y, float &vsin, float &vcos) const
 
bool IsInDist2d (float x, float y, float dist) const
 
bool IsInDist2d (Position const *pos, float dist) const
 
bool IsInDist (float x, float y, float z, float dist) const
 
bool IsInDist (Position const &pos, float dist) const
 
bool IsInDist (Position const *pos, float dist) const
 
bool IsWithinBox (Position const &center, float xradius, float yradius, float zradius) const
 
bool IsWithinDoubleVerticalCylinder (Position const *center, float radius, float height) const
 
bool HasInArc (float arcangle, Position const *pos, float border=2.0f) const
 
bool HasInLine (Position const *pos, float objSize, float width) const
 
std::string ToString () const
 
- Public Member Functions inherited from GridObject< Player >
virtual ~GridObject ()
 
bool IsInGrid () const
 
void AddToGrid (GridRefManager< Player > &m)
 
void RemoveFromGrid ()
 

Static Public Member Functions

static WeaponAttackType GetAttackBySlot (uint8 slot, InventoryType inventoryType)
 
static bool IsInventoryPos (uint16 pos)
 
static bool IsInventoryPos (uint8 bag, uint8 slot)
 
static bool IsEquipmentPos (uint16 pos)
 
static bool IsEquipmentPos (uint8 bag, uint8 slot)
 
static bool IsBagPos (uint16 pos)
 
static bool IsBankPos (uint16 pos)
 
static bool IsBankPos (uint8 bag, uint8 slot)
 
static bool IsChildEquipmentPos (uint16 pos)
 
static bool IsChildEquipmentPos (uint8 bag, uint8 slot)
 
- Static Public Member Functions inherited from Unit
static float CalculateAverageResistReduction (WorldObject const *caster, SpellSchoolMask schoolMask, Unit const *victim, SpellInfo const *spellInfo=nullptr)
 
static void DealDamageMods (Unit const *attacker, Unit const *victim, uint32 &damage, uint32 *absorb)
 
static uint32 DealDamage (Unit *attacker, Unit *victim, uint32 damage, CleanDamage const *cleanDamage=nullptr, DamageEffectType damagetype=DIRECT_DAMAGE, SpellSchoolMask damageSchoolMask=SPELL_SCHOOL_MASK_NORMAL, SpellInfo const *spellProto=nullptr, bool durabilityLoss=true)
 
static void Kill (Unit *attacker, Unit *victim, bool durabilityLoss=true, bool skipSettingDeathState=false)
 
static void DealHeal (HealInfo &healInfo)
 
static void ProcSkillsAndAuras (Unit *actor, Unit *actionTarget, uint32 typeMaskActor, uint32 typeMaskActionTarget, uint32 spellTypeMask, uint32 spellPhaseMask, uint32 hitMask, Spell *spell, DamageInfo *damageInfo, HealInfo *healInfo)
 
static void ApplyResilience (Unit const *victim, int32 *damage)
 
static uint32 SpellCriticalDamageBonus (Unit const *caster, SpellInfo const *spellProto, uint32 damage, Unit *victim)
 
static uint32 SpellCriticalHealingBonus (Unit const *caster, SpellInfo const *spellProto, uint32 damage, Unit *victim)
 
static bool IsDamageReducedByArmor (SpellSchoolMask damageSchoolMask, SpellInfo const *spellInfo=nullptr)
 
static uint32 CalcArmorReducedDamage (Unit const *attacker, Unit *victim, uint32 damage, SpellInfo const *spellInfo, WeaponAttackType attackType=MAX_ATTACK, uint8 attackerLevel=0)
 
static uint32 CalcSpellResistedDamage (Unit const *attacker, Unit *victim, uint32 damage, SpellSchoolMask schoolMask, SpellInfo const *spellInfo)
 
static void CalcAbsorbResist (DamageInfo &damageInfo)
 
static void CalcHealAbsorb (HealInfo &healInfo)
 
- Static Public Member Functions inherited from WorldObject
static bool InSamePhase (WorldObject const *a, WorldObject const *b)
 
static ReputationRank GetFactionReactionTo (FactionTemplateEntry const *factionTemplateEntry, WorldObject const *target)
 
- Static Public Member Functions inherited from Position
static float NormalizeOrientation (float o)
 

Public Attributes

std::string autoReplyMsg
 
PlayerTaxi m_taxi
 
time_t m_logintime
 
time_t m_Last_tick
 
uint32 m_Played_time [MAX_PLAYED_TIME_INDEX]
 
std::unordered_set< PetAura const * > m_petAuras
 
- Public Attributes inherited from Unit
uint32 m_extraAttacks
 
bool m_canDualWield
 
ControlList m_Controlled
 
Playerm_playerMovingMe
 
ObjectGuid m_SummonSlot [MAX_SUMMON_SLOT]
 
ObjectGuid m_ObjectSlot [MAX_GAMEOBJECT_SLOT]
 
float m_modMeleeHitChance
 
float m_modRangedHitChance
 
float m_modSpellHitChance
 
int32 m_baseSpellCritChance
 
uint32 m_baseAttackSpeed [MAX_ATTACK]
 
float m_modAttackSpeedPct [MAX_ATTACK]
 
uint32 m_attackTimer [MAX_ATTACK]
 
SpellImmuneContainer m_spellImmune [MAX_SPELL_IMMUNITY]
 
uint32 m_lastSanctuaryTime
 
ObjectGuid LastCharmerGUID
 
Movement::MoveSplinemovespline
 
UF::UpdateField< UF::UnitData, 0, TYPEID_UNITm_unitData
 
- Public Attributes inherited from WorldObject
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPESm_stealth
 
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPESm_stealthDetect
 
FlaggedValuesArray32< int32, uint32, InvisibilityType, TOTAL_INVISIBILITY_TYPESm_invisibility
 
FlaggedValuesArray32< int32, uint32, InvisibilityType, TOTAL_INVISIBILITY_TYPESm_invisibilityDetect
 
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPESm_serverSideVisibility
 
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPESm_serverSideVisibilityDetect
 
uint32 LastUsedScriptID
 
MovementInfo m_movementInfo
 
EventProcessor m_Events
 
- Public Attributes inherited from Object
UF::UpdateFieldHolder m_values
 
UF::UpdateField< UF::ObjectData, 0, TYPEID_OBJECTm_objectData
 
- Public Attributes inherited from WorldLocation
uint32 m_mapId
 
- Public Attributes inherited from Position
float m_positionX
 
float m_positionY
 
float m_positionZ
 

Friends

class WorldSession
 
class CinematicMgr
 
class RestMgr
 
void AddItemToUpdateQueueOf (Item *item, Player *player)
 
void RemoveItemFromUpdateQueueOf (Item *item, Player *player)
 

ModifyCurrency

Change specific currency and send result to client

Parameters
idcurrency entry from CurrencyTypes.dbc
countinteger value for adding/removing curent currency
printLogused on SMSG_SET_CURRENCY
ignoregain multipliers
typedef std::unordered_map< ObjectGuid::LowType, Item * > ItemMap
 
typedef std::list< Channel * > JoinedChannelsList
 
typedef std::set< uint32DFQuestsDoneList
 
typedef std::unordered_map< Difficulty, std::unordered_map< uint32, InstancePlayerBind > > BoundInstancesMap
 
typedef std::set< uint32QuestSet
 
typedef std::set< uint32SeasonalQuestSet
 
typedef std::unordered_map< uint32, SeasonalQuestSetSeasonalEventQuestMap
 
uint32 m_stableSlots
 
bool m_mailsLoaded
 
bool m_mailsUpdated
 
uint8 unReadMails
 
time_t m_nextMailDelivereTime
 
ItemMap mMitems
 
PvPInfo pvpInfo
 
DuelInfoduel
 
PlayerMenuPlayerTalkClass
 
std::vector< ItemSetEffect * > ItemSetEff
 
Unitm_unitMovedByMe
 
WorldObjectm_seer
 
WorldLocation m_homebind
 
uint16 m_homebindAreaId
 
GuidUnorderedSet m_clientGUIDs
 
GuidUnorderedSet m_visibleTransports
 
uint8 m_forced_speed_changes [MAX_MOVE_TYPE]
 
uint8 m_movementForceModMagnitudeChanges
 
DFQuestsDoneList m_DFQuests
 
uint32 m_HomebindTimer
 
bool m_InstanceValid
 
BoundInstancesMap m_boundInstances
 
Spellm_spellModTakingSpell
 
bool isDebugAreaTriggers
 
UF::UpdateField< UF::PlayerData, 0, TYPEID_PLAYERm_playerData
 
UF::UpdateField< UF::ActivePlayerData, 0, TYPEID_ACTIVE_PLAYERm_activePlayerData
 
GuidList WhisperList
 
uint32 m_combatExitTime
 
uint32 m_regenTimerCount
 
uint32 m_foodEmoteTimerCount
 
float m_powerFraction [MAX_POWERS_PER_CLASS]
 
uint32 m_contestedPvPTimer
 
BgBattlegroundQueueID_Rec m_bgBattlegroundQueueID [PLAYER_MAX_BATTLEGROUND_QUEUES]
 
BGData m_bgData
 
bool m_IsBGRandomWinner
 
QuestSet m_timedquests
 
QuestSet m_weeklyquests
 
QuestSet m_monthlyquests
 
SeasonalEventQuestMap m_seasonalquests
 
ObjectGuid m_playerSharingQuest
 
uint32 m_sharedQuestId
 
uint32 m_ingametime
 
time_t m_lastHonorUpdateTime
 
uint32 m_team
 
uint32 m_nextSave
 
bool m_customizationsChanged
 
time_t m_speakTime
 
uint32 m_speakCount
 
Difficulty m_dungeonDifficulty
 
Difficulty m_raidDifficulty
 
Difficulty m_legacyRaidDifficulty
 
Difficulty m_prevMapDifficulty
 
uint32 m_atLoginFlags
 
Itemm_items [PLAYER_SLOTS_COUNT]
 
uint32 m_currentBuybackSlot
 
PlayerCurrenciesMap _currencyStorage
 
void ModifyCurrency (uint32 id, int32 count, bool printLog=true, bool ignoreMultipliers=false)
 
void SetInvSlot (uint32 slot, ObjectGuid guid)
 
void ApplyEquipCooldown (Item *pItem)
 
void QuickEquipItem (uint16 pos, Item *pItem)
 
void VisualizeItem (uint8 slot, Item *pItem)
 
void SetVisibleItemSlot (uint8 slot, Item *pItem)
 
ItemBankItem (ItemPosCountVec const &dest, Item *pItem, bool update)
 
void RemoveItem (uint8 bag, uint8 slot, bool update)
 
void MoveItemFromInventory (uint8 bag, uint8 slot, bool update)
 
void MoveItemToInventory (ItemPosCountVec const &dest, Item *pItem, bool update, bool in_characterInventoryDB=false)
 
void RemoveItemDependentAurasAndCasts (Item *pItem)
 
void DestroyItem (uint8 bag, uint8 slot, bool update)
 
void DestroyItemCount (uint32 item, uint32 count, bool update, bool unequip_check=false)
 
void DestroyItemCount (Item *item, uint32 &count, bool update)
 
void DestroyConjuredItems (bool update)
 
void DestroyZoneLimitedItem (bool update, uint32 new_zone)
 
void SplitItem (uint16 src, uint16 dst, uint32 count)
 
void SwapItem (uint16 src, uint16 dst)
 
void AddItemToBuyBackSlot (Item *pItem)
 
void SetBuybackPrice (uint32 slot, uint32 price)
 
void SetBuybackTimestamp (uint32 slot, uint32 timestamp)
 
ItemGetItemFromBuyBackSlot (uint32 slot)
 
void RemoveItemFromBuyBackSlot (uint32 slot, bool del)
 
void SendEquipError (InventoryResult msg, Item const *item1=nullptr, Item const *item2=nullptr, uint32 itemId=0) const
 
void SendBuyError (BuyResult msg, Creature *creature, uint32 item, uint32 param) const
 
void SendSellError (SellResult msg, Creature *creature, ObjectGuid guid) const
 
void AddWeaponProficiency (uint32 newflag)
 
void AddArmorProficiency (uint32 newflag)
 
uint32 GetWeaponProficiency () const
 
uint32 GetArmorProficiency () const
 
bool IsUseEquipedWeapon (bool mainhand) const
 
bool IsTwoHandUsed () const
 
bool IsUsingTwoHandedWeaponInOneHand () const
 
void SendNewItem (Item *item, uint32 quantity, bool received, bool created, bool broadcast=false)
 
bool BuyItemFromVendorSlot (ObjectGuid vendorguid, uint32 vendorslot, uint32 item, uint8 count, uint8 bag, uint8 slot)
 
bool BuyCurrencyFromVendorSlot (ObjectGuid vendorGuid, uint32 vendorSlot, uint32 currency, uint32 count)
 
bool _StoreOrEquipNewItem (uint32 vendorslot, uint32 item, uint8 count, uint8 bag, uint8 slot, int64 price, ItemTemplate const *pProto, Creature *pVendor, VendorItem const *crItem, bool bStore)
 
float GetReputationPriceDiscount (Creature const *creature) const
 
float GetReputationPriceDiscount (FactionTemplateEntry const *factionTemplate) const
 
PlayerGetTrader () const
 
TradeDataGetTradeData () const
 
void TradeCancel (bool sendback)
 
CinematicMgrGetCinematicMgr () const
 
void UpdateEnchantTime (uint32 time)
 
void UpdateSoulboundTradeItems ()
 
void AddTradeableItem (Item *item)
 
void RemoveTradeableItem (Item *item)
 
void UpdateItemDuration (uint32 time, bool realtimeonly=false)
 
void AddEnchantmentDurations (Item *item)
 
void RemoveEnchantmentDurations (Item *item)
 
void RemoveEnchantmentDurationsReferences (Item *item)
 
void RemoveArenaEnchantments (EnchantmentSlot slot)
 
void AddEnchantmentDuration (Item *item, EnchantmentSlot slot, uint32 duration)
 
void ApplyEnchantment (Item *item, EnchantmentSlot slot, bool apply, bool apply_dur=true, bool ignore_condition=false)
 
void ApplyEnchantment (Item *item, bool apply)
 
void UpdateSkillEnchantments (uint16 skill_id, uint16 curr_value, uint16 new_value)
 
void SendEnchantmentDurations ()
 
void AddItemDurations (Item *item)
 
void RemoveItemDurations (Item *item)
 
void SendItemDurations ()
 
void LoadCorpse (PreparedQueryResult result)
 
void LoadPet ()
 
bool AddItem (uint32 itemId, uint32 count)
 
void PrepareGossipMenu (WorldObject *source, uint32 menuId=0, bool showQuests=false)
 
void SendPreparedGossip (WorldObject *source)
 
void OnGossipSelect (WorldObject *source, uint32 optionIndex, uint32 menuId)
 
uint32 GetGossipTextId (uint32 menuId, WorldObject *source)
 
uint32 GetGossipTextId (WorldObject *source)
 
int32 GetQuestMinLevel (Quest const *quest) const
 
int32 GetQuestLevel (Quest const *quest) const
 
void PrepareQuestMenu (ObjectGuid guid)
 
void SendPreparedQuest (WorldObject *source)
 
bool IsActiveQuest (uint32 quest_id) const
 
Quest const * GetNextQuest (ObjectGuid guid, Quest const *quest) const
 
bool CanSeeStartQuest (Quest const *quest)
 
bool CanTakeQuest (Quest const *quest, bool msg)
 
bool CanAddQuest (Quest const *quest, bool msg) const
 
bool CanCompleteQuest (uint32 quest_id, uint32 ignoredQuestObjectiveId=0)
 
bool CanCompleteRepeatableQuest (Quest const *quest)
 
bool CanRewardQuest (Quest const *quest, bool msg) const
 
bool CanRewardQuest (Quest const *quest, LootItemType rewardType, uint32 rewardId, bool msg) const
 
void AddQuestAndCheckCompletion (Quest const *quest, Object *questGiver)
 
void AddQuest (Quest const *quest, Object *questGiver)
 
void AbandonQuest (uint32 quest_id)
 
void CompleteQuest (uint32 quest_id)
 
void IncompleteQuest (uint32 quest_id)
 
uint32 GetQuestMoneyReward (Quest const *quest) const
 
uint32 GetQuestXPReward (Quest const *quest)
 
bool CanSelectQuestPackageItem (QuestPackageItemEntry const *questPackageItem) const
 
void RewardQuestPackage (uint32 questPackageId, uint32 onlyItemId=0)
 
void RewardQuest (Quest const *quest, LootItemType rewardType, uint32 rewardId, Object *questGiver, bool announce=true)
 
void SetRewardedQuest (uint32 quest_id)
 
void FailQuest (uint32 quest_id)
 
bool SatisfyQuestSkill (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestLevel (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestLog (bool msg) const
 
bool SatisfyQuestDependentQuests (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestPreviousQuest (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestDependentPreviousQuests (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestClass (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestRace (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestReputation (Quest const *qInfo, bool msg)
 
bool SatisfyQuestStatus (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestConditions (Quest const *qInfo, bool msg)
 
bool SatisfyQuestTimed (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestExclusiveGroup (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestDay (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestWeek (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestMonth (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestSeasonal (Quest const *qInfo, bool msg) const
 
bool GiveQuestSourceItem (Quest const *quest)
 
bool TakeQuestSourceItem (uint32 questId, bool msg)
 
bool GetQuestRewardStatus (uint32 quest_id) const
 
QuestStatus GetQuestStatus (uint32 quest_id) const
 
void SetQuestStatus (uint32 questId, QuestStatus status, bool update=true)
 
void RemoveActiveQuest (uint32 questId, bool update=true)
 
void RemoveRewardedQuest (uint32 questId, bool update=true)
 
void SendQuestUpdate (uint32 questId)
 
QuestGiverStatus GetQuestDialogStatus (Object *questGiver)
 
void SetDailyQuestStatus (uint32 quest_id)
 
bool IsDailyQuestDone (uint32 quest_id)
 
void SetWeeklyQuestStatus (uint32 quest_id)
 
void SetMonthlyQuestStatus (uint32 quest_id)
 
void SetSeasonalQuestStatus (uint32 quest_id)
 
void DailyReset ()
 
void ResetWeeklyQuestStatus ()
 
void ResetMonthlyQuestStatus ()
 
void ResetSeasonalQuestStatus (uint16 event_id)
 
uint16 FindQuestSlot (uint32 quest_id) const
 
uint32 GetQuestSlotQuestId (uint16 slot) const
 
uint32 GetQuestSlotState (uint16 slot) const
 
uint16 GetQuestSlotCounter (uint16 slot, uint8 counter) const
 
uint32 GetQuestSlotEndTime (uint16 slot) const
 
uint32 GetQuestSlotAcceptTime (uint16 slot) const
 
bool GetQuestSlotObjectiveFlag (uint16 slot, int8 objectiveIndex) const
 
int32 GetQuestSlotObjectiveData (uint16 slot, QuestObjective const &objective) const
 
void SetQuestSlot (uint16 slot, uint32 quest_id)
 
void SetQuestSlotCounter (uint16 slot, uint8 counter, uint16 count)
 
void SetQuestSlotState (uint16 slot, uint32 state)
 
void RemoveQuestSlotState (uint16 slot, uint32 state)
 
void SetQuestSlotEndTime (uint16 slot, time_t endTime)
 
void SetQuestSlotAcceptTime (uint16 slot, time_t acceptTime)
 
void SetQuestSlotObjectiveFlag (uint16 slot, int8 objectiveIndex)
 
void RemoveQuestSlotObjectiveFlag (uint16 slot, int8 objectiveIndex)
 
void SetQuestCompletedBit (uint32 questBit, bool completed)
 
uint16 GetReqKillOrCastCurrentCount (uint32 quest_id, int32 entry) const
 
void AreaExploredOrEventHappens (uint32 questId)
 
void GroupEventHappens (uint32 questId, WorldObject const *pEventObject)
 
void ItemAddedQuestCheck (uint32 entry, uint32 count)
 
void ItemRemovedQuestCheck (uint32 entry, uint32 count)
 
void KilledMonster (CreatureTemplate const *cInfo, ObjectGuid guid)
 
void KilledMonsterCredit (uint32 entry, ObjectGuid guid=ObjectGuid::Empty)
 
void KilledPlayerCredit (ObjectGuid victimGuid)
 
void KillCreditGO (uint32 entry, ObjectGuid guid=ObjectGuid::Empty)
 
void TalkedToCreature (uint32 entry, ObjectGuid guid)
 
void KillCreditCriteriaTreeObjective (QuestObjective const &questObjective)
 
void MoneyChanged (uint64 value)
 
void ReputationChanged (FactionEntry const *factionEntry, int32 change)
 
void CurrencyChanged (uint32 currencyId, int32 change)
 
void UpdateQuestObjectiveProgress (QuestObjectiveType objectiveType, int32 objectId, int64 addCount, ObjectGuid victimGuid=ObjectGuid::Empty)
 
bool HasQuestForItem (uint32 itemId) const
 
bool HasQuestForGO (int32 goId) const
 
void UpdateForQuestWorldObjects ()
 
bool CanShareQuest (uint32 questId) const
 
int32 GetQuestObjectiveData (QuestObjective const &objective) const
 
void SetQuestObjectiveData (QuestObjective const &objective, int32 data)
 
bool IsQuestObjectiveCompletable (uint16 slot, Quest const *quest, QuestObjective const &objective) const
 
bool IsQuestObjectiveComplete (uint16 slot, Quest const *quest, QuestObjective const &objective) const
 
bool IsQuestObjectiveProgressBarComplete (uint16 slot, Quest const *quest) const
 
void SendQuestComplete (uint32 questId) const
 
void SendQuestReward (Quest const *quest, Creature const *questGiver, uint32 xp, bool hideChatMessage) const
 
void SendQuestFailed (uint32 questID, InventoryResult reason=EQUIP_ERR_OK) const
 
void SendQuestTimerFailed (uint32 questID) const
 
void SendCanTakeQuestResponse (QuestFailedReason reason, bool sendErrorMessage=true, std::string reasonText="") const
 
void SendQuestConfirmAccept (Quest const *quest, Player *receiver) const
 
void SendPushToPartyResponse (Player const *player, QuestPushReason reason) const
 
void SendQuestUpdateAddCredit (Quest const *quest, ObjectGuid guid, QuestObjective const &obj, uint16 count) const
 
void SendQuestUpdateAddCreditSimple (QuestObjective const &obj) const
 
void SendQuestUpdateAddPlayer (Quest const *quest, uint16 newCount) const
 
void SendQuestGiverStatusMultiple ()
 
uint32 GetSharedQuestID () const
 
ObjectGuid GetPlayerSharingQuest () const
 
void SetQuestSharingInfo (ObjectGuid guid, uint32 id)
 
void ClearQuestSharingInfo ()
 
uint32 GetInGameTime () const
 
void SetInGameTime (uint32 time)
 
void AddTimedQuest (uint32 questId)
 
void RemoveTimedQuest (uint32 questId)
 
void SaveCUFProfile (uint8 id, std::nullptr_t)
 
void SaveCUFProfile (uint8 id, std::unique_ptr< CUFProfile > profile)
 

Empties a CUF profile at position 0-4

More...
 
CUFProfileGetCUFProfile (uint8 id) const
 

Replaces a CUF profile at position 0-4

More...
 
uint8 GetCUFProfilesCount () const
 

Retrieves a CUF profile at position 0-4

More...
 
bool HasPvPForcingQuest () const
 
bool LoadFromDB (ObjectGuid guid, CharacterDatabaseQueryHolder *holder)
 
bool IsLoading () const override
 
void SaveToDB (bool create=false)
 
void SaveToDB (LoginDatabaseTransaction loginTransaction, CharacterDatabaseTransaction trans, bool create=false)
 
void SaveInventoryAndGoldToDB (CharacterDatabaseTransaction &trans)
 
void SaveGoldToDB (CharacterDatabaseTransaction &trans) const
 
void SetBindPoint (ObjectGuid guid) const
 
void SendRespecWipeConfirm (ObjectGuid const &guid, uint32 cost) const
 
void RegenerateAll ()
 
void Regenerate (Powers power)
 
void RegenerateHealth ()
 
void setRegenTimerCount (uint32 time)
 
void setWeaponChangeTimer (uint32 time)
 
uint64 GetMoney () const
 
bool ModifyMoney (int64 amount, bool sendError=true)
 
bool HasEnoughMoney (uint64 amount) const
 
bool HasEnoughMoney (int64 amount) const
 
void SetMoney (uint64 value)
 
RewardedQuestSet const & getRewardedQuests () const
 
QuestStatusMapgetQuestStatusMap ()
 
size_t GetRewardedQuestCount () const
 
bool IsQuestRewarded (uint32 quest_id) const
 
UnitGetSelectedUnit () const
 
PlayerGetSelectedPlayer () const
 
void SetTarget (ObjectGuid const &) override
 
void SetSelection (ObjectGuid const &guid)
 Used for serverside target changes, does not apply to players. More...
 
void SendMailResult (uint32 mailId, MailResponseType mailAction, MailResponseResult mailError, uint32 equipError=0, ObjectGuid::LowType item_guid=UI64LIT(0), uint32 item_count=0) const
 
void SendNewMail () const
 
void UpdateNextMailTimeAndUnreads ()
 
void AddNewMailDeliverTime (time_t deliver_time)
 
bool IsMailsLoaded () const
 
void RemoveMail (uint32 id)
 
void AddMail (Mail *mail)
 
uint32 GetMailSize () const
 
MailGetMail (uint32 id)
 
PlayerMails const & GetMails () const
 
void SendItemRetrievalMail (uint32 itemEntry, uint32 count, ItemContext context)
 
ItemGetMItem (ObjectGuid::LowType id)
 
void AddMItem (Item *it)
 
bool RemoveMItem (ObjectGuid::LowType id)
 
void SendOnCancelExpectedVehicleRideAura () const
 
void PetSpellInitialize ()
 
void CharmSpellInitialize ()
 
void PossessSpellInitialize ()
 
void VehicleSpellInitialize ()
 
void SendRemoveControlBar () const
 
bool HasSpell (uint32 spell) const override
 
bool HasActiveSpell (uint32 spell) const
 
SpellInfo const * GetCastSpellInfo (SpellInfo const *spellInfo) const override
 
bool IsSpellFitByClassAndRace (uint32 spell_id) const
 
bool HandlePassiveSpellLearn (SpellInfo const *spellInfo)
 
bool IsCurrentSpecMasterySpell (SpellInfo const *spellInfo) const
 
void SendProficiency (ItemClass itemClass, uint32 itemSubclassMask) const
 
void SendKnownSpells ()
 
bool AddSpell (uint32 spellId, bool active, bool learning, bool dependent, bool disabled, bool loading=false, int32 fromSkill=0)
 
void LearnSpell (uint32 spell_id, bool dependent, int32 fromSkill=0, bool suppressMessaging=false)
 
void RemoveSpell (uint32 spell_id, bool disabled=false, bool learn_low_rank=true, bool suppressMessaging=false)
 
void ResetSpells (bool myClassOnly=false)
 
void LearnCustomSpells ()
 
void LearnDefaultSkills ()
 
void LearnDefaultSkill (SkillRaceClassInfoEntry const *rcInfo)
 
void LearnQuestRewardedSpells ()
 
void LearnQuestRewardedSpells (Quest const *quest)
 
void LearnSpellHighestRank (uint32 spellid)
 
void AddTemporarySpell (uint32 spellId)
 
void RemoveTemporarySpell (uint32 spellId)
 
void SetOverrideSpellsId (int32 overrideSpellsId)
 
void AddOverrideSpell (uint32 overridenSpellId, uint32 newSpellId)
 
void RemoveOverrideSpell (uint32 overridenSpellId, uint32 newSpellId)
 
void LearnSpecializationSpells ()
 
void RemoveSpecializationSpells ()
 
void SendSpellCategoryCooldowns () const
 
void AddStoredAuraTeleportLocation (uint32 spellId)
 
void RemoveStoredAuraTeleportLocation (uint32 spellId)
 
WorldLocation const * GetStoredAuraTeleportLocation (uint32 spellId) const
 
void SetReputation (uint32 factionentry, int32 value)
 
int32 GetReputation (uint32 factionentry) const
 
std::string GetGuildName () const
 
void SetLootSpecId (uint32 id)
 
uint32 GetLootSpecId () const
 
ZonePVPTypeOverride GetOverrideZonePVPType () const
 
void SetOverrideZonePVPType (ZonePVPTypeOverride type)
 
uint32 GetTalentResetCost () const
 
void SetTalentResetCost (uint32 cost)
 
time_t GetTalentResetTime () const
 
void SetTalentResetTime (time_t time_)
 
uint32 GetPrimarySpecialization () const
 
void SetPrimarySpecialization (uint32 spec)
 
uint8 GetActiveTalentGroup () const
 
void SetActiveTalentGroup (uint8 group)
 
uint32 GetDefaultSpecId () const
 
bool ResetTalents (bool noCost=false)
 
void ResetPvpTalents ()
 
uint32 GetNextResetTalentsCost () const
 
void InitTalentForLevel ()
 
void SendTalentsInfoData ()
 
TalentLearnResult LearnTalent (uint32 talentId, int32 *spellOnCooldown)
 
bool AddTalent (TalentEntry const *talent, uint8 spec, bool learning)
 
bool HasTalent (uint32 spell_id, uint8 spec) const
 
void RemoveTalent (TalentEntry const *talent)
 
void ResetTalentSpecialization ()
 
TalentLearnResult LearnPvpTalent (uint32 talentID, uint8 slot, int32 *spellOnCooldown)
 
bool AddPvpTalent (PvpTalentEntry const *talent, uint8 activeTalentGroup, uint8 slot)
 
void RemovePvpTalent (PvpTalentEntry const *talent)
 
void TogglePvpTalents (bool enable)
 
bool HasPvpTalent (uint32 talentID, uint8 activeTalentGroup) const
 
void EnablePvpRules (bool dueToCombat=false)
 
void DisablePvpRules ()
 
bool HasPvpRulesEnabled () const
 
bool IsInAreaThatActivatesPvpTalents () const
 
bool IsAreaThatActivatesPvpTalents (uint32 areaID) const
 
void ActivateTalentGroup (ChrSpecializationEntry const *spec)
 
PlayerTalentMap const * GetTalentMap (uint8 spec) const
 
PlayerTalentMapGetTalentMap (uint8 spec)
 
PlayerPvpTalentMap const & GetPvpTalentMap (uint8 spec) const
 
PlayerPvpTalentMapGetPvpTalentMap (uint8 spec)
 
std::vector< uint32 > const & GetGlyphs (uint8 spec) const
 
std::vector< uint32 > & GetGlyphs (uint8 spec)
 
ActionButtonList const & GetActionButtons () const
 
void LoadActions (PreparedQueryResult result)
 
uint32 GetFreePrimaryProfessionPoints () const
 
void SetFreePrimaryProfessions (uint16 profs)
 
void InitPrimaryProfessions ()
 
PlayerSpellMap const & GetSpellMap () const
 
PlayerSpellMapGetSpellMap ()
 
void AddSpellMod (SpellModifier *mod, bool apply)
 
template<class T >
void GetSpellModValues (SpellInfo const *spellInfo, SpellModOp op, Spell *spell, T base, int32 *flat, float *pct) const
 
template<class T >
void ApplySpellMod (SpellInfo const *spellInfo, SpellModOp op, T &basevalue, Spell *spell=nullptr) const
 
void SetSpellModTakingSpell (Spell *spell, bool apply)
 
void SendSpellModifiers () const
 
void RemoveArenaSpellCooldowns (bool removeActivePetCooldowns=false)
 
uint32 GetLastPotionId () const
 
void SetLastPotionId (uint32 item_id)
 
void UpdatePotionCooldown (Spell *spell=nullptr)
 
void SetResurrectRequestData (WorldObject const *caster, uint32 health, uint32 mana, uint32 appliedAura)
 
void ClearResurrectRequestData ()
 
bool IsResurrectRequestedBy (ObjectGuid const &guid) const
 
bool IsResurrectRequested () const
 
void ResurrectUsingRequestData ()
 
void ResurrectUsingRequestDataImpl ()
 
PlayerCreateMode GetCreateMode () const
 
uint8 getCinematic () const
 
void setCinematic (uint8 cine)
 
uint32 GetMovie () const
 
void SetMovie (uint32 movie)
 
ActionButtonAddActionButton (uint8 button, uint32 action, uint8 type)
 
void RemoveActionButton (uint8 button)
 
ActionButton const * GetActionButton (uint8 button)
 
void SendInitialActionButtons () const
 
void SendActionButtons (uint32 state) const
 
bool IsActionButtonDataValid (uint8 button, uint32 action, uint8 type) const
 
void SetMultiActionBars (uint8 mask)
 
void UpdatePvPState (bool onlyFFA=false)
 
void SetPvP (bool state) override
 
void UpdatePvP (bool state, bool override=false)
 
void UpdateZone (uint32 newZone, uint32 newArea)
 
void UpdateArea (uint32 newArea)
 
void UpdateHostileAreaState (AreaTableEntry const *area)
 
void UpdateZoneDependentAuras (uint32 zone_id)
 
void UpdateAreaDependentAuras (uint32 area_id)
 
void UpdateAfkReport (time_t currTime)
 checks the 15 afk reports per 5 minutes limit More...
 
void UpdatePvPFlag (time_t currTime)
 
void SetContestedPvP (Player *attackedPlayer=nullptr)
 
void UpdateContestedPvP (uint32 currTime)
 
void SetContestedPvPTimer (uint32 newTime)
 
void ResetContestedPvP ()
 
void UpdateDuelFlag (time_t currTime)
 
void CheckDuelDistance (time_t currTime)
 
void DuelComplete (DuelCompleteType type)
 
void SetDuelArbiter (ObjectGuid guid)
 
void SetDuelTeam (uint32 duelTeam)
 
bool IsGroupVisibleFor (Player const *p) const
 
bool IsInSameGroupWith (Player const *p) const
 
bool IsInSameRaidWith (Player const *p) const
 
void UninviteFromGroup ()
 
void RemoveFromGroup (RemoveMethod method=GROUP_REMOVEMETHOD_DEFAULT)
 
void SendUpdateToOutOfRangeGroupMembers ()
 
void SetInGuild (ObjectGuid::LowType guildId)
 
void SetGuildRank (uint8 rankId)
 
uint8 GetGuildRank () const
 
void SetGuildLevel (uint32 level)
 
uint32 GetGuildLevel () const
 
void SetGuildIdInvited (ObjectGuid::LowType GuildId)
 
ObjectGuid::LowType GetGuildId () const
 
GuildGetGuild ()
 
Guild const * GetGuild () const
 
ObjectGuid::LowType GetGuildIdInvited () const
 
void SetInArenaTeam (uint32 ArenaTeamId, uint8 slot, uint8 type)
 
void SetArenaTeamInfoField (uint8 slot, ArenaTeamInfoType type, uint32 value)
 
uint32 GetArenaTeamId (uint8) const
 
uint32 GetArenaPersonalRating (uint8 slot) const
 
void SetArenaTeamIdInvited (uint32 ArenaTeamId)
 
uint32 GetArenaTeamIdInvited () const
 
uint32 GetRBGPersonalRating () const
 
Difficulty GetDifficultyID (MapEntry const *mapEntry) const
 
Difficulty GetDungeonDifficultyID () const
 
Difficulty GetRaidDifficultyID () const
 
Difficulty GetLegacyRaidDifficultyID () const
 
void SetDungeonDifficultyID (Difficulty dungeon_difficulty)
 
void SetRaidDifficultyID (Difficulty raid_difficulty)
 
void SetLegacyRaidDifficultyID (Difficulty raid_difficulty)
 
void SendRaidGroupOnlyMessage (RaidGroupReason reason, int32 delay) const
 
bool UpdateSkillPro (uint16 skillId, int32 chance, uint32 step)
 
bool UpdateCraftSkill (uint32 spellid)
 
bool UpdateGatherSkill (uint32 SkillId, uint32 SkillValue, uint32 RedLevel, uint32 Multiplicator=1)
 
bool UpdateFishingSkill ()
 
float GetHealthBonusFromStamina () const
 
Stats GetPrimaryStat () const
 
bool UpdateStats (Stats stat) override
 
bool UpdateAllStats () override
 
void ApplySpellPenetrationBonus (int32 amount, bool apply)
 
void ApplyModTargetResistance (int32 mod, bool apply)
 
void ApplyModTargetPhysicalResistance (int32 mod, bool apply)
 
void UpdateResistances (uint32 school) override
 
void UpdateArmor () override
 
void UpdateMaxHealth () override
 
void UpdateMaxPower (Powers power) override
 
uint32 GetPowerIndex (Powers power) const override
 
void UpdateAttackPowerAndDamage (bool ranged=false) override
 
void ApplySpellPowerBonus (int32 amount, bool apply)
 
void UpdateSpellDamageAndHealingBonus ()
 
void ApplyModDamageDonePos (SpellSchools school, int32 mod, bool apply)
 
void ApplyModDamageDoneNeg (SpellSchools school, int32 mod, bool apply)
 
void ApplyModDamageDonePercent (SpellSchools school, float pct, bool apply)
 
void SetModDamageDonePercent (uint8 school, float pct)
 
void ApplyRatingMod (CombatRating cr, int32 value, bool apply)
 
void UpdateRating (CombatRating cr)
 
void UpdateAllRatings ()
 
void UpdateMastery ()
 
void UpdateVersatilityDamageDone ()
 
void UpdateHealingDonePercentMod ()
 
bool CanUseMastery () const
 
void CalculateMinMaxDamage (WeaponAttackType attType, bool normalized, bool addTotalPct, float &minDamage, float &maxDamage) const override
 
void RecalculateRating (CombatRating cr)
 
void GetDodgeFromAgility (float &diminishing, float &nondiminishing) const
 
float GetRatingMultiplier (CombatRating cr) const
 
float GetRatingBonusValue (CombatRating cr) const
 
float ApplyRatingDiminishing (CombatRating cr, float bonusValue) const
 
uint32 GetBaseSpellPowerBonus () const
 Returns base spellpower bonus from spellpower stat on items, without spellpower from intellect stat. More...
 
int32 GetSpellPenetrationItemMod () const
 
bool CanApplyResilience () const override
 
float GetExpertiseDodgeOrParryReduction (WeaponAttackType attType) const
 
void UpdateBlockPercentage ()
 
void UpdateCritPercentage (WeaponAttackType attType)
 
void UpdateAllCritPercentages ()
 
void UpdateParryPercentage ()
 
void UpdateDodgePercentage ()
 
void UpdateMeleeHitChances ()
 
void UpdateRangedHitChances ()
 
void UpdateSpellHitChances ()
 
void UpdateSpellCritChance ()
 
void UpdateCorruption ()
 
void UpdateArmorPenetration (int32 amount)
 
void UpdateExpertise (WeaponAttackType attType)
 
void ApplyManaRegenBonus (int32 amount, bool apply)
 
void ApplyHealthRegenBonus (int32 amount, bool apply)
 
void UpdateManaRegen ()
 
void UpdateAllRunesRegen ()
 
void SetPetSpellPower (uint32 spellPower)
 
ObjectGuid const & GetLootGUID () const
 
void SetLootGUID (ObjectGuid const &guid)
 
ObjectGuid GetLootWorldObjectGUID (ObjectGuid const &lootObjectGuid) const
 
void RemoveAELootedWorldObject (ObjectGuid const &lootWorldObjectGuid)
 
bool HasLootWorldObjectGUID (ObjectGuid const &lootWorldObjectGuid) const
 
std::unordered_map< ObjectGuid, ObjectGuid > const & GetAELootView () const
 
void RemovedInsignia (Player *looterPlr)
 
WorldSessionGetSession () const
 
void BuildCreateUpdateBlockForPlayer (UpdateData *data, Player *target) const override
 
void BuildValuesUpdateWithFlag (ByteBuffer *data, UF::UpdateFieldFlag flags, Player const *target) const override
 
void BuildValuesUpdateForPlayerWithMask (UpdateData *data, UF::ObjectData::Mask const &requestedObjectMask, UF::UnitData::Mask const &requestedUnitMask, UF::PlayerData::Mask const &requestedPlayerMask, UF::ActivePlayerData::Mask const &requestedActivePlayerMask, Player const *target) const
 
void DestroyForPlayer (Player *target) const override
 
void SendAttackSwingCantAttack () const
 
void SendAttackSwingCancelAttack () const
 
void SendAttackSwingDeadTarget () const
 
void SendAttackSwingNotInRange () const
 
void SendAttackSwingBadFacingAttack () const
 
void SendAutoRepeatCancel (Unit *target)
 
void SendExplorationExperience (uint32 Area, uint32 Experience) const
 
void SendDungeonDifficulty (int32 forcedDifficulty=-1) const
 
void SendRaidDifficulty (bool legacy, int32 forcedDifficulty=-1) const
 
void ResetInstances (uint8 method, bool isRaid, bool isLegacy)
 Reset all solo instances and optionally send a message on success for each. More...
 
void SendResetInstanceSuccess (uint32 MapId) const
 
void SendResetInstanceFailed (ResetFailedReason reason, uint32 mapID) const
 
void SendResetFailedNotify (uint32 mapid) const
 
bool UpdatePosition (float x, float y, float z, float orientation, bool teleport=false) override
 
bool UpdatePosition (Position const &pos, bool teleport=false) override
 
void ProcessTerrainStatusUpdate (ZLiquidStatus status, Optional< LiquidData > const &liquidData) override
 
void AtEnterCombat () override
 
void AtExitCombat () override
 
void SendMessageToSet (WorldPacket const *data, bool self) const override
 
void SendMessageToSetInRange (WorldPacket const *data, float dist, bool self) const override
 
void SendMessageToSetInRange (WorldPacket const *data, float dist, bool self, bool own_team_only) const
 
void SendMessageToSet (WorldPacket const *data, Player const *skipped_rcvr) const override
 
void SendChatMessageToSetInRange (ChatMsg chatMsg, Language lanugageId, std::string &&text, float range)
 
CorpseGetCorpse () const
 
void SpawnCorpseBones (bool triggerSave=true)
 
CorpseCreateCorpse ()
 
void KillPlayer ()
 
bool HasCorpse () const
 
WorldLocation GetCorpseLocation () const
 
void InitializeSelfResurrectionSpells ()
 
void ResurrectPlayer (float restore_percent, bool applySickness=false)
 
void BuildPlayerRepop ()
 
void RepopAtGraveyard ()
 
void DurabilityLossAll (double percent, bool inventory)
 
void DurabilityLoss (Item *item, double percent)
 
void DurabilityPointsLossAll (int32 points, bool inventory)
 
void DurabilityPointsLoss (Item *item, int32 points)
 
void DurabilityPointLossForEquipSlot (EquipmentSlots slot)
 
uint32 DurabilityRepairAll (bool cost, float discountMod, bool guildBank)
 
uint32 DurabilityRepair (uint16 pos, bool cost, float discountMod, bool guildBank)
 
void UpdateMirrorTimers ()
 
void StopMirrorTimers ()
 
bool IsMirrorTimerActive (MirrorTimerType type) const
 
bool CanJoinConstantChannelInZone (ChatChannelsEntry const *channel, AreaTableEntry const *zone) const
 
void JoinedChannel (Channel *c)
 
void LeftChannel (Channel *c)
 
void CleanupChannels ()
 
void UpdateLocalChannels (uint32 newZone)
 
void LeaveLFGChannel ()
 
JoinedChannelsList const & GetJoinedChannels () const
 
void InitializeSkillFields ()
 
void SetSkill (uint16 id, uint16 step, uint16 newVal, uint16 maxVal)
 
uint16 GetMaxSkillValue (uint32 skill) const
 
uint16 GetPureMaxSkillValue (uint32 skill) const
 
uint16 GetSkillValue (uint32 skill) const
 
uint16 GetBaseSkillValue (uint32 skill) const
 
uint16 GetPureSkillValue (uint32 skill) const
 
int16 GetSkillPermBonusValue (uint32 skill) const
 
int16 GetSkillTempBonusValue (uint32 skill) const
 
uint16 GetSkillStep (uint16 skill) const
 
bool HasSkill (uint32 skill) const
 
void LearnSkillRewardedSpells (uint32 skillId, uint32 skillValue)
 
int32 FindProfessionSlotFor (uint32 skillId) const
 
void SetSkillLineId (uint32 pos, uint16 skillLineId)
 
void SetSkillStep (uint32 pos, uint16 step)
 
void SetSkillRank (uint32 pos, uint16 rank)
 
void SetSkillStartingRank (uint32 pos, uint16 starting)
 
void