Scripts/Spells: Fix priest talent Power Word: Solace (#27732)

This commit is contained in:
Aqua Deus
2022-02-14 00:14:59 +01:00
committed by GitHub
parent 61e96a7e14
commit 580e1e5d85
2 changed files with 28 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
DELETE FROM `spell_script_names` WHERE `ScriptName` = 'spell_pri_power_word_solace';
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
(129250, 'spell_pri_power_word_solace');

View File

@@ -63,6 +63,7 @@ enum PriestSpells
SPELL_PRIEST_PENANCE_R1 = 47540,
SPELL_PRIEST_PENANCE_R1_DAMAGE = 47758,
SPELL_PRIEST_PENANCE_R1_HEAL = 47757,
SPELL_PRIEST_POWER_WORD_SOLACE_ENERGIZE = 129253,
SPELL_PRIEST_PRAYER_OF_HEALING = 596,
SPELL_PRIEST_RAPTURE = 47536,
SPELL_PRIEST_RENEW = 139,
@@ -855,6 +856,29 @@ class spell_pri_power_word_shield_aura : public AuraScript
}
};
// 129250 - Power Word: Solace
class spell_pri_power_word_solace : public SpellScript
{
PrepareSpellScript(spell_pri_power_word_solace);
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SPELL_PRIEST_POWER_WORD_SOLACE_ENERGIZE });
}
void RestoreMana(SpellEffIndex /*effIndex*/)
{
GetCaster()->CastSpell(GetCaster(), SPELL_PRIEST_POWER_WORD_SOLACE_ENERGIZE,
CastSpellExtraArgs(TRIGGERED_IGNORE_CAST_IN_PROGRESS).SetTriggeringSpell(GetSpell())
.AddSpellMod(SPELLVALUE_BASE_POINT0, GetEffectValue() / 100));
}
void Register() override
{
OnEffectLaunch += SpellEffectFn(spell_pri_power_word_solace::RestoreMana, EFFECT_1, SPELL_EFFECT_DUMMY);
}
};
// Base class used by various prayer of mending spells
class spell_pri_prayer_of_mending_SpellScriptBase : public SpellScript
{
@@ -1489,6 +1513,7 @@ void AddSC_priest_spell_scripts()
new spell_pri_penance();
RegisterSpellScript(spell_pri_power_word_radiance);
RegisterSpellAndAuraScriptPair(spell_pri_power_word_shield, spell_pri_power_word_shield_aura);
RegisterSpellScript(spell_pri_power_word_solace);
RegisterSpellScript(spell_pri_prayer_of_mending);
RegisterSpellScript(spell_pri_prayer_of_mending_aura);
RegisterSpellScript(spell_pri_prayer_of_mending_jump);