aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAqua Deus <95978183+aquadeus@users.noreply.github.com>2025-01-11 22:48:12 +0100
committerGitHub <noreply@github.com>2025-01-11 22:48:12 +0100
commitc8869403ab727d1e95bd083aa6ef02a5177f937b (patch)
tree3638de0682a7b37f0e739172e95f1e1d77e41c85
parent781fe731dd8b438a9988347f68e09b5216b07652 (diff)
Scripts/Spells: Fix death knight talent Brittle (#30231)
-rw-r--r--sql/updates/world/master/2025_01_11_02_world.sql7
-rw-r--r--src/server/scripts/Spells/spell_dk.cpp23
2 files changed, 30 insertions, 0 deletions
diff --git a/sql/updates/world/master/2025_01_11_02_world.sql b/sql/updates/world/master/2025_01_11_02_world.sql
new file mode 100644
index 00000000000..792c7ed37be
--- /dev/null
+++ b/sql/updates/world/master/2025_01_11_02_world.sql
@@ -0,0 +1,7 @@
+DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_dk_brittle';
+INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
+(374504, 'spell_dk_brittle');
+
+DELETE FROM `spell_proc` WHERE `SpellId` IN (374504);
+INSERT INTO `spell_proc` (`SpellId`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`ProcFlags`,`ProcFlags2`,`SpellTypeMask`,`SpellPhaseMask`,`HitMask`,`AttributesMask`,`DisableEffectsMask`,`ProcsPerMinute`,`Chance`,`Cooldown`,`Charges`) VALUES
+(374504,0x00,15,0x00000000,0x06000100,0x20000000,0x00000000,0x0,0x0,0x1,0x2,0x0,0x2,0x0,0,0,0,0); -- Brittle
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp
index e323730e387..b4219b539e3 100644
--- a/src/server/scripts/Spells/spell_dk.cpp
+++ b/src/server/scripts/Spells/spell_dk.cpp
@@ -50,6 +50,7 @@ enum DeathKnightSpells
SPELL_DK_BLOOD_SHIELD_MASTERY = 77513,
SPELL_DK_BONE_SHIELD = 195181,
SPELL_DK_BREATH_OF_SINDRAGOSA = 152279,
+ SPELL_DK_BRITTLE_DEBUFF = 374557,
SPELL_DK_CLEAVING_STRIKES = 316916,
SPELL_DK_CORPSE_EXPLOSION_TRIGGERED = 43999,
SPELL_DK_DARK_SIMULACRUM_BUFF = 77616,
@@ -324,6 +325,27 @@ class spell_dk_blood_boil : public SpellScript
}
};
+// 374504 - Brittle
+class spell_dk_brittle : public AuraScript
+{
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_DK_BRITTLE_DEBUFF });
+ }
+
+ void HandleProc(AuraEffect const* /*aurEff*/, ProcEventInfo const& eventInfo) const
+ {
+ GetTarget()->CastSpell(eventInfo.GetActionTarget(), SPELL_DK_BRITTLE_DEBUFF, CastSpellExtraArgsInit{
+ .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR
+ });
+ }
+
+ void Register() override
+ {
+ OnEffectProc += AuraEffectProcFn(spell_dk_brittle::HandleProc, EFFECT_0, SPELL_AURA_DUMMY);
+ }
+};
+
// 49028 - Dancing Rune Weapon
/// 7.1.5
class spell_dk_dancing_rune_weapon : public AuraScript
@@ -1324,6 +1346,7 @@ void AddSC_deathknight_spell_scripts()
RegisterSpellScript(spell_dk_army_transform);
RegisterSpellScript(spell_dk_blinding_sleet);
RegisterSpellScript(spell_dk_blood_boil);
+ RegisterSpellScript(spell_dk_brittle);
RegisterSpellScript(spell_dk_dancing_rune_weapon);
RegisterSpellScript(spell_dk_dark_simulacrum);
RegisterSpellScript(spell_dk_dark_simulacrum_buff);