*Some update on Skyriss event - by Anubisss
--HG-- branch : trunk
This commit is contained in:
@@ -258,8 +258,6 @@ CreatureAI* GetAI_npc_millhouse_manastorm(Creature *_Creature)
|
|||||||
#define SPELL_TARGET_OMEGA 36852
|
#define SPELL_TARGET_OMEGA 36852
|
||||||
#define SPELL_BUBBLE_VISUAL 36849
|
#define SPELL_BUBBLE_VISUAL 36849
|
||||||
|
|
||||||
#define GOBJECT_SHIELD 184802
|
|
||||||
|
|
||||||
struct TRINITY_DLL_DECL npc_warden_mellicharAI : public ScriptedAI
|
struct TRINITY_DLL_DECL npc_warden_mellicharAI : public ScriptedAI
|
||||||
{
|
{
|
||||||
npc_warden_mellicharAI(Creature *c) : ScriptedAI(c)
|
npc_warden_mellicharAI(Creature *c) : ScriptedAI(c)
|
||||||
@@ -360,7 +358,8 @@ struct TRINITY_DLL_DECL npc_warden_mellicharAI : public ScriptedAI
|
|||||||
case 2:
|
case 2:
|
||||||
DoCast(m_creature,SPELL_TARGET_ALPHA);
|
DoCast(m_creature,SPELL_TARGET_ALPHA);
|
||||||
pInstance->SetData(TYPE_WARDEN_1,IN_PROGRESS);
|
pInstance->SetData(TYPE_WARDEN_1,IN_PROGRESS);
|
||||||
m_creature->SummonGameObject(GOBJECT_SHIELD, m_creature->GetPositionX(), m_creature->GetPositionY(), m_creature->GetPositionZ()-0.5, m_creature->GetOrientation(), 0, 0, 0, 0, 0);
|
if (GameObject *Sphere = GameObject::GetGameObject(*m_creature,pInstance->GetData64(DATA_SPHERE_SHIELD)))
|
||||||
|
Sphere->SetGoState(1);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
DoCast(m_creature,SPELL_TARGET_BETA);
|
DoCast(m_creature,SPELL_TARGET_BETA);
|
||||||
|
|||||||
@@ -79,7 +79,8 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
|||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
m_creature->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NOT_ATTACKABLE_2);
|
if(!Intro)
|
||||||
|
m_creature->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NOT_ATTACKABLE_2);
|
||||||
|
|
||||||
IsImage33 = false;
|
IsImage33 = false;
|
||||||
IsImage66 = false;
|
IsImage66 = false;
|
||||||
@@ -95,19 +96,13 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
|||||||
void MoveInLineOfSight(Unit *who)
|
void MoveInLineOfSight(Unit *who)
|
||||||
{
|
{
|
||||||
if(!Intro)
|
if(!Intro)
|
||||||
ScriptedAI::MoveInLineOfSight(who);
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ScriptedAI::MoveInLineOfSight(who);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AttackStart(Unit* who)
|
void Aggro(Unit *who) {}
|
||||||
{
|
|
||||||
if(!Intro)
|
|
||||||
ScriptedAI::AttackStart(who);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Aggro(Unit *who)
|
|
||||||
{
|
|
||||||
m_creature->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NOT_ATTACKABLE_2);
|
|
||||||
}
|
|
||||||
|
|
||||||
void JustDied(Unit* Killer)
|
void JustDied(Unit* Killer)
|
||||||
{
|
{
|
||||||
@@ -129,11 +124,6 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void JustSummoned(Creature *summoned)
|
|
||||||
{
|
|
||||||
summoned->AI()->AttackStart(m_creature->getVictim());
|
|
||||||
}
|
|
||||||
|
|
||||||
void DoSplit(uint32 val)
|
void DoSplit(uint32 val)
|
||||||
{
|
{
|
||||||
if( m_creature->IsNonMeleeSpellCasted(false) )
|
if( m_creature->IsNonMeleeSpellCasted(false) )
|
||||||
@@ -149,7 +139,7 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
|||||||
|
|
||||||
void UpdateAI(const uint32 diff)
|
void UpdateAI(const uint32 diff)
|
||||||
{
|
{
|
||||||
if( !Intro && !InCombat )
|
if(!Intro)
|
||||||
{
|
{
|
||||||
if( !pInstance )
|
if( !pInstance )
|
||||||
return;
|
return;
|
||||||
@@ -178,6 +168,7 @@ struct TRINITY_DLL_DECL boss_harbinger_skyrissAI : public ScriptedAI
|
|||||||
Intro_Timer = 3000;
|
Intro_Timer = 3000;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
|
m_creature->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NOT_ATTACKABLE_2);
|
||||||
Intro = true;
|
Intro = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user