OregonCore  revision 3611e8a-git
Your Favourite TBC server
Player Class Reference

#include <Player.h>

+ Inheritance diagram for Player:

Classes

struct  BgBattlegroundQueueID_Rec
 

Public Types

typedef UNORDERED_MAP< uint32, Item * > ItemMap
 
typedef std::set< uint64ClientGUIDs
 
typedef UNORDERED_MAP< uint32, InstancePlayerBindBoundInstancesMap
 
- Public Types inherited from Unit
typedef std::set< Unit * > AttackerSet
 
typedef std::set< Unit * > ControlList
 
typedef std::pair< uint32, uint8spellEffectPair
 
typedef std::multimap< spellEffectPair, Aura * > AuraMap
 
typedef std::list< Aura * > AuraList
 
typedef std::list< DiminishingReturnDiminishing
 
typedef std::set< AuraTypeAuraTypeSet
 
typedef std::set< uint32ComboPointHolderSet
 
typedef std::set< PetAura const * > PetAuraSet
 

Public Member Functions

 Player (WorldSession *session)
 
 ~Player () override
 
void CleanupsBeforeDelete () override
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
void SetObjectScale (float scale)
 
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 ()
 
void SetSummonPoint (uint32 mapid, float x, float y, float z)
 
void SummonIfPossible (bool agree)
 
bool Create (uint32 guidlow, const std::string &name, uint8 race, uint8 class_, uint8 gender, uint8 skin, uint8 face, uint8 hairStyle, uint8 hairColor, uint8 facialHair, uint8 outfitId)
 
void Update (uint32 time) override
 
void SetInWater (bool apply)
 
bool IsInWater () const override
 
bool IsUnderWater () const override
 
bool IsFalling ()
 
bool IsInAreaTriggerRadius (const AreaTriggerEntry *trigger) const
 
void SendInitialPacketsBeforeAddToMap ()
 
void SendInitialPacketsAfterAddToMap ()
 
void SendTransferAborted (uint32 mapid, uint16 reason)
 
void SendInstanceResetWarning (uint32 mapid, uint32 time)
 
bool CanInteractWithQuestGiver (Object *questGiver)
 
CreatureGetNPCIfCanInteractWith (uint64 guid, uint32 npcflagmask)
 
GameObjectGetGameObjectIfCanInteractWith (uint64 guid, GameobjectTypes type) const
 
void ToggleAFK ()
 
void ToggleDND ()
 
bool isAFK () const
 
bool isDND () const
 
uint8 GetChatTag () const
 
PlayerSocialGetSocial ()
 
void InitTaxiNodesForLevel ()
 
bool ActivateTaxiPathTo (std::vector< uint32 > const &nodes, uint32 mount_id=0, Creature *npc=NULL)
 
bool ActivateTaxiPathTo (uint32 taxi_path_id)
 
void CleanupAfterTaxiFlight ()
 
void ContinueTaxiFlight ()
 
bool isAcceptWhispers () const
 
void SetAcceptWhispers (bool on)
 
bool IsGameMaster () 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)
 
void GiveXP (uint32 xp, Unit *victim, bool disableRafBonus=false)
 
void GiveLevel (uint32 level, bool ignoreRAF=false)
 
void InitStatsForLevel (bool reapplyMods=false)
 
bool GetCommandStatus (uint32 command) const
 
void SetCommandStatusOn (uint32 command)
 
void SetCommandStatusOff (uint32 command)
 
uint32 GetTotalPlayedTime ()
 
uint32 GetLevelPlayedTime ()
 
void ResetTimeSync ()
 
void SendTimeSync ()
 
void setDeathState (DeathState s) override
 
float GetRestBonus () const
 
void SetRestBonus (float rest_bonus_new)
 
bool HasRestFlag (RestFlag restFlag) const
 
void SetRestFlag (RestFlag restFlag, uint32 triggerId=0)
 
void RemoveRestFlag (RestFlag restFlag)
 
uint32 GetXPRestBonus (uint32 xp)
 
uint32 GetInnTriggerId () const
 
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 Say (const std::string &text, const uint32 language)
 
void Yell (const std::string &text, const uint32 language)
 
void TextEmote (const std::string &text)
 
void Whisper (const std::string &text, const uint32 language, uint64 receiver)
 
void Whisper (const std::string &text, const uint32 language, Player *receiver)
 
void BuildPlayerChat (WorldPacket *data, uint8 msgtype, const std::string &text, uint32 language) const
 
void SetVirtualItemSlot (uint8 i, Item *item)
 
void SetSheath (SheathState sheathed) override
 
uint8 FindEquipSlot (ItemTemplate const *proto, uint32 slot, bool swap) const
 
uint32 GetItemCount (uint32 item, bool inBankAlso=false, Item *skipItem=NULL) const
 
ItemGetItemByGuid (uint64 guid) const
 
ItemGetItemByPos (uint16 pos) const
 
ItemGetItemByPos (uint8 bag, uint8 slot) const
 
ItemGetWeaponForAttack (WeaponAttackType attackType, bool useable=false) const
 
ItemGetShield (bool useable=false) const
 
std::vector< Item * > & GetItemUpdateQueue ()
 
bool IsValidPos (uint16 pos)
 
bool IsValidPos (uint8 bag, uint8 slot)
 
uint8 GetBankBagSlotCount () const
 
bool HasBankBagSlot (uint8 slot) const
 
bool HasItemCount (uint32 item, uint32 count, bool inBankAlso=false) const
 
bool HasItemFitToSpellReqirements (SpellEntry const *spellInfo, Item const *ignoreItem=NULL)
 
bool CanCastNoReagents (SpellEntry const *spellInfo) const
 
ItemGetItemOrItemWithGemEquipped (uint32 item) const
 
uint8 CanTakeMoreSimilarItems (Item *pItem) const
 
uint8 CanTakeMoreSimilarItems (uint32 entry, uint32 count) const
 
uint8 CanStoreNewItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 item, uint32 count, uint32 *no_space_count=NULL) const
 
uint8 CanStoreItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, Item *pItem, bool swap=false) const
 
uint8 CanStoreItems (Item **pItem, int count) const
 
uint8 CanEquipNewItem (uint8 slot, uint16 &dest, uint32 item, bool swap) const
 
uint8 CanEquipItem (uint8 slot, uint16 &dest, Item *pItem, bool swap, bool not_loading=true) const
 
uint8 CanUnequipItems (uint32 item, uint32 count) const
 
uint8 CanUnequipItem (uint16 src, bool swap) const
 
uint8 CanBankItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, Item *pItem, bool swap, bool not_loading=true) const
 
uint8 CanUseItem (Item *pItem, bool not_loading=true) const
 
bool HasItemTotemCategory (uint32 TotemCategory) const
 
bool CanUseItem (ItemTemplate const *pItem)
 
uint8 CanUseAmmo (uint32 item) const
 
ItemStoreNewItem (ItemPosCountVec const &pos, uint32 item, bool update, int32 randomPropertyId=0)
 
ItemStoreItem (ItemPosCountVec const &pos, Item *pItem, bool update)
 
ItemEquipNewItem (uint16 pos, uint32 item, bool update)
 
ItemEquipItem (uint16 pos, Item *pItem, bool update)
 
void AutoUnequipOffhandIfNeed ()
 
bool StoreNewItemInBestSlots (uint32 item_id, uint32 item_count)
 
uint8 _CanTakeMoreSimilarItems (uint32 entry, uint32 count, Item *pItem, uint32 *no_space_count=NULL) const
 
uint8 _CanStoreItem (uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 entry, uint32 count, Item *pItem=NULL, bool swap=false, uint32 *no_space_count=NULL) const
 
void ApplyEquipCooldown (Item *pItem)
 
void SetAmmo (uint32 item)
 
void RemoveAmmo ()
 
float GetAmmoDPS () const
 
bool CheckAmmoCompatibility (const ItemTemplate *ammo_proto) const
 
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)
 
ItemBankItem (uint16 pos, 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)
 
ItemGetItemFromBuyBackSlot (uint32 slot)
 
void RemoveItemFromBuyBackSlot (uint32 slot, bool del)
 
uint32 GetMaxKeyringSize () const
 
void SendEquipError (uint8 msg, Item *pItem, Item *pItem2)
 
void SendBuyError (uint8 msg, Creature *pCreature, uint32 item, uint32 param)
 
void SendSellError (uint8 msg, Creature *pCreature, uint64 guid, uint32 param)
 
void SendReferFriendError (ReferFriendError err, const char *name=0)
 
void AddWeaponProficiency (uint32 newflag)
 
void AddArmorProficiency (uint32 newflag)
 
uint32 GetWeaponProficiency () const
 
uint32 GetArmorProficiency () const
 
bool IsInFeralForm () const
 
bool IsUseEquippedWeapon (bool mainhand) const
 
void SendNewItem (Item *item, uint32 count, bool received, bool created, bool broadcast=false)
 
bool BuyItemFromVendor (uint64 vendorguid, uint32 item, uint8 count, uint8 bag, uint8 slot)
 
float GetReputationPriceDiscount (Creature const *pCreature) const
 
PlayerGetTrader () const
 
void ClearTrade ()
 
void TradeCancel (bool sendback)
 
CinematicMgrGetCinematicMgr () const
 
ItemGetItemByTradeSlot (uint8 slot) const
 
void UpdateEnchantTime (uint32 time)
 
void UpdateItemDuration (uint32 time, bool realtimeonly=false)
 
void AddEnchantmentDurations (Item *item)
 
void RemoveEnchantmentDurations (Item *item)
 
void RemoveEnchantmentDurationsReferences (Item *item)
 
void RemoveAllEnchantments (EnchantmentSlot slot, bool arena)
 
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 SendEnchantmentDurations ()
 
void AddItemDurations (Item *item)
 
void RemoveItemDurations (Item *item)
 
void SendItemDurations ()
 
void LoadCorpse ()
 
void LoadPet ()
 
uint32 GetFullGrantableLevels () const
 
float GetGrantableLevels () const
 
void SetGrantableLevels (float amount)
 
float GetReferFriendXPMultiplier () const
 
bool AddItem (uint32 itemId, uint32 count)
 
void PrepareGossipMenu (WorldObject *pSource, uint32 menuId=0)
 
void SendPreparedGossip (WorldObject *pSource)
 
void OnGossipSelect (WorldObject *pSource, uint32 gossipListId, uint32 menuId)
 
uint32 GetGossipTextId (uint32 menuId, WorldObject *source)
 
uint32 GetGossipTextId (WorldObject *pSource)
 
uint32 GetDefaultGossipMenuForSource (WorldObject *pSource)
 
uint32 GetQuestLevelForPlayer (Quest const *pQuest) const
 
void PrepareQuestMenu (uint64 guid)
 
void SendPreparedQuest (uint64 guid)
 
bool IsActiveQuest (uint32 quest_id) const
 
Quest const * GetNextQuest (uint64 guid, Quest const *pQuest)
 
bool CanSeeStartQuest (Quest const *pQuest)
 
bool CanTakeQuest (Quest const *pQuest, bool msg)
 
bool CanAddQuest (Quest const *pQuest, bool msg)
 
bool CanCompleteQuest (uint32 quest_id)
 
bool CanCompleteRepeatableQuest (Quest const *pQuest)
 
bool CanRewardQuest (Quest const *pQuest, bool msg)
 
bool CanRewardQuest (Quest const *pQuest, uint32 reward, bool msg)
 
void AddQuest (Quest const *pQuest, Object *questGiver)
 
void CompleteQuest (uint32 quest_id)
 
void IncompleteQuest (uint32 quest_id)
 
void RewardQuest (Quest const *pQuest, uint32 reward, Object *questGiver, bool announce=true)
 
void FailQuest (uint32 questId)
 
bool SatisfyQuestSkill (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestLevel (Quest const *qInfo, bool msg)
 
bool SatisfyQuestLog (bool msg)
 
bool SatisfyQuestPreviousQuest (Quest const *qInfo, bool msg)
 
bool SatisfyQuestClass (Quest const *qInfo, bool msg) const
 
bool SatisfyQuestRace (Quest const *qInfo, bool msg)
 
bool SatisfyQuestReputation (Quest const *qInfo, bool msg)
 
bool SatisfyQuestStatus (Quest const *qInfo, bool msg)
 
bool SatisfyQuestConditions (Quest const *qInfo, bool msg)
 
bool SatisfyQuestTimed (Quest const *qInfo, bool msg)
 
bool SatisfyQuestExclusiveGroup (Quest const *qInfo, bool msg)
 
bool SatisfyQuestNextChain (Quest const *qInfo, bool msg)
 
bool SatisfyQuestPrevChain (Quest const *qInfo, bool msg)
 
bool SatisfyQuestDay (Quest const *qInfo, bool msg)
 
bool GiveQuestSourceItem (Quest const *pQuest)
 
bool TakeQuestSourceItem (uint32 quest_id, bool msg)
 
bool GetQuestRewardStatus (uint32 quest_id) const
 
QuestStatus GetQuestStatus (uint32 quest_id) const
 
void SetQuestStatus (uint32 quest_id, QuestStatus status)
 
void SetDailyQuestStatus (uint32 quest_id)
 
void ResetDailyQuestStatus ()
 
uint16 FindQuestSlot (uint32 quest_id) const
 
uint32 GetQuestSlotQuestId (uint16 slot) const
 
uint32 GetQuestSlotState (uint16 slot) const
 
uint32 GetQuestSlotCounters (uint16 slot) const
 
uint8 GetQuestSlotCounter (uint16 slot, uint8 counter) const
 
uint32 GetQuestSlotTime (uint16 slot) const
 
void SetQuestSlot (uint16 slot, uint32 quest_id, uint32 timer=0)
 
void SetQuestSlotCounter (uint16 slot, uint8 counter, uint8 count)
 
void SetQuestSlotState (uint16 slot, uint32 state)
 
void RemoveQuestSlotState (uint16 slot, uint32 state)
 
void SetQuestSlotTimer (uint16 slot, uint32 timer)
 
void SwapQuestSlot (uint16 slot1, uint16 slot2)
 
uint32 GetReqKillOrCastCurrentCount (uint32 quest_id, int32 entry)
 
void AdjustQuestReqItemCount (Quest const *pQuest)
 
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 (CreatureInfo const *cInfo, uint64 guid)
 
void KilledMonsterCredit (uint32 entry, uint64 guid=0)
 
void CastedCreatureOrGO (uint32 entry, uint64 guid, uint32 spell_id)
 
void TalkedToCreature (uint32 entry, uint64 guid)
 
void MoneyChanged (uint32 value)
 
bool HasQuestForItem (uint32 itemid) const
 
bool HasQuestForGO (int32 GOId)
 
void UpdateForQuestsGO ()
 
bool CanShareQuest (uint32 quest_id) const
 
void SendQuestComplete (uint32 quest_id)
 
void SendQuestReward (Quest const *pQuest, uint32 XP, Object *questGiver)
 
void SendQuestFailed (uint32 quest_id)
 
void SendQuestTimerFailed (uint32 quest_id)
 
void SendCanTakeQuestResponse (uint32 msg) const
 
void SendQuestConfirmAccept (Quest const *pQuest, Player *pReceiver)
 
void SendPushToPartyResponse (Player *pPlayer, uint32 msg)
 
void SendQuestUpdateAddItem (Quest const *pQuest, uint32 item_idx, uint32 count)
 
void SendQuestUpdateAddCreatureOrGo (Quest const *pQuest, uint64 guid, uint32 creatureOrGO_idx, uint32 old_count, uint32 add_count)
 
uint64 GetDivider ()
 
void SetDivider (uint64 guid)
 
uint32 GetInGameTime ()
 
void SetInGameTime (uint32 time)
 
void AddTimedQuest (uint32 quest_id)
 
void RemoveTimedQuest (uint32 quest_id)
 
bool LoadFromDB (uint32 guid, SqlQueryHolder *holder)
 
void Initialize (uint32 guid)
 
void SaveToDB ()
 
void SaveInventoryAndGoldToDB ()
 
void SaveGoldToDB ()
 
void SaveDataFieldToDB ()
 
void SetBindPoint (uint64 guid)
 
void SendTalentWipeConfirm (uint64 guid)
 
void RewardRage (uint32 damage, uint32 weaponSpeedHitFactor, bool attacker)
 
void SendPetSkillWipeConfirm ()
 
void CalcRage (uint32 damage, bool attacker)
 
void RegenerateAll ()
 
void Regenerate (Powers power)
 
void RegenerateHealth ()
 
void setRegenTimer (uint32 time)
 
void setWeaponChangeTimer (uint32 time)
 
uint32 GetMoney ()
 
void ModifyMoney (int32 d)
 
void SetMoney (uint32 value)
 
uint32 GetTutorialInt (uint32 intId)
 
void SetTutorialInt (uint32 intId, uint32 value)
 
QuestStatusMapgetQuestStatusMap ()
 
UnitGetSelectedUnit () const
 
PlayerGetSelectedPlayer () const
 
const uint64GetSelection () const
 
void SetSelection (const uint64 &guid)
 
uint8 GetComboPoints ()
 
uint64 GetComboTarget ()
 
void AddComboPoints (Unit *target, int8 count)
 
void ClearComboPoints ()
 
void SendComboPoints ()
 
void SendMailResult (uint32 mailId, MailResponseType mailAction, MailResponseResult mailError, uint32 equipError=0, uint32 item_guid=0, uint32 item_count=0)
 
void SendNewMail ()
 
void UpdateNextMailTimeAndUnreads ()
 
void AddNewMailDeliverTime (time_t deliver_time)
 
bool IsMailsLoaded () const
 
void RemoveMail (uint32 id)
 
void AddMail (Mail *mail)
 
uint32 GetMailSize ()
 
MailGetMail (uint32 id)
 
PlayerMails::iterator GetmailBegin ()
 
PlayerMails::iterator GetmailEnd ()
 
ItemGetMItem (uint32 id)
 
void AddMItem (Item *it)
 
bool RemoveMItem (uint32 id)
 
void PetSpellInitialize ()
 
void CharmSpellInitialize ()
 
void PossessSpellInitialize ()
 
void SendRemoveControlBar ()
 
bool HasSpell (uint32 spell) const override
 
bool HasActiveSpell (uint32 spell) const
 
TrainerSpellState GetTrainerSpellState (TrainerSpell const *trainer_spell) const
 
bool IsSpellFitByClassAndRace (uint32 spell_id) const
 
void SendProficiency (ItemClass itemClass, uint32 itemSubclassMask)
 
void SendInitialSpells ()
 
bool AddSpell (uint32 spell_id, bool active, bool learning=true, bool loading=false, bool disabled=false)
 
void LearnSpell (uint32 spell_id)
 
void RemoveSpell (uint32 spell_id, bool disabled=false)
 
void ResetSpells ()
 
void LearnDefaultSpells (bool loading=false)
 
void LearnQuestRewardedSpells ()
 
void LearnQuestRewardedSpells (Quest const *quest)
 
void LearnSpellHighestRank (uint32 spellid)
 
uint32 GetHighestLearnedRankOf (uint32 spellid) const override
 
uint32 GetFreeTalentPoints () const
 
void SetFreeTalentPoints (uint32 points)
 
bool ResetTalents (bool no_cost=false)
 
uint32 ResetTalentsCost () const
 
void InitTalentForLevel ()
 
uint32 GetFreePrimaryProfessionPoints () const
 
void SetFreePrimaryProfessions (uint16 profs)
 
void InitPrimaryProfessions ()
 
PlayerSpellMap const & GetSpellMap () const
 
PlayerSpellMapGetSpellMap ()
 
void AddSpellMod (SpellModifier *mod, bool apply)
 
int32 GetTotalFlatMods (uint32 spellId, SpellModOp op)
 
int32 GetTotalPctMods (uint32 spellId, SpellModOp op)
 
bool IsAffectedBySpellmod (SpellEntry const *spellInfo, SpellModifier *mod, Spell const *spell=NULL)
 
template<class T >
ApplySpellMod (uint32 spellId, SpellModOp op, T &basevalue, Spell const *spell=NULL)
 
void RemoveSpellMods (Spell const *spell)
 
void RestoreSpellMods (Spell const *spell)
 
bool HasSpellCooldown (uint32 spell_id) const
 
uint32 GetSpellCooldownDelay (uint32 spell_id) const
 
void AddSpellCooldown (uint32 spell_id, uint32 itemid, time_t end_time)
 
void SendCooldownEvent (SpellEntry const *spellInfo)
 
void ProhibitSpellSchool (SpellSchoolMask idSchoolMask, uint32 unTimeMs) override
 
void RemoveSpellCooldown (uint32 spell_id, bool update=false)
 
void SendClearCooldown (uint32 spell_id, Unit *target)
 
void RemoveArenaSpellCooldowns ()
 
void RemoveAllSpellCooldown ()
 
void _LoadSpellCooldowns (QueryResult_AutoPtr result)
 
void _SaveSpellCooldowns ()
 
void AddGlobalCooldown (SpellEntry const *spellInfo, Spell *spell)
 
bool HasGlobalCooldown (SpellEntry const *spellInfo) const
 
void RemoveGlobalCooldown (SpellEntry const *spellInfo)
 
void setResurrectRequestData (uint64 guid, uint32 mapId, float X, float Y, float Z, uint32 health, uint32 mana)
 
void clearResurrectRequestData ()
 
bool isRessurectRequestedBy (uint64 guid) const
 
bool isRessurectRequested () const
 
void ResurectUsingRequestData ()
 
int getCinematic ()
 
void setCinematic (int cine)
 
void addActionButton (uint8 button, uint16 action, uint8 type, uint8 misc)
 
void removeActionButton (uint8 button)
 
void SendInitialActionButtons ()
 
void UpdatePvPState (bool onlyFFA=false)
 
void SetPvP (bool state)
 
void UpdatePvP (bool state, bool override=false)
 
bool IsFFAPvP () const
 
void SetFFAPvP (bool state)
 
void UpdateZone (uint32 newZone)
 
void UpdateArea (uint32 newArea)
 
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 UpdateContestedPvP (uint32 currTime)
 
void SetContestedPvPTimer (uint32 newTime)
 
void ResetContestedPvP ()
 
void UpdateDuelFlag (time_t currTime)
 
void CheckDuelDistance (time_t currTime)
 
void DuelComplete (DuelCompleteType type)
 
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 (uint32 GuildId)
 
void SetRank (uint32 rankId)
 
void SetGuildIdInvited (uint32 GuildId)
 
uint32 GetGuildId ()
 
uint32 GetRank ()
 
int GetGuildIdInvited ()
 
void SetInArenaTeam (uint32 ArenaTeamId, uint8 slot)
 
void SetArenaTeamInfoField (uint8 slot, ArenaTeamInfoType type, uint32 value)
 
uint32 GetArenaTeamId (uint8 slot)
 
uint32 GetArenaPersonalRating (uint8 slot)
 
void SetArenaTeamIdInvited (uint32 ArenaTeamId)
 
uint32 GetArenaTeamIdInvited ()
 
void SetDifficulty (DungeonDifficulty dungeon_difficulty)
 
DungeonDifficulty GetDifficulty ()
 
bool UpdateSkill (uint32 skill_id, uint32 step)
 
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 ()
 
uint32 GetBaseDefenseSkillValue () const
 
uint32 GetBaseWeaponSkillValue (WeaponAttackType attType) const
 
uint32 GetSpellByProto (ItemTemplate *proto)
 
float GetHealthBonusFromStamina ()
 
float GetManaBonusFromIntellect ()
 
bool UpdateStats (Stats stat) override
 
bool UpdateAllStats () override
 
void UpdateResistances (uint32 school) override
 
void UpdateArmor () override
 
void UpdateMaxHealth () override
 
void UpdateMaxPower (Powers power) override
 
void UpdateAttackPowerAndDamage (bool ranged=false) override
 
void UpdateShieldBlockValue ()
 
void UpdateDamagePhysical (WeaponAttackType attType) override
 
void UpdateSpellDamageAndHealingBonus ()
 
void CalculateMinMaxDamage (WeaponAttackType attType, bool normalized, float &min_damage, float &max_damage)
 
void UpdateDefenseBonusesMod ()
 
void ApplyRatingMod (CombatRating cr, int32 value, bool apply)
 
float GetMeleeCritFromAgility ()
 
float GetDodgeFromAgility ()
 
float GetSpellCritFromIntellect ()
 
float OCTRegenHPPerSpirit ()
 
float OCTRegenMPPerSpirit ()
 
float GetRatingMultiplier (CombatRating cr) const
 
float GetRatingBonusValue (CombatRating cr) const
 
uint32 GetMeleeCritDamageReduction (uint32 damage) const
 
uint32 GetRangedCritDamageReduction (uint32 damage) const
 
uint32 GetSpellCritDamageReduction (uint32 damage) const
 
uint32 GetDotDamageReduction (uint32 damage) const
 
float GetExpertiseDodgeOrParryReduction (WeaponAttackType attType) const
 
void UpdateBlockPercentage ()
 
void UpdateCritPercentage (WeaponAttackType attType)
 
void UpdateAllCritPercentages ()
 
void UpdateParryPercentage ()
 
void UpdateDodgePercentage ()
 
void UpdateMeleeHitChances ()
 
void UpdateRangedHitChances ()
 
void UpdateSpellHitChances ()
 
void UpdateAllSpellCritChances ()
 
void UpdateSpellCritChance (uint32 school)
 
void UpdateExpertise (WeaponAttackType attType)
 
void UpdateManaRegen ()
 
const uint64GetLootGUID () const
 
void SetLootGUID (const uint64 &guid)
 
void RemovedInsignia (Player *looterPlr)
 
WorldSessionGetSession () const
 
void SetSession (WorldSession *s)
 
void BuildCreateUpdateBlockForPlayer (UpdateData *data, Player *target) const override
 
void DestroyForPlayer (Player *target, bool onDeath=false) const override
 
void SendDelayResponse (const uint32)
 
void SendLogXPGain (uint32 GivenXP, Unit *victim, uint32 RestXP, bool RafBonus=false)
 
void SendAttackSwingCantAttack ()
 
void SendAttackSwingCancelAttack ()
 
void SendAttackSwingDeadTarget ()
 
void SendAttackSwingNotStanding ()
 
void SendAttackSwingNotInRange ()
 
void SendAttackSwingBadFacingAttack ()
 
void SendAutoRepeatCancel ()
 
void SendExplorationExperience (uint32 Area, uint32 Experience)
 
void SendDungeonDifficulty (bool IsInGroup)
 
void ResetInstances (uint8 method)
 
void SendResetInstanceSuccess (uint32 MapId)
 
void SendResetInstanceFailed (uint32 reason, uint32 MapId)
 
void SendResetFailedNotify (uint32 mapid)
 
bool SetPosition (float x, float y, float z, float orientation, bool teleport=false) override
 
bool SetPosition (const Position &pos, bool teleport=false)
 
void UpdateUnderwaterState (Map *m, float x, float y, float z)
 
void SendMessageToSet (WorldPacket *data, bool self) override
 
void SendMessageToSetInRange (WorldPacket *data, float fist, bool self) override
 
void SendMessageToSetInRange (WorldPacket *data, float dist, bool self, bool own_team_only)
 
CorpseGetCorpse () const
 
void SpawnCorpseBones ()
 
void CreateCorpse ()
 
void KillPlayer ()
 
uint32 GetResurrectionSpellId ()
 
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 ()
 
void JoinedChannel (Channel *c)
 
void LeftChannel (Channel *c)
 
void CleanupChannels ()
 
void UpdateLocalChannels (uint32 newZone)
 
void LeaveLFGChannel ()
 
void UpdateDefense ()
 
void UpdateWeaponSkill (WeaponAttackType attType)
 
void UpdateCombatSkills (Unit *victim, WeaponAttackType attType, MeleeHitOutcome outcome, bool defence)
 
void SetSkill (uint32 id, uint16 currVal, 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 GetSkillTempBonusValue (uint32 skill) const
 
bool HasSkill (uint32 skill) const
 
void LearnSkillRewardedSpells (uint32 id)
 
void LearnSkillRewardedSpells ()
 
WorldLocationGetTeleportDest ()
 
bool IsBeingTeleported () const
 
bool IsBeingTeleportedNear () const
 
bool IsBeingTeleportedFar () const
 
void SetSemaphoreTeleportNear (bool semphsetting)
 
void SetSemaphoreTeleportFar (bool semphsetting)
 
void ProcessDelayedOperations ()
 
void CheckAreaExploreAndOutdoor (void)
 
uint32 GetTeam () const
 
TeamId GetTeamId () const
 
void setFactionForRace (uint8 race)
 
bool IsAtGroupRewardDistance (WorldObject const *pRewardSource) const
 
void RewardPlayerAndGroupAtKill (Unit *victim)
 
void RewardPlayerAndGroupAtEvent (uint32 creature_id, WorldObject *pRewardSource)
 
bool isHonorOrXPTarget (Unit *victim) const
 
ReputationMgrGetReputationMgr ()
 
ReputationMgr const & GetReputationMgr () const
 
ReputationRank GetReputationRank (uint32 faction_id) const
 
void RewardReputation (Unit *victim, float rate)
 
void RewardReputation (Quest const *pQuest)
 
int32 CalculateReputationGain (uint32 creatureOrQuestLevel, int32 rep, bool for_quest)
 
void UpdateSkillsForLevel ()
 
void UpdateSkillsToMaxSkillsForLevel ()
 
void ModifySkillBonus (uint32 skillid, int32 val, bool talent)
 
void UpdateHonorFields ()
 
bool RewardHonor (Unit *victim, uint32 groupsize, float honor=-1, bool pvptoken=false)
 
uint32 GetHonorPoints ()
 
uint32 GetArenaPoints ()
 
void ModifyHonorPoints (int32 value)
 
void ModifyArenaPoints (int32 value, bool update=true)
 
uint8 GetHighestPvPRankIndex ()
 
uint32 GetMaxPersonalArenaRatingRequirement ()
 
void SetDrunkValue (uint16 newDrunkValue, uint32 itemid=0)
 
uint16 GetDrunkValue () const
 
uint32 GetDeathTimer () const
 
uint32 GetCorpseReclaimDelay (bool pvp) const
 
void UpdateCorpseReclaimDelay ()
 
int32 CalculateCorpseReclaimDelay (bool load=false)
 
void SendCorpseReclaimDelay (uint32 delay)
 
uint32 GetShieldBlockValue () const override
 
bool CanParry () const
 
void SetCanParry (bool value)
 
bool CanBlock () const
 
void SetCanBlock (bool value)
 
void SetRegularAttackTime ()
 
void SetBaseModValue (BaseModGroup modGroup, BaseModType modType, float value)
 
void HandleBaseModValue (BaseModGroup modGroup, BaseModType modType, float amount, bool apply)
 
float GetBaseModValue (BaseModGroup modGroup, BaseModType modType) const
 
float GetTotalBaseModValue (BaseModGroup modGroup) const
 
float GetTotalPercentageModValue (BaseModGroup modGroup) const
 
void _ApplyAllStatBonuses ()
 
void _RemoveAllStatBonuses ()
 
void ResetAllPowers ()
 
void _ApplyWeaponDependentAuraMods (Item *item, WeaponAttackType attackType, bool apply)
 
void _ApplyWeaponDependentAuraCritMod (Item *item, WeaponAttackType attackType, Aura *aura, bool apply)
 
void _ApplyWeaponDependentAuraDamageMod (Item *item, WeaponAttackType attackType, Aura *aura, bool apply)
 
void _ApplyItemMods (Item *item, uint8 slot, bool apply)
 
void _RemoveAllItemMods ()
 
void _ApplyAllItemMods ()
 
void _ApplyItemBonuses (ItemTemplate const *proto, uint8 slot, bool apply)
 
void _ApplyAmmoBonuses ()
 
bool EnchantmentFitsRequirements (uint32 enchantmentcondition, int8 slot)
 
void ToggleMetaGemsActive (uint8 exceptslot, bool apply)
 
void CorrectMetaGemEnchants (uint8 slot, bool apply)
 
void InitDataForForm (bool reapplyMods=false)
 
void ApplyItemEquipSpell (Item *item, bool apply, bool form_change=false)
 
void ApplyEquipSpell (SpellEntry const *spellInfo, Item *item, bool apply, bool form_change=false)
 
void UpdateEquipSpellsAtFormChange ()
 
void CastItemCombatSpell (Unit *target, WeaponAttackType attType, uint32 procVictim, uint32 procEx, SpellEntry const *spellInfo=NULL)
 
void CastItemCombatSpell (Unit *target, WeaponAttackType attType, uint32 procVictim, uint32 procEx, Item *item, ItemTemplate const *proto, SpellEntry const *spell=NULL)
 
void SendInitWorldStates (bool force=false, uint32 forceZoneId=0)
 
void SendUpdateWorldState (uint32 Field, uint32 Value)
 
void SendDirectMessage (WorldPacket *data)
 
void SendAuraDurationsForTarget (Unit *target)
 
void SendLoot (uint64 guid, LootType loot_type)
 
void SendLootError (uint64 guid, LootError error)
 
void SendLootRelease (uint64 guid)
 
void SendNotifyLootItemRemoved (uint8 lootSlot)
 
void SendNotifyLootMoneyRemoved ()
 
bool InBattleground () const
 
bool InArena () const
 
uint32 GetBattlegroundId () const
 
BattlegroundGetBattleground () const
 
uint32 GetBattlegroundQueueIdFromLevel () const
 
bool InBattlegroundQueue () const
 
uint32 GetBattlegroundQueueId (uint32 index) const
 
uint32 GetBattlegroundQueueIndex (uint32 bgQueueType) const
 
bool IsInvitedForBattlegroundQueueType (uint32 bgQueueType) const
 
bool InBattlegroundQueueForBattlegroundQueueType (uint32 bgQueueType) const
 
void SetBattlegroundId (uint32 val)
 
uint32 AddBattlegroundQueueId (uint32 val)
 
bool HasFreeBattlegroundQueueId ()
 
void RemoveBattlegroundQueueId (uint32 val)
 
void SetInviteForBattlegroundQueueType (uint32 bgQueueType, uint32 instanceId)
 
bool IsInvitedForBattlegroundInstance (uint32 instanceId) const
 
WorldLocation const & GetBattlegroundEntryPoint () const
 
void SetBattlegroundEntryPoint ()
 
void SetBattlegroundEntryPoint (uint32 Map, float PosX, float PosY, float PosZ, float PosO)
 
void SetBGTeam (uint32 team)
 
uint32 GetBGTeam () const
 
void LeaveBattleground (bool teleportToEntryPoint=true)
 
bool CanJoinToBattleground () const
 
bool CanReportAfkDueToLimit ()
 
void ReportedAfkBy (Player *reporter)
 
void ClearAfkReports ()
 
bool GetBGAccessByLevel (uint32 bgTypeId) const
 
bool isTotalImmunity ()
 
bool CanUseBattlegroundObject (GameObject *gameobject)
 
bool CanCaptureTowerPoint ()
 
OutdoorPvPGetOutdoorPvP () const
 
bool IsOutdoorPvPActive ()
 
void EnvironmentalDamage (EnviromentalDamage type, uint32 damage)
 
void UpdateSpeakTime ()
 
bool CanSpeak () const
 
void ChangeSpeakTime (int utime)
 
void SetFallInformation (uint32 time, float z)
 
void BuildTeleportAckMsg (WorldPacket *data, float x, float y, float z, float ang) const
 
bool isMovingOrTurning () const
 
bool CanFly () const
 
void HandleFallDamage (MovementInfo &movementInfo)
 
void HandleFallUnderMap ()
 
void SetClientControl (Unit *target, bool allowMove)
 
void SetMover (Unit *target)
 
void SetSeer (WorldObject *target)
 
void SetViewpoint (WorldObject *target, bool apply)
 
WorldObjectGetViewpoint () const
 
void StopCastingCharm ()
 
void StopCastingBindSight ()
 
TransportGetTransport () const
 
void SetTransport (Transport *t)
 
float GetTransOffsetX () const
 
float GetTransOffsetY () const
 
float GetTransOffsetZ () const
 
float GetTransOffsetO () const
 
uint32 GetTransTime () const
 
uint32 GetSaveTimer () const
 
void SetSaveTimer (uint32 timer)
 
void SaveRecallPosition ()
 
void SetHomebindToLocation (WorldLocation const &loc, uint32 area_id)
 
void RelocateToHomebind (uint32 &newMap)
 
bool TeleportToHomebind (uint32 options=0)
 
WorldLocation GetStartPosition () const
 
bool HaveAtClient (WorldObject const *u) const
 
bool IsNeverVisible () const override
 
bool IsVisibleGloballyFor (Player *pl) const
 
void UpdateObjectVisibility (bool forced=true) override
 
void UpdateVisibilityForPlayer ()
 
void UpdateVisibilityOf (WorldObject *target)
 
void UpdateTriggerVisibility ()
 
template<class T >
void UpdateVisibilityOf (T *target, UpdateData &data, std::set< Unit * > &visibleNow)
 
bool HasAtLoginFlag (AtLoginFlags f) const
 
void SetAtLoginFlag (AtLoginFlags f)
 
uint32 GetTemporaryUnsummonedPetNumber () const
 
void SetTemporaryUnsummonedPetNumber (uint32 petnumber)
 
uint32 GetOldPetSpell () const
 
void SetOldPetSpell (uint32 petspell)
 
void UnsummonPetTemporaryIfAny ()
 
void ResummonTemporaryUnsummonedPetIfAny ()
 
PetStatus GetPetStatus () const
 
void SetPetStatus (PetStatus status)
 
bool isPetDeadAndRemoved () const
 
bool isPetDismissed () const
 
bool doesOwnPet () const
 
void SendCinematicStart (uint32 CinematicSequenceId)
 
void UpdateHomebindTime (uint32 time)
 
InstancePlayerBindGetBoundInstance (uint32 mapid, uint8 difficulty)
 
BoundInstancesMapGetBoundInstances (uint8 difficulty)
 
InstanceSaveGetInstanceSave (uint32 mapid)
 
void UnbindInstance (uint32 mapid, uint8 difficulty, bool unload=false)
 
void UnbindInstance (BoundInstancesMap::iterator &itr, uint8 difficulty, bool unload=false)
 
InstancePlayerBindBindToInstance (InstanceSave *save, bool permanent, bool load=false)
 
void SendRaidInfo ()
 
void SendSavedInstances ()
 
bool CheckInstanceValidity (bool)
 
bool Satisfy (AccessRequirement const *, uint32 target_map, bool report=false)
 
uint32 GetLastPetNumber () const
 
void SetLastPetNumber (uint32 petnumber)
 
GroupGetGroupInvite ()
 
void SetGroupInvite (Group *group)
 
GroupGetGroup ()
 
const GroupGetGroup () const
 
GroupReferenceGetGroupRef ()
 
void SetGroup (Group *group, int8 subgroup=-1)
 
uint8 GetSubGroup () const
 
uint32 GetGroupUpdateFlag ()
 
void SetGroupUpdateFlag (uint32 flag)
 
uint64 GetAuraUpdateMask ()
 
void SetAuraUpdateMask (uint8 slot)
 
void UnsetAuraUpdateMask (uint8 slot)
 
PlayerGetNextRandomRaidMember (float radius)
 
PartyResult CanUninviteFromGroup () const
 
void SetBattlegroundRaid (Group *group, int8 subgroup=-1)
 
void RemoveFromBattlegroundRaid ()
 
GroupGetOriginalGroup ()
 
GroupReferenceGetOriginalGroupRef ()
 
uint8 GetOriginalSubGroup () const
 
void SetOriginalGroup (Group *group, int8 subgroup=-1)
 
void SetPassOnGroupLoot (bool bPassOnGroupLoot)
 
bool GetPassOnGroupLoot () const
 
MapReferenceGetMapRef ()
 
void SetMap (Map *map) override
 
void ResetMap () override
 
bool isAllowedToLoot (const Creature *creature)
 
DeclinedName const * GetDeclinedNames () const
 
bool HasTitle (uint32 bitIndex)
 
bool HasTitle (CharTitlesEntry const *title)
 
void SetTitle (CharTitlesEntry const *title, bool lost=false)
 
bool IsLoading () const
 
RAFLinkStatus GetRAFStatus () const
 
void SetRAFStatus (RAFLinkStatus status)
 
bool SetFeatherFall (bool apply, bool packetOnly=false) override
 
bool SetHover (bool apply, bool packetOnly=false) override
 
bool SetCanFly (bool apply, bool packetOnly=false) override
 
bool SetLevitate (bool apply, bool packetOnly=false) override
 
bool SetWaterWalking (bool enable, bool packetOnly=false) override
 
void ScheduleDelayedOperation (uint32 operation)
 
- Public Member Functions inherited from Unit
 ~Unit () override
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
void CleanupsBeforeDelete () override
 
DiminishingLevels GetDiminishing (DiminishingGroup group)
 
void IncrDiminishing (DiminishingGroup group)
 
void ApplyDiminishingToDuration (DiminishingGroup group, int32 &duration, Unit *caster, DiminishingLevels Level)
 
void ApplyDiminishingAura (DiminishingGroup group, bool apply)
 
void ClearDiminishings ()
 
uint32 GetSpellRadiusForTarget (Unit *target, const SpellRadiusEntry *radiusEntry)
 
void Update (uint32 time) override
 
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
 
void SetCanDualWield (bool value)
 
float GetCombatReach () const
 
float GetMeleeReach () const
 
bool IsWithinCombatRange (const Unit *obj, float dist2compare) const
 
bool IsWithinMeleeRange (Unit *obj, float dist=MELEE_RANGE) const
 
void GetRandomContactPoint (const Unit *target, float &x, float &y, float &z, float distance2dMin, float distance2dMax) 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
 
void CombatStop (bool cast=false)
 
void CombatStopWithPets (bool cast=false)
 
UnitSelectNearbyTarget (Unit *exclude=NULL, float dist=NOMINAL_MELEE_RANGE) const
 
PlayerSelectNearestPlayer (float distance=0) const
 
void SendMeleeAttackStop (Unit *victim=NULL)
 
void SendMeleeAttackStart (Unit *victim)
 
void SetCritterGUID (uint64 guid)
 
uint64 GetCritterGUID () const
 
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 IsDuringRemoveFromWorld () const
 
PetToPet ()
 
Pet const * ToPet () const
 
uint32 getLevel () const
 
uint8 getLevelForTarget (WorldObject const *) const override
 
void SetLevel (uint32 lvl)
 
uint8 getRace () const
 
uint32 getRaceMask () const
 
uint8 getClass () const
 
uint32 getClassMask () const
 
uint8 getGender () const
 
float GetStat (Stats stat) const
 
void SetStat (Stats stat, int32 val)
 
uint32 GetArmor () const
 
void SetArmor (int32 val)
 
uint32 GetResistance (SpellSchools school) const
 
void SetResistance (SpellSchools school, int32 val)
 
uint32 GetHealth () const
 
uint32 GetMaxHealth () const
 
bool ShouldRevealHealthTo (Player *player) const
 
void SendHealthUpdateDueToCharm (Player *charmer)
 
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
 
uint32 CountPctFromMaxHealth (int32 pct) const
 
uint32 CountPctFromCurHealth (int32 pct) const
 
void SetHealth (uint32 val)
 
void SetMaxHealth (uint32 val)
 
void SetFullHealth ()
 
int32 ModifyHealth (int32 val)
 
Powers getPowerType () const
 
void setPowerType (Powers power)
 
uint32 GetPower (Powers power) const
 
uint32 GetMaxPower (Powers power) const
 
void SetPower (Powers power, uint32 val)
 
void SetMaxPower (Powers power, uint32 val)
 
int32 ModifyPower (Powers power, int32 val)
 
void ApplyPowerMod (Powers power, uint32 val, bool apply)
 
void ApplyMaxPowerMod (Powers power, uint32 val, bool apply)
 
uint32 GetAttackTime (WeaponAttackType att) const
 
void SetAttackTime (WeaponAttackType att, uint32 val)
 
void ApplyAttackTimePercentMod (WeaponAttackType att, float val, bool apply)
 
void ApplyCastTimePercentMod (float val, bool apply)
 
SheathState GetSheath () const
 
uint32 getFaction () const
 
void setFaction (uint32 faction)
 
FactionTemplateEntry const * GetFactionTemplateEntry () const
 
ReputationRank GetReactionTo (Unit const *target) const
 
bool IsHostileTo (Unit const *unit) const
 
bool IsHostileToPlayers () const
 
bool IsFriendlyTo (Unit const *unit) const
 
bool IsNeutralToAll () const
 
bool IsInPartyWith (Unit const *unit) const
 
bool IsInRaidWith (Unit const *unit) const
 
void GetPartyMember (std::list< Unit * > &units, float dist)
 
void GetRaidMember (std::list< Unit * > &units, float dist)
 
bool IsContestedGuard () const
 
bool IsInSanctuary () const
 
bool IsPvP () const
 
void SetPvP (bool state)
 
uint32 GetCreatureType () const
 
uint32 GetCreatureTypeMask () const
 
uint8 getStandState () const
 
bool IsSitState () const
 
bool IsStandState () const
 
void SetStandState (uint8 state)
 
void SetStandFlags (uint8 flags)
 
void RemoveStandFlags (uint8 flags)
 
bool IsMounted () const
 
uint32 GetMountID () const
 
void Mount (uint32 mount, uint32 spellId=0)
 
void Dismount ()
 
bool HasShapeshiftChangingModel () const
 
uint16 GetMaxSkillValueForLevel (Unit const *target=NULL) const
 
void RemoveSpellbyDamageTaken (uint32 damage, uint32 spell)
 
uint32 DealDamage (Unit *victim, uint32 damage, CleanDamage const *cleanDamage=NULL, DamageEffectType damagetype=DIRECT_DAMAGE, SpellSchoolMask damageSchoolMask=SPELL_SCHOOL_MASK_NORMAL, SpellEntry const *spellProto=NULL, bool durabilityLoss=true)
 
void Kill (Unit *victim, bool durabilityLoss=true)
 
void ProcDamageAndSpell (Unit *victim, uint32 procAttacker, uint32 procVictim, uint32 procEx, uint32 amount, WeaponAttackType attType=BASE_ATTACK, SpellEntry const *procSpell=NULL, bool canTrigger=true)
 
void ProcDamageAndSpellFor (bool isVictim, Unit *pTarget, uint32 procFlag, uint32 procExtra, WeaponAttackType attType, SpellEntry const *procSpell, uint32 damage)
 
void HandleEmoteCommand (uint32 anim_id)
 
void AttackerStateUpdate (Unit *victim, WeaponAttackType attType=BASE_ATTACK, bool extra=false)
 
float MeleeMissChanceCalc (const Unit *victim, WeaponAttackType attType) const
 
void CalculateMeleeDamage (Unit *victim, uint32 damage, CalcDamageInfo *damageInfo, WeaponAttackType attackType=BASE_ATTACK)
 
void DealMeleeDamage (CalcDamageInfo *damageInfo, bool durabilityLoss)
 
void CalculateSpellDamageTaken (SpellNonMeleeDamage *damageInfo, int32 damage, SpellEntry const *spellInfo, WeaponAttackType attackType=BASE_ATTACK, bool crit=false)
 
void DealSpellDamage (SpellNonMeleeDamage *damageInfo, bool durabilityLoss)
 
float MeleeSpellMissChance (const Unit *victim, WeaponAttackType attType, int32 skillDiff, uint32 spellId) const
 
SpellMissInfo MeleeSpellHitResult (Unit *victim, SpellEntry const *spell, bool cMiss=true)
 
SpellMissInfo MagicSpellHitResult (Unit *victim, SpellEntry const *spell)
 
SpellMissInfo SpellHitResult (Unit *victim, SpellEntry const *spell, bool canReflect=false, bool canMiss=true)
 
float GetUnitDodgeChance () const
 
float GetUnitParryChance () const
 
float GetUnitBlockChance () const
 
float GetUnitCriticalChance (WeaponAttackType attackType, const Unit *victim) const
 
int32 GetMechanicResistChance (const SpellEntry *spell)
 
bool CanUseAttackType (uint8 attacktype) const
 
uint32 GetUnitMeleeSkill (Unit const *target=NULL) const
 
uint32 GetDefenseSkillValue (Unit const *target=NULL) const
 
uint32 GetWeaponSkillValue (WeaponAttackType attType, Unit const *target=NULL) const
 
float GetWeaponProcChance () const
 
float GetPPMProcChance (uint32 WeaponSpeed, float PPM) const
 
MeleeHitOutcome RollMeleeOutcomeAgainst (const Unit *victim, WeaponAttackType attType) const
 
MeleeHitOutcome RollMeleeOutcomeAgainst (const Unit *victim, WeaponAttackType attType, int32 crit_chance, int32 miss_chance, int32 dodge_chance, int32 parry_chance, int32 block_chance, bool SpellCasted) const
 
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 isServiceProvider () const
 
bool isSpiritService () const
 
bool IsCritter () const
 
bool isPlayer () const
 
bool isInFlight () const
 
bool isInitiatingCombat () const
 
bool IsInCombat () const
 
bool IsPetInCombat () const
 
bool IsInCombatWith (Unit const *who) const
 
void CombatStart (Unit *target, bool initialAggro=true)
 
void SetInCombatState (bool PvP, Unit *enemy=NULL)
 
void setInitiatingCombat (bool flag)
 
void SetInCombatWith (Unit *enemy)
 
void ClearInCombat ()
 
void ClearInPetCombat ()
 
uint32 GetCombatTimer () const
 
uint32 GetAuraCount (uint32 spellId) const
 
bool HasAuraType (AuraType auraType) const
 
bool HasAuraTypeWithCaster (AuraType auratype, uint64 caster) const
 
bool HasAuraTypeWithMiscvalue (AuraType auratype, int32 miscvalue) const
 
bool HasAuraTypeWithFamilyFlags (AuraType auraType, uint32 familyName, uint64 familyFlags) const
 
bool HasNegativeAuraWithInterruptFlag (uint32 flag)
 
bool HasAura (uint32 spellId, uint8 effIndex=0) const
 
bool HasHigherRankOfAura (uint32 spellid, uint8 effIndex) const
 
bool HasStealthAura () const
 
bool HasInvisibilityAura () const
 
bool isFeared () const
 
bool isInRoots () const
 
bool IsPolymorphed () const
 
bool isFrozen () const
 
bool isTargetableForAttack (bool checkFakeDeath=true) const
 
bool IsValidAttackTarget (Unit const *target) const
 
bool _IsValidAttackTarget (Unit const *target, SpellEntry const *bySpell, WorldObject const *obj=NULL) const
 
bool isAttackableByAOE (float x=0, float y=0, float z=0, bool LosCheck=false) const
 
bool IsValidAssistTarget (Unit const *target) const
 
bool _IsValidAssistTarget (Unit const *target, SpellEntry const *bySpell) const
 
bool isInAccessiblePlaceFor (Creature const *c) const
 
void SendHealSpellLog (Unit *victim, uint32 SpellID, uint32 Damage, bool critical=false)
 
void SendEnergizeSpellLog (Unit *victim, uint32 SpellID, uint32 Damage, Powers powertype)
 
void EnergizeBySpell (Unit *victim, uint32 SpellID, uint32 Damage, Powers powertype)
 
uint32 SpellNonMeleeDamageLog (Unit *victim, uint32 spellID, uint32 damage, bool isTriggeredSpell=false, bool useSpellDamage=true)
 
void CastSpell (Unit *Victim, uint32 spellId, bool triggered, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastSpell (Unit *Victim, SpellEntry const *spellInfo, bool triggered, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastCustomSpell (Unit *Victim, uint32 spellId, int32 const *bp0, int32 const *bp1, int32 const *bp2, bool triggered, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastCustomSpell (uint32 spellId, SpellValueMod mod, uint32 value, Unit *Victim=NULL, bool triggered=true, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastCustomSpell (uint32 spellId, CustomSpellValues const &value, Unit *Victim=NULL, bool triggered=true, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastSpell (float x, float y, float z, uint32 spellId, bool triggered, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void CastSpell (GameObject *go, uint32 spellId, bool triggered, Item *castItem=NULL, Aura *triggeredByAura=NULL, uint64 originalCaster=0)
 
void AddAura (uint32 spellId, Unit *target)
 
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 *log)
 
void SendSpellNonMeleeDamageLog (Unit *target, uint32 SpellID, uint32 Damage, SpellSchoolMask damageSchoolMask, uint32 AbsorbedDamage, uint32 Resist, bool PhysicalDamage, uint32 Blocked, bool CriticalHit=false)
 
void SendSpellMiss (Unit *target, uint32 spellID, SpellMissInfo missInfo)
 
void SendSpellDamageImmune (Unit *target, uint32 spellId)
 
bool SetPosition (const Position &pos, bool teleport=false)
 
void NearTeleportTo (float x, float y, float z, float orientation, bool casting=false)
 
void SendTeleportPacket (Position &pos)
 
void SendMovementFlagUpdate (bool self=false)
 
void BuildHeartBeatMsg (WorldPacket *data) const
 
void BuildMovementPacket (ByteBuffer *data) const
 
virtual void MoveOutOfRange (Player &)
 
bool isMoving () const
 
bool IsAlive () const
 
bool isDying () const
 
bool isDead () const
 
DeathState getDeathState ()
 
uint64 GetOwnerGUID () const
 
uint64 GetCreatorGUID () const
 
void SetCreatorGUID (uint64 creator)
 
uint64 GetMinionGUID () const
 
void SetMinionGUID (uint64 guid)
 
uint64 GetCharmerGUID () const
 
void SetCharmerGUID (uint64 owner)
 
uint64 GetCharmGUID () const
 
void SetPetGUID (uint64 guid)
 
uint64 GetPetGUID () const
 
bool IsControlledByPlayer () const
 
uint64 GetCharmerOrOwnerGUID () const
 
uint64 GetCharmerOrOwnerOrOwnGUID () const
 
bool isCharmedOwnedByPlayerOrPlayer () const
 
PlayerGetAffectingPlayer () const
 
PlayerGetSpellModOwner () const
 
UnitGetOwner () const
 
GuardianGetGuardianPet () const
 
MinionGetFirstMinion () const
 
UnitGetCharmer () const
 
UnitGetCharm () const
 
UnitGetCharmerOrOwner () const
 
UnitGetCharmerOrOwnerOrSelf () const
 
PlayerGetCharmerOrOwnerPlayerOrPlayerItself () const
 
void SetMinion (Minion *minion, bool apply)
 
void RemoveAllMinionsByEntry (uint32 entry)
 
void SetCharm (Unit *target, bool apply)
 
void SetCharmedBy (Unit *charmer, CharmType type)
 
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 UpdateCharmAI ()
 
SharedVisionList const & GetSharedVisionList ()
 
void AddPlayerToVision (Player *plr)
 
void RemovePlayerFromVision (Player *plr)
 
bool HasSharedVision () const
 
void RemoveBindSightAuras ()
 
void RemoveCharmAuras ()
 
PetCreateTamedPetFrom (Creature *creatureTarget, uint32 spell_id=0)
 
bool AddAura (Aura *aur)
 
void RemoveAura (AuraMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
 
void RemoveAura (uint32 spellId, uint32 effindex, Aura *except=NULL)
 
void RemoveSingleAuraFromStackByDispel (uint32 spellId)
 
void RemoveSingleAuraFromStack (uint32 spellId, uint32 effindex)
 
void RemoveAurasDueToSpell (uint32 spellId, Aura *except=NULL)
 
void RemoveAurasDueToItemSpell (Item *castItem, uint32 spellId)
 
void RemoveAurasByCasterSpell (uint32 spellId, uint64 casterGUID)
 
void SetAurasDurationByCasterSpell (uint32 spellId, uint64 casterGUID, int32 duration)
 
AuraGetAuraByCasterSpell (uint32 spellId, uint64 casterGUID)
 
void RemoveAurasDueToSpellByDispel (uint32 spellId, uint64 casterGUID, Unit *dispeler)
 
void RemoveAurasDueToSpellBySteal (uint32 spellId, uint64 casterGUID, Unit *stealer)
 
void RemoveAurasByType (AuraType auraType, uint64 casterGUID=0, Aura *except=NULL, bool negative=true, bool positive=true)
 
void RemoveAurasDueToSpellByCancel (uint32 spellId)
 
void RemoveAurasAtChanneledTarget (SpellEntry const *spellInfo, Unit *caster)
 
void RemoveNotOwnSingleTargetAuras ()
 
void RemoveSpellsCausingAura (AuraType auraType)
 
void RemoveAuraTypeByCaster (AuraType auraType, uint64 casterGUID)
 
void RemoveRankAurasDueToSpell (uint32 spellId)
 
bool RemoveNoStackAurasDueToAura (Aura *Aur)
 
void RemoveAurasWithInterruptFlags (uint32 flags, uint32 except=0)
 
void RemoveAurasWithAttribute (uint32 flags)
 
void RemoveAurasWithDispelType (DispelType type)
 
void RemoveMovementImpairingAuras ()
 
void RemoveAllAuras ()
 
void RemoveArenaAuras ()
 
void RemoveAllAurasOnDeath ()
 
void DelayAura (uint32 spellId, uint32 effindex, int32 delaytime)
 
float GetResistanceBuffMods (SpellSchools school, bool positive) const
 
void SetResistanceBuffMods (SpellSchools school, bool positive, float val)
 
void ApplyResistanceBuffModsMod (SpellSchools school, bool positive, float val, bool apply)
 
void ApplyResistanceBuffModsPercentMod (SpellSchools school, bool positive, float val, bool apply)
 
void InitStatBuffMods ()
 
void ApplyStatBuffMod (Stats stat, float val, bool apply)
 
void ApplyStatPercentBuffMod (Stats stat, float val, bool apply)
 
void SetCreateStat (Stats stat, float val)
 
void SetCreateHealth (uint32 val)
 
uint32 GetCreateHealth () const
 
void SetCreateMana (uint32 val)
 
uint32 GetCreateMana () const
 
uint32 GetCreatePowers (Powers power) const
 
float GetPosStat (Stats stat) const
 
float GetNegStat (Stats stat) const
 
float GetCreateStat (Stats stat) const
 
void SetCurrentCastedSpell (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) const
 
void InterruptNonMeleeSpells (bool withDelayed, uint32 spellid=0, bool withInstant=true)
 
uint64 GetTarget () const
 
void SetTarget (uint64 guid=0)
 
SpellGetCurrentSpell (CurrentSpellTypes spellType) const
 
SpellGetCurrentSpell (uint32 spellType) const
 
SpellFindCurrentSpellBySpellId (uint32 spell_id) const
 
int32 GetCurrentSpellCastTime (uint32 spell_id) const
 
bool CanMoveDuringChannel () const
 
bool IsInFeralForm () const
 
bool IsInTravelForm () const
 
bool IsInFlightForm () const
 
bool HandleStatModifier (UnitMods unitMod, UnitModifierType modifierType, float amount, bool apply)
 
void SetModifierValue (UnitMods unitMod, UnitModifierType modifierType, float value)
 
float GetModifierValue (UnitMods unitMod, UnitModifierType modifierType) const
 
float GetTotalStatValue (Stats stat) const
 
float GetTotalAuraModValue (UnitMods unitMod) const
 
SpellSchools GetSpellSchoolByAuraGroup (UnitMods unitMod) const
 
Stats GetStatByAuraGroup (UnitMods unitMod) const
 
Powers GetPowerTypeByAuraGroup (UnitMods unitMod) const
 
bool CanModifyStats () const
 
void SetCanModifyStats (bool modifyStats)
 
virtual void UpdateAllResistances ()
 
float GetTotalAttackPowerValue (WeaponAttackType attType) const
 
float GetWeaponDamageRange (WeaponAttackType attType, WeaponDamageRange type) const
 
void SetBaseWeaponDamage (WeaponAttackType attType, WeaponDamageRange damageRange, float value)
 
bool isInFrontInMap (Unit const *target, float distance, float arc=M_PI) const
 
void SetInFront (Unit const *target)
 
void SetInFront (float x, float y)
 
bool isInBackInMap (Unit const *target, float distance, float arc=M_PI) const
 
void SetFacingTo (float ori)
 
void SetFacingToObject (WorldObject *pObject)
 
bool IsVisible () const
 
void SetVisible (bool x)
 
bool isValid () const override
 
void UpdateObjectVisibility (bool forced=true) override
 
bool isInvisibleForAlive () const
 returns true if creature can't be seen by alive units More...
 
AuraListGetSingleCastAuras ()
 
AuraList const & GetSingleCastAuras () const
 
bool CanHaveThreatList () const
 
void AddThreat (Unit *victim, float threat, SpellSchoolMask schoolMask=SPELL_SCHOOL_MASK_NORMAL, SpellEntry const *threatSpell=NULL)
 
void AddAssistThreat (Unit *victim, float threatToAdd, SpellEntry const *threatSpell)
 
float ApplyTotalThreatModifier (float threat, SpellSchoolMask schoolMask=SPELL_SCHOOL_MASK_NORMAL)
 
void DeleteThreatList ()
 
void TauntApply (Unit *victim)
 
void TauntFadeOut (Unit *taunter)
 
ThreatManagergetThreatManager ()
 
void addHatedBy (HostileReference *pHostileReference)
 
void removeHatedBy (HostileReference *)
 
HostileRefManagergetHostileRefManager ()
 
AuraGetAura (uint32 spellId, uint32 effindex)
 
AuraMapGetAuras ()
 
AuraMap const & GetAuras () const
 
AuraList const & GetAurasByType (AuraType type) const
 
void ApplyAuraProcTriggerDamage (Aura *aura, bool apply)
 
int32 GetTotalAuraModifier (AuraType auratype) const
 
float GetTotalAuraMultiplier (AuraType auratype) const
 
int32 GetMaxPositiveAuraModifier (AuraType auratype) const
 
int32 GetMaxNegativeAuraModifier (AuraType auratype) const
 
int32 GetTotalAuraModifierByMiscMask (AuraType auratype, uint32 misc_mask) const
 
float GetTotalAuraMultiplierByMiscMask (AuraType auratype, uint32 misc_mask) const
 
int32 GetMaxPositiveAuraModifierByMiscMask (AuraType auratype, uint32 misc_mask) 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
 
AuraGetDummyAura (uint32 spell_id) const
 
uint32 GetInterruptMask () const
 
void AddInterruptMask (uint32 mask)
 
void UpdateInterruptMask ()
 
uint32 GetDisplayId ()
 
void SetDisplayId (uint32 modelId)
 
uint32 GetNativeDisplayId ()
 
void SetNativeDisplayId (uint32 modelId)
 
void setTransForm (uint32 spellid)
 
uint32 getTransForm () const
 
void AddDynObject (DynamicObject *dynObj)
 
void RemoveDynObject (uint32 spellid)
 
void RemoveDynObjectWithGUID (uint64 guid)
 
void RemoveAllDynObjects ()
 
void AddGameObject (GameObject *gameObj)
 
void RemoveGameObject (GameObject *gameObj, bool del)
 
void RemoveGameObject (uint32 spellid, bool del)
 
void RemoveAllGameObjects ()
 
DynamicObjectGetDynObject (uint32 spellId, uint32 effIndex)
 
DynamicObjectGetDynObject (uint32 spellId)
 
uint32 CalculateDamage (WeaponAttackType attType, bool normalized)
 
float GetAPMultiplier (WeaponAttackType attType, bool normalized)
 
void ModifyAuraState (AuraState flag, bool apply)
 
bool HasAuraState (AuraState flag) const
 
void UnsummonAllTotems ()
 
int32 SpellBaseDamageBonus (SpellSchoolMask schoolMask)
 
int32 SpellBaseHealingBonus (SpellSchoolMask schoolMask)
 
int32 SpellBaseDamageBonusForVictim (SpellSchoolMask schoolMask, Unit *victim)
 
int32 SpellBaseHealingBonusForVictim (SpellSchoolMask schoolMask, Unit *victim)
 
uint32 SpellDamageBonus (Unit *victim, SpellEntry const *spellProto, uint32 damage, DamageEffectType damagetype)
 
uint32 SpellHealingBonus (SpellEntry const *spellProto, uint32 healamount, DamageEffectType damagetype, Unit *victim)
 
bool isSpellBlocked (Unit *victim, SpellEntry const *spellProto, WeaponAttackType attackType=BASE_ATTACK)
 
bool isSpellCrit (Unit *victim, SpellEntry const *spellProto, SpellSchoolMask schoolMask, WeaponAttackType attackType=BASE_ATTACK)
 
uint32 SpellCriticalBonus (SpellEntry const *spellProto, uint32 damage, Unit *victim)
 
void SetLastManaUse (uint32 spellCastTime)
 
bool IsUnderLastManaUseEffect () const
 
void SetContestedPvP (Player *attackedPlayer=NULL)
 
void MeleeDamageBonus (Unit *victim, uint32 *damage, WeaponAttackType attType, SpellEntry const *spellProto=NULL)
 
uint32 GetCastingTimeForBonus (SpellEntry const *spellProto, DamageEffectType damagetype, uint32 CastingTime)
 
void ApplySpellImmune (uint32 spellId, uint32 op, uint32 type, bool apply)
 
void ApplySpellDispelImmunity (const SpellEntry *spellProto, DispelType type, bool apply)
 
virtual bool IsImmuneToSpell (SpellEntry const *spellInfo, bool useCharges=false)
 
bool IsImmunedToDamage (SpellSchoolMask meleeSchoolMask, bool useCharges=false)
 
bool IsImmunedToDamage (SpellEntry const *spellInfo) const
 
virtual bool IsImmuneToSpellEffect (SpellEntry const *spellInfo, uint32 index, bool castOnSelf) const
 
uint32 CalculateEffectiveMagicResistance (Unit *attacker, SpellSchoolMask schoolMask) const
 
float CalculateMagicResistanceMitigation (Unit *attacker, uint32 resistance, bool binary) const
 
uint32 CalcArmorReducedDamage (Unit *victim, const uint32 damage)
 
void CalcAbsorbResist (Unit *victim, SpellSchoolMask schoolMask, DamageEffectType damagetype, const uint32 damage, uint32 *absorb, uint32 *resist, SpellEntry const *spellInfo=NULL, bool binary=false)
 
void UpdateSpeed (UnitMoveType mtype, bool forced)
 
float GetSpeed (UnitMoveType mtype) const
 
float GetSpeedRate (UnitMoveType mtype) const
 
void SetSpeed (UnitMoveType mtype, float rate, bool forced=false)
 
bool isHover () const
 
void _RemoveAllAuraMods ()
 
void _ApplyAllAuraMods ()
 
int32 CalculateSpellDamage (SpellEntry const *spellProto, uint8 effect_index, int32 basePoints, Unit const *target)
 
int32 CalculateSpellDuration (SpellEntry const *spellProto, uint8 effect_index, Unit const *target)
 
float CalculateLevelPenalty (SpellEntry const *spellProto) const
 
void ModSpellCastTime (SpellEntry const *spellProto, int32 &castTime, Spell *spell)
 
void ModSpellDurationTime (SpellEntry const *spellProto, int32 &duration, Spell *spell)
 
void addFollower (FollowerReference *pRef)
 
void removeFollower (FollowerReference *)
 
MotionMasterGetMotionMaster ()
 
bool IsStopped () const
 
void StopMoving ()
 
void AddUnitMovementFlag (uint32 f)
 
void RemoveUnitMovementFlag (uint32 f)
 
bool HasUnitMovementFlag (uint32 f) const
 
uint32 GetUnitMovementFlags () const
 
void SetUnitMovementFlags (uint32 f)
 
void SetControlled (bool apply, UnitState state)
 
void SetFeared (bool apply)
 
void SetConfused (bool apply)
 
void SetStunned (bool apply)
 
void MonsterMoveWithSpeed (float x, float y, float z, float speed, bool generatePath=false, bool forceDestination=false)
 
void SendMonsterMoveWithSpeedToCurrentDestination (float speed)
 
void AddComboPointHolder (uint32 lowguid)
 
void RemoveComboPointHolder (uint32 lowguid)
 
void ClearComboPointHolders ()
 
void SendPetCastFail (uint32 spellid, SpellCastResult msg)
 
void SendPetActionFeedback (uint8 msg)
 
void SendPetTalk (uint32 pettalk)
 
void SendPetSpellCooldown (uint32 spellid, time_t cooltime)
 
void SendPetClearCooldown (uint32 spellid)
 
void SendPetAIReaction (uint64 guid)
 
void propagateSpeedChange ()
 
void ClearAllReactives ()
 
void StartReactiveTimer (ReactiveType reactive)
 
void UpdateReactives (uint32 p_time)
 
void UpdateAuraForGroup (uint8 slot)
 
void AddPetAura (PetAura const *petSpell)
 
void RemovePetAura (PetAura const *petSpell)
 
void SetReducedThreatPercent (uint32 pct, uint64 guid)
 
uint32 GetReducedThreatPercent ()
 
UnitGetMisdirectionTarget ()
 
virtual float GetFollowAngle () const
 
bool IsFlying () const
 
bool IsFalling () const
 
bool IsWalking () const
 
bool IsRooted () const
 
void SetRooted (bool apply)
 
virtual bool SetWalk (bool enable)
 
virtual bool SetSwim (bool enable)
 
bool IsLevitating () const
 
time_t GetLastDamagedTime () const
 
void SetLastDamagedTime (time_t val)
 
TempSummonToTempSummon ()
 
TempSummon const * ToTempSummon () const
 
- Public Member Functions inherited from WorldObject
 ~WorldObject () override
 
void _Create (uint32 guidlow, HighGuid guidhigh)
 
void GetNearPoint2D (float &x, float &y, float distance, float absAngle) const
 
void GetNearPoint (WorldObject const *searcher, float &x, float &y, float &z, float searcher_size, float distance2d, float absAngle) const
 
void GetClosePoint (float &x, float &y, float &z, float size, float distance2d=0, float angle=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)
 
float GetPositionZTarget (Position &pos, float destx, float desty)
 
Position GetRandomNearPosition (float radius)
 
void GetContactPoint (const WorldObject *obj, float &x, float &y, float &z, float distance2d=CONTACT_DISTANCE) const
 
virtual float GetObjectBoundingRadius () const
 
float GetObjectSize () const
 
void UpdateGroundPositionZ (float x, float y, float &z) const
 
void UpdateAllowedPositionZ (float x, float y, float &z) const
 
void GetRandomPoint (const Position &srcPos, float distance, float &rand_x, float &rand_y, float &rand_z) const
 
void GetRandomPoint (const Position &srcPos, float distance, Position &pos) const
 
float GetDistanceSqr (float x, float y, float z) const
 
bool HasInArc (float arcangle, const Position *pos) const
 
bool HasInArc (const float arcangle, const float x, const float y) const
 
uint32 GetInstanceId () const
 
uint32 GetZoneId () const
 
uint32 GetAreaId () const
 
InstanceDataGetInstanceData ()
 
const char * GetName () const
 
void SetName (const std::string &newname)
 
virtual const char * GetNameForLocaleIdx (int32) const
 
float GetDistance (const WorldObject *obj) const
 
float GetDistance (const Position &pos) const
 
float GetDistance (float x, float y, float z) const
 
float GetDistance2d (const WorldObject *obj) const
 
float GetDistance2d (float x, float y) const
 
float GetDistanceZ (const WorldObject *obj) const
 
bool IsInMap (const WorldObject *obj) const
 
bool IsWithinDist3d (float x, float y, float z, float dist) const
 
bool IsWithinDist3d (const Position *pos, float dist) const
 
bool IsWithinDist2d (float x, float y, float dist) const
 
bool IsWithinDist2d (const Position *pos, float dist) const
 
bool _IsWithinDist (WorldObject const *obj, float dist2compare, bool is3D) const
 
bool IsWithinDist (WorldObject const *obj, float dist2compare, bool is3D=true) const
 
bool IsWithinDistInMap (WorldObject const *obj, float dist2compare, bool is3D=true) const
 
bool IsWithinLOS (float x, float y, float z) const
 
bool IsWithinLOSInMap (const WorldObject *obj) 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
 
void MonsterSay (const char *text, uint32 language, uint64 TargetGuid)
 
void MonsterYell (const char *text, uint32 language, uint64 TargetGuid)
 
void MonsterTextEmote (const char *text, uint64 TargetGuid, bool IsBossEmote=false)
 
void MonsterWhisper (const char *text, uint64 receiver, bool IsBossWhisper=false)
 
void MonsterSay (int32 textId, uint32 language, uint64 TargetGuid)
 
void MonsterYell (int32 textId, uint32 language, uint64 TargetGuid)
 
void MonsterTextEmote (int32 textId, uint64 TargetGuid, bool IsBossEmote=false)
 
void MonsterWhisper (int32 textId, uint64 receiver, bool IsBossWhisper=false)
 
void MonsterYellToZone (int32 textId, uint32 language, uint64 TargetGuid)
 
void BuildMonsterChat (WorldPacket *data, uint8 msgtype, char const *text, uint32 language, char const *name, uint64 TargetGuid) const
 
void PlayDistanceSound (uint32 sound_id, Player *target=NULL)
 
void PlayDirectSound (uint32 sound_id, Player *target=NULL)
 
void SendObjectDeSpawnAnim (uint64 guid)
 
void SendObjectCustomAnim (uint64 guid, uint32 anim=0)
 
virtual void SaveRespawnTime ()
 
void AddObjectToRemoveList ()
 
virtual bool IsInvisibleDueToDespawn () const
 
float GetGridActivationRange () const
 
float GetVisibilityRange () const
 
float GetSightRange (const WorldObject *target=NULL) const
 
bool CanSeeOrDetect (WorldObject const *obj, bool ignoreStealth=false, bool distanceCheck=false, bool checkAlert=false) const
 
void SendPlaySound (uint32 Sound, bool OnlySelf)
 
MapGetMap () const
 
MapFindMap () const
 
Map const * GetBaseMap () const
 
void SetZoneScript ()
 
TempSummonSummonCreature (uint32 id, const Position &pos, TempSummonType spwtype=TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0)
 
TempSummonSummonCreature (uint32 id, float x, float y, float z, float ang, TempSummonType spwtype=TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0)
 
GameObjectSummonGameObject (uint32 entry, float x, float y, float z, float ang, float rotation0, float rotation1, float rotation2, float rotation3, uint32 respawnTime)
 
CreatureSummonTrigger (float x, float y, float z, float ang, uint32 dur, CreatureAI *(*GetAI)(Creature *)=NULL)
 
void SummonCreatureGroup (uint8 group, std::list< TempSummon * > *list=NULL)
 
CreatureFindNearestCreature (uint32 entry, float range, bool alive=true)
 
GameObjectFindNearestGameObject (uint32 entry, float range)
 
GameObjectFindNearestGameObjectOfType (GameobjectTypes type, float range) const
 
void GetGameObjectListWithEntryInGrid (std::list< GameObject * > &gameobjectList, uint32 entry=GRID_SEARCH_ALL_ENTRIES, float maxSearchRange=250.0f) const
 
void GetCreatureListWithEntryInGrid (std::list< Creature * > &creatureList, uint32 entry=GRID_SEARCH_ALL_ENTRIES, float maxSearchRange=250.0f) const
 
void DestroyForNearbyPlayers ()
 
virtual void UpdateObjectVisibilityOnCreate ()
 
void BuildUpdate (UpdateDataMapType &) override
 
void AddToNotify (uint16 f)
 
bool isNeedNotify (uint16 f) const
 
uint16 GetNotifyFlags () const
 
bool NotifyExecuted (uint16 f) const
 
void SetNotified (uint16 f)
 
void ResetAllNotifies ()
 
bool isActiveObject () const
 
void setActive (bool isActiveObject)
 
void SetWorldObject (bool apply)
 
bool IsPermanentWorldObject () const
 
bool IsWorldObject () const
 
template<class NOTIFIER >
void VisitNearbyWorldObject (const float &radius, NOTIFIER &notifier) const
 
template<class NOTIFIER >
void VisitNearbyObject (float const &radius, NOTIFIER &notifier) const
 
template<class NOTIFIER >
void VisitNearbyGridObject (float const &radius, NOTIFIER &notifier) const
 
- Public Member Functions inherited from Object
virtual ~Object ()
 
const bool & IsInWorld () const
 
const uint64GetGUID () const
 
uint32 GetGUIDLow () const
 
uint32 GetGUIDMid () const
 
uint32 GetGUIDHigh () const
 
PackedGuid const & GetPackGUID () const
 
ObjectGuid const & GetObjectGUID () const
 
std::string GetGuidStr () const
 
uint32 GetEntry () const
 
void SetEntry (uint32 entry)
 
float GetObjectScale () const
 
void SetObjectScale (float scale)
 
uint8 GetTypeId () const
 
bool isType (uint16 mask) const
 
void SendUpdateToPlayer (Player *player)
 
void BuildValuesUpdateBlockForPlayer (UpdateData *data, Player *target) const
 
void BuildOutOfRangeUpdateBlock (UpdateData *data) const
 
void BuildMovementUpdateBlock (UpdateData *data, uint32 flags=0) const
 
const int32GetInt32Value (uint16 index) const
 
const uint32GetUInt32Value (uint16 index) const
 
const uint64GetUInt64Value (uint16 index) const
 
const float & GetFloatValue (uint16 index) const
 
uint8 GetByteValue (uint16 index, uint8 offset) const
 
ObjectGuid const & GetGuidValue (uint16 index) const
 
uint16 GetUInt16Value (uint16 index, uint8 offset) const
 
void SetInt32Value (uint16 index, int32 value)
 
void SetUInt32Value (uint16 index, uint32 value)
 
void SetUInt64Value (uint16 index, const uint64 &value)
 
void SetFloatValue (uint16 index, float value)
 
void SetByteValue (uint16 index, uint8 offset, uint8 value)
 
void SetUInt16Value (uint16 index, uint8 offset, uint16 value)
 
void SetInt16Value (uint16 index, uint8 offset, int16 value)
 
void SetStatFloatValue (uint16 index, float value)
 
void SetStatInt32Value (uint16 index, int32 value)
 
bool AddUInt64Value (uint16 index, const uint64 &value)
 
bool RemoveUInt64Value (uint16 index, const uint64 &value)
 
void ApplyModUInt32Value (uint16 index, int32 val, bool apply)
 
void ApplyModInt32Value (uint16 index, int32 val, bool apply)
 
void ApplyModUInt64Value (uint16 index, int32 val, bool apply)
 
void ApplyModPositiveFloatValue (uint16 index, float val, bool apply)
 
void ApplyModSignedFloatValue (uint16 index, float val, bool apply)
 
void ApplyPercentModFloatValue (uint16 index, float val, bool apply)
 
void SetFlag (uint16 index, uint32 newFlag)
 
void RemoveFlag (uint16 index, uint32 oldFlag)
 
void ToggleFlag (uint16 index, uint32 flag)
 
bool HasFlag (uint16 index, uint32 flag) const
 
void SetByteFlag (uint16 index, uint8 offset, uint8 newFlag)
 
void RemoveByteFlag (uint16 index, uint8 offset, uint8 newFlag)
 
void ToggleFlag (uint16 index, uint8 offset, uint8 flag)
 
bool HasByteFlag (uint16 index, uint8 offset, uint8 flag) const
 
void ApplyModFlag (uint16 index, uint32 flag, bool apply)
 
void SetFlag64 (uint16 index, uint64 newFlag)
 
void RemoveFlag64 (uint16 index, uint64 oldFlag)
 
void ToggleFlag64 (uint16 index, uint64 flag)
 
bool HasFlag64 (uint16 index, uint64 flag) const
 
void ApplyModFlag64 (uint16 index, uint64 flag, bool apply)
 
void ClearUpdateMask (bool remove)
 
bool LoadValues (const char *data)
 
uint16 GetValuesCount () const
 
virtual bool hasQuest (uint32) const
 
virtual bool hasInvolvedQuest (uint32) const
 
void BuildFieldsUpdate (Player *, UpdateDataMapType &) const
 
void ForceValuesUpdateAtIndex (uint32)
 
PlayerToPlayer ()
 
Player const * ToPlayer () const
 
CreatureToCreature ()
 
Creature const * ToCreature () const
 
UnitToUnit ()
 
Unit const * ToUnit () const
 
GameObjectToGameObject ()
 
GameObject const * ToGameObject () const
 
CorpseToCorpse ()
 
Corpse const * ToCorpse () const
 
DynamicObjectToDynObject ()
 
DynamicObject const * ToDynObject () const
 
- Public Member Functions inherited from WorldLocation
 WorldLocation (uint32 _mapid=MAPID_INVALID, float _x=0, float _y=0, float _z=0, float _o=0)
 
 WorldLocation (const WorldLocation &loc)
 
void WorldRelocate (const WorldLocation &loc)
 
uint32 GetMapId () const
 
- Public Member Functions inherited from Position
 Position (float x=0, float y=0, float z=0, float o=0)
 
 Position (Position const &loc)
 
bool operator== (Position const &a)
 
bool operator!= (Position const &a)
 
void Relocate (float x, float y)
 
void Relocate (float x, float y, float z)
 
void Relocate (float x, float y, float z, float orientation)
 
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
 
Position::PositionXYStreamer PositionXYStream ()
 
Position::PositionXYZStreamer PositionXYZStream ()
 
Position::PositionXYZOStreamer PositionXYZOStream ()
 
bool IsPositionValid () const
 
float GetExactDist2dSq (float x, float y) const
 
float GetExactDist2d (const float x, const float y) const
 
float GetExactDist2dSq (Position const *pos) const
 
float GetExactDist2d (Position const *pos) const
 
float GetExactDistSq (float x, float y, float z) const
 
float GetExactDist (float x, float y, float z) const
 
float GetExactDistSq (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 GetAngle (Position const *pos) const
 
float GetAngle (float x, float y) const
 
float GetRelativeAngle (Position const *pos) const
 
float GetRelativeAngle (float x, float y) 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 IsWithinBox (const Position &center, float xradius, float yradius, float zradius) const
 
bool HasInArc (float arcangle, Position const *pos, float border=2.0f) const
 
bool HasInLine (Position const *pos, float width) const
 
std::string ToString () const
 
- Public Member Functions inherited from GridObject< Player >
bool IsInGrid () const
 
void AddToGrid (GridRefManager< Player > &m)
 
void RemoveFromGrid ()
 

Static Public Member Functions

static void InitVisibleBits ()
 
static bool BuildEnumData (QueryResult_AutoPtr result, WorldPacket *data)
 
static uint32 GetAttackBySlot (uint8 slot)
 
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 LoadValuesArrayFromDB (Tokens &data, uint64 guid)
 
static uint32 GetUInt32ValueFromArray (Tokens const &data, uint16 index)
 
static float GetFloatValueFromArray (Tokens const &data, uint16 index)
 
static uint32 GetUInt32ValueFromDB (uint16 index, uint64 guid)
 
static uint32 GetZoneIdFromDB (uint64 guid)
 
static uint32 GetLevelFromDB (uint64 guid)
 
static bool LoadPositionFromDB (uint32 &mapid, float &x, float &y, float &z, float &o, bool &in_flight, uint64 guid)
 
static bool SaveValuesArrayInDB (Tokens const &data, uint64 guid)
 
static void SetUInt32ValueInArray (Tokens &data, uint16 index, uint32 value)
 
static void SetFloatValueInArray (Tokens &data, uint16 index, float value)
 
static void SetUInt32ValueInDB (uint16 index, uint32 value, uint64 guid)
 
static void SavePositionInDB (uint32 mapid, float x, float y, float z, float o, uint32 zone, uint64 guid)
 
static void DeleteFromDB (uint64 playerguid, uint32 accountId, bool updateRealmChars=true, bool deleteFinally=false)
 
static void DeleteOldCharacters ()
 
static void DeleteOldCharacters (uint32 keepDays)
 
static void RemoveFromGroup (Group *group, uint64 guid, RemoveMethod method=GROUP_REMOVEMETHOD_DEFAULT, uint64 kicker=0, const char *reason=NULL)
 
static uint32 GetGuildIdFromDB (uint64 guid)
 
static uint32 GetRankFromDB (uint64 guid)
 
static void RemovePetitionsAndSigns (uint64 guid, uint32 type)
 
static uint32 GetArenaTeamIdFromDB (uint64 guid, uint8 slot)
 
static uint32 TeamForRace (uint8 race)
 
static uint32 getFactionForRace (uint8 race)
 
static DrunkenState GetDrunkenstateByValue (uint16 value)
 
static uint32 GetMinLevelForBattlegroundQueueId (uint32 queue_id)
 
static uint32 GetMaxLevelForBattlegroundQueueId (uint32 queue_id)
 
static void ConvertInstancesToGroup (Player *player, Group *group=NULL, uint64 player_guid=0)
 
- Static Public Member Functions inherited from Unit
static ReputationRank GetFactionReactionTo (FactionTemplateEntry const *factionTemplateEntry, Unit const *target)
 
static bool IsDamageReducedByArmor (SpellSchoolMask damageSchoolMask, SpellEntry const *spellInfo=NULL, uint8 effIndex=MAX_SPELL_EFFECTS)
 
static UnitGetUnit (WorldObject &object, uint64 guid)
 
static PlayerGetPlayer (WorldObject &object, uint64 guid)
 
static CreatureGetCreature (WorldObject &object, uint64 guid)
 
- 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]
 
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
 
uint32 m_lastFallTime
 
float m_lastFallZ
 
Unitm_mover
 
WorldObjectm_seer
 
uint32 m_recallMap
 
float m_recallX
 
float m_recallY
 
float m_recallZ
 
float m_recallO
 
uint32 m_homebindMapId
 
uint16 m_homebindAreaId
 
float m_homebindX
 
float m_homebindY
 
float m_homebindZ
 
ClientGUIDs m_clientGUIDs
 
uint8 m_forced_speed_changes [MAX_MOVE_TYPE]
 
LookingForGroup m_lookingForGroup
 
uint32 m_HomebindTimer
 
bool m_InstanceValid
 
BoundInstancesMap m_boundInstances [TOTAL_DIFFICULTIES]
 
- Public Attributes inherited from Unit
uint32 m_extraAttacks
 
bool m_canDualWield
 
ControlList m_Controlled
 
uint32 m_addDmgOnce
 
uint64 m_SummonSlot [MAX_SUMMON_SLOT]
 
uint64 m_ObjectSlot [4]
 
uint32 m_ShapeShiftFormSpellId
 
uint32 m_ShapeShiftModelId
 
ShapeshiftForm m_form
 
float m_modMeleeHitChance
 
float m_modRangedHitChance
 
float m_modSpellHitChance
 
int32 m_baseSpellCritChance
 
float m_threatModifier [MAX_SPELL_SCHOOL]
 
float m_modAttackSpeedPct [3]
 
uint32 _oldFactionId
 
EventProcessor m_Events
 
SpellImmuneList m_spellImmune [MAX_SPELL_IMMUNITY]
 
uint32 m_lastSanctuaryTime
 
uint32 m_AuraFlags
 
Movement::MoveSplinemovespline
 
PetAuraSet m_petAuras
 
bool IsAIEnabled
 
bool NeedChangeAI
 
uint64 LastCharmerGUID
 
bool m_ControlledByPlayer
 
- 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 m_groupLootTimer
 
uint64 lootingGroupLeaderGUID
 
MovementInfo m_movementInfo
 
- Public Attributes inherited from WorldLocation
uint32 m_mapId
 
- Public Attributes inherited from Position
float m_positionX
 
float m_positionY
 
float m_positionZ
 

Static Public Attributes

static UpdateMask updateVisualBits
 

Protected Types

typedef std::list< Channel * > JoinedChannelsList
 
- Protected Types inherited from Unit
typedef std::list< uint64DynObjectGUIDs
 

Protected Member Functions

void _LoadActions (QueryResult_AutoPtr result)
 
void _LoadAuras (QueryResult_AutoPtr result, uint32 timediff)
 
void _LoadBoundInstances (QueryResult_AutoPtr result)
 
void _LoadInventory (QueryResult_AutoPtr result, uint32 timediff)
 
void _LoadMailInit (QueryResult_AutoPtr resultUnread, QueryResult_AutoPtr resultDelivery)
 
void _LoadMail ()
 
void _LoadMailedItems (Mail *mail)
 
void _LoadQuestStatus (QueryResult_AutoPtr result)
 
void _LoadDailyQuestStatus (QueryResult_AutoPtr result)
 
void _LoadGroup (QueryResult_AutoPtr result)
 
void _LoadSkills (QueryResult_AutoPtr result)
 
void _LoadSpells (QueryResult_AutoPtr result)
 
void _LoadTutorials (QueryResult_AutoPtr result)
 
void _LoadFriendList (QueryResult_AutoPtr result)
 
bool _LoadHomeBind (QueryResult_AutoPtr result)
 
void _LoadDeclinedNames (QueryResult_AutoPtr result)
 
void _LoadArenaTeamInfo (QueryResult_AutoPtr result)
 
void _LoadBGData (QueryResult_AutoPtr result)
 
void _SaveActions ()
 
void _SaveAuras ()
 
void _SaveInventory ()
 
void _SaveMail ()
 
void _SaveQuestStatus ()
 
void _SaveDailyQuestStatus ()
 
void _SaveSkills ()
 
void _SaveSpells ()
 
void _SaveTutorials ()
 
void _SaveBGData ()
 
void _SetCreateBits (UpdateMask *updateMask, Player *target) const override
 
void _SetUpdateBits (UpdateMask *updateMask, Player *target) const override
 
void HandleSobering ()
 
void SendMirrorTimer (MirrorTimerType Type, uint32 MaxValue, uint32 CurrentValue, int32 Regen)
 
void StopMirrorTimer (MirrorTimerType Type)
 
bool HasMirrorTimerFlag (uint32 flag) const
 
void HandleDrowning (uint32 time_diff)
 
int32 getMaxTimer (MirrorTimerType timer)
 
void outDebugValues () const
 
bool _removeSpell (uint16 spell_id)
 
bool CanAlwaysSee (WorldObject const *obj) const override
 
bool IsAlwaysDetectableFor (WorldObject const *seer) const override
 
- Protected Member Functions inherited from Unit
 Unit (bool isWorldObject)
 
void _UpdateSpells (uint32 time)
 
void _DeleteAuras ()
 
void _UpdateAutoRepeatSpell ()
 
virtual SpellSchoolMask GetMeleeDamageSchoolMask () const
 
void DisableSpline ()
 
bool IsAlwaysVisibleFor (WorldObject const *seer) const override
 
bool IsAlwaysDetectableFor (WorldObject const *seer) const override
 
- Protected Member Functions inherited from WorldObject
 WorldObject (bool isWorldObject)
 
void SetLocationMapId (uint32 _mapId)
 
void SetLocationInstanceId (uint32 _instanceId)
 
- Protected Member Functions inherited from Object
 Object ()
 
void _InitValues ()
 
void _Create (uint32 guidlow, uint32 entry, HighGuid guidhigh)
 
void _LoadIntoDataField (const char *data, uint32 startOffset, uint32 count)
 
void _BuildMovementUpdate (ByteBuffer *data, uint8 updateFlags) const
 
void _BuildValuesUpdate (uint8 updatetype, ByteBuffer *data, UpdateMask *updateMask, Player *target) const
 

Protected Attributes

uint32 m_contestedPvPTimer
 
BgBattlegroundQueueID_Rec m_bgBattlegroundQueueID [PLAYER_MAX_BATTLEGROUND_QUEUES]
 
BGData m_bgData
 
std::set< uint32m_timedquests
 
uint64 m_divider
 
uint32 m_ingametime
 
time_t m_lastHonorUpdateTime
 
uint64 m_lootGuid
 
uint32 m_team
 
uint32 m_nextSave
 
time_t m_speakTime
 
uint32 m_speakCount
 
DungeonDifficulty m_dungeonDifficulty
 
uint32 m_atLoginFlags
 
Itemm_items [PLAYER_SLOTS_COUNT]
 
uint32 m_currentBuybackSlot
 
std::vector< Item * > m_itemUpdateQueue
 
bool m_itemUpdateQueueBlocked
 
uint32 m_ExtraFlags
 
uint64 m_curSelection
 
uint64 m_comboTarget
 
int8 m_comboPoints
 
QuestStatusMap mQuestStatus
 
SkillStatusMap mSkillStatus
 
uint32 m_GuildIdInvited
 
uint32 m_ArenaTeamIdInvited
 
PlayerMails m_mail
 
PlayerSpellMap m_spells
 
SpellCooldowns m_spellCooldowns
 
std::map< uint32, uint32m_globalCooldowns
 
ActionButtonList m_actionButtons
 
float m_auraBaseMod [BASEMOD_END][MOD_END]
 
SpellModList m_spellMods [MAX_SPELLMOD]
 
int32 m_SpellModRemoveCount
 
EnchantDurationList m_enchantDuration
 
ItemDurationList m_itemDuration
 
uint64 m_resurrectGUID
 
uint32 m_resurrectMap
 
float m_resurrectX
 
float m_resurrectY
 
float m_resurrectZ
 
uint32 m_resurrectHealth
 
uint32 m_resurrectMana
 
WorldSessionm_session
 
JoinedChannelsList m_channels
 
int m_cinematic
 
PlayerpTrader
 
bool acceptTrade
 
uint64 tradeItems [TRADE_SLOT_COUNT]
 
uint32 tradeGold
 
time_t m_nextThinkTime
 
uint32 m_Tutorials [8]
 
bool m_TutorialsChanged
 
bool m_DailyQuestChanged
 
time_t m_lastDailyQuestTime
 
uint32 m_regenTimer
 
uint32 m_drunkTimer
 
uint16 m_drunk
 
uint32 m_weaponChangeTimer
 
uint32 m_zoneUpdateId
 
uint32 m_zoneUpdateTimer
 
uint32 m_areaUpdateId
 
uint32 m_deathTimer
 
time_t m_deathExpireTime
 
uint32 m_WeaponProficiency
 
uint32 m_ArmorProficiency
 
bool m_canParry
 
bool m_canBlock
 
uint8 m_swingErrorMsg
 
float m_ammoDPS
 
time_t _restTime
 
uint32 inn_triggerId
 
float m_rest_bonus
 
uint32 _restFlagMask
 
Transportm_transport
 
uint32 m_resetTalentsCost
 
time_t m_resetTalentsTime
 
uint32 m_usedTalentCount
 
PlayerSocialm_social
 
GroupReference m_group
 
GroupReference m_originalGroup
 
Groupm_groupInvite
 
uint32 m_groupUpdateMask
 
uint64 m_auraUpdateMask
 
bool _passOnGroupLoot
 
uint32 m_lastpetnumber
 
time_t m_summon_expire
 
uint32 m_summon_mapid
 
float m_summon_x
 
float m_summon_y
 
float m_summon_z
 
DeclinedNamem_declinedname
 
- Protected Attributes inherited from Unit
UnitAIi_AI
 
UnitAIi_disabledAI
 
bool m_AutoRepeatFirstCast
 
bool m_initiatingCombat
 
uint32 m_attackTimer [MAX_ATTACK]
 
float m_createStats [MAX_STATS]
 
AttackerSet m_attackers
 
Unitm_attacking
 
DeathState m_deathState
 
AuraMap m_Auras
 
AuraMap::iterator m_AurasUpdateIterator
 
uint32 m_removedAurasCount
 
DynObjectGUIDs m_dynObjGUIDs
 
std::list< GameObject * > m_gameObj
 
bool m_isSorted
 
uint32 m_transform
 
AuraList m_removedAuras
 
AuraList m_modAuras [TOTAL_AURAS]
 
AuraList m_scAuras
 
AuraList m_interruptableAuras
 
AuraList m_ccAuras
 
uint32 m_interruptMask
 
float m_auraModifiersGroup [UNIT_MOD_END][MODIFIER_TYPE_END]
 
float m_weaponDamage [MAX_ATTACK][2]
 
bool m_canModifyStats
 
float m_speed_rate [MAX_MOVE_TYPE]
 
uint32 m_unitTypeMask
 
CharmInfom_charmInfo
 
SharedVisionList m_sharedVision
 
MotionMaster i_motionMaster
 
uint64 miniPetGuid
 
uint32 m_reactiveTimer [MAX_REACTIVE]
 
ThreatManager m_ThreatManager
 
- Protected Attributes inherited from WorldObject
std::string m_name
 
bool m_isActive
 
const bool m_isWorldObject
 
ZoneScriptm_zoneScript
 
- Protected Attributes inherited from Object
uint16 m_objectType
 
uint8 m_objectTypeId
 
uint8 m_updateFlag
 
union {
   int32 *   m_int32Values
 
   uint32 *   m_uint32Values
 
   float *   m_floatValues
 
}; 
 
uint32m_uint32Values_mirror
 
uint16 m_valuesCount
 
bool m_objectUpdated
 

Private Member Functions

uint8 _CanStoreItem_InSpecificSlot (uint8 bag, uint8 slot, ItemPosCountVec &dest, ItemTemplate const *pProto, uint32 &count, bool swap, Item *pSrcItem) const
 
uint8 _CanStoreItem_InBag (uint8 bag, ItemPosCountVec &dest, ItemTemplate const *pProto, uint32 &count, bool merge, bool non_specialized, Item *pSrcItem, uint8 skip_bag, uint8 skip_slot) const
 
uint8 _CanStoreItem_InInventorySlots (uint8 slot_begin, uint8 slot_end, ItemPosCountVec &dest, ItemTemplate const *pProto, uint32 &count, bool merge, Item *pSrcItem, uint8 skip_bag, uint8 skip_slot) const
 
Item_StoreItem (uint16 pos, Item *pItem, uint32 count, bool clone, bool update)
 
void SetCanDelayTeleport (bool setting)
 
bool IsHasDelayedTeleport () const
 
bool SetDelayedTeleportFlagIfCan ()
 
bool IsInstanceLoginGameMasterException () const
 
void UpdateCharmedAI ()
 

Private Attributes

CinematicMgr_cinematicMgr
 
LiquidTypeEntry const * _lastLiquid
 
int32 m_MirrorTimer [MAX_TIMERS]
 
uint8 m_MirrorTimerFlags
 
uint8 m_MirrorTimerFlagsLast
 
float m_GrantableLevels
 
bool m_isInWater
 
bool m_wasOutdoors
 
ReputationMgr m_reputationMgr
 
MapReference m_mapRef
 
UnitAIi_AI
 
uint32 m_timeSyncCounter
 
uint32 m_timeSyncTimer
 
uint32 m_timeSyncClient
 
uint32 m_timeSyncServer
 
WorldLocation m_teleport_dest
 
uint32 m_teleport_options
 
bool mSemaphoreTeleport_Near
 
bool mSemaphoreTeleport_Far
 
uint32 m_DelayedOperations
 
bool m_bCanDelayTeleport
 
bool m_bHasDelayedTeleport
 
bool m_bHasBeenAliveAtDelayedTeleport
 
RAFLinkStatus m_rafLink
 
uint32 m_temporaryUnsummonedPetNumber
 
uint32 m_oldpetspell
 
PetStatus m_petStatus
 
uint32 _activeCheats
 

Friends

class WorldSession
 
class CinematicMgr
 
class RegressionTestSuite
 
void Item::AddToUpdateQueueOf (Player *player)
 
void Item::RemoveFromUpdateQueueOf (Player *player)
 

Detailed Description

Definition at line 922 of file Player.h.

Member Typedef Documentation

typedef std::set<uint64> Player::ClientGUIDs

Definition at line 2470 of file Player.h.

Definition at line 1628 of file Player.h.

typedef std::list<Channel*> Player::JoinedChannelsList
protected

Definition at line 2832 of file Player.h.

Constructor & Destructor Documentation

Player::Player ( WorldSession session)
explicit

Definition at line 253 of file Player.cpp.

References _activeCheats, _cinematicMgr, _lastLiquid, _passOnGroupLoot, _restFlagMask, _restTime, AT_LOGIN_NONE, BASEMOD_END, Player::BgBattlegroundQueueID_Rec::bgQueueType, BUYBACK_SLOT_START, CHEAT_NONE, CinematicMgr, clearResurrectRequestData(), ClearTrade(), CONFIG_INTERVAL_SAVE, DIFFICULTY_NORMAL, DISABLED_MIRROR_TIMER, duel, FLAT_MOD, GetSession(), inn_triggerId, Player::BgBattlegroundQueueID_Rec::invitedToInstance, m_ammoDPS, m_areaUpdateId, m_ArenaTeamIdInvited, m_ArmorProficiency, m_atLoginFlags, m_auraBaseMod, m_auraUpdateMask, m_bCanDelayTeleport, m_bgBattlegroundQueueID, m_bHasBeenAliveAtDelayedTeleport, m_bHasDelayedTeleport, m_canBlock, Unit::m_canDualWield, m_canParry, m_cinematic, m_comboPoints, m_comboTarget, m_contestedPvPTimer, Unit::m_ControlledByPlayer, m_currentBuybackSlot, m_curSelection, m_DailyQuestChanged, m_deathExpireTime, m_deathTimer, m_declinedname, m_DelayedOperations, m_divider, m_drunk, m_drunkTimer, m_dungeonDifficulty, m_ExtraFlags, m_forced_speed_changes, m_globalCooldowns, m_GrantableLevels, m_groupUpdateMask, m_GuildIdInvited, m_HomebindTimer, m_InstanceValid, WorldObject::m_isActive, m_isInWater, m_items, m_itemUpdateQueueBlocked, m_Last_tick, m_lastDailyQuestTime, m_lastHonorUpdateTime, m_lastpetnumber, m_logintime, m_lootGuid, m_mailsLoaded, m_mailsUpdated, m_MirrorTimer, m_MirrorTimerFlags, m_MirrorTimerFlagsLast, m_mover, m_nextMailDelivereTime, m_nextSave, Object::m_objectType, Object::m_objectTypeId, m_oldpetspell, m_petStatus, m_regenTimer, m_resetTalentsCost, m_resetTalentsTime, m_rest_bonus, m_seer, m_session, m_social, m_speakCount, m_speakTime, m_SpellModRemoveCount, m_stableSlots, m_summon_expire, m_summon_mapid, m_summon_x, m_summon_y, m_summon_z, m_swingErrorMsg, m_team, m_teleport_options, m_temporaryUnsummonedPetNumber, m_transport, m_Tutorials, m_TutorialsChanged, m_usedTalentCount, Object::m_valuesCount, m_wasOutdoors, m_weaponChangeTimer, m_WeaponProficiency, m_zoneUpdateId, m_zoneUpdateTimer, MAX_MOVE_TYPE, MAX_TIMERS, mSemaphoreTeleport_Far, mSemaphoreTeleport_Near, PCT_MOD, PET_STATUS_NONE, PLAYER_END, PLAYER_MAX_BATTLEGROUND_QUEUES, PLAYER_SLOTS_COUNT, PlayerTalkClass, pTrader, SEC_PLAYER, SetAcceptWhispers(), SetGroupInvite(), sWorld, TYPEID_PLAYER, TYPEMASK_PLAYER, UNDERWATER_NONE, and unReadMails.

253  : Unit(true), m_reputationMgr(this)
254 {
255  m_transport = 0;
256 
257  m_speakTime = 0;
258  m_speakCount = 0;
259 
262 
264 
265  m_session = session;
266 
267  m_divider = 0;
268 
269  m_ExtraFlags = 0;
270 
271  // players always accept
272  if (GetSession()->GetSecurity() == SEC_PLAYER)
273  SetAcceptWhispers(true);
274 
275  m_curSelection = 0;
276  m_lootGuid = 0;
277 
278  m_comboTarget = 0;
279  m_comboPoints = 0;
280 
281  m_usedTalentCount = 0;
282 
283  m_regenTimer = 0;
285 
286  m_zoneUpdateId = 0;
287  m_zoneUpdateTimer = 0;
288 
289  m_areaUpdateId = 0;
290  m_team = 0;
291 
293 
295 
297 
298  memset(m_items, 0, sizeof(Item*)*PLAYER_SLOTS_COUNT);
299 
300  m_social = NULL;
301 
302  // group is initialized in the reference constructor
303  SetGroupInvite(NULL);
304  m_groupUpdateMask = 0;
305  m_auraUpdateMask = 0;
306  _passOnGroupLoot = false;
307 
308  duel = NULL;
309 
310  m_GuildIdInvited = 0;
312 
314 
315  mSemaphoreTeleport_Near = false;
316  mSemaphoreTeleport_Far = false;
317 
319  m_bCanDelayTeleport = false;
320  m_bHasDelayedTeleport = false;
321  m_bHasBeenAliveAtDelayedTeleport = true; // overwrite always at setup teleport data, so not used infact
322  m_teleport_options = 0;
323 
324  pTrader = 0;
325  ClearTrade();
326 
327  m_cinematic = 0;
328 
331 
332  for (int aX = 0 ; aX < 8 ; aX++)
333  m_Tutorials[ aX ] = 0x00;
334  m_TutorialsChanged = false;
335 
336  m_DailyQuestChanged = false;
338 
339  for (uint8 i = 0; i < MAX_TIMERS; i++)
341 
342  _lastLiquid = NULL;
345 
346  m_GrantableLevels = 0;
347 
348  m_isInWater = false;
349  m_wasOutdoors = false;
350  m_drunkTimer = 0;
351  m_drunk = 0;
352  m_deathTimer = 0;
353  m_deathExpireTime = 0;
354 
355  m_swingErrorMsg = 0;
356 
357  for (uint8 j = 0; j < PLAYER_MAX_BATTLEGROUND_QUEUES; ++j)
358  {
361  }
362 
363  m_logintime = time(NULL);
366  m_ArmorProficiency = 0;
367  m_canParry = false;
368  m_canBlock = false;
369  m_canDualWield =