aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Spells/SpellEffects.cpp1
-rw-r--r--src/server/scripts/Spells/spell_dk.cpp28
2 files changed, 29 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 0ee494d2898..0200d33211f 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -2233,6 +2233,7 @@ void Spell::EffectSummonType(SpellEffIndex effIndex)
case 1562:
case 833:
case 1161:
+ case 713:
numSummons = (damage > 0) ? damage : 1;
break;
default:
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp
index 1d6dcdfaa6d..681a659ae71 100644
--- a/src/server/scripts/Spells/spell_dk.cpp
+++ b/src/server/scripts/Spells/spell_dk.cpp
@@ -323,6 +323,33 @@ class spell_dk_blood_gorged : public SpellScriptLoader
}
};
+// -49027 - Bloodworms
+class spell_dk_bloodworms : public SpellScriptLoader
+{
+ public:
+ spell_dk_bloodworms() : SpellScriptLoader("spell_dk_bloodworms") { }
+
+ class spell_dk_bloodworms_AuraScript : public AuraScript
+ {
+ PrepareAuraScript(spell_dk_bloodworms_AuraScript);
+
+ void HandleProc(AuraEffect const* aurEff, ProcEventInfo& /*eventInfo*/)
+ {
+ aurEff->GetBase()->RecalculateAmountOfEffects();
+ }
+
+ void Register() override
+ {
+ OnEffectProc += AuraEffectProcFn(spell_dk_bloodworms_AuraScript::HandleProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL_WITH_VALUE);
+ }
+ };
+
+ AuraScript* GetAuraScript() const override
+ {
+ return new spell_dk_bloodworms_AuraScript();
+ }
+};
+
class CorpseExplosionCheck
{
public:
@@ -1572,6 +1599,7 @@ void AddSC_deathknight_spell_scripts()
new spell_dk_anti_magic_zone();
new spell_dk_blood_boil();
new spell_dk_blood_gorged();
+ new spell_dk_bloodworms();
new spell_dk_corpse_explosion();
new spell_dk_death_and_decay();
new spell_dk_death_coil();