Core/Spells: convert some spells to SpellScripts

This commit is contained in:
joschiwald committed 2013-01-20 04:30:17 +01:00
1 parent c7ce94ee3d
commit c38d95ac33
16 files changed
+1454 -600

No files matched your search

@@ -649,6 +649,43 @@ class spell_warl_seed_of_corruption : public SpellScriptLoader
}
};
// -7235 - Shadow Ward
class spell_warl_shadow_ward : public SpellScriptLoader
{
public:
spell_warl_shadow_ward() : SpellScriptLoader("spell_warl_shadow_ward") { }
class spell_warl_shadow_ward_AuraScript : public AuraScript
{
PrepareAuraScript(spell_warl_shadow_ward_AuraScript);
void CalculateAmount(AuraEffect const* /*aurEff*/, int32& amount, bool& canBeRecalculated)
{
canBeRecalculated = false;
if (Unit* caster = GetCaster())
{
// +80.68% from sp bonus
float bonus = 0.8068f;
bonus *= caster->SpellBaseHealingBonusDone(GetSpellInfo()->GetSchoolMask());
bonus *= caster->CalculateLevelPenalty(GetSpellInfo());
amount += int32(bonus);
}
}
void Register()
{
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_warl_shadow_ward_AuraScript::CalculateAmount, EFFECT_0, SPELL_AURA_SCHOOL_ABSORB);
}
};
AuraScript* GetAuraScript() const
{
return new spell_warl_shadow_ward_AuraScript();
}
};
// 29858 - Soulshatter
class spell_warl_soulshatter : public SpellScriptLoader
{
@@ -742,6 +779,7 @@ void AddSC_warlock_spell_scripts()
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_soulshatter();
new spell_warl_unstable_affliction();
}