diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Outland/zone_shadowmoon_valley.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp index fe323452c29..9eba6fdef0b 100644 --- a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp +++ b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp @@ -71,7 +71,10 @@ public: struct npc_invis_infernal_casterAI : public ScriptedAI { - npc_invis_infernal_casterAI(Creature* creature) : ScriptedAI(creature) { } + npc_invis_infernal_casterAI(Creature* creature) : ScriptedAI(creature) + { + ground = 0.f; + } void Reset() override { @@ -148,12 +151,12 @@ public: void IsSummonedBy(Unit* summoner) override { if (summoner->ToCreature()) - caster = summoner->ToCreature(); + casterGUID = summoner->ToCreature()->GetGUID();; } void JustDied(Unit* /*killer*/) override { - if (caster) + if (Creature* caster = ObjectAccessor::GetCreature(*me, casterGUID)) caster->AI()->SetData(TYPE_INFERNAL, DATA_DIED); } @@ -175,7 +178,7 @@ public: } private: - Creature* caster; + ObjectGuid casterGUID; }; CreatureAI* GetAI(Creature* creature) const override |