mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scripts/Spells: Implement death knight talent Voracious (#30960)
This commit is contained in:
3
sql/updates/world/master/2025_05_20_01_world.sql
Normal file
3
sql/updates/world/master/2025_05_20_01_world.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_dk_voracious';
|
||||
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
||||
(49998, 'spell_dk_voracious');
|
||||
@@ -103,6 +103,8 @@ enum DeathKnightSpells
|
||||
SPELL_DK_UNHOLY_GROUND_HASTE = 374271,
|
||||
SPELL_DK_UNHOLY_GROUND_TALENT = 374265,
|
||||
SPELL_DK_UNHOLY_VIGOR = 196263,
|
||||
SPELL_DH_VORACIOUS_LEECH = 274009,
|
||||
SPELL_DH_VORACIOUS_TALENT = 273953
|
||||
};
|
||||
|
||||
enum Misc
|
||||
@@ -1312,6 +1314,34 @@ class spell_dk_vampiric_blood : public AuraScript
|
||||
}
|
||||
};
|
||||
|
||||
// 273953 - Voracious (attached to 49998 - Death Strike)
|
||||
class spell_dk_voracious : public SpellScript
|
||||
{
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_DH_VORACIOUS_TALENT, SPELL_DH_VORACIOUS_LEECH });
|
||||
}
|
||||
|
||||
bool Load() override
|
||||
{
|
||||
return GetCaster()->HasAura(SPELL_DH_VORACIOUS_TALENT);
|
||||
}
|
||||
|
||||
void HandleHit(SpellEffIndex /*effIndex*/) const
|
||||
{
|
||||
Unit* caster = GetCaster();
|
||||
caster->CastSpell(caster, SPELL_DH_VORACIOUS_LEECH, CastSpellExtraArgsInit{
|
||||
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
|
||||
.TriggeringSpell = GetSpell()
|
||||
});
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectHitTarget += SpellEffectFn(spell_dk_voracious::HandleHit, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE);
|
||||
}
|
||||
};
|
||||
|
||||
// 43265 - Death and Decay
|
||||
struct at_dk_death_and_decay : AreaTriggerAI
|
||||
{
|
||||
@@ -1396,6 +1426,7 @@ void AddSC_deathknight_spell_scripts()
|
||||
RegisterSpellScript(spell_dk_subduing_grasp);
|
||||
RegisterSpellScript(spell_dk_t20_2p_rune_empowered);
|
||||
RegisterSpellScript(spell_dk_vampiric_blood);
|
||||
RegisterSpellScript(spell_dk_voracious);
|
||||
|
||||
RegisterAreaTriggerAI(at_dk_death_and_decay);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user