diff --git a/data/sql/updates/pending_db_world/rev_1638623866801763400.sql b/data/sql/updates/pending_db_world/rev_1638623866801763400.sql new file mode 100644 index 000000000..a9060e59d --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1638623866801763400.sql @@ -0,0 +1,5 @@ +INSERT INTO `version_db_world` (`sql_rev`) VALUES ('1638623866801763400'); + +DELETE FROM `spell_script_names` WHERE `spell_id`=19577; +INSERT INTO `spell_script_names` VALUES +(19577,'spell_hun_intimidation'); diff --git a/src/server/scripts/Spells/spell_hunter.cpp b/src/server/scripts/Spells/spell_hunter.cpp index 493a66675..bc659bdd1 100644 --- a/src/server/scripts/Spells/spell_hunter.cpp +++ b/src/server/scripts/Spells/spell_hunter.cpp @@ -1217,7 +1217,27 @@ class spell_hun_lock_and_load : public AuraScript AfterProc += AuraProcFn(spell_hun_lock_and_load::ApplyMarker); } +}; +// 19577 - Intimidation +class spell_hun_intimidation : public AuraScript +{ + PrepareAuraScript(spell_hun_intimidation); + + bool CheckProc(ProcEventInfo& eventInfo) + { + if (SpellInfo const* spellInfo = eventInfo.GetSpellInfo()) + { + return !spellInfo->IsPositive(); + } + + return true; + } + + void Register() override + { + DoCheckProc += AuraCheckProcFn(spell_hun_intimidation::CheckProc); + } }; void AddSC_hunter_spell_scripts() @@ -1248,4 +1268,5 @@ void AddSC_hunter_spell_scripts() RegisterSpellScript(spell_hun_viper_attack_speed); RegisterSpellScript(spell_hun_volley_trigger); RegisterSpellScript(spell_hun_lock_and_load); + RegisterSpellScript(spell_hun_intimidation); }