aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/base/world_database.sql4
-rw-r--r--sql/updates/10733_world_spell_proc_event.sql4
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp12
3 files changed, 18 insertions, 2 deletions
diff --git a/sql/base/world_database.sql b/sql/base/world_database.sql
index 4309a3b3d58..ed1225ece50 100644
--- a/sql/base/world_database.sql
+++ b/sql/base/world_database.sql
@@ -18378,8 +18378,8 @@ INSERT INTO `spell_proc_event` (`entry`,`SchoolMask`,`SpellFamilyName`,`SpellFam
( 15128, 0x04, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Mark of Flames
( 15277, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 6, 0, 0), -- Seal of Reckoning
( 15286, 0x20, 6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Vampiric Embrace
-( 15337, 0x00, 6, 0x00002000, 0x00000002, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Improved Spirit Tap (Rank 1)
-( 15338, 0x00, 6, 0x00002000, 0x00000002, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Improved Spirit Tap (Rank 2)
+( 15337, 0x00, 6, 0x00802000, 0x00000002, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Improved Spirit Tap (Rank 1)
+( 15338, 0x00, 6, 0x00802000, 0x00000002, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Improved Spirit Tap (Rank 2)
( 15346, 0x00, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 6, 0, 0), -- Seal of Reckoning
( 15362, 0x00, 6, 0x10001E00, 0x00010004, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Inspiration (Rank 2)
( 15363, 0x00, 6, 0x10001E00, 0x00010004, 0x00000000, 0x00000000, 0x00000002, 0, 0, 0), -- Inspiration (Rank 3)
diff --git a/sql/updates/10733_world_spell_proc_event.sql b/sql/updates/10733_world_spell_proc_event.sql
new file mode 100644
index 00000000000..ed30cb35d1d
--- /dev/null
+++ b/sql/updates/10733_world_spell_proc_event.sql
@@ -0,0 +1,4 @@
+DELETE FROM `spell_proc_event` WHERE `entry` IN ('15337','15338');
+INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask0`, `SpellFamilyMask1`, `SpellFamilyMask2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES
+('15337','0','6','8396800','2','0','0','2','0','0','0'), -- Improved Spirit Tap (Rank 1)
+('15338','0','6','8396800','2','0','0','2','0','0','0'); -- Improved Spirit Tap (Rank 2)
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index d6bfb80edb5..7670c3f811d 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -8759,6 +8759,18 @@ bool Unit::HandleProcTriggerSpell(Unit *pVictim, uint32 damage, AuraEffect* trig
case 72176:
basepoints0 = 3;
break;
+ case 15337: // Improved Spirit Tap (Rank 1)
+ case 15338: // Improved Spirit Tap (Rank 2)
+ {
+ if (procSpell->SpellFamilyFlags[0] & 0x800000)
+ if ((procSpell->Id != 58381) || !roll_chance_i(50))
+ return false;
+
+ target = pVictim;
+ break;
+ }
+ default:
+ break;
}
// Blade Barrier