Scripts/Spells: Fix Holy Word: Chastise incapacitate/stun (#31455)

This commit is contained in:
Cristian Vintila
2026-01-01 19:50:51 +02:00
committed by GitHub
parent ef97fb4ea7
commit d905ac7d82
2 changed files with 37 additions and 0 deletions

View File

@@ -62,6 +62,7 @@ enum PriestSpells
SPELL_PRIEST_BLESSED_LIGHT = 196813,
SPELL_PRIEST_BODY_AND_SOUL = 64129,
SPELL_PRIEST_BODY_AND_SOUL_SPEED = 65081,
SPELL_PRIEST_CENSURE = 200199,
SPELL_PRIEST_CIRCLE_OF_HEALING = 204883,
SPELL_PRIEST_CRYSTALLINE_REFLECTION = 373457,
SPELL_PRIEST_CRYSTALLINE_REFLECTION_HEAL = 373462,
@@ -122,6 +123,8 @@ enum PriestSpells
SPELL_PRIEST_HOLY_MENDING_HEAL = 391156,
SPELL_PRIEST_HOLY_NOVA = 132157,
SPELL_PRIEST_HOLY_WORD_CHASTISE = 88625,
SPELL_PRIEST_HOLY_WORD_CHASTISE_INCAPACITATE = 200196,
SPELL_PRIEST_HOLY_WORD_CHASTISE_STUN = 200200,
SPELL_PRIEST_HOLY_WORD_SALVATION = 265202,
SPELL_PRIEST_HOLY_WORD_SANCTIFY = 34861,
SPELL_PRIEST_HOLY_WORD_SERENITY = 2050,
@@ -1911,6 +1914,36 @@ class spell_pri_holy_words : public AuraScript
}
};
// 88625 - Holy Word: Chastise
class spell_pri_holy_word_chastise : public SpellScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo
({
SPELL_PRIEST_HOLY_WORD_CHASTISE_INCAPACITATE,
SPELL_PRIEST_HOLY_WORD_CHASTISE_STUN,
SPELL_PRIEST_CENSURE
});
}
void HandleAfterHit() const
{
Unit* caster = GetCaster();
uint32 spellId = caster->HasAura(SPELL_PRIEST_CENSURE) ? SPELL_PRIEST_HOLY_WORD_CHASTISE_STUN : SPELL_PRIEST_HOLY_WORD_CHASTISE_INCAPACITATE;
caster->CastSpell(GetHitUnit(), spellId, CastSpellExtraArgsInit{
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
.TriggeringSpell = GetSpell()
});
}
void Register() override
{
AfterHit += SpellHitFn(spell_pri_holy_word_chastise::HandleAfterHit);
}
};
// 265202 - Holy Word: Salvation
class spell_pri_holy_word_salvation : public SpellScript
{
@@ -4298,6 +4331,7 @@ void AddSC_priest_spell_scripts()
RegisterSpellScript(spell_pri_heavens_wrath);
RegisterSpellScript(spell_pri_holy_mending);
RegisterSpellScript(spell_pri_holy_words);
RegisterSpellScript(spell_pri_holy_word_chastise);
RegisterSpellScript(spell_pri_holy_word_salvation);
RegisterSpellScript(spell_pri_holy_word_salvation_cooldown_reduction);
RegisterSpellScript(spell_pri_item_t6_trinket);