mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-23 18:36:31 +01:00
Scripts/Spells: Implement demon hunter talent "Furious Gaze" (#30530)
This commit is contained in:
@@ -107,6 +107,8 @@ enum DemonHunterSpells
|
||||
SPELL_DH_FIRST_BLOOD = 206416,
|
||||
SPELL_DH_FLAME_CRASH = 227322,
|
||||
SPELL_DH_FRAILTY = 224509,
|
||||
SPELL_DH_FURIOUS_GAZE = 343311,
|
||||
SPELL_DH_FURIOUS_GAZE_BUFF = 343312,
|
||||
SPELL_DH_GLIDE = 131347,
|
||||
SPELL_DH_GLIDE_DURATION = 197154,
|
||||
SPELL_DH_GLIDE_KNOCKBACK = 196353,
|
||||
@@ -550,6 +552,37 @@ private:
|
||||
ObjectGuid _firstTargetGUID;
|
||||
};
|
||||
|
||||
// Called by 198013 - Eye Beam
|
||||
class spell_dh_furious_gaze : public AuraScript
|
||||
{
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_DH_FURIOUS_GAZE, SPELL_DH_FURIOUS_GAZE_BUFF });
|
||||
}
|
||||
|
||||
bool Load() override
|
||||
{
|
||||
return GetUnitOwner()->HasAura(SPELL_DH_FURIOUS_GAZE);
|
||||
}
|
||||
|
||||
void HandleAfterRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) const
|
||||
{
|
||||
if (GetTargetApplication()->GetRemoveMode() != AURA_REMOVE_BY_EXPIRE)
|
||||
return;
|
||||
|
||||
Unit* target = GetTarget();
|
||||
target->CastSpell(target, SPELL_DH_FURIOUS_GAZE_BUFF, CastSpellExtraArgsInit{
|
||||
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
|
||||
.TriggeringAura = aurEff
|
||||
});
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterEffectRemove += AuraEffectRemoveFn(spell_dh_furious_gaze::HandleAfterRemove, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
// 188499 - Blade Dance
|
||||
// 210152 - Death Sweep
|
||||
class spell_dh_blade_dance : public SpellScript
|
||||
@@ -875,6 +908,7 @@ void AddSC_demon_hunter_spell_scripts()
|
||||
RegisterSpellScript(spell_dh_felblade);
|
||||
RegisterSpellScript(spell_dh_felblade_charge);
|
||||
RegisterSpellScript(spell_dh_felblade_cooldown_reset_proc);
|
||||
RegisterSpellScript(spell_dh_furious_gaze);
|
||||
RegisterSpellScript(spell_dh_sigil_of_chains);
|
||||
RegisterSpellScript(spell_dh_tactical_retreat);
|
||||
RegisterSpellScript(spell_dh_vengeful_retreat_damage);
|
||||
|
||||
Reference in New Issue
Block a user