TrinityCore
Loading...
Searching...
No Matches
DynamicObject Class Referencefinal

#include <DynamicObject.h>

+ Inheritance diagram for DynamicObject:

Classes

struct  ValuesUpdateForPlayerWithMaskSender
 

Public Member Functions

 DynamicObject (bool isWorldObject)
 
 ~DynamicObject ()
 
void BuildValuesUpdateForPlayerWithMask (UpdateData *data, UF::ObjectData::Mask const &requestedObjectMask, UF::DynamicObjectData::Mask const &requestedDynamicObjectMask, Player const *target, bool ignoreNestedChangesMask) const
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
bool CreateDynamicObject (ObjectGuid::LowType guidlow, Unit *caster, SpellInfo const *spell, Position const &pos, float radius, DynamicObjectType type, SpellCastVisual spellVisual)
 
void Update (uint32 p_time) override
 
void Remove ()
 
void SetDuration (int32 newDuration)
 
int32 GetDuration () const
 
void Delay (int32 delaytime)
 
void SetAura (Aura *aura)
 
void RemoveAura ()
 
void SetCasterViewpoint ()
 
void RemoveCasterViewpoint ()
 
Unit * GetCaster () const
 
uint32 GetFaction () const override
 
void BindToCaster ()
 
void UnbindFromCaster ()
 
uint32 GetSpellId () const
 
SpellInfo const * GetSpellInfo () const
 
ObjectGuid GetCasterGUID () const
 
ObjectGuid GetCreatorGUID () const override
 
ObjectGuid GetOwnerGUID () const override
 
float GetRadius () const
 
- Public Member Functions inherited from WorldObject
virtual ~WorldObject ()
 
void AddToWorld () override
 
void RemoveFromWorld () override
 
void GetNearPoint2D (WorldObject const *searcher, float &x, float &y, float distance, float absAngle) const
 
void GetNearPoint (WorldObject const *searcher, float &x, float &y, float &z, float distance2d, float absAngle) const
 
void GetClosePoint (float &x, float &y, float &z, float size, float distance2d=0, float relAngle=0) const
 
void MovePosition (Position &pos, float dist, float angle, float maxHeightChange=6.0f) const
 
Position GetNearPosition (float dist, float angle)
 
void MovePositionToFirstCollision (Position &pos, float dist, float angle) const
 
Position GetFirstCollisionPosition (float dist, float angle)
 
Position GetRandomNearPosition (float radius)
 
void GetContactPoint (WorldObject const *obj, float &x, float &y, float &z, float distance2d=CONTACT_DISTANCE) const
 
virtual float GetCombatReach () const
 
void UpdateGroundPositionZ (float x, float y, float &z) const
 
void UpdateAllowedPositionZ (float x, float y, float &z, float *groundZ=nullptr) const
 
Position GetRandomPoint (Position const &srcPos, float distance, float minDistance=0.0f) const
 
uint32 GetInstanceId () const
 
PhaseShift & GetPhaseShift ()
 
PhaseShift const & GetPhaseShift () const
 
PhaseShift & GetSuppressedPhaseShift ()
 
PhaseShift const & GetSuppressedPhaseShift () const
 
bool InSamePhase (PhaseShift const &phaseShift) const
 
bool InSamePhase (WorldObject const *obj) const
 
int32 GetDBPhase () const
 
void SetDBPhase (int32 p)
 
uint32 GetZoneId () const
 
uint32 GetAreaId () const
 
void GetZoneAndAreaId (uint32 &zoneid, uint32 &areaid) const
 
bool IsInWorldPvpZone () const
 
bool IsOutdoors () const
 
ZLiquidStatus GetLiquidStatus () const
 
WmoLocation const * GetCurrentWmo () const
 
InstanceScript * GetInstanceScript () const
 
std::string const & GetName () const
 
void SetName (std::string newname)
 
std::string GetNameForLocaleIdx (LocaleConstant) const override
 
float GetDistance (WorldObject const *obj) const
 
float GetDistance (Position const &pos) const
 
float GetDistance (float x, float y, float z) const
 
float GetDistance2d (WorldObject const *obj) const
 
float GetDistance2d (float x, float y) const
 
float GetDistanceZ (WorldObject const *obj) const
 
bool IsSelfOrInSameMap (WorldObject const *obj) const
 
bool IsInMap (WorldObject const *obj) const
 
bool IsWithinDist3d (float x, float y, float z, float dist) const
 
bool IsWithinDist3d (Position const *pos, float dist) const
 
bool IsWithinDist2d (float x, float y, float dist) const
 
bool IsWithinDist2d (Position const *pos, float dist) const
 
bool IsWithinDist (WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
 
bool IsWithinDistInMap (WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
 
bool IsWithinLOS (float x, float y, float z, LineOfSightChecks checks=LINEOFSIGHT_ALL_CHECKS, VMAP::ModelIgnoreFlags ignoreFlags=VMAP::ModelIgnoreFlags::Nothing) const
 
bool IsWithinLOSInMap (WorldObject const *obj, LineOfSightChecks checks=LINEOFSIGHT_ALL_CHECKS, VMAP::ModelIgnoreFlags ignoreFlags=VMAP::ModelIgnoreFlags::Nothing) const
 
Position GetHitSpherePointFor (Position const &dest) const
 
void GetHitSpherePointFor (Position const &dest, float &x, float &y, float &z) const
 
bool GetDistanceOrder (WorldObject const *obj1, WorldObject const *obj2, bool is3D=true) const
 
bool IsInRange (WorldObject const *obj, float minRange, float maxRange, bool is3D=true) const
 
bool IsInRange2d (Position const *pos, float minRange, float maxRange) const
 
bool IsInRange3d (Position const *pos, float minRange, float maxRange) const
 
bool isInFront (WorldObject const *target, float arc=float(M_PI)) const
 
bool isInBack (WorldObject const *target, float arc=float(M_PI)) const
 
bool IsInBetween (Position const &pos1, Position const &pos2, float size=0) const
 
bool IsInBetween (WorldObject const *obj1, WorldObject const *obj2, float size=0) const
 
virtual void CleanupsBeforeDelete (bool finalCleanup=true)
 
virtual void SendMessageToSet (WorldPacket const *data, bool self) const
 
virtual void SendMessageToSetInRange (WorldPacket const *data, float dist, bool self) const
 
virtual void SendMessageToSet (WorldPacket const *data, Player const *skipped_rcvr) const
 
void SendCombatLogMessage (WorldPackets::CombatLog::CombatLogServerPacket *combatLog) const
 
virtual uint8 GetLevelForTarget (WorldObject const *) const
 
void PlayDistanceSound (uint32 soundId, Player const *target=nullptr) const
 
void StopDistanceSound (Player const *target=nullptr) const
 
void PlayDirectSound (uint32 soundId, Player const *target=nullptr, uint32 broadcastTextId=0) const
 
void PlayDirectMusic (uint32 musicId, Player const *target=nullptr) const
 
void PlayObjectSound (int32 soundKitId, ObjectGuid targetObject, Player const *target=nullptr, int32 broadcastTextId=0) const
 
void AddObjectToRemoveList ()
 
float GetGridActivationRange () const
 
float GetVisibilityRange () const
 
float GetSightRange (WorldObject const *target=nullptr) const
 
bool CanSeeOrDetect (WorldObject const *obj, CanSeeOrDetectExtraArgs const &args={ }) const
 
virtual void SetMap (Map *map)
 
virtual void ResetMap ()
 
Map * GetMap () const
 
Map * FindMap () const
 
void SetZoneScript ()
 
ZoneScript * FindZoneScript () const
 
ZoneScript * GetZoneScript () const
 
Scenario * GetScenario () const
 
TempSummon * SummonCreature (uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
 
TempSummon * SummonCreature (uint32 entry, float x, float y, float z, float o=0, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
 
TempSummon * SummonPersonalClone (Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, Player *privateObjectOwner=nullptr)
 
GameObject * SummonGameObject (uint32 entry, Position const &pos, QuaternionData const &rot, Seconds respawnTime, GOSummonType summonType=GO_SUMMON_TIMED_OR_CORPSE_DESPAWN)
 
GameObject * SummonGameObject (uint32 entry, float x, float y, float z, float ang, QuaternionData const &rot, Seconds respawnTime, GOSummonType summonType=GO_SUMMON_TIMED_OR_CORPSE_DESPAWN)
 
Creature * SummonTrigger (float x, float y, float z, float ang, Milliseconds despawnTime, CreatureAI *(*GetAI)(Creature *)=nullptr)
 
void SummonCreatureGroup (uint8 group, std::list< TempSummon * > *list=nullptr)
 
Creature * FindNearestCreature (uint32 entry, float range, bool alive=true) const
 
Creature * FindNearestCreatureWithOptions (float range, FindCreatureOptions const &options) const
 
GameObject * FindNearestGameObject (uint32 entry, float range, bool spawnedOnly=true) const
 
GameObject * FindNearestGameObjectWithOptions (float range, FindGameObjectOptions const &options) const
 
GameObject * FindNearestUnspawnedGameObject (uint32 entry, float range) const
 
GameObject * FindNearestGameObjectOfType (GameobjectTypes type, float range) const
 
Player * SelectNearestPlayer (float range) const
 
virtual ObjectGuid GetCharmerOrOwnerGUID () const
 
ObjectGuid GetCharmerOrOwnerOrOwnGUID () const
 
Unit * GetOwner () const
 
Unit * GetCharmerOrOwner () const
 
Unit * GetCharmerOrOwnerOrSelf () const
 
Player * GetCharmerOrOwnerPlayerOrPlayerItself () const
 
Player * GetAffectingPlayer () const
 
Player * GetSpellModOwner () const
 
SpellRange GetSpellMinMaxRangeForTarget (Unit const *target, SpellInfo const *spellInfo) const
 
SpellEffectValue ApplyEffectModifiers (SpellInfo const *spellInfo, uint8 effIndex, SpellEffectValue value) const
 
int32 CalcSpellDuration (SpellInfo const *spellInfo, std::vector< SpellPowerCost > const *powerCosts) const
 
int32 ModSpellDuration (SpellInfo const *spellInfo, WorldObject const *target, int32 duration, bool positive, uint32 effectMask) const
 
void ModSpellCastTime (SpellInfo const *spellInfo, int32 &castTime, Spell *spell=nullptr) const
 
void ModSpellDurationTime (SpellInfo const *spellInfo, int32 &durationTime, Spell *spell=nullptr) const
 
virtual float MeleeSpellMissChance (Unit const *victim, WeaponAttackType attType, SpellInfo const *spellInfo) const
 
virtual SpellMissInfo MeleeSpellHitResult (Unit *victim, SpellInfo const *spellInfo) const
 
SpellMissInfo MagicSpellHitResult (Unit *victim, SpellInfo const *spellInfo) const
 
SpellMissInfo SpellHitResult (Unit *victim, SpellInfo const *spellInfo, bool canReflect, bool canImmune) const
 
void SendSpellMiss (Unit *target, uint32 spellID, SpellMissInfo missInfo)
 
virtual void SetFaction (uint32)
 
FactionTemplateEntry const * GetFactionTemplateEntry () const
 
ReputationRank GetReactionTo (WorldObject const *target) const
 
bool IsHostileTo (WorldObject const *target) const
 
bool IsHostileToPlayers () const
 
bool IsFriendlyTo (WorldObject const *target) const
 
bool IsNeutralToAll () const
 
SpellCastResult CastSpell (CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
 
void SendPlayOrphanSpellVisual (Position const &sourceLocation, ObjectGuid const &target, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendPlayOrphanSpellVisual (Position const &sourceLocation, Position const &targetLocation, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendPlayOrphanSpellVisual (ObjectGuid const &target, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendPlayOrphanSpellVisual (Position const &targetLocation, uint32 spellVisualId, float travelSpeed, bool speedAsTime=false, bool withSourceOrientation=false)
 
void SendCancelOrphanSpellVisual (uint32 id)
 
bool IsValidAttackTarget (WorldObject const *target, SpellInfo const *bySpell=nullptr) const
 
bool IsValidAssistTarget (WorldObject const *target, SpellInfo const *bySpell=nullptr) const
 
Unit * GetMagicHitRedirectTarget (Unit *victim, SpellInfo const *spellInfo)
 
virtual uint32 GetCastSpellXSpellVisualId (SpellInfo const *spellInfo) const
 
template<typename Container >
void GetGameObjectListWithEntryInGrid (Container &gameObjectContainer, uint32 entry, float maxSearchRange=250.0f) const
 
template<typename Container >
void GetGameObjectListWithOptionsInGrid (Container &gameObjectContainer, float maxSearchRange, FindGameObjectOptions const &options) const
 
template<typename Container >
void GetCreatureListWithEntryInGrid (Container &creatureContainer, uint32 entry, float maxSearchRange=250.0f) const
 
template<typename Container >
void GetCreatureListWithOptionsInGrid (Container &creatureContainer, float maxSearchRange, FindCreatureOptions const &options) const
 
template<typename Container >
void GetPlayerListInGrid (Container &playerContainer, float maxSearchRange, bool alive=true) const
 
void DestroyForNearbyPlayers ()
 
virtual void UpdateObjectVisibility (bool forced=true)
 
virtual void UpdateObjectVisibilityOnCreate ()
 
virtual void UpdateObjectVisibilityOnDestroy ()
 
void UpdatePositionData ()
 
void BuildUpdate (UpdateDataMapType &) override
 
bool AddToObjectUpdate () override
 
void RemoveFromObjectUpdate () override
 
void AddToNotify (uint16 f)
 
bool isNeedNotify (uint16 f) const
 
uint16 GetNotifyFlags () const
 
void ResetAllNotifies ()
 
bool isActiveObject () const
 
void setActive (bool isActiveObject)
 
bool IsFarVisible () const
 
void SetFarVisible (bool on)
 
bool IsVisibilityOverridden () const
 
void SetVisibilityDistanceOverride (VisibilityDistanceType type)
 
void SetIsStoredInWorldObjectGridContainer (bool apply)
 
bool IsAlwaysStoredInWorldObjectGridContainer () const
 
bool IsStoredInWorldObjectGridContainer () const
 
TransportBase * GetTransport () const
 
float GetTransOffsetX () const
 
float GetTransOffsetY () const
 
float GetTransOffsetZ () const
 
float GetTransOffsetO () const
 
Position const & GetTransOffset () const
 
uint32 GetTransTime () const
 
int8 GetTransSeat () const
 
virtual ObjectGuid GetTransGUID () const
 
void SetTransport (TransportBase *t)
 
virtual Position const & GetStationaryPosition () const
 
float GetFloorZ () const
 
virtual float GetCollisionHeight () const
 
float GetMapWaterOrGroundLevel (float x, float y, float z, float *ground=nullptr) const
 
float GetMapHeight (float x, float y, float z, bool vmap=true, float distanceToSearch=50.0f) const
 
std::string GetDebugInfo () const override
 
virtual uint16 GetAIAnimKitId () const
 
virtual uint16 GetMovementAnimKitId () const
 
virtual uint16 GetMeleeAnimKitId () const
 
bool IsPrivateObject () const
 
ObjectGuid GetPrivateObjectOwner () const
 
void SetPrivateObjectOwner (ObjectGuid const &owner)
 
bool CheckPrivateObjectOwnerVisibility (WorldObject const *seer) const
 
SmoothPhasing * GetOrCreateSmoothPhasing ()
 
SmoothPhasing * GetSmoothPhasing ()
 
SmoothPhasing const * GetSmoothPhasing () const
 
- Public Member Functions inherited from Object
virtual ~Object ()
 
uint32 GetEntry () const
 
void SetEntry (uint32 entry)
 
float GetObjectScale () const
 
virtual void SetObjectScale (float scale)
 
uint32 GetDynamicFlags () const
 
bool HasDynamicFlag (uint32 flag) const
 
void SetDynamicFlag (uint32 flag)
 
void RemoveDynamicFlag (uint32 flag)
 
void ReplaceAllDynamicFlags (uint32 flag)
 
void BuildValuesUpdateBlockForPlayerWithFlag (UpdateData *data, UF::UpdateFieldFlag flags, Player const *target) const
 
virtual bool hasQuest (uint32) const
 
virtual bool hasInvolvedQuest (uint32) const
 
WorldObject * ToWorldObject ()
 
WorldObject const * ToWorldObject () const
 
Item * ToItem ()
 
Item const * ToItem () const
 
Unit * ToUnit ()
 
Unit const * ToUnit () const
 
Creature * ToCreature ()
 
Creature const * ToCreature () const
 
Player * ToPlayer ()
 
Player const * ToPlayer () const
 
GameObject * ToGameObject ()
 
GameObject const * ToGameObject () const
 
Corpse * ToCorpse ()
 
Corpse const * ToCorpse () const
 
DynamicObject * ToDynObject ()
 
DynamicObject const * ToDynObject () const
 
AreaTrigger * ToAreaTrigger ()
 
AreaTrigger const * ToAreaTrigger () const
 
SceneObject * ToSceneObject ()
 
SceneObject const * ToSceneObject () const
 
Conversation * ToConversation ()
 
Conversation const * ToConversation () const
 
Trinity::unique_weak_ptr< Object > GetWeakPtr () const
 
virtual Loot * GetLootForPlayer (Player const *player) const
 
virtual SpawnTrackingStateData const * GetSpawnTrackingStateDataForPlayer (Player const *player) const
 
virtual void BuildValuesUpdateWithFlag (UF::UpdateFieldFlag flags, ByteBuffer &data, Player const *target) const
 
- Public Member Functions inherited from BaseEntity
virtual ~BaseEntity ()
 
bool IsInWorld () const
 
ObjectGuid const & GetGUID () const
 
TypeID GetTypeId () const
 
bool isType (TypeMask mask) const
 
bool IsWorldObject () const
 
bool IsItem () const
 
bool IsUnit () const
 
bool IsCreature () const
 
bool IsPlayer () const
 
bool IsGameObject () const
 
bool IsDynObject () const
 
bool IsCorpse () const
 
bool IsAreaTrigger () const
 
bool IsSceneObject () const
 
bool IsConversation () const
 
bool IsMeshObject () const
 
virtual void BuildCreateUpdateBlockForPlayer (UpdateData *data, Player *target) const
 
void SendUpdateToPlayer (Player *player) const
 
void BuildValuesUpdateBlockForPlayer (UpdateData *data, Player const *target) const
 
void BuildDestroyUpdateBlock (UpdateData *data) const
 
void BuildOutOfRangeUpdateBlock (UpdateData *data) const
 
ByteBuffer & PrepareValuesUpdateBuffer (UpdateData *data) const
 
virtual void DestroyForPlayer (Player const *target) const
 
void SendOutOfRangeForPlayer (Player const *target) const
 
void ClearUpdateMask (bool remove)
 
void SetIsNewObject (bool enable)
 
bool IsDestroyedObject () const
 
void SetDestroyedObject (bool destroyed)
 
void BuildUpdateChangesMask ()
 
void BuildFieldsUpdate (Player *player, UpdateDataMapType &data_map) const
 
template<typename T >
void ForceUpdateFieldChange (UF::UpdateFieldPrivateSetter< T > const &)
 
- Public Member Functions inherited from WorldLocation
constexpr WorldLocation ()
 
constexpr WorldLocation (uint32 mapId, float x, float y)
 
constexpr WorldLocation (uint32 mapId, float x, float y, float z)
 
constexpr WorldLocation (uint32 mapId, float x, float y, float z, float o)
 
constexpr WorldLocation (uint32 mapId, Position const &position)
 
constexpr void WorldRelocate (WorldLocation const &loc)
 
constexpr void WorldRelocate (WorldLocation const *loc)
 
constexpr void WorldRelocate (uint32 mapId, Position const &pos)
 
constexpr void WorldRelocate (uint32 mapId, float x, float y, float z, float o)
 
constexpr WorldLocation GetWorldLocation () const
 
constexpr uint32 GetMapId () const
 
std::string GetDebugInfo () const
 
- Public Member Functions inherited from Position
constexpr Position ()
 
constexpr Position (float x, float y)
 
constexpr Position (float x, float y, float z)
 
constexpr Position (float x, float y, float z, float o)
 
bool operator== (Position const &a) const
 
constexpr void Relocate (float x, float y)
 
constexpr void Relocate (float x, float y, float z)
 
constexpr void Relocate (float x, float y, float z, float o)
 
constexpr void Relocate (Position const &pos)
 
constexpr void Relocate (Position const *pos)
 
void RelocateOffset (Position const &offset)
 
constexpr void SetOrientation (float orientation)
 
constexpr float GetPositionX () const
 
constexpr float GetPositionY () const
 
constexpr float GetPositionZ () const
 
constexpr float GetOrientation () const
 
constexpr void GetPosition (float &x, float &y) const
 
constexpr void GetPosition (float &x, float &y, float &z) const
 
constexpr void GetPosition (float &x, float &y, float &z, float &o) const
 
constexpr Position GetPosition () const
 
Streamer< XY > PositionXYStream ()
 
ConstStreamer< XY > PositionXYStream () const
 
Streamer< XYZ > PositionXYZStream ()
 
ConstStreamer< XYZ > PositionXYZStream () const
 
Streamer< XYZO > PositionXYZOStream ()
 
ConstStreamer< XYZO > PositionXYZOStream () const
 
Streamer< PackedXYZ > PositionPackedXYZStream ()
 
ConstStreamer< PackedXYZ > PositionPackedXYZStream () const
 
bool IsPositionValid () const
 
constexpr float GetExactDist2dSq (const float x, const float y) const
 
constexpr float GetExactDist2dSq (Position const &pos) const
 
constexpr float GetExactDist2dSq (Position const *pos) const
 
float GetExactDist2d (const float x, const float y) const
 
float GetExactDist2d (Position const &pos) const
 
float GetExactDist2d (Position const *pos) const
 
constexpr float GetExactDistSq (float x, float y, float z) const
 
constexpr float GetExactDistSq (Position const &pos) const
 
constexpr float GetExactDistSq (Position const *pos) const
 
float GetExactDist (float x, float y, float z) const
 
float GetExactDist (Position const &pos) const
 
float GetExactDist (Position const *pos) const
 
Position GetPositionOffsetTo (Position const &endPos) const
 
Position GetPositionWithOffset (Position const &offset) const
 
float GetAbsoluteAngle (float x, float y) const
 
float GetAbsoluteAngle (Position const &pos) const
 
float GetAbsoluteAngle (Position const *pos) const
 
float ToAbsoluteAngle (float relAngle) const
 
float ToRelativeAngle (float absAngle) const
 
float GetRelativeAngle (float x, float y) const
 
float GetRelativeAngle (Position const &pos) const
 
float GetRelativeAngle (Position const *pos) const
 
constexpr bool IsInDist2d (float x, float y, float dist) const
 
constexpr bool IsInDist2d (Position const &pos, float dist) const
 
constexpr bool IsInDist2d (Position const *pos, float dist) const
 
constexpr bool IsInDist (float x, float y, float z, float dist) const
 
constexpr bool IsInDist (Position const &pos, float dist) const
 
constexpr bool IsInDist (Position const *pos, float dist) const
 
bool IsWithinBox (Position const &boxOrigin, float length, float width, float height) const
 
bool IsWithinVerticalCylinder (Position const &cylinderOrigin, float radius, float height, bool isDoubleVertical=false) const
 
bool IsInPolygon2D (Position const &polygonOrigin, std::span< Position const > vertices) const
 
bool HasInArc (float arcangle, Position const *pos, float border=2.0f) const
 
bool HasInLine (Position const *pos, float objSize, float width) const
 
std::string ToString () const
 
- Public Member Functions inherited from GridObject< DynamicObject >
virtual ~GridObject ()
 
bool IsInGrid () const
 
void AddToGrid (GridRefManager< DynamicObject > &m)
 
void RemoveFromGrid ()
 

Public Attributes

UF::UpdateField< UF::DynamicObjectData, int32(WowCS::EntityFragment::CGObject), TYPEID_DYNAMICOBJECT > m_dynamicObjectData
 
- Public Attributes inherited from WorldObject
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPES > m_stealth
 
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPES > m_stealthDetect
 
FlaggedValuesArray32< int32, uint64, InvisibilityType, TOTAL_INVISIBILITY_TYPES > m_invisibility
 
FlaggedValuesArray32< int32, uint64, InvisibilityType, TOTAL_INVISIBILITY_TYPES > m_invisibilityDetect
 
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPES > m_serverSideVisibility
 
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPES > m_serverSideVisibilityDetect
 
uint32 LastUsedScriptID
 
MovementInfo m_movementInfo
 
EventProcessor m_Events
 
- Public Attributes inherited from Object
UF::UpdateField< UF::ObjectData, int32(WowCS::EntityFragment::CGObject), TYPEID_OBJECT > m_objectData
 
- Public Attributes inherited from BaseEntity
UF::UpdateFieldHolder m_values
 
- Public Attributes inherited from WorldLocation
uint32 m_mapId
 
- Public Attributes inherited from Position
float m_positionX
 
float m_positionY
 
float m_positionZ
 

Protected Member Functions

void BuildValuesCreate (UF::UpdateFieldFlag flags, ByteBuffer &data, Player const *target) const override
 
void BuildValuesUpdate (UF::UpdateFieldFlag flags, ByteBuffer &data, Player const *target) const override
 
void ClearValuesChangesMask () override
 
- Protected Member Functions inherited from WorldObject
 WorldObject (bool isWorldObject)
 
virtual void ProcessPositionDataChanged (PositionFullTerrainStatus const &data)
 
void SetLocationMapId (uint32 _mapId)
 
void SetLocationInstanceId (uint32 _instanceId)
 
virtual bool CanNeverSee (WorldObject const *obj, bool ignorePhaseShift=false) const
 
virtual bool CanAlwaysSee (WorldObject const *) const
 
virtual bool IsNeverVisibleFor (WorldObject const *seer, bool allowServersideObjects) const
 
virtual bool IsAlwaysVisibleFor (WorldObject const *seer) const
 
virtual bool IsInvisibleDueToDespawn (WorldObject const *seer) const
 
virtual bool IsAlwaysDetectableFor (WorldObject const *seer) const
 
virtual void Heartbeat ()
 
- Protected Member Functions inherited from Object
 Object ()
 
void BuildEntityFragmentsForValuesUpdateForPlayerWithMask (ByteBuffer &data, EnumFlag< UF::UpdateFieldFlag > flags) const
 
- Protected Member Functions inherited from BaseEntity
 BaseEntity ()
 
void _Create (ObjectGuid const &guid)
 
template<typename T >
void SetUpdateFieldValue (UF::UpdateFieldPrivateSetter< T > setter, typename UF::UpdateFieldPrivateSetter< T >::value_type value)
 
template<typename T >
void SetUpdateFieldFlagValue (UF::UpdateFieldPrivateSetter< T > setter, typename UF::UpdateFieldPrivateSetter< T >::value_type flag)
 
template<typename T >
void RemoveUpdateFieldFlagValue (UF::UpdateFieldPrivateSetter< T > setter, typename UF::UpdateFieldPrivateSetter< T >::value_type flag)
 
template<typename T >
UF::DynamicUpdateFieldSetter< T >::insert_result AddDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter)
 
template<typename T >
UF::DynamicUpdateFieldSetter< T >::insert_result InsertDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter, uint32 index)
 
template<typename T >
void RemoveDynamicUpdateFieldValue (UF::DynamicUpdateFieldSetter< T > setter, uint32 index)
 
template<typename T >
void ClearDynamicUpdateFieldValues (UF::DynamicUpdateFieldSetter< T > setter)
 
template<typename K , typename V >
void RemoveMapUpdateFieldValue (UF::MapUpdateFieldSetter< K, V > setter, std::type_identity_t< K > const &key)
 
template<typename T >
void InsertSetUpdateFieldValue (UF::SetUpdateFieldSetter< T > setter, std::type_identity_t< T > const &key)
 
template<typename T >
void RemoveSetUpdateFieldValue (UF::SetUpdateFieldSetter< T > setter, std::type_identity_t< T > const &key)
 
template<typename T >
void RemoveOptionalUpdateFieldValue (UF::OptionalUpdateFieldSetter< T > setter)
 
template<typename T >
void SetUpdateFieldStatValue (UF::UpdateFieldPrivateSetter< T > setter, typename UF::UpdateFieldPrivateSetter< T >::value_type value)
 
template<typename T >
void ApplyModUpdateFieldValue (UF::UpdateFieldPrivateSetter< T > setter, typename UF::UpdateFieldPrivateSetter< T >::value_type mod, bool apply)
 
template<typename T >
void ApplyPercentModUpdateFieldValue (UF::UpdateFieldPrivateSetter< T > setter, float percent, bool apply)
 
template<typename Action >
void DoWithSuppressingObjectUpdates (Action &&action)
 
void BuildMovementUpdate (ByteBuffer &data, CreateObjectBits flags, Player const *target) const
 
virtual UF::UpdateFieldFlag GetUpdateFieldFlagsFor (Player const *target) const
 
void AddToObjectUpdateIfNeeded ()
 
- Protected Member Functions inherited from MapObject
 MapObject ()
 

Protected Attributes

Aura * _aura
 
Aura * _removedAura
 
Unit * _caster
 
int32 _duration
 
bool _isViewpoint
 
- Protected Attributes inherited from WorldObject
std::string m_name
 
bool m_isActive
 
bool m_isFarVisible
 
Optional< float > m_visibilityDistanceOverride
 
bool const m_isStoredInWorldObjectGridContainer
 
ZoneScript * m_zoneScript
 
TransportBase * m_transport
 
uint32 m_zoneId
 
uint32 m_areaId
 
float m_staticFloorZ
 
bool m_outdoors
 
ZLiquidStatus m_liquidStatus
 
Optional< WmoLocation > m_currentWmo
 
- Protected Attributes inherited from BaseEntity
TypeID m_objectTypeId = NUM_CLIENT_OBJECT_TYPES
 
CreateObjectBits m_updateFlag = {}
 
WowCS::EntityFragmentsHolder m_entityFragments
 
bool m_objectUpdated = false
 

Additional Inherited Members

- Static Public Member Functions inherited from WorldObject
static bool InSamePhase (WorldObject const *a, WorldObject const *b)
 
static ReputationRank GetFactionReactionTo (FactionTemplateEntry const *factionTemplateEntry, WorldObject const *target)
 
- Static Public Member Functions inherited from Object
static WorldObject * ToWorldObject (Object *o)
 
static WorldObject const * ToWorldObject (Object const *o)
 
static Item * ToItem (Object *o)
 
static Item const * ToItem (Object const *o)
 
static Unit * ToUnit (Object *o)
 
static Unit const * ToUnit (Object const *o)
 
static Creature * ToCreature (Object *o)
 
static Creature const * ToCreature (Object const *o)
 
static Player * ToPlayer (Object *o)
 
static Player const * ToPlayer (Object const *o)
 
static GameObject * ToGameObject (Object *o)
 
static GameObject const * ToGameObject (Object const *o)
 
static Corpse * ToCorpse (Object *o)
 
static Corpse const * ToCorpse (Object const *o)
 
static DynamicObject * ToDynObject (Object *o)
 
static DynamicObject const * ToDynObject (Object const *o)
 
static AreaTrigger * ToAreaTrigger (Object *o)
 
static AreaTrigger const * ToAreaTrigger (Object const *o)
 
static SceneObject * ToSceneObject (Object *o)
 
static SceneObject const * ToSceneObject (Object const *o)
 
static Conversation * ToConversation (Object *o)
 
static Conversation const * ToConversation (Object const *o)
 
- Static Public Member Functions inherited from BaseEntity
static ObjectGuid GetGUID (BaseEntity const *o)
 
- Static Public Member Functions inherited from Position
static float NormalizeOrientation (float o)
 
- Static Protected Member Functions inherited from BaseEntity
static void BuildEntityFragments (ByteBuffer &data, std::span< WowCS::EntityFragment const > fragments)
 

Detailed Description

Definition at line 36 of file DynamicObject.h.

Constructor & Destructor Documentation

◆ DynamicObject()

◆ ~DynamicObject()

DynamicObject::~DynamicObject ( )

Definition at line 45 of file DynamicObject.cpp.

References _aura, _caster, _isViewpoint, _removedAura, and ASSERT.

Member Function Documentation

◆ AddToWorld()

void DynamicObject::AddToWorld ( )
overridevirtual
  • Register the dynamicObject for guid lookup and for caster

Reimplemented from BaseEntity.

Definition at line 54 of file DynamicObject.cpp.

References WorldObject::AddToWorld(), BindToCaster(), WorldObject::GetMap(), Map::GetObjectsStore(), TypeListContainer< UnderlyingContainer, Types >::Insert(), and BaseEntity::IsInWorld().

◆ BindToCaster()

void DynamicObject::BindToCaster ( )

◆ BuildValuesCreate()

void DynamicObject::BuildValuesCreate ( UF::UpdateFieldFlag  flags,
ByteBuffer &  data,
Player const *  target 
) const
overrideprotectedvirtual

Implements Object.

Definition at line 252 of file DynamicObject.cpp.

References flags, m_dynamicObjectData, and Object::m_objectData.

◆ BuildValuesUpdate()

void DynamicObject::BuildValuesUpdate ( UF::UpdateFieldFlag  flags,
ByteBuffer &  data,
Player const *  target 
) const
overrideprotectedvirtual

◆ BuildValuesUpdateForPlayerWithMask()

◆ ClearValuesChangesMask()

void DynamicObject::ClearValuesChangesMask ( )
overrideprotectedvirtual

◆ CreateDynamicObject()

◆ Delay()

void DynamicObject::Delay ( int32  delaytime)

Definition at line 187 of file DynamicObject.cpp.

References GetDuration(), and SetDuration().

◆ GetCaster()

◆ GetCasterGUID()

ObjectGuid DynamicObject::GetCasterGUID ( ) const
inline

Definition at line 82 of file DynamicObject.h.

Referenced by BindToCaster(), and WorldObjectVisibleChangeVisitor< Work >::Visit().

◆ GetCreatorGUID()

ObjectGuid DynamicObject::GetCreatorGUID ( ) const
inlineoverridevirtual

Implements WorldObject.

Definition at line 83 of file DynamicObject.h.

◆ GetDuration()

int32 DynamicObject::GetDuration ( ) const

Definition at line 171 of file DynamicObject.cpp.

References _aura, _duration, and Aura::GetDuration().

Referenced by Delay(), and Update().

◆ GetFaction()

uint32 DynamicObject::GetFaction ( ) const
overridevirtual

Implements WorldObject.

Definition at line 225 of file DynamicObject.cpp.

References _caster, ASSERT, and Unit::GetFaction().

◆ GetOwnerGUID()

ObjectGuid DynamicObject::GetOwnerGUID ( ) const
inlineoverridevirtual

Implements WorldObject.

Definition at line 84 of file DynamicObject.h.

◆ GetRadius()

float DynamicObject::GetRadius ( ) const
inline

Definition at line 85 of file DynamicObject.h.

Referenced by DynObjAura::FillTargetMap().

◆ GetSpellId()

uint32 DynamicObject::GetSpellId ( ) const
inline

Definition at line 80 of file DynamicObject.h.

Referenced by GetSpellInfo(), and Unit::RemoveDynObject().

◆ GetSpellInfo()

SpellInfo const * DynamicObject::GetSpellInfo ( ) const

Definition at line 247 of file DynamicObject.cpp.

References WorldObject::GetMap(), GetSpellId(), and sSpellMgr.

◆ Remove()

void DynamicObject::Remove ( )

◆ RemoveAura()

void DynamicObject::RemoveAura ( )

◆ RemoveCasterViewpoint()

void DynamicObject::RemoveCasterViewpoint ( )

Definition at line 216 of file DynamicObject.cpp.

References _caster, _isViewpoint, and Object::ToPlayer().

Referenced by RemoveFromWorld().

◆ RemoveFromWorld()

void DynamicObject::RemoveFromWorld ( )
overridevirtual
  • Remove the dynamicObject from the accessor and from all lists of objects in world

Reimplemented from BaseEntity.

Definition at line 65 of file DynamicObject.cpp.

References _aura, _isViewpoint, WorldObject::GetMap(), Map::GetObjectsStore(), BaseEntity::IsInWorld(), TypeListContainer< UnderlyingContainer, Types >::Remove(), RemoveAura(), RemoveCasterViewpoint(), WorldObject::RemoveFromWorld(), and UnbindFromCaster().

◆ SetAura()

void DynamicObject::SetAura ( Aura *  aura)

Definition at line 192 of file DynamicObject.cpp.

References _aura, and ASSERT.

Referenced by DynObjAura::DynObjAura().

◆ SetCasterViewpoint()

void DynamicObject::SetCasterViewpoint ( )

Definition at line 207 of file DynamicObject.cpp.

References _caster, _isViewpoint, and Object::ToPlayer().

Referenced by Spell::EffectAddFarsight().

◆ SetDuration()

void DynamicObject::SetDuration ( int32  newDuration)

Definition at line 179 of file DynamicObject.cpp.

References _aura, _duration, and Aura::SetDuration().

Referenced by Delay(), and Spell::EffectAddFarsight().

◆ UnbindFromCaster()

void DynamicObject::UnbindFromCaster ( )

Definition at line 240 of file DynamicObject.cpp.

References _caster, Unit::_UnregisterDynObject(), and ASSERT.

Referenced by RemoveFromWorld().

◆ Update()

void DynamicObject::Update ( uint32  p_time)
overridevirtual

Member Data Documentation

◆ _aura

Aura* DynamicObject::_aura
protected

◆ _caster

Unit* DynamicObject::_caster
protected

◆ _duration

int32 DynamicObject::_duration
protected

Definition at line 93 of file DynamicObject.h.

Referenced by GetDuration(), SetDuration(), and Update().

◆ _isViewpoint

bool DynamicObject::_isViewpoint
protected

◆ _removedAura

Aura* DynamicObject::_removedAura
protected

Definition at line 91 of file DynamicObject.h.

Referenced by RemoveAura(), and ~DynamicObject().

◆ m_dynamicObjectData


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