Core/Script: Clean-Up in Scripts.
InstanceScript* m_instance -> InstanceScript* instance Signed-off-by: Gyx <[email protected]>
This commit is contained in:
@@ -61,10 +61,10 @@ class boss_arlokk : public CreatureScript
|
||||
{
|
||||
boss_arlokkAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiShadowWordPain_Timer;
|
||||
uint32 m_uiGouge_Timer;
|
||||
@@ -110,8 +110,8 @@ class boss_arlokk : public CreatureScript
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ARLOKK, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ARLOKK, NOT_STARTED);
|
||||
|
||||
//we should be summoned, so despawn
|
||||
me->DespawnOrUnsummon();
|
||||
@@ -124,8 +124,8 @@ class boss_arlokk : public CreatureScript
|
||||
me->SetDisplayId(MODEL_ID_NORMAL);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ARLOKK, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ARLOKK, DONE);
|
||||
}
|
||||
|
||||
void DoSummonPhanters()
|
||||
@@ -271,12 +271,12 @@ class go_gong_of_bethekk : public GameObjectScript
|
||||
|
||||
bool OnGossipHello(Player* /*player*/, GameObject* go)
|
||||
{
|
||||
if (InstanceScript* m_instance = go->GetInstanceScript())
|
||||
if (InstanceScript* instance = go->GetInstanceScript())
|
||||
{
|
||||
if (m_instance->GetData(DATA_ARLOKK) == DONE || m_instance->GetData(DATA_ARLOKK) == IN_PROGRESS)
|
||||
if (instance->GetData(DATA_ARLOKK) == DONE || instance->GetData(DATA_ARLOKK) == IN_PROGRESS)
|
||||
return true;
|
||||
|
||||
m_instance->SetData(DATA_ARLOKK, IN_PROGRESS);
|
||||
instance->SetData(DATA_ARLOKK, IN_PROGRESS);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -57,10 +57,10 @@ class boss_hakkar : public CreatureScript
|
||||
{
|
||||
boss_hakkarAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 BloodSiphon_Timer;
|
||||
uint32 CorruptedBlood_Timer;
|
||||
@@ -156,9 +156,9 @@ class boss_hakkar : public CreatureScript
|
||||
//Checking if Jeklik is dead. If not we cast her Aspect
|
||||
if (CheckJeklik_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_JEKLIK) != DONE)
|
||||
if (instance->GetData(DATA_JEKLIK) != DONE)
|
||||
{
|
||||
if (AspectOfJeklik_Timer <= diff)
|
||||
{
|
||||
@@ -173,9 +173,9 @@ class boss_hakkar : public CreatureScript
|
||||
//Checking if Venoxis is dead. If not we cast his Aspect
|
||||
if (CheckVenoxis_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_VENOXIS) != DONE)
|
||||
if (instance->GetData(DATA_VENOXIS) != DONE)
|
||||
{
|
||||
if (AspectOfVenoxis_Timer <= diff)
|
||||
{
|
||||
@@ -190,9 +190,9 @@ class boss_hakkar : public CreatureScript
|
||||
//Checking if Marli is dead. If not we cast her Aspect
|
||||
if (CheckMarli_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_MARLI) != DONE)
|
||||
if (instance->GetData(DATA_MARLI) != DONE)
|
||||
{
|
||||
if (AspectOfMarli_Timer <= diff)
|
||||
{
|
||||
@@ -208,9 +208,9 @@ class boss_hakkar : public CreatureScript
|
||||
//Checking if Thekal is dead. If not we cast his Aspect
|
||||
if (CheckThekal_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_THEKAL) != DONE)
|
||||
if (instance->GetData(DATA_THEKAL) != DONE)
|
||||
{
|
||||
if (AspectOfThekal_Timer <= diff)
|
||||
{
|
||||
@@ -225,9 +225,9 @@ class boss_hakkar : public CreatureScript
|
||||
//Checking if Arlokk is dead. If yes we cast her Aspect
|
||||
if (CheckArlokk_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_ARLOKK) != DONE)
|
||||
if (instance->GetData(DATA_ARLOKK) != DONE)
|
||||
{
|
||||
if (AspectOfArlokk_Timer <= diff)
|
||||
{
|
||||
|
||||
@@ -56,10 +56,10 @@ class boss_jeklik : public CreatureScript
|
||||
{
|
||||
boss_jeklikAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 Charge_Timer;
|
||||
uint32 SonicBurst_Timer;
|
||||
@@ -98,8 +98,8 @@ class boss_jeklik : public CreatureScript
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_JEKLIK, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_JEKLIK, DONE);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
@@ -238,10 +238,10 @@ class mob_batrider : public CreatureScript
|
||||
{
|
||||
mob_batriderAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 Bomb_Timer;
|
||||
uint32 Check_Timer;
|
||||
@@ -274,9 +274,9 @@ class mob_batrider : public CreatureScript
|
||||
//Check_Timer
|
||||
if (Check_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_JEKLIK) == DONE)
|
||||
if (instance->GetData(DATA_JEKLIK) == DONE)
|
||||
{
|
||||
me->setDeathState(JUST_DIED);
|
||||
me->RemoveCorpse();
|
||||
|
||||
@@ -57,7 +57,7 @@ class boss_mandokir : public CreatureScript
|
||||
{
|
||||
boss_mandokirAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
uint32 KillCount;
|
||||
@@ -72,7 +72,7 @@ class boss_mandokir : public CreatureScript
|
||||
float targetY;
|
||||
float targetZ;
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
bool endWatch;
|
||||
bool someWatched;
|
||||
@@ -116,9 +116,9 @@ class boss_mandokir : public CreatureScript
|
||||
{
|
||||
DoScriptText(SAY_DING_KILL, me);
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
uint64 JindoGUID = m_instance->GetData64(DATA_JINDO);
|
||||
uint64 JindoGUID = instance->GetData64(DATA_JINDO);
|
||||
if (JindoGUID)
|
||||
{
|
||||
if (Unit* jTemp = Unit::GetUnit(*me, JindoGUID))
|
||||
@@ -256,9 +256,9 @@ class boss_mandokir : public CreatureScript
|
||||
//Checking if Ohgan is dead. If yes Mandokir will enrage.
|
||||
if (Check_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_OHGAN) == DONE)
|
||||
if (instance->GetData(DATA_OHGAN) == DONE)
|
||||
{
|
||||
if (!RaptorDead)
|
||||
{
|
||||
@@ -296,11 +296,11 @@ class mob_ohgan : public CreatureScript
|
||||
{
|
||||
mob_ohganAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
uint32 SunderArmor_Timer;
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
void Reset()
|
||||
{
|
||||
@@ -311,8 +311,8 @@ class mob_ohgan : public CreatureScript
|
||||
|
||||
void JustDied(Unit* /*Killer*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_OHGAN, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_OHGAN, DONE);
|
||||
}
|
||||
|
||||
void UpdateAI (const uint32 diff)
|
||||
|
||||
@@ -53,10 +53,10 @@ class boss_marli : public CreatureScript
|
||||
{
|
||||
boss_marliAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 SpawnStartSpiders_Timer;
|
||||
uint32 PoisonVolley_Timer;
|
||||
@@ -91,8 +91,8 @@ class boss_marli : public CreatureScript
|
||||
void JustDied(Unit* /*Killer*/)
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_MARLI, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_MARLI, DONE);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
|
||||
@@ -68,7 +68,7 @@ class boss_thekal : public CreatureScript
|
||||
{
|
||||
boss_thekalAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
uint32 MortalCleave_Timer;
|
||||
@@ -81,7 +81,7 @@ class boss_thekal : public CreatureScript
|
||||
uint32 Check_Timer;
|
||||
uint32 Resurrect_Timer;
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
bool Enraged;
|
||||
bool PhaseTwo;
|
||||
bool WasDead;
|
||||
@@ -111,14 +111,14 @@ class boss_thekal : public CreatureScript
|
||||
void JustDied(Unit* /*Killer*/)
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_THEKAL, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_THEKAL, DONE);
|
||||
}
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_THEKAL, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(DATA_THEKAL, NOT_STARTED);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
@@ -129,26 +129,26 @@ class boss_thekal : public CreatureScript
|
||||
//Check_Timer for the death of LorKhan and Zath.
|
||||
if (!WasDead && Check_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_LORKHAN) == SPECIAL)
|
||||
if (instance->GetData(DATA_LORKHAN) == SPECIAL)
|
||||
{
|
||||
//Resurrect LorKhan
|
||||
if (Unit* pLorKhan = Unit::GetUnit((*me), m_instance->GetData64(DATA_LORKHAN)))
|
||||
if (Unit* pLorKhan = Unit::GetUnit((*me), instance->GetData64(DATA_LORKHAN)))
|
||||
{
|
||||
pLorKhan->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
pLorKhan->setFaction(14);
|
||||
pLorKhan->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
pLorKhan->SetFullHealth();
|
||||
|
||||
m_instance->SetData(DATA_LORKHAN, DONE);
|
||||
instance->SetData(DATA_LORKHAN, DONE);
|
||||
}
|
||||
}
|
||||
|
||||
if (m_instance->GetData(DATA_ZATH) == SPECIAL)
|
||||
if (instance->GetData(DATA_ZATH) == SPECIAL)
|
||||
{
|
||||
//Resurrect Zath
|
||||
Unit* pZath = Unit::GetUnit((*me), m_instance->GetData64(DATA_ZATH));
|
||||
Unit* pZath = Unit::GetUnit((*me), instance->GetData64(DATA_ZATH));
|
||||
if (pZath)
|
||||
{
|
||||
pZath->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
@@ -156,7 +156,7 @@ class boss_thekal : public CreatureScript
|
||||
pZath->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
pZath->SetFullHealth();
|
||||
|
||||
m_instance->SetData(DATA_ZATH, DONE);
|
||||
instance->SetData(DATA_ZATH, DONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -185,8 +185,8 @@ class boss_thekal : public CreatureScript
|
||||
me->SetStandState(UNIT_STAND_STATE_SLEEP);
|
||||
me->AttackStop();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_THEKAL, SPECIAL);
|
||||
if (instance)
|
||||
instance->SetData(DATA_THEKAL, SPECIAL);
|
||||
|
||||
WasDead=true;
|
||||
}
|
||||
@@ -279,7 +279,7 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
{
|
||||
mob_zealot_lorkhanAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
uint32 Shield_Timer;
|
||||
@@ -290,7 +290,7 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
|
||||
bool FakeDeath;
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
void Reset()
|
||||
{
|
||||
@@ -302,8 +302,8 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
|
||||
FakeDeath = false;
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_LORKHAN, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(DATA_LORKHAN, NOT_STARTED);
|
||||
|
||||
me->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -335,10 +335,10 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
//Casting Greaterheal to Thekal or Zath if they are in meele range.
|
||||
if (GreaterHeal_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
Unit* pThekal = Unit::GetUnit((*me), m_instance->GetData64(DATA_THEKAL));
|
||||
Unit* pZath = Unit::GetUnit((*me), m_instance->GetData64(DATA_ZATH));
|
||||
Unit* pThekal = Unit::GetUnit((*me), instance->GetData64(DATA_THEKAL));
|
||||
Unit* pZath = Unit::GetUnit((*me), instance->GetData64(DATA_ZATH));
|
||||
|
||||
if (!pThekal || !pZath)
|
||||
return;
|
||||
@@ -369,12 +369,12 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
//Check_Timer for the death of LorKhan and Zath.
|
||||
if (!FakeDeath && Check_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_THEKAL) == SPECIAL)
|
||||
if (instance->GetData(DATA_THEKAL) == SPECIAL)
|
||||
{
|
||||
//Resurrect Thekal
|
||||
if (Unit* pThekal = Unit::GetUnit((*me), m_instance->GetData64(DATA_THEKAL)))
|
||||
if (Unit* pThekal = Unit::GetUnit((*me), instance->GetData64(DATA_THEKAL)))
|
||||
{
|
||||
pThekal->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
pThekal->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -383,10 +383,10 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
}
|
||||
}
|
||||
|
||||
if (m_instance->GetData(DATA_ZATH) == SPECIAL)
|
||||
if (instance->GetData(DATA_ZATH) == SPECIAL)
|
||||
{
|
||||
//Resurrect Zath
|
||||
if (Unit* pZath = Unit::GetUnit((*me), m_instance->GetData64(DATA_ZATH)))
|
||||
if (Unit* pZath = Unit::GetUnit((*me), instance->GetData64(DATA_ZATH)))
|
||||
{
|
||||
pZath->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
pZath->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -409,8 +409,8 @@ class mob_zealot_lorkhan : public CreatureScript
|
||||
me->setFaction(35);
|
||||
me->AttackStop();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_LORKHAN, SPECIAL);
|
||||
if (instance)
|
||||
instance->SetData(DATA_LORKHAN, SPECIAL);
|
||||
|
||||
FakeDeath = true;
|
||||
}
|
||||
@@ -439,7 +439,7 @@ class mob_zealot_zath : public CreatureScript
|
||||
{
|
||||
mob_zealot_zathAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
uint32 SweepingStrikes_Timer;
|
||||
@@ -451,7 +451,7 @@ class mob_zealot_zath : public CreatureScript
|
||||
|
||||
bool FakeDeath;
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
void Reset()
|
||||
{
|
||||
@@ -464,8 +464,8 @@ class mob_zealot_zath : public CreatureScript
|
||||
|
||||
FakeDeath = false;
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ZATH, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ZATH, NOT_STARTED);
|
||||
|
||||
me->SetStandState(UNIT_STAND_STATE_STAND);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -522,12 +522,12 @@ class mob_zealot_zath : public CreatureScript
|
||||
//Check_Timer for the death of LorKhan and Zath.
|
||||
if (!FakeDeath && Check_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(DATA_LORKHAN) == SPECIAL)
|
||||
if (instance->GetData(DATA_LORKHAN) == SPECIAL)
|
||||
{
|
||||
//Resurrect LorKhan
|
||||
if (Unit* pLorKhan = Unit::GetUnit((*me), m_instance->GetData64(DATA_LORKHAN)))
|
||||
if (Unit* pLorKhan = Unit::GetUnit((*me), instance->GetData64(DATA_LORKHAN)))
|
||||
{
|
||||
pLorKhan->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
pLorKhan->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -536,10 +536,10 @@ class mob_zealot_zath : public CreatureScript
|
||||
}
|
||||
}
|
||||
|
||||
if (m_instance->GetData(DATA_THEKAL) == SPECIAL)
|
||||
if (instance->GetData(DATA_THEKAL) == SPECIAL)
|
||||
{
|
||||
//Resurrect Thekal
|
||||
if (Unit* pThekal = Unit::GetUnit((*me), m_instance->GetData64(DATA_THEKAL)))
|
||||
if (Unit* pThekal = Unit::GetUnit((*me), instance->GetData64(DATA_THEKAL)))
|
||||
{
|
||||
pThekal->SetUInt32Value(UNIT_FIELD_BYTES_1, 0);
|
||||
pThekal->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
@@ -562,8 +562,8 @@ class mob_zealot_zath : public CreatureScript
|
||||
me->setFaction(35);
|
||||
me->AttackStop();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ZATH, SPECIAL);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ZATH, SPECIAL);
|
||||
|
||||
FakeDeath = true;
|
||||
}
|
||||
|
||||
@@ -114,11 +114,11 @@ public:
|
||||
{
|
||||
boss_onyxiaAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
|
||||
uint32 m_uiPhase;
|
||||
@@ -169,11 +169,11 @@ public:
|
||||
m_uiSummonWhelpCount = 0;
|
||||
m_bIsMoving = false;
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(DATA_ONYXIA, NOT_STARTED);
|
||||
m_instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
m_instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
instance->SetData(DATA_ONYXIA, NOT_STARTED);
|
||||
instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,17 +182,17 @@ public:
|
||||
DoScriptText(SAY_AGGRO, me);
|
||||
me->SetInCombatWithZone();
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(DATA_ONYXIA, IN_PROGRESS);
|
||||
m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
instance->SetData(DATA_ONYXIA, IN_PROGRESS);
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
}
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ONYXIA, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ONYXIA, DONE);
|
||||
|
||||
Summons.DespawnAll();
|
||||
}
|
||||
@@ -265,8 +265,8 @@ public:
|
||||
me->GetMotionMaster()->MovePoint(11, Phase2Location.GetPositionX(), Phase2Location.GetPositionY(), Phase2Location.GetPositionZ()+25);
|
||||
me->SetSpeed(MOVE_FLIGHT, 1.0f);
|
||||
DoScriptText(SAY_PHASE_2_TRANS, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
m_uiWhelpTimer = 5000;
|
||||
m_uiLairGuardTimer = 15000;
|
||||
break;
|
||||
@@ -301,9 +301,9 @@ public:
|
||||
(pSpell->Id >= 22267 && pSpell->Id <= 22268)) &&
|
||||
(target->GetTypeId() == TYPEID_PLAYER))
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(DATA_SHE_DEEP_BREATH_MORE, FAIL);
|
||||
instance->SetData(DATA_SHE_DEEP_BREATH_MORE, FAIL);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -362,8 +362,8 @@ public:
|
||||
Trinity::GameObjectInRangeCheck check(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 15);
|
||||
Trinity::GameObjectLastSearcher<Trinity::GameObjectInRangeCheck> searcher(me, pFloor, check);
|
||||
me->VisitNearbyGridObject(30, searcher);
|
||||
if (m_instance && pFloor)
|
||||
m_instance->SetData64(DATA_FLOOR_ERUPTION_GUID, pFloor->GetGUID());
|
||||
if (instance && pFloor)
|
||||
instance->SetData64(DATA_FLOOR_ERUPTION_GUID, pFloor->GetGUID());
|
||||
m_uiBellowingRoarTimer = 30000;
|
||||
}
|
||||
else
|
||||
@@ -409,8 +409,8 @@ public:
|
||||
if (HealthBelowPct(40))
|
||||
{
|
||||
m_uiPhase = PHASE_END;
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
if (instance)
|
||||
instance->SetData(DATA_ONYXIA_PHASE, m_uiPhase);
|
||||
DoScriptText(SAY_PHASE_3_TRANS, me);
|
||||
|
||||
SetCombatMovement(true);
|
||||
|
||||
+17
-17
@@ -141,10 +141,10 @@ public:
|
||||
{
|
||||
boss_anubarak_trialAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
SummonList Summons;
|
||||
std::list<uint64> m_vBurrowGUID;
|
||||
@@ -195,8 +195,8 @@ public:
|
||||
if (who->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
DoScriptText(urand(0, 1) ? SAY_KILL1 : SAY_KILL2, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -211,8 +211,8 @@ public:
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_ANUBARAK, FAIL);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_ANUBARAK, FAIL);
|
||||
//Summon Scarab Swarms neutral at random places
|
||||
for (int i=0; i < 10; i++)
|
||||
if (Creature* temp = me->SummonCreature(NPC_SCARAB, AnubarakLoc[1].GetPositionX()+urand(0, 50)-25, AnubarakLoc[1].GetPositionY()+urand(0, 50)-25, AnubarakLoc[1].GetPositionZ()))
|
||||
@@ -223,8 +223,8 @@ public:
|
||||
{
|
||||
Summons.DespawnAll();
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_ANUBARAK, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_ANUBARAK, DONE);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* summoned)
|
||||
@@ -260,8 +260,8 @@ public:
|
||||
DoScriptText(SAY_AGGRO, me);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetInCombatWithZone();
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_ANUBARAK, IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_ANUBARAK, IN_PROGRESS);
|
||||
//Despawn Scarab Swarms neutral
|
||||
Summons.DoAction(NPC_SCARAB, ACTION_SCARAB_SUBMERGE);
|
||||
//Spawn Burrow
|
||||
@@ -426,10 +426,10 @@ public:
|
||||
{
|
||||
mob_swarm_scarabAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiDeterminationTimer;
|
||||
|
||||
@@ -493,10 +493,10 @@ public:
|
||||
{
|
||||
mob_nerubian_burrowerAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiSpiderFrenzyTimer;
|
||||
uint32 m_uiSubmergeTimer;
|
||||
@@ -639,10 +639,10 @@ public:
|
||||
{
|
||||
mob_anubarak_spikeAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiIncreaseSpeedTimer;
|
||||
uint8 m_uiSpeed;
|
||||
uint64 m_uiTargetGUID;
|
||||
@@ -674,7 +674,7 @@ public:
|
||||
Unit* target = Unit::GetPlayer(*me, m_uiTargetGUID);
|
||||
if (!target || !target->isAlive() || !target->HasAura(SPELL_MARK))
|
||||
{
|
||||
if (Creature* pAnubarak = Unit::GetCreature((*me), m_instance->GetData64(NPC_ANUBARAK)))
|
||||
if (Creature* pAnubarak = Unit::GetCreature((*me), instance->GetData64(NPC_ANUBARAK)))
|
||||
pAnubarak->CastSpell(pAnubarak, SPELL_SPIKE_TELE, false);
|
||||
me->DisappearAndDie();
|
||||
return;
|
||||
|
||||
+19
-19
@@ -64,10 +64,10 @@ public:
|
||||
{
|
||||
boss_toc_champion_controllerAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*) creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
uint32 m_uiChampionsNotStarted;
|
||||
uint32 m_uiChampionsFailed;
|
||||
@@ -101,7 +101,7 @@ public:
|
||||
vOtherEntries.push_back(playerTeam == ALLIANCE ? NPC_HORDE_WARRIOR : NPC_ALLIANCE_WARRIOR);
|
||||
|
||||
uint8 healersSubtracted = 2;
|
||||
if (m_instance->instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_NORMAL || m_instance->instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC)
|
||||
if (instance->instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_NORMAL || instance->instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC)
|
||||
healersSubtracted = 1;
|
||||
for (uint8 i = 0; i < healersSubtracted; ++i)
|
||||
{
|
||||
@@ -136,7 +136,7 @@ public:
|
||||
vHealersEntries.erase(vHealersEntries.begin()+pos);
|
||||
}
|
||||
|
||||
if (m_instance->instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_NORMAL || m_instance->instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC)
|
||||
if (instance->instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_NORMAL || instance->instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC)
|
||||
for (uint8 i = 0; i < 4; ++i)
|
||||
vOtherEntries.erase(vOtherEntries.begin()+urand(0, vOtherEntries.size()-1));
|
||||
|
||||
@@ -214,7 +214,7 @@ public:
|
||||
m_uiChampionsFailed++;
|
||||
if (m_uiChampionsFailed + m_uiChampionsKilled >= Summons.size())
|
||||
{
|
||||
m_instance->SetData(TYPE_CRUSADERS, FAIL);
|
||||
instance->SetData(TYPE_CRUSADERS, FAIL);
|
||||
Summons.DespawnAll();
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
@@ -227,16 +227,16 @@ public:
|
||||
m_uiChampionsKilled = 0;
|
||||
m_bInProgress = true;
|
||||
Summons.DoZoneInCombat();
|
||||
m_instance->SetData(TYPE_CRUSADERS, IN_PROGRESS);
|
||||
instance->SetData(TYPE_CRUSADERS, IN_PROGRESS);
|
||||
}
|
||||
break;
|
||||
case DONE:
|
||||
m_uiChampionsKilled++;
|
||||
if (m_uiChampionsKilled == 1)
|
||||
m_instance->SetData(TYPE_CRUSADERS, SPECIAL);
|
||||
instance->SetData(TYPE_CRUSADERS, SPECIAL);
|
||||
else if (m_uiChampionsKilled >= Summons.size())
|
||||
{
|
||||
m_instance->SetData(TYPE_CRUSADERS, DONE);
|
||||
instance->SetData(TYPE_CRUSADERS, DONE);
|
||||
Summons.DespawnAll();
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
@@ -253,11 +253,11 @@ struct boss_faction_championsAI : public ScriptedAI
|
||||
{
|
||||
boss_faction_championsAI(Creature* creature, uint32 aitype) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*) creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
mAIType = aitype;
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint64 championControllerGUID;
|
||||
uint32 mAIType;
|
||||
@@ -273,8 +273,8 @@ struct boss_faction_championsAI : public ScriptedAI
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), m_instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
if (instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
pChampionController->AI()->SetData(2, FAIL);
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
@@ -326,8 +326,8 @@ struct boss_faction_championsAI : public ScriptedAI
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (mAIType != AI_PET)
|
||||
if (m_instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), m_instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
if (instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
pChampionController->AI()->SetData(2, DONE);
|
||||
}
|
||||
|
||||
@@ -335,8 +335,8 @@ struct boss_faction_championsAI : public ScriptedAI
|
||||
{
|
||||
DoCast(me, SPELL_ANTI_AOE, true);
|
||||
me->SetInCombatWithZone();
|
||||
if (m_instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), m_instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
if (instance)
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
pChampionController->AI()->SetData(2, IN_PROGRESS);
|
||||
}
|
||||
|
||||
@@ -351,18 +351,18 @@ struct boss_faction_championsAI : public ScriptedAI
|
||||
if (Player* player = players.begin()->getSource())
|
||||
TeamInInstance = player->GetTeam();
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (TeamInInstance == ALLIANCE)
|
||||
{
|
||||
if (Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_VARIAN)))
|
||||
if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_VARIAN)))
|
||||
DoScriptText(SAY_VARIAN_KILL_HORDE_PLAYER4+urand(0, 3), temp); // + cause we are on negative
|
||||
}
|
||||
else
|
||||
if (Creature* temp = me->FindNearestCreature(NPC_GARROSH, 300.f))
|
||||
DoScriptText(SAY_GARROSH_KILL_ALLIANCE_PLAYER4+urand(0, 3), temp); // + cause we are on negative
|
||||
|
||||
m_instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+26
-26
@@ -106,11 +106,11 @@ public:
|
||||
{
|
||||
boss_jaraxxusAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
SummonList Summons;
|
||||
|
||||
@@ -124,8 +124,8 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_JARAXXUS, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_JARAXXUS, NOT_STARTED);
|
||||
SetEquipmentSlots(false, EQUIP_MAIN, EQUIP_OFFHAND, EQUIP_RANGED);
|
||||
m_uiFelFireballTimer = 5*IN_MILLISECONDS;
|
||||
m_uiFelLightningTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS);
|
||||
@@ -139,8 +139,8 @@ public:
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_JARAXXUS, FAIL);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_JARAXXUS, FAIL);
|
||||
DoCast(me, SPELL_JARAXXUS_CHAINS);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
@@ -150,8 +150,8 @@ public:
|
||||
{
|
||||
if (who->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,8 +159,8 @@ public:
|
||||
{
|
||||
Summons.DespawnAll();
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_JARAXXUS, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_JARAXXUS, DONE);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* summoned)
|
||||
@@ -171,8 +171,8 @@ public:
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
me->SetInCombatWithZone();
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_JARAXXUS, IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_JARAXXUS, IN_PROGRESS);
|
||||
DoScriptText(SAY_AGGRO, me);
|
||||
}
|
||||
|
||||
@@ -289,11 +289,11 @@ public:
|
||||
{
|
||||
mob_infernal_volcanoAI(Creature* creature) : Scripted_NoMovementAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
SummonList Summons;
|
||||
|
||||
@@ -344,11 +344,11 @@ public:
|
||||
{
|
||||
mob_fel_infernalAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiFelStreakTimer;
|
||||
|
||||
void Reset()
|
||||
@@ -368,7 +368,7 @@ public:
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
|
||||
if (m_instance && m_instance->GetData(TYPE_JARAXXUS) != IN_PROGRESS)
|
||||
if (instance && instance->GetData(TYPE_JARAXXUS) != IN_PROGRESS)
|
||||
me->DespawnOrUnsummon();
|
||||
|
||||
if (m_uiFelStreakTimer <= uiDiff)
|
||||
@@ -398,11 +398,11 @@ public:
|
||||
{
|
||||
mob_nether_portalAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
SummonList Summons;
|
||||
|
||||
@@ -453,13 +453,13 @@ public:
|
||||
{
|
||||
mob_mistress_of_painAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_MISTRESS_OF_PAIN_COUNT, INCREASE);
|
||||
instance = creature->GetInstanceScript();
|
||||
if (instance)
|
||||
instance->SetData(DATA_MISTRESS_OF_PAIN_COUNT, INCREASE);
|
||||
Reset();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiShivanSlashTimer;
|
||||
uint32 m_uiSpinningStrikeTimer;
|
||||
uint32 m_uiMistressKissTimer;
|
||||
@@ -474,13 +474,13 @@ public:
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_MISTRESS_OF_PAIN_COUNT, DECREASE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_MISTRESS_OF_PAIN_COUNT, DECREASE);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (m_instance && m_instance->GetData(TYPE_JARAXXUS) != IN_PROGRESS)
|
||||
if (instance && instance->GetData(TYPE_JARAXXUS) != IN_PROGRESS)
|
||||
{
|
||||
me->DespawnOrUnsummon();
|
||||
return;
|
||||
|
||||
+34
-34
@@ -123,10 +123,10 @@ public:
|
||||
{
|
||||
boss_gormokAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiImpaleTimer;
|
||||
uint32 m_uiStaggeringStompTimer;
|
||||
@@ -151,7 +151,7 @@ public:
|
||||
|
||||
void EnterEvadeMode()
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
ScriptedAI::EnterEvadeMode();
|
||||
}
|
||||
|
||||
@@ -163,7 +163,7 @@ public:
|
||||
switch (pointId)
|
||||
{
|
||||
case 0:
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->SetInCombatWithZone();
|
||||
@@ -173,16 +173,16 @@ public:
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_DONE);
|
||||
}
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, FAIL);
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, FAIL);
|
||||
}
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
@@ -190,7 +190,7 @@ public:
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
me->SetInCombatWithZone();
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_IN_PROGRESS);
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_IN_PROGRESS);
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* summon)
|
||||
@@ -263,12 +263,12 @@ public:
|
||||
{
|
||||
mob_snobold_vassalAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_SNOBOLD_COUNT, INCREASE);
|
||||
instance = creature->GetInstanceScript();
|
||||
if (instance)
|
||||
instance->SetData(DATA_SNOBOLD_COUNT, INCREASE);
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiFireBombTimer;
|
||||
uint32 m_uiBatterTimer;
|
||||
uint32 m_uiHeadCrackTimer;
|
||||
@@ -284,15 +284,15 @@ public:
|
||||
|
||||
m_uiTargetGUID = 0;
|
||||
m_bTargetDied = false;
|
||||
if (m_instance)
|
||||
m_uiBossGUID = m_instance->GetData64(NPC_GORMOK);
|
||||
if (instance)
|
||||
m_uiBossGUID = instance->GetData64(NPC_GORMOK);
|
||||
//Workaround for Snobold
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
|
||||
void EnterEvadeMode()
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
ScriptedAI::EnterEvadeMode();
|
||||
}
|
||||
|
||||
@@ -328,8 +328,8 @@ public:
|
||||
if (Unit* target = Unit::GetPlayer(*me, m_uiTargetGUID))
|
||||
if (target->isAlive())
|
||||
target->RemoveAurasDueToSpell(SPELL_SNOBOLLED);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_SNOBOLD_COUNT, DECREASE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_SNOBOLD_COUNT, DECREASE);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 const diff)
|
||||
@@ -341,9 +341,9 @@ public:
|
||||
{
|
||||
if (!target->isAlive())
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
Unit* gormok = ObjectAccessor::GetCreature(*me, m_instance->GetData64(NPC_GORMOK));
|
||||
Unit* gormok = ObjectAccessor::GetCreature(*me, instance->GetData64(NPC_GORMOK));
|
||||
if (gormok && gormok->isAlive())
|
||||
{
|
||||
SetCombatMovement(false);
|
||||
@@ -757,10 +757,10 @@ public:
|
||||
{
|
||||
boss_icehowlAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiFerociousButtTimer;
|
||||
uint32 m_uiArticBreathTimer;
|
||||
@@ -794,8 +794,8 @@ public:
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, ICEHOWL_DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, ICEHOWL_DONE);
|
||||
}
|
||||
|
||||
void MovementInform(uint32 type, uint32 pointId)
|
||||
@@ -826,7 +826,7 @@ public:
|
||||
m_bMovementFinish = true;
|
||||
break;
|
||||
case 2:
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->SetInCombatWithZone();
|
||||
@@ -836,16 +836,16 @@ public:
|
||||
|
||||
void EnterEvadeMode()
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
ScriptedAI::EnterEvadeMode();
|
||||
}
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, FAIL);
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, FAIL);
|
||||
}
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
@@ -854,15 +854,15 @@ public:
|
||||
{
|
||||
if (who->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_NORTHREND_BEASTS, ICEHOWL_IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_NORTHREND_BEASTS, ICEHOWL_IN_PROGRESS);
|
||||
me->SetInCombatWithZone();
|
||||
}
|
||||
|
||||
|
||||
+29
-29
@@ -143,10 +143,10 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
{
|
||||
boss_twin_baseAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
|
||||
AuraStateType m_uiAuraState;
|
||||
@@ -190,8 +190,8 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_VALKIRIES, FAIL);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_VALKIRIES, FAIL);
|
||||
|
||||
Summons.DespawnAll();
|
||||
me->DespawnOrUnsummon();
|
||||
@@ -204,7 +204,7 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
switch (uiId)
|
||||
{
|
||||
case 1:
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
break;
|
||||
@@ -216,8 +216,8 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
if (who->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
DoScriptText(urand(0, 1) ? SAY_KILL1 : SAY_KILL2, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -231,12 +231,12 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
switch (summoned->GetEntry())
|
||||
{
|
||||
case NPC_LIGHT_ESSENCE:
|
||||
m_instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_LIGHT_ESSENCE_HELPER);
|
||||
m_instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_POWERING_UP_HELPER);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_LIGHT_ESSENCE_HELPER);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_POWERING_UP_HELPER);
|
||||
break;
|
||||
case NPC_DARK_ESSENCE:
|
||||
m_instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_DARK_ESSENCE_HELPER);
|
||||
m_instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_POWERING_UP_HELPER);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_DARK_ESSENCE_HELPER);
|
||||
instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_POWERING_UP_HELPER);
|
||||
break;
|
||||
case NPC_BULLET_CONTROLLER:
|
||||
me->m_Events.AddEvent(new OrbsDespawner(me), me->m_Events.CalculateTime(100));
|
||||
@@ -248,7 +248,7 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (Creature* pSister = GetSister())
|
||||
{
|
||||
@@ -257,13 +257,13 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
me->SetFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE);
|
||||
pSister->SetFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE);
|
||||
|
||||
m_instance->SetData(TYPE_VALKIRIES, DONE);
|
||||
instance->SetData(TYPE_VALKIRIES, DONE);
|
||||
Summons.DespawnAll();
|
||||
}
|
||||
else
|
||||
{
|
||||
me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE);
|
||||
m_instance->SetData(TYPE_VALKIRIES, SPECIAL);
|
||||
instance->SetData(TYPE_VALKIRIES, SPECIAL);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -273,20 +273,20 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
// Called when sister pointer needed
|
||||
Creature* GetSister()
|
||||
{
|
||||
return Unit::GetCreature((*me), m_instance->GetData64(m_uiSisterNpcId));
|
||||
return Unit::GetCreature((*me), instance->GetData64(m_uiSisterNpcId));
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
me->SetInCombatWithZone();
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (Creature* pSister = GetSister())
|
||||
{
|
||||
me->AddAura(m_uiMyEmphatySpellId, pSister);
|
||||
pSister->SetInCombatWithZone();
|
||||
}
|
||||
m_instance->SetData(TYPE_VALKIRIES, IN_PROGRESS);
|
||||
instance->SetData(TYPE_VALKIRIES, IN_PROGRESS);
|
||||
}
|
||||
|
||||
DoScriptText(SAY_AGGRO, me);
|
||||
@@ -315,7 +315,7 @@ struct boss_twin_baseAI : public ScriptedAI
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance || !UpdateVictim())
|
||||
if (!instance || !UpdateVictim())
|
||||
return;
|
||||
|
||||
switch (m_uiStage)
|
||||
@@ -406,10 +406,10 @@ public:
|
||||
{
|
||||
boss_fjolaAI(Creature* creature) : boss_twin_baseAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
void Reset() {
|
||||
boss_twin_baseAI::Reset();
|
||||
@@ -429,17 +429,17 @@ public:
|
||||
m_uiTouchSpellId = SPELL_LIGHT_TOUCH;
|
||||
m_uiSpikeSpellId = SPELL_LIGHT_TWIN_SPIKE;
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, EVENT_START_TWINS_FIGHT);
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, EVENT_START_TWINS_FIGHT);
|
||||
}
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, EVENT_START_TWINS_FIGHT);
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, EVENT_START_TWINS_FIGHT);
|
||||
}
|
||||
|
||||
me->SummonCreature(NPC_BULLET_CONTROLLER, ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY(), ToCCommonLoc[1].GetPositionZ(), 0.0f, TEMPSUMMON_MANUAL_DESPAWN);
|
||||
@@ -448,14 +448,14 @@ public:
|
||||
|
||||
void EnterEvadeMode()
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
boss_twin_baseAI::EnterEvadeMode();
|
||||
}
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
if (instance)
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
|
||||
boss_twin_baseAI::JustReachedHome();
|
||||
}
|
||||
@@ -552,10 +552,10 @@ struct mob_unleashed_ballAI : public ScriptedAI
|
||||
{
|
||||
mob_unleashed_ballAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiRangeCheckTimer;
|
||||
|
||||
void MoveToNextPoint()
|
||||
|
||||
+136
-136
@@ -106,10 +106,10 @@ class npc_announcer_toc10 : public CreatureScript
|
||||
{
|
||||
npc_announcer_toc10AI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
void Reset()
|
||||
{
|
||||
@@ -239,10 +239,10 @@ class boss_lich_king_toc : public CreatureScript
|
||||
{
|
||||
boss_lich_king_tocAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiUpdateTimer;
|
||||
|
||||
void Reset()
|
||||
@@ -254,7 +254,7 @@ class boss_lich_king_toc : public CreatureScript
|
||||
summoned->CastSpell(summoned, 51807, false);
|
||||
summoned->SetDisplayId(11686);
|
||||
}
|
||||
if (m_instance) m_instance->SetData(TYPE_LICH_KING, IN_PROGRESS);
|
||||
if (instance) instance->SetData(TYPE_LICH_KING, IN_PROGRESS);
|
||||
me->SetWalk(true);
|
||||
}
|
||||
|
||||
@@ -265,80 +265,80 @@ class boss_lich_king_toc : public CreatureScript
|
||||
switch (uiId)
|
||||
{
|
||||
case 0:
|
||||
m_instance->SetData(TYPE_EVENT, 5030);
|
||||
instance->SetData(TYPE_EVENT, 5030);
|
||||
break;
|
||||
case 1:
|
||||
m_instance->SetData(TYPE_EVENT, 5050);
|
||||
instance->SetData(TYPE_EVENT, 5050);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance)
|
||||
if (!instance)
|
||||
return;
|
||||
|
||||
if (m_instance->GetData(TYPE_EVENT_NPC) != NPC_LICH_KING_1)
|
||||
if (instance->GetData(TYPE_EVENT_NPC) != NPC_LICH_KING_1)
|
||||
return;
|
||||
|
||||
m_uiUpdateTimer = m_instance->GetData(TYPE_EVENT_TIMER);
|
||||
m_uiUpdateTimer = instance->GetData(TYPE_EVENT_TIMER);
|
||||
if (m_uiUpdateTimer <= uiDiff)
|
||||
{
|
||||
switch (m_instance->GetData(TYPE_EVENT))
|
||||
switch (instance->GetData(TYPE_EVENT))
|
||||
{
|
||||
case 5010:
|
||||
DoScriptText(SAY_STAGE_4_02, me);
|
||||
m_uiUpdateTimer = 3000;
|
||||
me->GetMotionMaster()->MovePoint(0, LichKingLoc[0]);
|
||||
m_instance->SetData(TYPE_EVENT, 5020);
|
||||
instance->SetData(TYPE_EVENT, 5020);
|
||||
break;
|
||||
case 5030:
|
||||
DoScriptText(SAY_STAGE_4_04, me);
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_TALK);
|
||||
m_uiUpdateTimer = 10000;
|
||||
m_instance->SetData(TYPE_EVENT, 5040);
|
||||
instance->SetData(TYPE_EVENT, 5040);
|
||||
break;
|
||||
case 5040:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE);
|
||||
me->GetMotionMaster()->MovePoint(1, LichKingLoc[1]);
|
||||
m_uiUpdateTimer = 1000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 5050:
|
||||
me->HandleEmoteCommand(EMOTE_ONESHOT_EXCLAMATION);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 5060);
|
||||
instance->SetData(TYPE_EVENT, 5060);
|
||||
break;
|
||||
case 5060:
|
||||
DoScriptText(SAY_STAGE_4_05, me);
|
||||
me->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL);
|
||||
m_uiUpdateTimer = 2500;
|
||||
m_instance->SetData(TYPE_EVENT, 5070);
|
||||
instance->SetData(TYPE_EVENT, 5070);
|
||||
break;
|
||||
case 5070:
|
||||
me->CastSpell(me, 68198, false);
|
||||
m_uiUpdateTimer = 1500;
|
||||
m_instance->SetData(TYPE_EVENT, 5080);
|
||||
instance->SetData(TYPE_EVENT, 5080);
|
||||
break;
|
||||
case 5080:
|
||||
if (GameObject* go = m_instance->instance->GetGameObject(m_instance->GetData64(GO_ARGENT_COLISEUM_FLOOR)))
|
||||
if (GameObject* go = instance->instance->GetGameObject(instance->GetData64(GO_ARGENT_COLISEUM_FLOOR)))
|
||||
go->SetDestructibleState(GO_DESTRUCTIBLE_DESTROYED);
|
||||
me->CastSpell(me, 69016, false);
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(TYPE_LICH_KING, DONE);
|
||||
Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_ANUBARAK));
|
||||
instance->SetData(TYPE_LICH_KING, DONE);
|
||||
Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_ANUBARAK));
|
||||
if (!temp || !temp->isAlive())
|
||||
temp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME);
|
||||
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
}
|
||||
me->DespawnOrUnsummon();
|
||||
m_uiUpdateTimer = 20000;
|
||||
break;
|
||||
}
|
||||
} else m_uiUpdateTimer -= uiDiff;
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -358,10 +358,10 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
{
|
||||
npc_fizzlebang_tocAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = (InstanceScript*)me->GetInstanceScript();
|
||||
instance = me->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
uint32 m_uiUpdateTimer;
|
||||
uint64 m_uiPortalGUID;
|
||||
@@ -370,8 +370,8 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
void JustDied(Unit* killer)
|
||||
{
|
||||
DoScriptText(SAY_STAGE_1_06, me, killer);
|
||||
m_instance->SetData(TYPE_EVENT, 1180);
|
||||
if (Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_JARAXXUS)))
|
||||
instance->SetData(TYPE_EVENT, 1180);
|
||||
if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_JARAXXUS)))
|
||||
{
|
||||
temp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
temp->SetReactState(REACT_AGGRESSIVE);
|
||||
@@ -394,11 +394,11 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
{
|
||||
case 1:
|
||||
me->SetWalk(false);
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
m_instance->SetData(TYPE_EVENT, 1120);
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, 1000);
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->SetData(TYPE_EVENT, 1120);
|
||||
instance->SetData(TYPE_EVENT_TIMER, 1000);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -411,22 +411,22 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance) return;
|
||||
if (!instance) return;
|
||||
|
||||
if (m_instance->GetData(TYPE_EVENT_NPC) != NPC_FIZZLEBANG) return;
|
||||
if (instance->GetData(TYPE_EVENT_NPC) != NPC_FIZZLEBANG) return;
|
||||
|
||||
m_uiUpdateTimer = m_instance->GetData(TYPE_EVENT_TIMER);
|
||||
m_uiUpdateTimer = instance->GetData(TYPE_EVENT_TIMER);
|
||||
if (m_uiUpdateTimer <= uiDiff)
|
||||
{
|
||||
switch (m_instance->GetData(TYPE_EVENT))
|
||||
switch (instance->GetData(TYPE_EVENT))
|
||||
{
|
||||
case 1110:
|
||||
m_instance->SetData(TYPE_EVENT, 1120);
|
||||
instance->SetData(TYPE_EVENT, 1120);
|
||||
m_uiUpdateTimer = 4000;
|
||||
break;
|
||||
case 1120:
|
||||
DoScriptText(SAY_STAGE_1_02, me);
|
||||
m_instance->SetData(TYPE_EVENT, 1130);
|
||||
instance->SetData(TYPE_EVENT, 1130);
|
||||
m_uiUpdateTimer = 12000;
|
||||
break;
|
||||
case 1130:
|
||||
@@ -440,12 +440,12 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
pTrigger->SetDisplayId(22862);
|
||||
pTrigger->CastSpell(pTrigger, SPELL_WILFRED_PORTAL, false);
|
||||
}
|
||||
m_instance->SetData(TYPE_EVENT, 1132);
|
||||
instance->SetData(TYPE_EVENT, 1132);
|
||||
m_uiUpdateTimer = 4000;
|
||||
break;
|
||||
case 1132:
|
||||
me->GetMotionMaster()->MovementExpired();
|
||||
m_instance->SetData(TYPE_EVENT, 1134);
|
||||
instance->SetData(TYPE_EVENT, 1134);
|
||||
m_uiUpdateTimer = 4000;
|
||||
break;
|
||||
case 1134:
|
||||
@@ -458,10 +458,10 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
m_uiPortalGUID = pPortal->GetGUID();
|
||||
}
|
||||
m_uiUpdateTimer = 4000;
|
||||
m_instance->SetData(TYPE_EVENT, 1135);
|
||||
instance->SetData(TYPE_EVENT, 1135);
|
||||
break;
|
||||
case 1135:
|
||||
m_instance->SetData(TYPE_EVENT, 1140);
|
||||
instance->SetData(TYPE_EVENT, 1140);
|
||||
m_uiUpdateTimer = 3000;
|
||||
break;
|
||||
case 1140:
|
||||
@@ -472,27 +472,27 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
temp->SetReactState(REACT_PASSIVE);
|
||||
temp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY()-10, ToCCommonLoc[1].GetPositionZ());
|
||||
}
|
||||
m_instance->SetData(TYPE_EVENT, 1142);
|
||||
instance->SetData(TYPE_EVENT, 1142);
|
||||
m_uiUpdateTimer = 5000;
|
||||
break;
|
||||
case 1142:
|
||||
if (Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_JARAXXUS)))
|
||||
if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_JARAXXUS)))
|
||||
temp->SetTarget(me->GetGUID());
|
||||
if (Creature* pTrigger = Unit::GetCreature(*me, m_uiTriggerGUID))
|
||||
pTrigger->DespawnOrUnsummon();
|
||||
if (Creature* pPortal = Unit::GetCreature(*me, m_uiPortalGUID))
|
||||
pPortal->DespawnOrUnsummon();
|
||||
m_instance->SetData(TYPE_EVENT, 1144);
|
||||
instance->SetData(TYPE_EVENT, 1144);
|
||||
m_uiUpdateTimer = 10000;
|
||||
break;
|
||||
case 1144:
|
||||
if (Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_JARAXXUS)))
|
||||
if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_JARAXXUS)))
|
||||
DoScriptText(SAY_STAGE_1_05, temp);
|
||||
m_instance->SetData(TYPE_EVENT, 1150);
|
||||
instance->SetData(TYPE_EVENT, 1150);
|
||||
m_uiUpdateTimer = 5000;
|
||||
break;
|
||||
case 1150:
|
||||
if (Creature* temp = Unit::GetCreature(*me, m_instance->GetData64(NPC_JARAXXUS)))
|
||||
if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(NPC_JARAXXUS)))
|
||||
{
|
||||
//1-shot Fizzlebang
|
||||
temp->CastSpell(me, 67888, false);
|
||||
@@ -500,12 +500,12 @@ class npc_fizzlebang_toc : public CreatureScript
|
||||
temp->AddThreat(me, 1000.0f);
|
||||
temp->AI()->AttackStart(me);
|
||||
}
|
||||
m_instance->SetData(TYPE_EVENT, 1160);
|
||||
instance->SetData(TYPE_EVENT, 1160);
|
||||
m_uiUpdateTimer = 3000;
|
||||
break;
|
||||
}
|
||||
} else m_uiUpdateTimer -= uiDiff;
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -525,10 +525,10 @@ class npc_tirion_toc : public CreatureScript
|
||||
{
|
||||
npc_tirion_tocAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)me->GetInstanceScript();
|
||||
instance = me->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiUpdateTimer;
|
||||
|
||||
void Reset() {}
|
||||
@@ -537,31 +537,31 @@ class npc_tirion_toc : public CreatureScript
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance) return;
|
||||
if (m_instance->GetData(TYPE_EVENT_NPC) != NPC_TIRION) return;
|
||||
if (!instance) return;
|
||||
if (instance->GetData(TYPE_EVENT_NPC) != NPC_TIRION) return;
|
||||
|
||||
m_uiUpdateTimer = m_instance->GetData(TYPE_EVENT_TIMER);
|
||||
m_uiUpdateTimer = instance->GetData(TYPE_EVENT_TIMER);
|
||||
if (m_uiUpdateTimer <= uiDiff)
|
||||
{
|
||||
switch (m_instance->GetData(TYPE_EVENT))
|
||||
switch (instance->GetData(TYPE_EVENT))
|
||||
{
|
||||
case 110:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK);
|
||||
DoScriptText(SAY_STAGE_0_01, me);
|
||||
m_uiUpdateTimer = 22000;
|
||||
m_instance->SetData(TYPE_EVENT, 120);
|
||||
instance->SetData(TYPE_EVENT, 120);
|
||||
break;
|
||||
case 140:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK);
|
||||
DoScriptText(SAY_STAGE_0_02, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 150);
|
||||
instance->SetData(TYPE_EVENT, 150);
|
||||
break;
|
||||
case 150:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE);
|
||||
if (m_instance->GetData(TYPE_BEASTS) != DONE)
|
||||
if (instance->GetData(TYPE_BEASTS) != DONE)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
|
||||
if (Creature* temp = me->SummonCreature(NPC_GORMOK, ToCSpawnLoc[0].GetPositionX(), ToCSpawnLoc[0].GetPositionY(), ToCSpawnLoc[0].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 30*IN_MILLISECONDS))
|
||||
{
|
||||
@@ -571,26 +571,26 @@ class npc_tirion_toc : public CreatureScript
|
||||
}
|
||||
}
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 155);
|
||||
instance->SetData(TYPE_EVENT, 155);
|
||||
break;
|
||||
case 155:
|
||||
m_instance->SetData(TYPE_BEASTS, IN_PROGRESS);
|
||||
instance->SetData(TYPE_BEASTS, IN_PROGRESS);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 160);
|
||||
instance->SetData(TYPE_EVENT, 160);
|
||||
break;
|
||||
case 200:
|
||||
DoScriptText(SAY_STAGE_0_04, me);
|
||||
m_uiUpdateTimer = 8000;
|
||||
m_instance->SetData(TYPE_EVENT, 205);
|
||||
instance->SetData(TYPE_EVENT, 205);
|
||||
break;
|
||||
case 205:
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 210);
|
||||
instance->SetData(TYPE_EVENT, 210);
|
||||
break;
|
||||
case 210:
|
||||
if (m_instance->GetData(TYPE_BEASTS) != DONE)
|
||||
if (instance->GetData(TYPE_BEASTS) != DONE)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
if (Creature* temp = me->SummonCreature(NPC_DREADSCALE, ToCSpawnLoc[1].GetPositionX(), ToCSpawnLoc[1].GetPositionY(), ToCSpawnLoc[1].GetPositionZ(), 5, TEMPSUMMON_MANUAL_DESPAWN))
|
||||
{
|
||||
temp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[8].GetPositionX(), ToCCommonLoc[8].GetPositionY(), ToCCommonLoc[8].GetPositionZ());
|
||||
@@ -605,24 +605,24 @@ class npc_tirion_toc : public CreatureScript
|
||||
}
|
||||
}
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 220);
|
||||
instance->SetData(TYPE_EVENT, 220);
|
||||
break;
|
||||
case 220:
|
||||
m_instance->SetData(TYPE_EVENT, 230);
|
||||
instance->SetData(TYPE_EVENT, 230);
|
||||
break;
|
||||
case 300:
|
||||
DoScriptText(SAY_STAGE_0_05, me);
|
||||
m_uiUpdateTimer = 8000;
|
||||
m_instance->SetData(TYPE_EVENT, 305);
|
||||
instance->SetData(TYPE_EVENT, 305);
|
||||
break;
|
||||
case 305:
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 310);
|
||||
instance->SetData(TYPE_EVENT, 310);
|
||||
break;
|
||||
case 310:
|
||||
if (m_instance->GetData(TYPE_BEASTS) != DONE)
|
||||
if (instance->GetData(TYPE_BEASTS) != DONE)
|
||||
{
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
if (Creature* temp = me->SummonCreature(NPC_ICEHOWL, ToCSpawnLoc[0].GetPositionX(), ToCSpawnLoc[0].GetPositionY(), ToCSpawnLoc[0].GetPositionZ(), 5, TEMPSUMMON_DEAD_DESPAWN))
|
||||
{
|
||||
temp->GetMotionMaster()->MovePoint(2, ToCCommonLoc[5].GetPositionX(), ToCCommonLoc[5].GetPositionY(), ToCCommonLoc[5].GetPositionZ());
|
||||
@@ -632,92 +632,92 @@ class npc_tirion_toc : public CreatureScript
|
||||
}
|
||||
}
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 315);
|
||||
instance->SetData(TYPE_EVENT, 315);
|
||||
break;
|
||||
case 315:
|
||||
m_instance->SetData(TYPE_EVENT, 320);
|
||||
instance->SetData(TYPE_EVENT, 320);
|
||||
break;
|
||||
case 400:
|
||||
DoScriptText(SAY_STAGE_0_06, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 666:
|
||||
DoScriptText(SAY_STAGE_0_WIPE, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 1010:
|
||||
DoScriptText(SAY_STAGE_1_01, me);
|
||||
m_uiUpdateTimer = 7000;
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
me->SummonCreature(NPC_FIZZLEBANG, ToCSpawnLoc[0].GetPositionX(), ToCSpawnLoc[0].GetPositionY(), ToCSpawnLoc[0].GetPositionZ(), 2, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME);
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 1180:
|
||||
DoScriptText(SAY_STAGE_1_07, me);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 2000:
|
||||
DoScriptText(SAY_STAGE_1_08, me);
|
||||
m_uiUpdateTimer = 18000;
|
||||
m_instance->SetData(TYPE_EVENT, 2010);
|
||||
instance->SetData(TYPE_EVENT, 2010);
|
||||
break;
|
||||
case 2030:
|
||||
DoScriptText(SAY_STAGE_1_11, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 3000:
|
||||
DoScriptText(SAY_STAGE_2_01, me);
|
||||
m_uiUpdateTimer = 12000;
|
||||
m_instance->SetData(TYPE_EVENT, 3050);
|
||||
instance->SetData(TYPE_EVENT, 3050);
|
||||
break;
|
||||
case 3001:
|
||||
DoScriptText(SAY_STAGE_2_01, me);
|
||||
m_uiUpdateTimer = 12000;
|
||||
m_instance->SetData(TYPE_EVENT, 3051);
|
||||
instance->SetData(TYPE_EVENT, 3051);
|
||||
break;
|
||||
case 3060:
|
||||
DoScriptText(SAY_STAGE_2_03, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 3070);
|
||||
instance->SetData(TYPE_EVENT, 3070);
|
||||
break;
|
||||
case 3061:
|
||||
DoScriptText(SAY_STAGE_2_03, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 3071);
|
||||
instance->SetData(TYPE_EVENT, 3071);
|
||||
break;
|
||||
//Summoning crusaders
|
||||
case 3091:
|
||||
if (Creature* pChampionController = me->SummonCreature(NPC_CHAMPIONS_CONTROLLER, ToCCommonLoc[1]))
|
||||
pChampionController->AI()->SetData(0, HORDE);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 3092);
|
||||
instance->SetData(TYPE_EVENT, 3092);
|
||||
break;
|
||||
//Summoning crusaders
|
||||
case 3090:
|
||||
if (Creature* pChampionController = me->SummonCreature(NPC_CHAMPIONS_CONTROLLER, ToCCommonLoc[1]))
|
||||
pChampionController->AI()->SetData(0, ALLIANCE);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 3092);
|
||||
instance->SetData(TYPE_EVENT, 3092);
|
||||
break;
|
||||
case 3092:
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), m_instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
if (Creature* pChampionController = Unit::GetCreature((*me), instance->GetData64(NPC_CHAMPIONS_CONTROLLER)))
|
||||
pChampionController->AI()->SetData(1, NOT_STARTED);
|
||||
m_instance->SetData(TYPE_EVENT, 3095);
|
||||
instance->SetData(TYPE_EVENT, 3095);
|
||||
break;
|
||||
//Crusaders battle end
|
||||
case 3100:
|
||||
DoScriptText(SAY_STAGE_2_06, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 4000:
|
||||
DoScriptText(SAY_STAGE_3_01, me);
|
||||
m_uiUpdateTimer = 13000;
|
||||
m_instance->SetData(TYPE_EVENT, 4010);
|
||||
instance->SetData(TYPE_EVENT, 4010);
|
||||
break;
|
||||
case 4010:
|
||||
DoScriptText(SAY_STAGE_3_02, me);
|
||||
@@ -736,72 +736,72 @@ class npc_tirion_toc : public CreatureScript
|
||||
temp->SummonCreature(NPC_DARK_ESSENCE, TwinValkyrsLoc[3].GetPositionX(), TwinValkyrsLoc[3].GetPositionY(), TwinValkyrsLoc[3].GetPositionZ());
|
||||
}
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 4015);
|
||||
instance->SetData(TYPE_EVENT, 4015);
|
||||
break;
|
||||
case 4015:
|
||||
m_instance->DoUseDoorOrButton(m_instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
if (Creature* temp = Unit::GetCreature((*me), m_instance->GetData64(NPC_LIGHTBANE)))
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_MAIN_GATE_DOOR));
|
||||
if (Creature* temp = Unit::GetCreature((*me), instance->GetData64(NPC_LIGHTBANE)))
|
||||
{
|
||||
temp->GetMotionMaster()->MovePoint(1, ToCCommonLoc[8].GetPositionX(), ToCCommonLoc[8].GetPositionY(), ToCCommonLoc[8].GetPositionZ());
|
||||
temp->SetVisible(true);
|
||||
}
|
||||
if (Creature* temp = Unit::GetCreature((*me), m_instance->GetData64(NPC_DARKBANE)))
|
||||
if (Creature* temp = Unit::GetCreature((*me), instance->GetData64(NPC_DARKBANE)))
|
||||
{
|
||||
temp->GetMotionMaster()->MovePoint(1, ToCCommonLoc[9].GetPositionX(), ToCCommonLoc[9].GetPositionY(), ToCCommonLoc[9].GetPositionZ());
|
||||
temp->SetVisible(true);
|
||||
}
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 4016);
|
||||
instance->SetData(TYPE_EVENT, 4016);
|
||||
break;
|
||||
case 4016:
|
||||
m_instance->SetData(TYPE_EVENT, 4017);
|
||||
instance->SetData(TYPE_EVENT, 4017);
|
||||
break;
|
||||
case 4040:
|
||||
m_uiUpdateTimer = 60000;
|
||||
m_instance->SetData(TYPE_EVENT, 5000);
|
||||
instance->SetData(TYPE_EVENT, 5000);
|
||||
break;
|
||||
case 5000:
|
||||
DoScriptText(SAY_STAGE_4_01, me);
|
||||
m_uiUpdateTimer = 10000;
|
||||
m_instance->SetData(TYPE_EVENT, 5005);
|
||||
instance->SetData(TYPE_EVENT, 5005);
|
||||
break;
|
||||
case 5005:
|
||||
m_uiUpdateTimer = 8000;
|
||||
m_instance->SetData(TYPE_EVENT, 5010);
|
||||
instance->SetData(TYPE_EVENT, 5010);
|
||||
me->SummonCreature(NPC_LICH_KING_1, ToCSpawnLoc[0].GetPositionX(), ToCSpawnLoc[0].GetPositionY(), ToCSpawnLoc[0].GetPositionZ(), 5);
|
||||
break;
|
||||
case 5020:
|
||||
DoScriptText(SAY_STAGE_4_03, me);
|
||||
m_uiUpdateTimer = 1000;
|
||||
m_instance->SetData(TYPE_EVENT, 0);
|
||||
instance->SetData(TYPE_EVENT, 0);
|
||||
break;
|
||||
case 6000:
|
||||
me->NearTeleportTo(AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 4.0f);
|
||||
m_uiUpdateTimer = 20000;
|
||||
m_instance->SetData(TYPE_EVENT, 6005);
|
||||
instance->SetData(TYPE_EVENT, 6005);
|
||||
break;
|
||||
case 6005:
|
||||
DoScriptText(SAY_STAGE_4_06, me);
|
||||
m_uiUpdateTimer = 20000;
|
||||
m_instance->SetData(TYPE_EVENT, 6010);
|
||||
instance->SetData(TYPE_EVENT, 6010);
|
||||
break;
|
||||
case 6010:
|
||||
if (IsHeroic())
|
||||
{
|
||||
DoScriptText(SAY_STAGE_4_07, me);
|
||||
m_uiUpdateTimer = 60000;
|
||||
m_instance->SetData(TYPE_ANUBARAK, SPECIAL);
|
||||
m_instance->SetData(TYPE_EVENT, 6020);
|
||||
} else m_instance->SetData(TYPE_EVENT, 6030);
|
||||
instance->SetData(TYPE_ANUBARAK, SPECIAL);
|
||||
instance->SetData(TYPE_EVENT, 6020);
|
||||
} else instance->SetData(TYPE_EVENT, 6030);
|
||||
break;
|
||||
case 6020:
|
||||
me->DespawnOrUnsummon();
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 6030);
|
||||
instance->SetData(TYPE_EVENT, 6030);
|
||||
break;
|
||||
}
|
||||
} else m_uiUpdateTimer -= uiDiff;
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -821,10 +821,10 @@ class npc_garrosh_toc : public CreatureScript
|
||||
{
|
||||
npc_garrosh_tocAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)me->GetInstanceScript();
|
||||
instance = me->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiUpdateTimer;
|
||||
|
||||
void Reset() {}
|
||||
@@ -833,53 +833,53 @@ class npc_garrosh_toc : public CreatureScript
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance) return;
|
||||
if (m_instance->GetData(TYPE_EVENT_NPC) != NPC_GARROSH) return;
|
||||
if (!instance) return;
|
||||
if (instance->GetData(TYPE_EVENT_NPC) != NPC_GARROSH) return;
|
||||
|
||||
m_uiUpdateTimer = m_instance->GetData(TYPE_EVENT_TIMER);
|
||||
m_uiUpdateTimer = instance->GetData(TYPE_EVENT_TIMER);
|
||||
if (m_uiUpdateTimer <= uiDiff)
|
||||
{
|
||||
switch (m_instance->GetData(TYPE_EVENT))
|
||||
switch (instance->GetData(TYPE_EVENT))
|
||||
{
|
||||
case 130:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK);
|
||||
DoScriptText(SAY_STAGE_0_03h, me);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 132);
|
||||
instance->SetData(TYPE_EVENT, 132);
|
||||
break;
|
||||
case 132:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 140);
|
||||
instance->SetData(TYPE_EVENT, 140);
|
||||
break;
|
||||
case 2010:
|
||||
DoScriptText(SAY_STAGE_1_09, me);
|
||||
m_uiUpdateTimer = 9000;
|
||||
m_instance->SetData(TYPE_EVENT, 2020);
|
||||
instance->SetData(TYPE_EVENT, 2020);
|
||||
break;
|
||||
case 3050:
|
||||
DoScriptText(SAY_STAGE_2_02h, me);
|
||||
m_uiUpdateTimer = 15000;
|
||||
m_instance->SetData(TYPE_EVENT, 3060);
|
||||
instance->SetData(TYPE_EVENT, 3060);
|
||||
break;
|
||||
case 3070:
|
||||
DoScriptText(SAY_STAGE_2_04h, me);
|
||||
m_uiUpdateTimer = 6000;
|
||||
m_instance->SetData(TYPE_EVENT, 3080);
|
||||
instance->SetData(TYPE_EVENT, 3080);
|
||||
break;
|
||||
case 3081:
|
||||
DoScriptText(SAY_STAGE_2_05h, me);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 3091);
|
||||
instance->SetData(TYPE_EVENT, 3091);
|
||||
break;
|
||||
case 4030:
|
||||
DoScriptText(SAY_STAGE_3_03h, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 4040);
|
||||
instance->SetData(TYPE_EVENT, 4040);
|
||||
break;
|
||||
}
|
||||
} else m_uiUpdateTimer -= uiDiff;
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -899,10 +899,10 @@ class npc_varian_toc : public CreatureScript
|
||||
{
|
||||
npc_varian_tocAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = (InstanceScript*)me->GetInstanceScript();
|
||||
instance = me->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
uint32 m_uiUpdateTimer;
|
||||
|
||||
void Reset() {}
|
||||
@@ -911,53 +911,53 @@ class npc_varian_toc : public CreatureScript
|
||||
|
||||
void UpdateAI(const uint32 uiDiff)
|
||||
{
|
||||
if (!m_instance) return;
|
||||
if (m_instance->GetData(TYPE_EVENT_NPC) != NPC_VARIAN) return;
|
||||
if (!instance) return;
|
||||
if (instance->GetData(TYPE_EVENT_NPC) != NPC_VARIAN) return;
|
||||
|
||||
m_uiUpdateTimer = m_instance->GetData(TYPE_EVENT_TIMER);
|
||||
m_uiUpdateTimer = instance->GetData(TYPE_EVENT_TIMER);
|
||||
if (m_uiUpdateTimer <= uiDiff)
|
||||
{
|
||||
switch (m_instance->GetData(TYPE_EVENT))
|
||||
switch (instance->GetData(TYPE_EVENT))
|
||||
{
|
||||
case 120:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK);
|
||||
DoScriptText(SAY_STAGE_0_03a, me);
|
||||
m_uiUpdateTimer = 2000;
|
||||
m_instance->SetData(TYPE_EVENT, 122);
|
||||
instance->SetData(TYPE_EVENT, 122);
|
||||
break;
|
||||
case 122:
|
||||
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 130);
|
||||
instance->SetData(TYPE_EVENT, 130);
|
||||
break;
|
||||
case 2020:
|
||||
DoScriptText(SAY_STAGE_1_10, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 2030);
|
||||
instance->SetData(TYPE_EVENT, 2030);
|
||||
break;
|
||||
case 3051:
|
||||
DoScriptText(SAY_STAGE_2_02a, me);
|
||||
m_uiUpdateTimer = 10000;
|
||||
m_instance->SetData(TYPE_EVENT, 3061);
|
||||
instance->SetData(TYPE_EVENT, 3061);
|
||||
break;
|
||||
case 3071:
|
||||
DoScriptText(SAY_STAGE_2_04a, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 3081);
|
||||
instance->SetData(TYPE_EVENT, 3081);
|
||||
break;
|
||||
case 3080:
|
||||
DoScriptText(SAY_STAGE_2_05a, me);
|
||||
m_uiUpdateTimer = 3000;
|
||||
m_instance->SetData(TYPE_EVENT, 3090);
|
||||
instance->SetData(TYPE_EVENT, 3090);
|
||||
break;
|
||||
case 4020:
|
||||
DoScriptText(SAY_STAGE_3_03a, me);
|
||||
m_uiUpdateTimer = 5000;
|
||||
m_instance->SetData(TYPE_EVENT, 4040);
|
||||
instance->SetData(TYPE_EVENT, 4040);
|
||||
break;
|
||||
}
|
||||
} else m_uiUpdateTimer -= uiDiff;
|
||||
m_instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
instance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -93,13 +93,13 @@ public:
|
||||
{
|
||||
boss_bjarngrimAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
m_uiStance = STANCE_DEFENSIVE;
|
||||
memset(&m_auiStormforgedLieutenantGUID, 0, sizeof(m_auiStormforgedLieutenantGUID));
|
||||
canBuff = true;
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
bool m_bIsChangingStance;
|
||||
bool canBuff;
|
||||
@@ -167,8 +167,8 @@ public:
|
||||
|
||||
SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_SHIELD, EQUIP_NO_CHANGE);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_BJARNGRIM, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_BJARNGRIM, NOT_STARTED);
|
||||
}
|
||||
|
||||
void EnterEvadeMode()
|
||||
@@ -188,8 +188,8 @@ public:
|
||||
//must get both lieutenants here and make sure they are with him
|
||||
me->CallForHelp(30.0f);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_BJARNGRIM, IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_BJARNGRIM, IN_PROGRESS);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* /*victim*/)
|
||||
@@ -201,8 +201,8 @@ public:
|
||||
{
|
||||
Talk(SAY_DEATH);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_BJARNGRIM, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_BJARNGRIM, DONE);
|
||||
}
|
||||
|
||||
//TODO: remove when removal is done by the core
|
||||
@@ -385,10 +385,10 @@ public:
|
||||
{
|
||||
mob_stormforged_lieutenantAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 m_uiArcWeld_Timer;
|
||||
uint32 m_uiRenewSteel_Timer;
|
||||
@@ -401,9 +401,9 @@ public:
|
||||
|
||||
void EnterCombat(Unit* who)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (Creature* pBjarngrim = m_instance->instance->GetCreature(m_instance->GetData64(DATA_BJARNGRIM)))
|
||||
if (Creature* pBjarngrim = instance->instance->GetCreature(instance->GetData64(DATA_BJARNGRIM)))
|
||||
{
|
||||
if (pBjarngrim->isAlive() && !pBjarngrim->getVictim())
|
||||
pBjarngrim->AI()->AttackStart(who);
|
||||
@@ -427,9 +427,9 @@ public:
|
||||
|
||||
if (m_uiRenewSteel_Timer <= uiDiff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (Creature* pBjarngrim = m_instance->instance->GetCreature(m_instance->GetData64(DATA_BJARNGRIM)))
|
||||
if (Creature* pBjarngrim = instance->instance->GetCreature(instance->GetData64(DATA_BJARNGRIM)))
|
||||
{
|
||||
if (pBjarngrim->isAlive())
|
||||
DoCast(pBjarngrim, SPELL_RENEW_STEEL_N);
|
||||
|
||||
@@ -68,10 +68,10 @@ public:
|
||||
{
|
||||
boss_lokenAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
bool m_bIsAura;
|
||||
|
||||
@@ -93,10 +93,10 @@ public:
|
||||
|
||||
m_uiHealthAmountModifier = 1;
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(TYPE_LOKEN, NOT_STARTED);
|
||||
m_instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
|
||||
instance->SetData(TYPE_LOKEN, NOT_STARTED);
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -104,10 +104,10 @@ public:
|
||||
{
|
||||
Talk(SAY_AGGRO);
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(TYPE_LOKEN, IN_PROGRESS);
|
||||
m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
|
||||
instance->SetData(TYPE_LOKEN, IN_PROGRESS);
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,8 +115,8 @@ public:
|
||||
{
|
||||
Talk(SAY_DEATH);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_LOKEN, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_LOKEN, DONE);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* /*victim*/)
|
||||
|
||||
@@ -79,10 +79,10 @@ public:
|
||||
{
|
||||
boss_volkhanAI(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
std::list<uint64> m_lGolemGUIDList;
|
||||
|
||||
@@ -117,16 +117,16 @@ public:
|
||||
DespawnGolem();
|
||||
m_lGolemGUIDList.clear();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_VOLKHAN, NOT_STARTED);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_VOLKHAN, NOT_STARTED);
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
Talk(SAY_AGGRO);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_VOLKHAN, IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_VOLKHAN, IN_PROGRESS);
|
||||
}
|
||||
|
||||
void AttackStart(Unit* who)
|
||||
@@ -147,8 +147,8 @@ public:
|
||||
Talk(SAY_DEATH);
|
||||
DespawnGolem();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_VOLKHAN, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_VOLKHAN, DONE);
|
||||
|
||||
if (IsHeroic() && GolemsShattered < 5)
|
||||
{
|
||||
|
||||
@@ -170,10 +170,10 @@ public:
|
||||
{
|
||||
boss_skadiAI(Creature* creature) : ScriptedAI(creature), Summons(me)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
SummonList Summons;
|
||||
uint64 m_uiGraufGUID;
|
||||
std::vector<uint64> triggersGUID;
|
||||
@@ -208,10 +208,10 @@ public:
|
||||
me->SetSpeed(MOVE_FLIGHT, 3.0f);
|
||||
if ((Unit::GetCreature((*me), m_uiGraufGUID) == NULL) && !me->IsMounted())
|
||||
me->SummonCreature(CREATURE_GRAUF, Location[0].GetPositionX(), Location[0].GetPositionY(), Location[0].GetPositionZ(), 3.0f);
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, NOT_STARTED);
|
||||
m_instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, NOT_STARTED);
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -235,10 +235,10 @@ public:
|
||||
m_uiMovementTimer = 1000;
|
||||
m_uiSummonTimer = 10000;
|
||||
me->SetInCombatWithZone();
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
m_instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, IN_PROGRESS);
|
||||
m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, IN_PROGRESS);
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
me->GetMotionMaster()->MoveJump(Location[0].GetPositionX(), Location[0].GetPositionY(), Location[0].GetPositionZ(), 5.0f, 10.0f);
|
||||
me->SetWalk(false);
|
||||
m_uiMountTimer = 1000;
|
||||
@@ -411,8 +411,8 @@ public:
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
Summons.DespawnAll();
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, DONE);
|
||||
if (instance)
|
||||
instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, DONE);
|
||||
}
|
||||
|
||||
void KilledUnit(Unit* /*victim*/)
|
||||
@@ -463,11 +463,11 @@ public:
|
||||
|
||||
bool OnGossipHello(Player* player, GameObject* go)
|
||||
{
|
||||
InstanceScript* m_instance = go->GetInstanceScript();
|
||||
if (!m_instance)
|
||||
InstanceScript* instance = go->GetInstanceScript();
|
||||
if (!instance)
|
||||
return false;
|
||||
|
||||
if (Creature* pSkadi = Unit::GetCreature(*go, m_instance->GetData64(DATA_SKADI_THE_RUTHLESS)))
|
||||
if (Creature* pSkadi = Unit::GetCreature(*go, instance->GetData64(DATA_SKADI_THE_RUTHLESS)))
|
||||
player->CastSpell(pSkadi, SPELL_RAPID_FIRE, true);
|
||||
|
||||
return false;
|
||||
|
||||
@@ -58,10 +58,10 @@ public:
|
||||
{
|
||||
boss_ambassador_hellmawAI(Creature* creature) : npc_escortAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 EventCheck_Timer;
|
||||
uint32 CorrosiveAcid_Timer;
|
||||
@@ -81,17 +81,17 @@ public:
|
||||
IsBanished = true;
|
||||
Enraged = false;
|
||||
|
||||
if (m_instance && me->isAlive())
|
||||
if (instance && me->isAlive())
|
||||
{
|
||||
if (m_instance->GetData(TYPE_OVERSEER) != DONE)
|
||||
if (instance->GetData(TYPE_OVERSEER) != DONE)
|
||||
DoCast(me, SPELL_BANISH, true);
|
||||
}
|
||||
}
|
||||
|
||||
void JustReachedHome()
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_HELLMAW, FAIL);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_HELLMAW, FAIL);
|
||||
}
|
||||
|
||||
void MoveInLineOfSight(Unit* who)
|
||||
@@ -114,15 +114,15 @@ public:
|
||||
IsBanished = false;
|
||||
Intro = true;
|
||||
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(TYPE_HELLMAW) != FAIL)
|
||||
if (instance->GetData(TYPE_HELLMAW) != FAIL)
|
||||
{
|
||||
DoScriptText(SAY_INTRO, me);
|
||||
Start(true, false, 0, NULL, false, true);
|
||||
}
|
||||
|
||||
m_instance->SetData(TYPE_HELLMAW, IN_PROGRESS);
|
||||
instance->SetData(TYPE_HELLMAW, IN_PROGRESS);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -140,8 +140,8 @@ public:
|
||||
{
|
||||
DoScriptText(SAY_DEATH, me);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(TYPE_HELLMAW, DONE);
|
||||
if (instance)
|
||||
instance->SetData(TYPE_HELLMAW, DONE);
|
||||
}
|
||||
|
||||
void UpdateAI(const uint32 diff)
|
||||
@@ -150,9 +150,9 @@ public:
|
||||
{
|
||||
if (EventCheck_Timer <= diff)
|
||||
{
|
||||
if (m_instance)
|
||||
if (instance)
|
||||
{
|
||||
if (m_instance->GetData(TYPE_OVERSEER) == DONE)
|
||||
if (instance->GetData(TYPE_OVERSEER) == DONE)
|
||||
{
|
||||
DoIntro();
|
||||
return;
|
||||
|
||||
@@ -147,11 +147,11 @@ struct advisorbase_ai : public ScriptedAI
|
||||
{
|
||||
advisorbase_ai(Creature* creature) : ScriptedAI(creature)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
m_bDoubled_Health = false;
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
bool FakeDeath;
|
||||
bool m_bDoubled_Health;
|
||||
uint32 DelayRes_Timer;
|
||||
@@ -174,8 +174,8 @@ struct advisorbase_ai : public ScriptedAI
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
|
||||
//reset encounter
|
||||
if (m_instance && (m_instance->GetData(DATA_KAELTHASEVENT) == 1 || m_instance->GetData(DATA_KAELTHASEVENT) == 3))
|
||||
if (Creature* Kaelthas = Unit::GetCreature((*me), m_instance->GetData64(DATA_KAELTHAS)))
|
||||
if (instance && (instance->GetData(DATA_KAELTHASEVENT) == 1 || instance->GetData(DATA_KAELTHASEVENT) == 3))
|
||||
if (Creature* Kaelthas = Unit::GetCreature((*me), instance->GetData64(DATA_KAELTHAS)))
|
||||
Kaelthas->AI()->EnterEvadeMode();
|
||||
}
|
||||
|
||||
@@ -214,14 +214,14 @@ struct advisorbase_ai : public ScriptedAI
|
||||
return;
|
||||
|
||||
//Prevent glitch if in fake death
|
||||
if (FakeDeath && m_instance && m_instance->GetData(DATA_KAELTHASEVENT) != 0)
|
||||
if (FakeDeath && instance && instance->GetData(DATA_KAELTHASEVENT) != 0)
|
||||
{
|
||||
damage = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
//Don't really die in phase 1 & 3, only die after that
|
||||
if (m_instance && m_instance->GetData(DATA_KAELTHASEVENT) != 0)
|
||||
if (instance && instance->GetData(DATA_KAELTHASEVENT) != 0)
|
||||
{
|
||||
//prevent death
|
||||
damage = 0;
|
||||
@@ -280,11 +280,11 @@ class boss_kaelthas : public CreatureScript
|
||||
{
|
||||
boss_kaelthasAI(Creature* creature) : ScriptedAI(creature), summons(me)
|
||||
{
|
||||
m_instance = creature->GetInstanceScript();
|
||||
instance = creature->GetInstanceScript();
|
||||
memset(&m_auiAdvisorGuid, 0, sizeof(m_auiAdvisorGuid));
|
||||
}
|
||||
|
||||
InstanceScript* m_instance;
|
||||
InstanceScript* instance;
|
||||
|
||||
uint32 Fireball_Timer;
|
||||
uint32 ArcaneDisruption_Timer;
|
||||
@@ -335,8 +335,8 @@ class boss_kaelthas : public CreatureScript
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 0);
|
||||
}
|
||||
|
||||
void PrepareAdvisors()
|
||||
@@ -355,13 +355,13 @@ class boss_kaelthas : public CreatureScript
|
||||
|
||||
void StartEvent()
|
||||
{
|
||||
if (!m_instance)
|
||||
if (!instance)
|
||||
return;
|
||||
|
||||
m_auiAdvisorGuid[0] = m_instance->GetData64(DATA_THALADREDTHEDARKENER);
|
||||
m_auiAdvisorGuid[1] = m_instance->GetData64(DATA_LORDSANGUINAR);
|
||||
m_auiAdvisorGuid[2] = m_instance->GetData64(DATA_GRANDASTROMANCERCAPERNIAN);
|
||||
m_auiAdvisorGuid[3] = m_instance->GetData64(DATA_MASTERENGINEERTELONICUS);
|
||||
m_auiAdvisorGuid[0] = instance->GetData64(DATA_THALADREDTHEDARKENER);
|
||||
m_auiAdvisorGuid[1] = instance->GetData64(DATA_LORDSANGUINAR);
|
||||
m_auiAdvisorGuid[2] = instance->GetData64(DATA_GRANDASTROMANCERCAPERNIAN);
|
||||
m_auiAdvisorGuid[3] = instance->GetData64(DATA_MASTERENGINEERTELONICUS);
|
||||
|
||||
if (!m_auiAdvisorGuid[0] || !m_auiAdvisorGuid[1] || !m_auiAdvisorGuid[2] || !m_auiAdvisorGuid[3])
|
||||
{
|
||||
@@ -371,7 +371,7 @@ class boss_kaelthas : public CreatureScript
|
||||
|
||||
Phase = 4;
|
||||
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
@@ -386,7 +386,7 @@ class boss_kaelthas : public CreatureScript
|
||||
|
||||
DoScriptText(SAY_INTRO, me);
|
||||
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 1);
|
||||
instance->SetData(DATA_KAELTHASEVENT, 1);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
|
||||
PhaseSubphase = 0;
|
||||
@@ -412,7 +412,7 @@ class boss_kaelthas : public CreatureScript
|
||||
}
|
||||
else if (me->GetMap()->IsDungeon())
|
||||
{
|
||||
if (m_instance && !m_instance->GetData(DATA_KAELTHASEVENT) && !Phase)
|
||||
if (instance && !instance->GetData(DATA_KAELTHASEVENT) && !Phase)
|
||||
StartEvent();
|
||||
|
||||
who->SetInCombatWith(me);
|
||||
@@ -424,7 +424,7 @@ class boss_kaelthas : public CreatureScript
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
if (m_instance && !m_instance->GetData(DATA_KAELTHASEVENT) && !Phase)
|
||||
if (instance && !instance->GetData(DATA_KAELTHASEVENT) && !Phase)
|
||||
StartEvent();
|
||||
}
|
||||
|
||||
@@ -456,8 +456,8 @@ class boss_kaelthas : public CreatureScript
|
||||
|
||||
summons.DespawnAll();
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 0);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 0);
|
||||
|
||||
for (uint8 i = 0; i < MAX_ADVISORS; ++i)
|
||||
{
|
||||
@@ -621,8 +621,8 @@ class boss_kaelthas : public CreatureScript
|
||||
if (Advisor && (Advisor->getStandState() == UNIT_STAND_STATE_DEAD))
|
||||
{
|
||||
Phase = 2;
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 2);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 2);
|
||||
|
||||
DoScriptText(SAY_PHASE2_WEAPON, me);
|
||||
|
||||
@@ -666,8 +666,8 @@ class boss_kaelthas : public CreatureScript
|
||||
if (Phase_Timer <= diff)
|
||||
{
|
||||
DoScriptText(SAY_PHASE3_ADVANCE, me);
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 3);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 3);
|
||||
Phase = 3;
|
||||
PhaseSubphase = 0;
|
||||
}
|
||||
@@ -704,8 +704,8 @@ class boss_kaelthas : public CreatureScript
|
||||
DoScriptText(SAY_PHASE4_INTRO2, me);
|
||||
Phase = 4;
|
||||
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
|
||||
// Sometimes people can collect Aggro in Phase 1-3. Reset threat before releasing Kael.
|
||||
DoResetThreat();
|
||||
@@ -809,8 +809,8 @@ class boss_kaelthas : public CreatureScript
|
||||
{
|
||||
if (HealthBelowPct(50))
|
||||
{
|
||||
if (m_instance)
|
||||
m_instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
if (instance)
|
||||
instance->SetData(DATA_KAELTHASEVENT, 4);
|
||||
Phase = 5;
|
||||
Phase_Timer = 10000;
|
||||
|
||||
@@ -1044,7 +1044,7 @@ class boss_thaladred_the_darkener : public CreatureScript
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance && m_instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
DoScriptText(SAY_THALADRED_DEATH, me);
|
||||
}
|
||||
|
||||
@@ -1136,7 +1136,7 @@ class boss_lord_sanguinar : public CreatureScript
|
||||
|
||||
void JustDied(Unit* /*Killer*/)
|
||||
{
|
||||
if (m_instance && m_instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
DoScriptText(SAY_SANGUINAR_DEATH, me);
|
||||
}
|
||||
|
||||
@@ -1201,7 +1201,7 @@ class boss_grand_astromancer_capernian : public CreatureScript
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance && m_instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
DoScriptText(SAY_CAPERNIAN_DEATH, me);
|
||||
}
|
||||
|
||||
@@ -1340,7 +1340,7 @@ class boss_master_engineer_telonicus : public CreatureScript
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
{
|
||||
if (m_instance && m_instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3)
|
||||
DoScriptText(SAY_TELONICUS_DEATH, me);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user