aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-01-24 18:40:25 +0100
committerOvahlord <dreadkiller@gmx.de>2025-01-26 12:48:37 +0100
commit7fc1eb1054a20af97db52bb33323f497951f2ce3 (patch)
tree103d790a753bed29d139a62e1faee48ee84e7fb9 /src/server
parent32f4c360acebb404d6dd64fca0ea2a7801b678bb (diff)
Core/Objects: Removed type casts before accessing WorldObject::m_Events that became unneccessary after moving it from Unit to WorldObject
(cherry picked from commit bc8874f30597a996eb30b7b278bcc71b2f082f10)
Diffstat (limited to 'src/server')
-rw-r--r--src/server/game/Entities/Creature/TemporarySummon.cpp10
-rw-r--r--src/server/game/Entities/Creature/TemporarySummon.h9
-rw-r--r--src/server/game/Entities/Totem/Totem.cpp2
-rw-r--r--src/server/game/Spells/Auras/SpellAuras.cpp6
-rw-r--r--src/server/scripts/Battlegrounds/IsleOfConquest/isle_of_conquest.cpp9
5 files changed, 8 insertions, 28 deletions
diff --git a/src/server/game/Entities/Creature/TemporarySummon.cpp b/src/server/game/Entities/Creature/TemporarySummon.cpp
index 95a7f9c19ff..5d5f872f335 100644
--- a/src/server/game/Entities/Creature/TemporarySummon.cpp
+++ b/src/server/game/Entities/Creature/TemporarySummon.cpp
@@ -328,9 +328,7 @@ void TempSummon::UnSummon(uint32 msTime)
{
if (msTime)
{
- ForcedUnsummonDelayEvent* pEvent = new ForcedUnsummonDelayEvent(*this);
-
- m_Events.AddEvent(pEvent, m_Events.CalculateTime(Milliseconds(msTime)));
+ m_Events.AddEventAtOffset(new ForcedDespawnDelayEvent(*this, 0s), Milliseconds(msTime));
return;
}
@@ -353,12 +351,6 @@ void TempSummon::UnSummon(uint32 msTime)
AddObjectToRemoveList();
}
-bool ForcedUnsummonDelayEvent::Execute(uint64 /*e_time*/, uint32 /*p_time*/)
-{
- m_owner.UnSummon();
- return true;
-}
-
void TempSummon::RemoveFromWorld()
{
if (!IsInWorld())
diff --git a/src/server/game/Entities/Creature/TemporarySummon.h b/src/server/game/Entities/Creature/TemporarySummon.h
index 031429ae4d8..a4e81d8c8d4 100644
--- a/src/server/game/Entities/Creature/TemporarySummon.h
+++ b/src/server/game/Entities/Creature/TemporarySummon.h
@@ -161,13 +161,4 @@ class TC_GAME_API Puppet : public Minion
void Update(uint32 time) override;
};
-class TC_GAME_API ForcedUnsummonDelayEvent : public BasicEvent
-{
-public:
- ForcedUnsummonDelayEvent(TempSummon& owner) : BasicEvent(), m_owner(owner) { }
- bool Execute(uint64 e_time, uint32 p_time) override;
-
-private:
- TempSummon& m_owner;
-};
#endif
diff --git a/src/server/game/Entities/Totem/Totem.cpp b/src/server/game/Entities/Totem/Totem.cpp
index b99117ada94..4cf2095bc21 100644
--- a/src/server/game/Entities/Totem/Totem.cpp
+++ b/src/server/game/Entities/Totem/Totem.cpp
@@ -101,7 +101,7 @@ void Totem::UnSummon(uint32 msTime)
{
if (msTime)
{
- m_Events.AddEvent(new ForcedUnsummonDelayEvent(*this), m_Events.CalculateTime(Milliseconds(msTime)));
+ m_Events.AddEventAtOffset(new ForcedDespawnDelayEvent(*this, 0s), Milliseconds(msTime));
return;
}
diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp
index 7572a80a377..ce52ff5232b 100644
--- a/src/server/game/Spells/Auras/SpellAuras.cpp
+++ b/src/server/game/Spells/Auras/SpellAuras.cpp
@@ -1026,13 +1026,9 @@ void Aura::DropChargeDelayed(uint32 delay, AuraRemoveMode removeMode)
// aura is already during delayed charge drop
if (m_dropEvent)
return;
- // only units have events
- Unit* owner = m_owner->ToUnit();
- if (!owner)
- return;
m_dropEvent = new ChargeDropEvent(this, removeMode);
- owner->m_Events.AddEvent(m_dropEvent, owner->m_Events.CalculateTime(Milliseconds(delay)));
+ m_owner->m_Events.AddEventAtOffset(m_dropEvent, Milliseconds(delay));
}
void Aura::SetStackAmount(uint8 stackAmount)
diff --git a/src/server/scripts/Battlegrounds/IsleOfConquest/isle_of_conquest.cpp b/src/server/scripts/Battlegrounds/IsleOfConquest/isle_of_conquest.cpp
index 460572978d5..77160ec7e4f 100644
--- a/src/server/scripts/Battlegrounds/IsleOfConquest/isle_of_conquest.cpp
+++ b/src/server/scripts/Battlegrounds/IsleOfConquest/isle_of_conquest.cpp
@@ -243,13 +243,13 @@ class spell_ioc_parachute_ic : public AuraScript
class StartLaunchEvent : public BasicEvent
{
public:
- StartLaunchEvent(Position const& pos, ObjectGuid const& guid) : _pos(pos), _guid(guid)
+ StartLaunchEvent(Map const* map, Position const& pos, ObjectGuid const& guid) : _map(map), _pos(pos), _guid(guid)
{
}
bool Execute(uint64 /*time*/, uint32 /*diff*/) override
{
- Player* player = ObjectAccessor::FindPlayer(_guid);
+ Player* player = ObjectAccessor::GetPlayer(_map, _guid);
if (!player || !player->GetVehicle())
return true;
@@ -263,6 +263,7 @@ class StartLaunchEvent : public BasicEvent
}
private:
+ Map const* _map;
Position _pos;
ObjectGuid _guid;
};
@@ -272,10 +273,10 @@ class spell_ioc_launch : public SpellScript
{
void Launch()
{
- if (!GetCaster()->ToCreature() || !GetExplTargetDest())
+ if (!GetCaster()->IsCreature() || !GetExplTargetDest())
return;
- GetCaster()->ToCreature()->m_Events.AddEvent(new StartLaunchEvent(*GetExplTargetDest(), ASSERT_NOTNULL(GetHitPlayer())->GetGUID()), GetCaster()->ToCreature()->m_Events.CalculateTime(2500ms));
+ GetCaster()->m_Events.AddEventAtOffset(new StartLaunchEvent(GetCaster()->GetMap(), *GetExplTargetDest(), GetHitUnit()->GetGUID()), 2500ms);
}
void Register() override