From 5f545f540216d3b94c26e4aeda50c8bb8d5c3d74 Mon Sep 17 00:00:00 2001 From: Giacomo Pozzoni Date: Thu, 23 May 2019 21:08:29 +0200 Subject: 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 (cherry picked from commit 797fba98e95da1236465a15061ec4122d7ec33fe) --- .../Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp | 5 ++++- .../HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp | 2 +- src/server/scripts/Outland/zone_blades_edge_mountains.cpp | 2 +- src/server/scripts/Outland/zone_shadowmoon_valley.cpp | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) (limited to 'src/server/scripts/Outland') diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp index f71225d59f9..88c1a9b3981 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp @@ -165,8 +165,11 @@ struct boss_blackheart_the_inciter_mc_dummy : public NullCreatureAI using NullCreatureAI::NullCreatureAI; void InitializeAI() override { me->SetReactState(REACT_PASSIVE); } static const uint32 FIRST_DUMMY = NPC_BLACKHEART_DUMMY1, LAST_DUMMY = NPC_BLACKHEART_DUMMY5; - void IsSummonedBy(Unit* who) override + void IsSummonedBy(WorldObject* whoWO) override { + Unit* who = whoWO->ToUnit(); + if (!who) + return; me->CastSpell(who, SPELL_INCITE_CHAOS_B, true); // ensure everyone is in combat with everyone diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp index 60370153af4..1769436a3c5 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp @@ -93,7 +93,7 @@ class boss_nazan : public CreatureScript void JustEngagedWith(Unit* /*who*/) override { } - void IsSummonedBy(Unit* summoner) override + void IsSummonedBy(WorldObject* summoner) override { if (summoner->GetEntry() == NPC_VAZRUDEN_HERALD) VazrudenGUID = summoner->GetGUID(); diff --git a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp index 536c120676b..e237e08e2b2 100644 --- a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp +++ b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp @@ -993,7 +993,7 @@ public: timer = 500; } - void IsSummonedBy(Unit* summoner) override + void IsSummonedBy(WorldObject* summoner) override { if (summoner->isType(TYPEMASK_PLAYER)) playerGuid = summoner->GetGUID(); diff --git a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp index 869fb5981f0..edd7f781d5f 100644 --- a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp +++ b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp @@ -150,7 +150,7 @@ public: me->GetMotionMaster()->MoveRandom(5.0f); } - void IsSummonedBy(Unit* summoner) override + void IsSummonedBy(WorldObject* summoner) override { if (summoner->ToCreature()) casterGUID = summoner->ToCreature()->GetGUID();; -- cgit v1.2.3