mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-13 03:32:28 -04:00
Scripts/Spells: Implement proc of dk talent Suppression (#30243)
This commit is contained in:
3
sql/updates/world/master/2026_02_05_05_world.sql
Normal file
3
sql/updates/world/master/2026_02_05_05_world.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_dk_suppression';
|
||||
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
||||
(374049, 'spell_dk_suppression');
|
||||
@@ -2907,6 +2907,9 @@ inline constexpr uint64 IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK(\
|
||||
(1 << MECHANIC_TURN) | (1 << MECHANIC_HORROR) | (1 << MECHANIC_DAZE) | \
|
||||
(1 << MECHANIC_SAPPED));
|
||||
|
||||
inline constexpr uint64 MECHANIC_LOSS_CONTROL_MASK(\
|
||||
IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK & ~((1 << MECHANIC_SNARE) | (1 << MECHANIC_TURN) | (1 << MECHANIC_DAZE)));
|
||||
|
||||
// Spell dispel type
|
||||
enum DispelType
|
||||
{
|
||||
|
||||
@@ -1293,6 +1293,24 @@ class spell_dk_subduing_grasp : public SpellScript
|
||||
}
|
||||
};
|
||||
|
||||
// 374049 - Suppression
|
||||
class spell_dk_suppression : public AuraScript
|
||||
{
|
||||
bool CheckProc(ProcEventInfo& eventInfo)
|
||||
{
|
||||
SpellInfo const* spellInfo = eventInfo.GetSpellInfo();
|
||||
if (!spellInfo)
|
||||
return false;
|
||||
|
||||
return (spellInfo->GetAllEffectsMechanicMask() & MECHANIC_LOSS_CONTROL_MASK) != 0;
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckProc += AuraCheckProcFn(spell_dk_suppression::CheckProc);
|
||||
}
|
||||
};
|
||||
|
||||
// 242057 - Rune Empowered
|
||||
class spell_dk_t20_2p_rune_empowered : public AuraScript
|
||||
{
|
||||
@@ -1456,6 +1474,7 @@ void AddSC_deathknight_spell_scripts()
|
||||
RegisterSpellScriptWithArgs(spell_dk_soul_reaper, "spell_dk_soul_reaper", EFFECT_1, EFFECT_2);
|
||||
RegisterSpellScriptWithArgs(spell_dk_soul_reaper, "spell_dk_soul_reaper_reaper_of_souls", EFFECT_0, Optional<SpellEffIndex>());
|
||||
RegisterSpellScript(spell_dk_subduing_grasp);
|
||||
RegisterSpellScript(spell_dk_suppression);
|
||||
RegisterSpellScript(spell_dk_t20_2p_rune_empowered);
|
||||
RegisterSpellScript(spell_dk_vampiric_blood);
|
||||
RegisterSpellScript(spell_dk_voracious);
|
||||
|
||||
Reference in New Issue
Block a user