diff options
| -rw-r--r-- | sql/base/world_database.sql | 1 | ||||
| -rw-r--r-- | sql/updates/world/2011_05_11_03_spell_bonus_data.sql | 2 | ||||
| -rwxr-xr-x | src/server/game/Spells/Auras/SpellAuras.cpp | 14 |
3 files changed, 17 insertions, 0 deletions
diff --git a/sql/base/world_database.sql b/sql/base/world_database.sql index 756b7f5a383..98d53fcf697 100644 --- a/sql/base/world_database.sql +++ b/sql/base/world_database.sql @@ -16913,6 +16913,7 @@ INSERT INTO `spell_bonus_data` (`entry`,`direct_bonus`,`dot_bonus`,`ap_bonus`,`a (48438, -1, 0.11505, -1, -1, 'Druid - Wild Growth'), (5176, 0.5714, -1, -1, -1, 'Druid - Wrath'), (70691,0,0,0,0, 'Druid - Rejuvenation T10 4P proc'), +(64801,0.45,0,0,0,'Druid - T8 Restoration 4P Bonus'), (3044, -1, -1, 0.15, -1, 'Hunter - Arcane Shot'), (3674, -1, -1, -1, 0.02, 'Hunter - Black Arrow($RAP*0.1 / number of ticks)'), (19306, -1, -1, 0.2, -1, 'Hunter - Counterattack'), diff --git a/sql/updates/world/2011_05_11_03_spell_bonus_data.sql b/sql/updates/world/2011_05_11_03_spell_bonus_data.sql new file mode 100644 index 00000000000..be207fe8902 --- /dev/null +++ b/sql/updates/world/2011_05_11_03_spell_bonus_data.sql @@ -0,0 +1,2 @@ +DELETE FROM `spell_bonus_data` WHERE `entry`=64801; +INSERT INTO `spell_bonus_data` VALUES (64801,0.45,0,0,0,'Druid - T8 Restoration 4P Bonus'); diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp index 62dadc8ca2c..894775179e1 100755 --- a/src/server/game/Spells/Auras/SpellAuras.cpp +++ b/src/server/game/Spells/Auras/SpellAuras.cpp @@ -955,6 +955,20 @@ void Aura::HandleAuraSpecificMods(AuraApplication const * aurApp, Unit * caster, break; } break; + case SPELLFAMILY_DRUID: + if (!caster) + break; + // Rejuvenation + if (GetSpellProto()->SpellFamilyFlags[0] & 0x10 && GetEffect(EFFECT_0)) + { + // Druid T8 Restoration 4P Bonus + if (AuraEffect const* aurEff = caster->GetAuraEffect(64760, EFFECT_0)) + { + int32 heal = GetEffect(EFFECT_0)->GetAmount(); + caster->CastCustomSpell(target, 64801, &heal, NULL, NULL, true, NULL, GetEffect(EFFECT_0)); + } + } + break; case SPELLFAMILY_MAGE: if (!caster) break; |
