diff options
| author | Shauren <shauren.trinity@gmail.com> | 2012-07-14 19:03:03 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2012-07-14 19:03:03 +0200 |
| commit | a9d394073830c9c381f2267ccf8426974c53fa19 (patch) | |
| tree | b2f2c0e3aa56830127e2a2ab316e08ee2c426ac3 /src/server/scripts/Spells | |
| parent | 37c32c4c07ae8c172b9e983793b317799c051677 (diff) | |
| parent | 5485f92c5fa0f372a1a4622d96a8b1b74285fd74 (diff) | |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Diffstat (limited to 'src/server/scripts/Spells')
| -rw-r--r-- | src/server/scripts/Spells/spell_dk.cpp | 4 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_druid.cpp | 32 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_quest.cpp | 23 |
3 files changed, 47 insertions, 12 deletions
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index 5095092927e..a1c48878507 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -40,7 +40,7 @@ enum DeathKnightSpells DK_SPELL_IMPROVED_BLOOD_PRESENCE_TRIGGERED = 63611, DK_SPELL_UNHOLY_PRESENCE = 48265, DK_SPELL_IMPROVED_UNHOLY_PRESENCE_TRIGGERED = 63622, - SPELL_DK_ITEM_T8_MALEE_4P_BONUS = 64736, + SPELL_DK_ITEM_T8_MELEE_4P_BONUS = 64736, DK_SPELL_BLACK_ICE_R1 = 49140, }; @@ -412,7 +412,7 @@ class spell_dk_scourge_strike : public SpellScriptLoader { multiplier = (GetEffectValue() * unitTarget->GetDiseasesByCaster(caster->GetGUID()) / 100.f); // Death Knight T8 Melee 4P Bonus - if (AuraEffect const* aurEff = caster->GetAuraEffect(SPELL_DK_ITEM_T8_MALEE_4P_BONUS, EFFECT_0)) + if (AuraEffect const* aurEff = caster->GetAuraEffect(SPELL_DK_ITEM_T8_MELEE_4P_BONUS, EFFECT_0)) AddPctF(multiplier, aurEff->GetAmount()); } } diff --git a/src/server/scripts/Spells/spell_druid.cpp b/src/server/scripts/Spells/spell_druid.cpp index f34e9e772f3..672e4ee96d5 100644 --- a/src/server/scripts/Spells/spell_druid.cpp +++ b/src/server/scripts/Spells/spell_druid.cpp @@ -32,7 +32,8 @@ enum DruidSpells DRUID_LIFEBLOOM_FINAL_HEAL = 33778, DRUID_LIFEBLOOM_ENERGIZE = 64372, DRUID_SURVIVAL_INSTINCTS = 50322, - DRUID_SAVAGE_ROAR = 62071 + DRUID_SAVAGE_ROAR = 62071, + SPELL_DRUID_ITEM_T8_BALANCE_RELIC = 64950, }; // 54846 Glyph of Starfire @@ -615,6 +616,34 @@ class spell_dru_survival_instincts : public SpellScriptLoader } }; +class spell_dru_insect_swarm : public SpellScriptLoader +{ + public: + spell_dru_insect_swarm() : SpellScriptLoader("spell_dru_insect_swarm") { } + + class spell_dru_insect_swarm_AuraScript : public AuraScript + { + PrepareAuraScript(spell_dru_insect_swarm_AuraScript); + + void CalculateAmount(AuraEffect const* /*aurEff*/, int32 & amount, bool & /*canBeRecalculated*/) + { + if (Unit* caster = GetCaster()) + if (AuraEffect const* aurEff = caster->GetAuraEffect(SPELL_DRUID_ITEM_T8_BALANCE_RELIC, EFFECT_0)) + amount += aurEff->GetAmount(); + } + + void Register() + { + DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_dru_insect_swarm_AuraScript::CalculateAmount, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE); + } + }; + + AuraScript* GetAuraScript() const + { + return new spell_dru_insect_swarm_AuraScript(); + } +}; + void AddSC_druid_spell_scripts() { new spell_dru_glyph_of_starfire(); @@ -629,4 +658,5 @@ void AddSC_druid_spell_scripts() new spell_dru_predatory_strikes(); new spell_dru_savage_roar(); new spell_dru_survival_instincts(); + new spell_dru_insect_swarm(); } diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index e3714a22304..5648c510413 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -1217,15 +1217,20 @@ class spell_q12735_song_of_cleansing : public SpellScriptLoader void HandleScript(SpellEffIndex /*effIndex*/) { Unit* caster = GetCaster(); - - if (caster && caster->GetAreaId() == AREA_BITTERTIDELAKE) - caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_ATAH); - - else if (caster && caster->GetAreaId() == AREA_RIVERSHEART) - caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_HAKHALAN); - - else if (caster && caster->GetAreaId() == AREA_WINTERGRASPRIVER) - caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_KOOSU); + switch (caster->GetAreaId()) + { + case AREA_BITTERTIDELAKE: + caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_ATAH); + break; + case AREA_RIVERSHEART: + caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_HAKHALAN); + break; + case AREA_WINTERGRASPRIVER: + caster->CastSpell(caster, SPELL_SUMMON_SPIRIT_KOOSU); + break; + default: + break; + } } void Register() |
