mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
Scripts/Spells: Implement druid talent Ursoc's Fury (#30776)
This commit is contained in:
@@ -141,6 +141,7 @@ enum DruidSpells
|
||||
SPELL_DRUID_THRASH_BEAR = 77758,
|
||||
SPELL_DRUID_THRASH_BEAR_AURA = 192090,
|
||||
SPELL_DRUID_THRASH_CAT = 106830,
|
||||
SPELL_DRUID_URSOCS_FURY_SHIELD = 372505,
|
||||
SPELL_DRUID_YSERAS_GIFT_HEAL_PARTY = 145110,
|
||||
SPELL_DRUID_YSERAS_GIFT_HEAL_SELF = 145109
|
||||
};
|
||||
@@ -2313,6 +2314,35 @@ class spell_dru_tiger_dash_aura : public AuraScript
|
||||
}
|
||||
};
|
||||
|
||||
// 377210 - Ursoc's Fury
|
||||
class spell_dru_ursocs_fury : public AuraScript
|
||||
{
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_DRUID_URSOCS_FURY_SHIELD });
|
||||
}
|
||||
|
||||
static void HandleProc(AuraScript const&, AuraEffect const* aurEff, ProcEventInfo const& eventInfo)
|
||||
{
|
||||
DamageInfo* damageInfo = eventInfo.GetDamageInfo();
|
||||
if (!damageInfo || !damageInfo->GetDamage())
|
||||
return;
|
||||
|
||||
Unit* caster = eventInfo.GetActor();
|
||||
int32 amount = CalculatePct(damageInfo->GetDamage(), aurEff->GetAmount());
|
||||
|
||||
caster->CastSpell(caster, SPELL_DRUID_URSOCS_FURY_SHIELD, CastSpellExtraArgsInit{
|
||||
.TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR,
|
||||
.SpellValueOverrides = { { SPELLVALUE_BASE_POINT0, amount } }
|
||||
});
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectProc += AuraEffectProcFn(spell_dru_ursocs_fury::HandleProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 48438 - Wild Growth
|
||||
class spell_dru_wild_growth : public SpellScript
|
||||
{
|
||||
@@ -2487,6 +2517,7 @@ void AddSC_druid_spell_scripts()
|
||||
RegisterSpellScript(spell_dru_travel_form);
|
||||
RegisterSpellAndAuraScriptPair(spell_dru_travel_form_dummy, spell_dru_travel_form_dummy_aura);
|
||||
RegisterSpellAndAuraScriptPair(spell_dru_tiger_dash, spell_dru_tiger_dash_aura);
|
||||
RegisterSpellScript(spell_dru_ursocs_fury);
|
||||
RegisterSpellAndAuraScriptPair(spell_dru_wild_growth, spell_dru_wild_growth_aura);
|
||||
RegisterSpellScript(spell_dru_yseras_gift);
|
||||
RegisterSpellScript(spell_dru_yseras_gift_group_heal);
|
||||
|
||||
Reference in New Issue
Block a user