From ed3700634fbb0d65dacc0b7d78b1d1811807cdd5 Mon Sep 17 00:00:00 2001 From: Shauren Date: Wed, 11 May 2011 14:05:31 +0200 Subject: Scripts/Trial of the Crusader: Fixed possible crash --- .../TrialOfTheCrusader/trial_of_the_crusader.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp index 8aa05c87c6c..9732c5f2a77 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp @@ -321,12 +321,16 @@ class boss_lich_king_toc : public CreatureScript if (GameObject* pGoFloor = m_pInstance->instance->GetGameObject(m_pInstance->GetData64(GO_ARGENT_COLISEUM_FLOOR))) pGoFloor->TakenDamage(1000000); me->CastSpell(me, 69016, false); - if (m_pInstance) m_pInstance->SetData(TYPE_LICH_KING, DONE); - Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ANUBARAK)); - if (!pTemp || !pTemp->isAlive()) - pTemp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); + if (m_pInstance) + { + m_pInstance->SetData(TYPE_LICH_KING, DONE); + Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_ANUBARAK)); + if (!pTemp || !pTemp->isAlive()) + pTemp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); + + m_pInstance->SetData(TYPE_EVENT, 0); + } me->DespawnOrUnsummon(); - m_pInstance->SetData(TYPE_EVENT, 0); m_uiUpdateTimer = 20000; break; } -- cgit v1.2.3