Core/Spells: Fixed Evasive Maneuvers and Stop Time, spells from the Oculus drakes.
Closes #6670 Closes #6675
This commit is contained in:
@@ -8205,6 +8205,14 @@ bool Unit::HandleProcTriggerSpell(Unit* victim, uint32 damage, AuraEffect* trigg
|
||||
CastSpell(victim, 27526, true, castItem, triggeredByAura);
|
||||
return true;
|
||||
}
|
||||
// Evasive Maneuvers
|
||||
case 50240:
|
||||
{
|
||||
// Remove a Evasive Charge
|
||||
Aura* charge = GetAura(50241);
|
||||
if (charge->ModStackAmount(-1, AURA_REMOVE_BY_ENEMY_SPELL))
|
||||
RemoveAurasDueToSpell(50240);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SPELLFAMILY_MAGE:
|
||||
|
||||
@@ -1736,6 +1736,7 @@ AuraStateType SpellInfo::GetAuraState() const
|
||||
switch (Id)
|
||||
{
|
||||
case 71465: // Divine Surge
|
||||
case 50241: // Evasive Charges
|
||||
return AURA_STATE_UNKNOWN22;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -47,7 +47,9 @@ enum Drakes
|
||||
|
||||
NPC_VERDISA = 27657,
|
||||
NPC_BELGARISTRASZ = 27658,
|
||||
NPC_ETERNOS = 27659
|
||||
NPC_ETERNOS = 27659,
|
||||
|
||||
SPELL_SHOCK_CHARGE = 49836,
|
||||
};
|
||||
|
||||
enum Says
|
||||
@@ -210,8 +212,40 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class spell_gen_stop_time : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_gen_stop_time() : SpellScriptLoader("spell_gen_stop_time") { }
|
||||
|
||||
class spell_gen_stop_time_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_gen_stop_time_AuraScript);
|
||||
|
||||
void Apply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
Unit* caster = GetCaster();
|
||||
if (!caster)
|
||||
return;
|
||||
Unit* target = GetTarget();
|
||||
for (uint32 i = 0; i < 5; ++i)
|
||||
caster->CastSpell(target, SPELL_SHOCK_CHARGE, false);
|
||||
}
|
||||
|
||||
void Register()
|
||||
{
|
||||
AfterEffectApply += AuraEffectApplyFn(spell_gen_stop_time_AuraScript::Apply, EFFECT_0);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const
|
||||
{
|
||||
return new spell_gen_stop_time_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_oculus()
|
||||
{
|
||||
new npc_oculus_drake();
|
||||
new npc_image_belgaristrasz();
|
||||
new spell_gen_stop_time();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user