*Replace taunt immunities with extra flags
--HG-- branch : trunk
This commit is contained in:
-2
@@ -195,8 +195,6 @@ struct TRINITY_DLL_DECL boss_leotheras_the_blindAI : public ScriptedAI
|
|||||||
EnrageUsed = false;
|
EnrageUsed = false;
|
||||||
InnderDemon_Count = 0;
|
InnderDemon_Count = 0;
|
||||||
m_creature->SetSpeed( MOVE_RUN, 2.0f, true);
|
m_creature->SetSpeed( MOVE_RUN, 2.0f, true);
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
|
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
|
|
||||||
m_creature->SetUInt32Value(UNIT_FIELD_DISPLAYID, MODEL_NIGHTELF);
|
m_creature->SetUInt32Value(UNIT_FIELD_DISPLAYID, MODEL_NIGHTELF);
|
||||||
m_creature->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_DISPLAY , 0);
|
m_creature->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_DISPLAY , 0);
|
||||||
m_creature->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_DISPLAY+1, 0);
|
m_creature->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_DISPLAY+1, 0);
|
||||||
|
|||||||
@@ -58,9 +58,6 @@ struct TRINITY_DLL_DECL boss_maiden_of_virtueAI : public ScriptedAI
|
|||||||
Enrage_Timer = 600000;
|
Enrage_Timer = 600000;
|
||||||
|
|
||||||
Enraged = false;
|
Enraged = false;
|
||||||
|
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
|
|
||||||
m_creature->ApplySpellImmune(1, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void KilledUnit(Unit* Victim)
|
void KilledUnit(Unit* Victim)
|
||||||
|
|||||||
@@ -386,9 +386,6 @@ struct TRINITY_DLL_DECL boss_kaelthasAI : public ScriptedAI
|
|||||||
|
|
||||||
m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||||
m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
|
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
|
|
||||||
|
|
||||||
|
|
||||||
if(pInstance)
|
if(pInstance)
|
||||||
pInstance->SetData(DATA_KAELTHASEVENT, NOT_STARTED);
|
pInstance->SetData(DATA_KAELTHASEVENT, NOT_STARTED);
|
||||||
|
|||||||
@@ -52,16 +52,17 @@ struct TRINITY_DLL_DECL boss_void_reaverAI : public ScriptedAI
|
|||||||
uint32 KnockAway_Timer;
|
uint32 KnockAway_Timer;
|
||||||
uint32 Berserk_Timer;
|
uint32 Berserk_Timer;
|
||||||
|
|
||||||
|
bool Enraged;
|
||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
|
|
||||||
m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_ATTACK_ME, true);
|
|
||||||
|
|
||||||
Pounding_Timer = 15000;
|
Pounding_Timer = 15000;
|
||||||
ArcaneOrb_Timer = 3000;
|
ArcaneOrb_Timer = 3000;
|
||||||
KnockAway_Timer = 30000;
|
KnockAway_Timer = 30000;
|
||||||
Berserk_Timer = 600000;
|
Berserk_Timer = 600000;
|
||||||
|
|
||||||
|
Enraged = false;
|
||||||
|
|
||||||
if (pInstance && m_creature->isAlive())
|
if (pInstance && m_creature->isAlive())
|
||||||
pInstance->SetData(DATA_VOIDREAVEREVENT, NOT_STARTED);
|
pInstance->SetData(DATA_VOIDREAVEREVENT, NOT_STARTED);
|
||||||
}
|
}
|
||||||
@@ -120,7 +121,7 @@ struct TRINITY_DLL_DECL boss_void_reaverAI : public ScriptedAI
|
|||||||
{
|
{
|
||||||
target = Unit::GetUnit(*m_creature, (*itr)->getUnitGuid());
|
target = Unit::GetUnit(*m_creature, (*itr)->getUnitGuid());
|
||||||
//18 yard radius minimum
|
//18 yard radius minimum
|
||||||
if(target && target->GetTypeId() == TYPEID_PLAYER && target->isAlive() && target->GetDistance2d(m_creature) > 18)
|
if(target && target->GetTypeId() == TYPEID_PLAYER && target->isAlive() && target->GetDistance2d(m_creature) >= 18)
|
||||||
target_list.push_back(target);
|
target_list.push_back(target);
|
||||||
target = NULL;
|
target = NULL;
|
||||||
}
|
}
|
||||||
@@ -146,13 +147,10 @@ struct TRINITY_DLL_DECL boss_void_reaverAI : public ScriptedAI
|
|||||||
}else KnockAway_Timer -= diff;
|
}else KnockAway_Timer -= diff;
|
||||||
|
|
||||||
//Berserk
|
//Berserk
|
||||||
if(Berserk_Timer < diff)
|
if(Berserk_Timer < diff && !Enraged)
|
||||||
{
|
{
|
||||||
if (m_creature->IsNonMeleeSpellCasted(false))
|
|
||||||
m_creature->InterruptNonMeleeSpells(false);
|
|
||||||
|
|
||||||
DoCast(m_creature,SPELL_BERSERK);
|
DoCast(m_creature,SPELL_BERSERK);
|
||||||
Berserk_Timer = 600000;
|
Enraged = true;
|
||||||
}else Berserk_Timer -= diff;
|
}else Berserk_Timer -= diff;
|
||||||
|
|
||||||
DoMeleeAttackIfReady();
|
DoMeleeAttackIfReady();
|
||||||
|
|||||||
Reference in New Issue
Block a user