aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/World
diff options
context:
space:
mode:
authorGiacomo Pozzoni <giacomopoz@gmail.com>2019-05-23 21:08:29 +0200
committerGitHub <noreply@github.com>2019-05-23 21:08:29 +0200
commit797fba98e95da1236465a15061ec4122d7ec33fe (patch)
tree2ebd1df31f8bd2573cdb65683e0966b4e3c97a43 /src/server/scripts/World
parent457fc224733cc78cedc5e956442a9f5d7bd2f049 (diff)
3.3.5 gameobject summoner (#23289)
* Scripts/Misc: Change IsSummonedBy(Unit*) to IsSummonedBy(WorldObject*) * Scripts/Misc: Fix build * Core/TempSummons: Rename GetSummoner() to GetSummonerUnit() * Core/TempSummons: Add support to TempSummons::GetSummoner() to return GameObject too * Fix build * Core/TempSummons: Allow GameObject to be owner of TempSummon * Core/TempSummons: Add support to SAI for GameObject owner of TempSummon * Scripts/Misc: Fix no-pch build * Core/TempSummons: Implement PR comments
Diffstat (limited to 'src/server/scripts/World')
-rw-r--r--src/server/scripts/World/boss_emerald_dragons.cpp6
-rw-r--r--src/server/scripts/World/npcs_special.cpp2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/server/scripts/World/boss_emerald_dragons.cpp b/src/server/scripts/World/boss_emerald_dragons.cpp
index 9a485fc2c0e..7a21ef13f66 100644
--- a/src/server/scripts/World/boss_emerald_dragons.cpp
+++ b/src/server/scripts/World/boss_emerald_dragons.cpp
@@ -428,8 +428,12 @@ class npc_spirit_shade : public CreatureScript
{
}
- void IsSummonedBy(Unit* summoner) override
+ void IsSummonedBy(WorldObject* summonerWO) override
{
+ Unit* summoner = summonerWO->ToUnit();
+ if (!summoner)
+ return;
+
_summonerGuid = summoner->GetGUID();
me->GetMotionMaster()->MoveFollow(summoner, 0.0f, 0.0f);
}
diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp
index 65f068091a5..05abb9511e2 100644
--- a/src/server/scripts/World/npcs_special.cpp
+++ b/src/server/scripts/World/npcs_special.cpp
@@ -2455,7 +2455,7 @@ public:
summonerGUID.Clear();
}
- void IsSummonedBy(Unit* summoner) override
+ void IsSummonedBy(WorldObject* summoner) override
{
if (summoner->GetTypeId() == TYPEID_PLAYER)
{