diff options
| author | ariel- <ariel-@users.noreply.github.com> | 2018-02-10 16:43:01 -0300 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2021-08-28 15:59:11 +0200 |
| commit | 962f6d7988b9003e550f6745be7cff812e9d8efa (patch) | |
| tree | ee6ab5872b947afb00f4ca99e87c7dddea35bdb3 /src/server/game/Entities/AreaTrigger | |
| parent | 65dca120d34febdaa84a63e17f638ab0fa59b3df (diff) | |
Core/Spells: rework part 5: GameObject casting
Closes #21330
Closes #18885
Ref #18752
(cherry picked from commit 45c5e1b9d63796d168339a44f63418f220cf2403)
Diffstat (limited to 'src/server/game/Entities/AreaTrigger')
| -rw-r--r-- | src/server/game/Entities/AreaTrigger/AreaTrigger.cpp | 8 | ||||
| -rw-r--r-- | src/server/game/Entities/AreaTrigger/AreaTrigger.h | 4 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/server/game/Entities/AreaTrigger/AreaTrigger.cpp b/src/server/game/Entities/AreaTrigger/AreaTrigger.cpp index 773226e43fe..046d194efb0 100644 --- a/src/server/game/Entities/AreaTrigger/AreaTrigger.cpp +++ b/src/server/game/Entities/AreaTrigger/AreaTrigger.cpp @@ -500,6 +500,14 @@ Unit* AreaTrigger::GetTarget() const return ObjectAccessor::GetUnit(*this, _targetGuid); } +uint32 AreaTrigger::GetFaction() const +{ + if (Unit const* caster = GetCaster()) + return caster->GetFaction(); + + return 0; +} + void AreaTrigger::UpdatePolygonOrientation() { float newOrientation = GetOrientation(); diff --git a/src/server/game/Entities/AreaTrigger/AreaTrigger.h b/src/server/game/Entities/AreaTrigger/AreaTrigger.h index f0f41a44f09..e00f8842ea6 100644 --- a/src/server/game/Entities/AreaTrigger/AreaTrigger.h +++ b/src/server/game/Entities/AreaTrigger/AreaTrigger.h @@ -92,10 +92,13 @@ class TC_GAME_API AreaTrigger : public WorldObject, public GridObject<AreaTrigge AreaTriggerTemplate const* GetTemplate() const; uint32 GetScriptId() const; + ObjectGuid GetOwnerGUID() const override { return GetCasterGuid(); } ObjectGuid const& GetCasterGuid() const { return m_areaTriggerData->Caster; } Unit* GetCaster() const; Unit* GetTarget() const; + uint32 GetFaction() const override; + Position const& GetRollPitchYaw() const { return _rollPitchYaw; } Position const& GetTargetRollPitchYaw() const { return _targetRollPitchYaw; } void InitSplineOffsets(std::vector<Position> const& offsets, uint32 timeToTarget); @@ -112,7 +115,6 @@ class TC_GAME_API AreaTrigger : public WorldObject, public GridObject<AreaTrigge UF::UpdateField<UF::AreaTriggerData, 0, TYPEID_AREATRIGGER> m_areaTriggerData; - protected: void _UpdateDuration(int32 newDuration); float GetProgress() const; |
