refactor(Scripts/Spells): convert spell_warlock into new system (#9066)
This commit is contained in:
@@ -69,15 +69,9 @@ enum WarlockSpellIcons
|
||||
WARLOCK_ICON_ID_MANA_FEED = 1982
|
||||
};
|
||||
|
||||
// Ours
|
||||
class spell_warl_eye_of_kilrogg : public SpellScriptLoader
|
||||
class spell_warl_eye_of_kilrogg : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_eye_of_kilrogg() : SpellScriptLoader("spell_warl_eye_of_kilrogg") { }
|
||||
|
||||
class spell_warl_eye_of_kilrogg_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_eye_of_kilrogg_AuraScript);
|
||||
PrepareAuraScript(spell_warl_eye_of_kilrogg);
|
||||
|
||||
void HandleAuraApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -114,25 +108,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_eye_of_kilrogg_AuraScript::HandleAuraApply, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
AfterEffectRemove += AuraEffectRemoveFn(spell_warl_eye_of_kilrogg_AuraScript::HandleAuraRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_eye_of_kilrogg::HandleAuraApply, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
AfterEffectRemove += AuraEffectRemoveFn(spell_warl_eye_of_kilrogg::HandleAuraRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_shadowflame : public SpellScript
|
||||
{
|
||||
return new spell_warl_eye_of_kilrogg_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_shadowflame : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_shadowflame() : SpellScriptLoader("spell_warl_shadowflame") { }
|
||||
|
||||
class spell_warl_shadowflame_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_shadowflame_SpellScript);
|
||||
PrepareSpellScript(spell_warl_shadowflame);
|
||||
|
||||
void HandleSchoolDMG(SpellEffIndex /*effIndex*/)
|
||||
{
|
||||
@@ -142,24 +125,13 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_shadowflame_SpellScript::HandleSchoolDMG, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE);
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_shadowflame::HandleSchoolDMG, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
class spell_warl_seduction : public AuraScript
|
||||
{
|
||||
return new spell_warl_shadowflame_SpellScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_seduction : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_seduction() : SpellScriptLoader("spell_warl_seduction") { }
|
||||
|
||||
class spell_warl_seduction_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_seduction_AuraScript);
|
||||
PrepareAuraScript(spell_warl_seduction);
|
||||
|
||||
void HandleAuraApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -178,24 +150,13 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_seduction_AuraScript::HandleAuraApply, EFFECT_0, SPELL_AURA_MOD_STUN, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_seduction::HandleAuraApply, EFFECT_0, SPELL_AURA_MOD_STUN, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_improved_demonic_tactics : public AuraScript
|
||||
{
|
||||
return new spell_warl_seduction_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_improved_demonic_tactics : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_improved_demonic_tactics() : SpellScriptLoader("spell_warl_improved_demonic_tactics") { }
|
||||
|
||||
class spell_warl_improved_demonic_tactics_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_improved_demonic_tactics_AuraScript);
|
||||
PrepareAuraScript(spell_warl_improved_demonic_tactics);
|
||||
|
||||
bool Load() override
|
||||
{
|
||||
@@ -238,27 +199,16 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_improved_demonic_tactics_AuraScript::CalcPeriodic, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_improved_demonic_tactics_AuraScript::CalculateAmount, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
DoEffectCalcSpellMod += AuraEffectCalcSpellModFn(spell_warl_improved_demonic_tactics_AuraScript::HandleEffectCalcSpellMod, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_improved_demonic_tactics_AuraScript::HandlePeriodic, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_improved_demonic_tactics::CalcPeriodic, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_improved_demonic_tactics::CalculateAmount, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
DoEffectCalcSpellMod += AuraEffectCalcSpellModFn(spell_warl_improved_demonic_tactics::HandleEffectCalcSpellMod, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_improved_demonic_tactics::HandlePeriodic, EFFECT_ALL, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_ritual_of_summoning : public SpellScript
|
||||
{
|
||||
return new spell_warl_improved_demonic_tactics_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_ritual_of_summoning : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_ritual_of_summoning() : SpellScriptLoader("spell_warl_ritual_of_summoning") { }
|
||||
|
||||
class spell_warl_ritual_of_summoning_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_ritual_of_summoning_SpellScript);
|
||||
PrepareSpellScript(spell_warl_ritual_of_summoning);
|
||||
|
||||
SpellCastResult CheckCast()
|
||||
{
|
||||
@@ -270,24 +220,13 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_ritual_of_summoning_SpellScript::CheckCast);
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_ritual_of_summoning::CheckCast);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
class spell_warl_demonic_aegis : public AuraScript
|
||||
{
|
||||
return new spell_warl_ritual_of_summoning_SpellScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_demonic_aegis : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_demonic_aegis() : SpellScriptLoader("spell_warl_demonic_aegis") { }
|
||||
|
||||
class spell_warl_demonic_aegis_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_demonic_aegis_AuraScript);
|
||||
PrepareAuraScript(spell_warl_demonic_aegis);
|
||||
|
||||
void HandleAuraApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -297,24 +236,13 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_demonic_aegis_AuraScript::HandleAuraApply, EFFECT_0, SPELL_AURA_ADD_PCT_MODIFIER, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_demonic_aegis::HandleAuraApply, EFFECT_0, SPELL_AURA_ADD_PCT_MODIFIER, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_demonic_knowledge : public AuraScript
|
||||
{
|
||||
return new spell_warl_demonic_aegis_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_demonic_knowledge : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_demonic_knowledge() : SpellScriptLoader("spell_warl_demonic_knowledge") { }
|
||||
|
||||
class spell_warl_demonic_knowledge_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_demonic_knowledge_AuraScript);
|
||||
PrepareAuraScript(spell_warl_demonic_knowledge);
|
||||
|
||||
void CalculateAmount(AuraEffect const* aurEff, int32& amount, bool& /*canBeRecalculated*/)
|
||||
{
|
||||
@@ -336,26 +264,15 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_demonic_knowledge_AuraScript::CalculateAmount, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_demonic_knowledge_AuraScript::CalcPeriodic, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_knowledge_AuraScript::HandlePeriodic, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_demonic_knowledge::CalculateAmount, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_demonic_knowledge::CalcPeriodic, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_knowledge::HandlePeriodic, EFFECT_0, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_generic_scaling : public AuraScript
|
||||
{
|
||||
return new spell_warl_demonic_knowledge_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_generic_scaling : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_generic_scaling() : SpellScriptLoader("spell_warl_generic_scaling") { }
|
||||
|
||||
class spell_warl_generic_scaling_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_generic_scaling_AuraScript);
|
||||
PrepareAuraScript(spell_warl_generic_scaling);
|
||||
|
||||
void CalculateResistanceAmount(AuraEffect const* aurEff, int32& amount, bool& /*canBeRecalculated*/)
|
||||
{
|
||||
@@ -443,36 +360,25 @@ public:
|
||||
void Register() override
|
||||
{
|
||||
if (m_scriptSpellId != 34947)
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling_AuraScript::CalculateResistanceAmount, EFFECT_ALL, SPELL_AURA_MOD_RESISTANCE);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling::CalculateResistanceAmount, EFFECT_ALL, SPELL_AURA_MOD_RESISTANCE);
|
||||
|
||||
if (m_scriptSpellId == 34947 || m_scriptSpellId == 34956)
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling_AuraScript::CalculateStatAmount, EFFECT_ALL, SPELL_AURA_MOD_STAT);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling::CalculateStatAmount, EFFECT_ALL, SPELL_AURA_MOD_STAT);
|
||||
|
||||
if (m_scriptSpellId == 34947)
|
||||
{
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling_AuraScript::CalculateAPAmount, EFFECT_ALL, SPELL_AURA_MOD_ATTACK_POWER);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling_AuraScript::CalculateSPAmount, EFFECT_ALL, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling::CalculateAPAmount, EFFECT_ALL, SPELL_AURA_MOD_ATTACK_POWER);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_generic_scaling::CalculateSPAmount, EFFECT_ALL, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
}
|
||||
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_generic_scaling_AuraScript::CalcPeriodic, EFFECT_ALL, SPELL_AURA_ANY);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_generic_scaling_AuraScript::HandlePeriodic, EFFECT_ALL, SPELL_AURA_ANY);
|
||||
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_warl_generic_scaling::CalcPeriodic, EFFECT_ALL, SPELL_AURA_ANY);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_generic_scaling::HandlePeriodic, EFFECT_ALL, SPELL_AURA_ANY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
class spell_warl_infernal_scaling : public AuraScript
|
||||
{
|
||||
return new spell_warl_generic_scaling_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_infernal_scaling : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_warl_infernal_scaling() : SpellScriptLoader("spell_warl_infernal_scaling") { }
|
||||
|
||||
class spell_warl_infernal_scaling_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_infernal_scaling_AuraScript);
|
||||
PrepareAuraScript(spell_warl_infernal_scaling);
|
||||
|
||||
void CalculateResistanceAmount(AuraEffect const* aurEff, int32& amount, bool& /*canBeRecalculated*/)
|
||||
{
|
||||
@@ -536,37 +442,25 @@ public:
|
||||
void Register() override
|
||||
{
|
||||
if (m_scriptSpellId != 36186)
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling_AuraScript::CalculateResistanceAmount, EFFECT_ALL, SPELL_AURA_MOD_RESISTANCE);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling::CalculateResistanceAmount, EFFECT_ALL, SPELL_AURA_MOD_RESISTANCE);
|
||||
|
||||
if (m_scriptSpellId == 36186 || m_scriptSpellId == 36188)
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling_AuraScript::CalculateStatAmount, EFFECT_ALL, SPELL_AURA_MOD_STAT);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling::CalculateStatAmount, EFFECT_ALL, SPELL_AURA_MOD_STAT);
|
||||
|
||||
if (m_scriptSpellId == 36186)
|
||||
{
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling_AuraScript::CalculateAPAmount, EFFECT_ALL, SPELL_AURA_MOD_ATTACK_POWER);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling_AuraScript::CalculateSPAmount, EFFECT_ALL, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling::CalculateAPAmount, EFFECT_ALL, SPELL_AURA_MOD_ATTACK_POWER);
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_infernal_scaling::CalculateSPAmount, EFFECT_ALL, SPELL_AURA_MOD_DAMAGE_DONE);
|
||||
}
|
||||
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_infernal_scaling_AuraScript::HandleEffectApply, EFFECT_ALL, SPELL_AURA_ANY, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_infernal_scaling::HandleEffectApply, EFFECT_ALL, SPELL_AURA_ANY, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_infernal_scaling_AuraScript();
|
||||
}
|
||||
};
|
||||
|
||||
//Theirs
|
||||
// -710 - Banish
|
||||
class spell_warl_banish : public SpellScriptLoader
|
||||
class spell_warl_banish : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_banish() : SpellScriptLoader("spell_warl_banish") { }
|
||||
|
||||
class spell_warl_banish_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_banish_SpellScript);
|
||||
PrepareSpellScript(spell_warl_banish);
|
||||
|
||||
void HandleBanish(SpellMissInfo missInfo)
|
||||
{
|
||||
@@ -587,25 +481,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
BeforeHit += BeforeSpellHitFn(spell_warl_banish_SpellScript::HandleBanish);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_banish_SpellScript();
|
||||
BeforeHit += BeforeSpellHitFn(spell_warl_banish::HandleBanish);
|
||||
}
|
||||
};
|
||||
|
||||
// 47193 - Demonic Empowerment
|
||||
class spell_warl_demonic_empowerment : public SpellScriptLoader
|
||||
class spell_warl_demonic_empowerment : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_demonic_empowerment() : SpellScriptLoader("spell_warl_demonic_empowerment") { }
|
||||
|
||||
class spell_warl_demonic_empowerment_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_demonic_empowerment_SpellScript);
|
||||
PrepareSpellScript(spell_warl_demonic_empowerment);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -655,25 +538,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_demonic_empowerment_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_demonic_empowerment_SpellScript();
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_demonic_empowerment::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
}
|
||||
};
|
||||
|
||||
// 6201 - Create Healthstone (and ranks)
|
||||
class spell_warl_create_healthstone : public SpellScriptLoader
|
||||
class spell_warl_create_healthstone : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_create_healthstone() : SpellScriptLoader("spell_warl_create_healthstone") { }
|
||||
|
||||
class spell_warl_create_healthstone_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_create_healthstone_SpellScript);
|
||||
PrepareSpellScript(spell_warl_create_healthstone);
|
||||
|
||||
static uint32 const iTypes[8][3];
|
||||
|
||||
@@ -724,18 +596,12 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_create_healthstone_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_create_healthstone_SpellScript::CheckCast);
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_create_healthstone::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_create_healthstone::CheckCast);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_create_healthstone_SpellScript();
|
||||
}
|
||||
};
|
||||
|
||||
uint32 const spell_warl_create_healthstone::spell_warl_create_healthstone_SpellScript::iTypes[8][3] =
|
||||
uint32 const spell_warl_create_healthstone::spell_warl_create_healthstone::iTypes[8][3] =
|
||||
{
|
||||
{ 5512, 19004, 19005}, // Minor Healthstone
|
||||
{ 5511, 19006, 19007}, // Lesser Healthstone
|
||||
@@ -748,14 +614,9 @@ uint32 const spell_warl_create_healthstone::spell_warl_create_healthstone_SpellS
|
||||
};
|
||||
|
||||
// 47422 - Everlasting Affliction
|
||||
class spell_warl_everlasting_affliction : public SpellScriptLoader
|
||||
class spell_warl_everlasting_affliction : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_everlasting_affliction() : SpellScriptLoader("spell_warl_everlasting_affliction") { }
|
||||
|
||||
class spell_warl_everlasting_affliction_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_everlasting_affliction_SpellScript);
|
||||
PrepareSpellScript(spell_warl_everlasting_affliction);
|
||||
|
||||
void HandleScriptEffect(SpellEffIndex /*effIndex*/)
|
||||
{
|
||||
@@ -770,25 +631,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_everlasting_affliction_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_everlasting_affliction_SpellScript();
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_everlasting_affliction::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
}
|
||||
};
|
||||
|
||||
// 18541 - Ritual of Doom Effect
|
||||
class spell_warl_ritual_of_doom_effect : public SpellScriptLoader
|
||||
class spell_warl_ritual_of_doom_effect : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_ritual_of_doom_effect() : SpellScriptLoader("spell_warl_ritual_of_doom_effect") { }
|
||||
|
||||
class spell_warl_ritual_of_doom_effect_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_ritual_of_doom_effect_SpellScript);
|
||||
PrepareSpellScript(spell_warl_ritual_of_doom_effect);
|
||||
|
||||
void HandleDummy(SpellEffIndex /*effIndex*/)
|
||||
{
|
||||
@@ -798,25 +648,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHit += SpellEffectFn(spell_warl_ritual_of_doom_effect_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_ritual_of_doom_effect_SpellScript();
|
||||
OnEffectHit += SpellEffectFn(spell_warl_ritual_of_doom_effect::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// -27285 - Seed of Corruption
|
||||
class spell_warl_seed_of_corruption : public SpellScriptLoader
|
||||
class spell_warl_seed_of_corruption : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_seed_of_corruption() : SpellScriptLoader("spell_warl_seed_of_corruption") { }
|
||||
|
||||
class spell_warl_seed_of_corruption_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_seed_of_corruption_SpellScript);
|
||||
PrepareSpellScript(spell_warl_seed_of_corruption);
|
||||
|
||||
void FilterTargets(std::list<WorldObject*>& targets)
|
||||
{
|
||||
@@ -826,25 +665,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_warl_seed_of_corruption_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_DEST_AREA_ENEMY);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_seed_of_corruption_SpellScript();
|
||||
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_warl_seed_of_corruption::FilterTargets, EFFECT_0, TARGET_UNIT_DEST_AREA_ENEMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 29858 - Soulshatter
|
||||
class spell_warl_soulshatter : public SpellScriptLoader
|
||||
class spell_warl_soulshatter : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_soulshatter() : SpellScriptLoader("spell_warl_soulshatter") { }
|
||||
|
||||
class spell_warl_soulshatter_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_soulshatter_SpellScript);
|
||||
PrepareSpellScript(spell_warl_soulshatter);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -863,25 +691,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_soulshatter_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_soulshatter_SpellScript();
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_soulshatter::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 63108 - Siphon Life
|
||||
class spell_warl_siphon_life : public SpellScriptLoader
|
||||
class spell_warl_siphon_life : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_siphon_life() : SpellScriptLoader("spell_warl_siphon_life") { }
|
||||
|
||||
class spell_warl_siphon_life_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_siphon_life_AuraScript);
|
||||
PrepareAuraScript(spell_warl_siphon_life);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -915,27 +732,16 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_siphon_life_AuraScript::CheckProc);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_siphon_life_AuraScript::OnProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_siphon_life_AuraScript();
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_siphon_life::CheckProc);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_siphon_life::OnProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// -1454 - Life Tap
|
||||
#define LIFE_TAP_COEFFICIENT 0.9F
|
||||
class spell_warl_life_tap : public SpellScriptLoader
|
||||
class spell_warl_life_tap : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_life_tap() : SpellScriptLoader("spell_warl_life_tap") { }
|
||||
|
||||
class spell_warl_life_tap_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_life_tap_SpellScript);
|
||||
PrepareSpellScript(spell_warl_life_tap);
|
||||
|
||||
bool Load() override
|
||||
{
|
||||
@@ -987,26 +793,15 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_life_tap_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_life_tap_SpellScript::CheckCast);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_life_tap_SpellScript();
|
||||
OnEffectHitTarget += SpellEffectFn(spell_warl_life_tap::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
OnCheckCast += SpellCheckCastFn(spell_warl_life_tap::CheckCast);
|
||||
}
|
||||
};
|
||||
|
||||
// 48018 - Demonic Circle: Summon
|
||||
class spell_warl_demonic_circle_summon : public SpellScriptLoader
|
||||
class spell_warl_demonic_circle_summon : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_demonic_circle_summon() : SpellScriptLoader("spell_warl_demonic_circle_summon") { }
|
||||
|
||||
class spell_warl_demonic_circle_summon_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_demonic_circle_summon_AuraScript);
|
||||
PrepareAuraScript(spell_warl_demonic_circle_summon);
|
||||
|
||||
void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes mode)
|
||||
{
|
||||
@@ -1039,26 +834,15 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_demonic_circle_summon_AuraScript::HandleRemove, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_circle_summon_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_demonic_circle_summon_AuraScript();
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_demonic_circle_summon::HandleRemove, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_circle_summon::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 48020 - Demonic Circle: Teleport
|
||||
class spell_warl_demonic_circle_teleport : public SpellScriptLoader
|
||||
class spell_warl_demonic_circle_teleport : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_demonic_circle_teleport() : SpellScriptLoader("spell_warl_demonic_circle_teleport") { }
|
||||
|
||||
class spell_warl_demonic_circle_teleport_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_demonic_circle_teleport_AuraScript);
|
||||
PrepareAuraScript(spell_warl_demonic_circle_teleport);
|
||||
|
||||
void HandleTeleport(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -1074,25 +858,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_demonic_circle_teleport_AuraScript::HandleTeleport, EFFECT_0, SPELL_AURA_MECHANIC_IMMUNITY, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_demonic_circle_teleport_AuraScript();
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_demonic_circle_teleport::HandleTeleport, EFFECT_0, SPELL_AURA_MECHANIC_IMMUNITY, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
// -47230 - Fel Synergy
|
||||
class spell_warl_fel_synergy : public SpellScriptLoader
|
||||
class spell_warl_fel_synergy : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_fel_synergy() : SpellScriptLoader("spell_warl_fel_synergy") { }
|
||||
|
||||
class spell_warl_fel_synergy_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_fel_synergy_AuraScript);
|
||||
PrepareAuraScript(spell_warl_fel_synergy);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1123,26 +896,15 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_fel_synergy_AuraScript::CheckProc);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_fel_synergy_AuraScript::OnProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_fel_synergy_AuraScript();
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_fel_synergy::CheckProc);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_fel_synergy::OnProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// -48181 - Haunt
|
||||
class spell_warl_haunt : public SpellScriptLoader
|
||||
class spell_warl_haunt : public SpellScript
|
||||
{
|
||||
public:
|
||||
spell_warl_haunt() : SpellScriptLoader("spell_warl_haunt") { }
|
||||
|
||||
class spell_warl_haunt_SpellScript : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_warl_haunt_SpellScript);
|
||||
PrepareSpellScript(spell_warl_haunt);
|
||||
|
||||
void HandleAfterHit()
|
||||
{
|
||||
@@ -1153,13 +915,13 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterHit += SpellHitFn(spell_warl_haunt_SpellScript::HandleAfterHit);
|
||||
AfterHit += SpellHitFn(spell_warl_haunt::HandleAfterHit);
|
||||
}
|
||||
};
|
||||
|
||||
class spell_warl_haunt_AuraScript : public AuraScript
|
||||
class spell_warl_haunt_aura : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_haunt_AuraScript);
|
||||
PrepareAuraScript(spell_warl_haunt_aura);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1177,30 +939,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_haunt_AuraScript::HandleRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK);
|
||||
}
|
||||
};
|
||||
|
||||
SpellScript* GetSpellScript() const override
|
||||
{
|
||||
return new spell_warl_haunt_SpellScript();
|
||||
}
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_haunt_AuraScript();
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_haunt_aura::HandleRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK);
|
||||
}
|
||||
};
|
||||
|
||||
// -30108 - Unstable Affliction
|
||||
class spell_warl_unstable_affliction : public SpellScriptLoader
|
||||
class spell_warl_unstable_affliction : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_unstable_affliction() : SpellScriptLoader("spell_warl_unstable_affliction") { }
|
||||
|
||||
class spell_warl_unstable_affliction_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_unstable_affliction_AuraScript);
|
||||
PrepareAuraScript(spell_warl_unstable_affliction);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1221,25 +967,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterDispel += AuraDispelFn(spell_warl_unstable_affliction_AuraScript::HandleDispel);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_unstable_affliction_AuraScript();
|
||||
AfterDispel += AuraDispelFn(spell_warl_unstable_affliction::HandleDispel);
|
||||
}
|
||||
};
|
||||
|
||||
// -603 - Curse of Doom
|
||||
class spell_warl_curse_of_doom : public SpellScriptLoader
|
||||
class spell_warl_curse_of_doom : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_curse_of_doom() : SpellScriptLoader("spell_warl_curse_of_doom") { }
|
||||
|
||||
class spell_warl_curse_of_doom_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_curse_of_doom_AuraScript);
|
||||
PrepareAuraScript(spell_warl_curse_of_doom);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1266,25 +1001,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterEffectRemove += AuraEffectRemoveFn(spell_warl_curse_of_doom_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_curse_of_doom_AuraScript();
|
||||
AfterEffectRemove += AuraEffectRemoveFn(spell_warl_curse_of_doom::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
// -755 - Health Funnel
|
||||
class spell_warl_health_funnel : public SpellScriptLoader
|
||||
class spell_warl_health_funnel : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_health_funnel() : SpellScriptLoader("spell_warl_health_funnel") { }
|
||||
|
||||
class spell_warl_health_funnel_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_health_funnel_AuraScript);
|
||||
PrepareAuraScript(spell_warl_health_funnel);
|
||||
|
||||
void ApplyEffect(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -1308,26 +1032,15 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_health_funnel_AuraScript::RemoveEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_health_funnel_AuraScript::ApplyEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_health_funnel_AuraScript();
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_warl_health_funnel::RemoveEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectApply += AuraEffectApplyFn(spell_warl_health_funnel::ApplyEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
// -6229 - Shadow Ward
|
||||
class spell_warl_shadow_ward : public SpellScriptLoader
|
||||
class spell_warl_shadow_ward : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_shadow_ward() : SpellScriptLoader("spell_warl_shadow_ward") { }
|
||||
|
||||
class spell_warl_shadow_ward_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_shadow_ward_AuraScript);
|
||||
PrepareAuraScript(spell_warl_shadow_ward);
|
||||
|
||||
void CalculateAmount(AuraEffect const* /*aurEff*/, int32& amount, bool& canBeRecalculated)
|
||||
{
|
||||
@@ -1346,25 +1059,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_shadow_ward_AuraScript::CalculateAmount, EFFECT_0, SPELL_AURA_SCHOOL_ABSORB);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_shadow_ward_AuraScript();
|
||||
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_shadow_ward::CalculateAmount, EFFECT_0, SPELL_AURA_SCHOOL_ABSORB);
|
||||
}
|
||||
};
|
||||
|
||||
// 63310 - Glyph of Shadowflame
|
||||
class spell_warl_glyph_of_shadowflame : public SpellScriptLoader
|
||||
class spell_warl_glyph_of_shadowflame : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_glyph_of_shadowflame() : SpellScriptLoader("spell_warl_glyph_of_shadowflame") { }
|
||||
|
||||
class spell_warl_glyph_of_shadowflame_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_glyph_of_shadowflame_AuraScript);
|
||||
PrepareAuraScript(spell_warl_glyph_of_shadowflame);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1379,25 +1081,14 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_glyph_of_shadowflame_AuraScript::HandleProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_glyph_of_shadowflame_AuraScript();
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_glyph_of_shadowflame::HandleProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// -1120 - Drain Soul
|
||||
class spell_warl_drain_soul : public SpellScriptLoader
|
||||
class spell_warl_drain_soul : public AuraScript
|
||||
{
|
||||
public:
|
||||
spell_warl_drain_soul() : SpellScriptLoader("spell_warl_drain_soul") { }
|
||||
|
||||
class spell_warl_drain_soul_AuraScript : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_warl_drain_soul_AuraScript);
|
||||
PrepareAuraScript(spell_warl_drain_soul);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
@@ -1464,48 +1155,40 @@ public:
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_drain_soul_AuraScript::CheckProc);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_drain_soul_AuraScript::HandleTick, EFFECT_1, SPELL_AURA_PERIODIC_DAMAGE);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_drain_soul_AuraScript::HandleProc, EFFECT_2, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
DoCheckProc += AuraCheckProcFn(spell_warl_drain_soul::CheckProc);
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_drain_soul::HandleTick, EFFECT_1, SPELL_AURA_PERIODIC_DAMAGE);
|
||||
OnEffectProc += AuraEffectProcFn(spell_warl_drain_soul::HandleProc, EFFECT_2, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
AuraScript* GetAuraScript() const override
|
||||
{
|
||||
return new spell_warl_drain_soul_AuraScript();
|
||||
}
|
||||
};
|
||||
void AddSC_warlock_spell_scripts()
|
||||
{
|
||||
// Ours
|
||||
new spell_warl_eye_of_kilrogg();
|
||||
new spell_warl_shadowflame();
|
||||
new spell_warl_seduction();
|
||||
new spell_warl_improved_demonic_tactics();
|
||||
new spell_warl_ritual_of_summoning();
|
||||
new spell_warl_demonic_aegis();
|
||||
new spell_warl_demonic_knowledge();
|
||||
new spell_warl_generic_scaling();
|
||||
new spell_warl_infernal_scaling();
|
||||
|
||||
// Theirs
|
||||
new spell_warl_banish();
|
||||
new spell_warl_create_healthstone();
|
||||
new spell_warl_curse_of_doom();
|
||||
new spell_warl_demonic_circle_summon();
|
||||
new spell_warl_demonic_circle_teleport();
|
||||
new spell_warl_demonic_empowerment();
|
||||
new spell_warl_everlasting_affliction();
|
||||
new spell_warl_fel_synergy();
|
||||
new spell_warl_glyph_of_shadowflame();
|
||||
new spell_warl_haunt();
|
||||
new spell_warl_health_funnel();
|
||||
new spell_warl_life_tap();
|
||||
new spell_warl_ritual_of_doom_effect();
|
||||
new spell_warl_seed_of_corruption();
|
||||
new spell_warl_shadow_ward();
|
||||
new spell_warl_siphon_life();
|
||||
new spell_warl_soulshatter();
|
||||
new spell_warl_unstable_affliction();
|
||||
new spell_warl_drain_soul();
|
||||
RegisterSpellScript(spell_warl_eye_of_kilrogg);
|
||||
RegisterSpellScript(spell_warl_shadowflame);
|
||||
RegisterSpellScript(spell_warl_seduction);
|
||||
RegisterSpellScript(spell_warl_improved_demonic_tactics);
|
||||
RegisterSpellScript(spell_warl_ritual_of_summoning);
|
||||
RegisterSpellScript(spell_warl_demonic_aegis);
|
||||
RegisterSpellScript(spell_warl_demonic_knowledge);
|
||||
RegisterSpellScript(spell_warl_generic_scaling);
|
||||
RegisterSpellScript(spell_warl_infernal_scaling);
|
||||
RegisterSpellScript(spell_warl_banish);
|
||||
RegisterSpellScript(spell_warl_create_healthstone);
|
||||
RegisterSpellScript(spell_warl_curse_of_doom);
|
||||
RegisterSpellScript(spell_warl_demonic_circle_summon);
|
||||
RegisterSpellScript(spell_warl_demonic_circle_teleport);
|
||||
RegisterSpellScript(spell_warl_demonic_empowerment);
|
||||
RegisterSpellScript(spell_warl_everlasting_affliction);
|
||||
RegisterSpellScript(spell_warl_fel_synergy);
|
||||
RegisterSpellScript(spell_warl_glyph_of_shadowflame);
|
||||
RegisterSpellAndAuraScriptPair(spell_warl_haunt, spell_warl_haunt_aura);
|
||||
RegisterSpellScript(spell_warl_health_funnel);
|
||||
RegisterSpellScript(spell_warl_life_tap);
|
||||
RegisterSpellScript(spell_warl_ritual_of_doom_effect);
|
||||
RegisterSpellScript(spell_warl_seed_of_corruption);
|
||||
RegisterSpellScript(spell_warl_shadow_ward);
|
||||
RegisterSpellScript(spell_warl_siphon_life);
|
||||
RegisterSpellScript(spell_warl_soulshatter);
|
||||
RegisterSpellScript(spell_warl_unstable_affliction);
|
||||
RegisterSpellScript(spell_warl_drain_soul);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user