diff options
-rw-r--r-- | sql/base/world_database.sql | 1 | ||||
-rw-r--r-- | sql/updates/world/2011_06_25_14_world_spell_proc_event.sql | 3 | ||||
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 20 |
3 files changed, 24 insertions, 0 deletions
diff --git a/sql/base/world_database.sql b/sql/base/world_database.sql index dc601b4d268..97c48dc7056 100644 --- a/sql/base/world_database.sql +++ b/sql/base/world_database.sql @@ -19401,6 +19401,7 @@ INSERT INTO `spell_proc_event` (`entry`,`SchoolMask`,`SpellFamilyName`,`SpellFam ( 70803, 0x00, 8, 0x003E0000, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Item - Rogue T10 4P Bonus ( 70805, 0x00, 8, 0x00000000, 0x00020000, 0x00000000, 0x00004000, 0x00000000, 0, 0, 0), -- Item - Rogue T10 2P Bonus ( 70807, 0x00, 11, 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0x00000000, 0, 0, 0), -- Item - Shaman T10 Restoration 2P Bonus +( 70817, 0x00, 11, 0x00000000, 0x00001000, 0x00000000, 0x00010000, 0x00000000, 0, 0, 0), -- Item - Shaman T10 Elemental 4P Bonus ( 70830, 0x00, 11, 0x00000000, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Item - Shaman T10 Enhancement 2P Bonus ( 70841, 0x00, 5, 0x00000004, 0x00000100, 0x00000000, 0x00040000, 0x00000000, 0, 0, 0), -- Item - Warlock T10 4P Bonus ( 70844, 0x00, 4, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Item - Warrior T10 Protection 4P Bonus diff --git a/sql/updates/world/2011_06_25_14_world_spell_proc_event.sql b/sql/updates/world/2011_06_25_14_world_spell_proc_event.sql new file mode 100644 index 00000000000..b78a9c087a9 --- /dev/null +++ b/sql/updates/world/2011_06_25_14_world_spell_proc_event.sql @@ -0,0 +1,3 @@ +DELETE FROM `spell_proc_event` WHERE `entry` = 70817; +INSERT INTO `spell_proc_event` VALUES +(70817,0,11,0,0x1000,0,0x10000,0,0,0,0); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 67c5db70d1e..fd8be29c3e0 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -7252,6 +7252,26 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger } return false; } + // Item - Shaman T10 Elemental 4P Bonus + case 70817: + { + // try to find spell Flame Shock on the target + if (AuraEffect const* aurEff = target->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, 0x10000000, 0x0, 0x0, GetGUID())) + { + Aura* flameShock = aurEff->GetBase(); + int32 maxDuration = flameShock->GetMaxDuration(); + int32 newDuration = flameShock->GetDuration() + 2 * aurEff->GetAmplitude(); + + flameShock->SetDuration(newDuration); + // is it blizzlike to change max duration for FS? + if (newDuration > maxDuration) + flameShock->SetMaxDuration(newDuration); + + return true; + } + // if not found Flame Shock + return false; + } case 63280: // Glyph of Totem of Wrath { if (procSpell->SpellIconID != 2019) |