diff --git a/sql/updates/world/2016_01_19_00_world.sql b/sql/updates/world/2016_01_19_00_world.sql new file mode 100644 index 00000000000..2544311b9df --- /dev/null +++ b/sql/updates/world/2016_01_19_00_world.sql @@ -0,0 +1,7 @@ +DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_hun_rapid_recuperation' AND `spell_id` IN (56654,58882); +DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_gen_replenishment' AND `spell_id`=61782; +-- Add missing data for spell Spawn Living Embers, serverside +-- Info taken from TDB 335.60 +DELETE FROM `spelleffect_dbc` WHERE `Id`=155915 AND `EffectSpellId`=75880; +INSERT INTO `spelleffect_dbc` (`Id`,`Effect`,`EffectValueMultiplier`,`EffectApplyAuraName`,`EffectAmplitude`,`EffectBasePoints`,`EffectBonusMultiplier`,`EffectDamageMultiplier`,`EffectChainTarget`,`EffectDieSides`,`EffectItemType`,`EffectMechanic`,`EffectMiscValue`,`EffectMiscValueB`,`EffectRadiusIndex`,`EffectRadiusIndexMax`,`EffectRealPointsPerLevel`,`EffectSpellClassMaskA`,`EffectSpellClassMaskB`,`EffectSpellClassMaskC`,`EffectTriggerSpell`,`EffectImplicitTargetA`,`EffectImplicitTargetB`,`EffectSpellId`,`EffectIndex`) VALUES +(155915,77,0,0,0,0,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,22,7,75880,0); diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index 4192fad2297..4886790d27e 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -390,6 +390,13 @@ class spell_dk_death_and_decay : public SpellScriptLoader { PrepareAuraScript(spell_dk_death_and_decay_AuraScript); + bool Validate(SpellInfo const* /*spellInfo*/) override + { + if (!sSpellMgr->GetSpellInfo(SPELL_DK_DEATH_AND_DECAY_DAMAGE)) + return false; + return true; + } + void HandleDummyTick(AuraEffect const* aurEff) { if (Unit* caster = GetCaster()) @@ -398,7 +405,7 @@ class spell_dk_death_and_decay : public SpellScriptLoader void Register() override { - OnEffectPeriodic += AuraEffectPeriodicFn(spell_dk_death_and_decay_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY); + OnEffectPeriodic += AuraEffectPeriodicFn(spell_dk_death_and_decay_AuraScript::HandleDummyTick, EFFECT_1, SPELL_AURA_PERIODIC_DUMMY); } }; diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 26189e351d2..e6873e240a2 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -811,6 +811,7 @@ class spell_gen_chaos_blast : public SpellScriptLoader enum Clone { + SPELL_CLONE_ME = 45204, SPELL_NIGHTMARE_FIGMENT_MIRROR_IMAGE = 57528 }; @@ -831,15 +832,19 @@ class spell_gen_clone : public SpellScriptLoader void Register() override { - if (m_scriptSpellId == SPELL_NIGHTMARE_FIGMENT_MIRROR_IMAGE) + switch (m_scriptSpellId) { - OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_1, SPELL_EFFECT_DUMMY); - OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_2, SPELL_EFFECT_DUMMY); - } - else - { - OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT); - OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_2, SPELL_EFFECT_SCRIPT_EFFECT); + case SPELL_CLONE_ME: + OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_2, SPELL_EFFECT_SCRIPT_EFFECT); + break; + case SPELL_NIGHTMARE_FIGMENT_MIRROR_IMAGE: + OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_1, SPELL_EFFECT_DUMMY); + OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_2, SPELL_EFFECT_DUMMY); + break; + default: + OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT); + OnEffectHitTarget += SpellEffectFn(spell_gen_clone_SpellScript::HandleScriptEffect, EFFECT_2, SPELL_EFFECT_SCRIPT_EFFECT); + break; } } };