aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/2923_world_spell_proc_event.sql6
-rw-r--r--src/game/SpellMgr.cpp7
-rw-r--r--src/game/Unit.cpp8
3 files changed, 17 insertions, 4 deletions
diff --git a/sql/updates/2923_world_spell_proc_event.sql b/sql/updates/2923_world_spell_proc_event.sql
new file mode 100644
index 00000000000..4212d703e75
--- /dev/null
+++ b/sql/updates/2923_world_spell_proc_event.sql
@@ -0,0 +1,6 @@
+DELETE FROM `spell_proc_event` WHERE `entry` IN (47569, 47570);
+INSERT INTO `spell_proc_event` VALUES
+(47569, 0x00, 6, 0x00004000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 50.000000, 0),
+(47570, 0x00, 6, 0x00004000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 100.000000, 0);
+
+
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 15d6279bcd0..233ef09f4f5 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -1220,11 +1220,10 @@ bool SpellMgr::IsSpellProcEventCanTriggeredBy(SpellProcEventEntry const* spellPr
else // For spells need check school/spell family/family mask
{
// Item cast can trigger only with spells with spellfamily
- if (procExtra & PROC_EX_INTERNAL_ITEM_CAST && procSpell->SpellFamilyName)
+ if (procExtra & PROC_EX_INTERNAL_ITEM_CAST)
{
- if (procSpell->SpellFamilyName == spellProcEvent->spellFamilyName)
- return true;
- return false;
+ if (!spellProcEvent->SpellFamilyName)
+ return false;
}
// Check (if set) for school
if(spellProcEvent->schoolMask && (spellProcEvent->schoolMask & procSpell->SchoolMask) == 0)
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 1ebbd606c2f..c0cc4266763 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -5512,6 +5512,14 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
triggered_spell_id = 56160;
break;
}
+ // Improved Shadowform
+ case 47570:
+ case 47569:
+ {
+ RemoveAurasByTypeWithDispel(SPELL_AURA_MOD_ROOT);
+ RemoveAurasByTypeWithDispel(SPELL_AURA_MOD_DECREASE_SPEED);
+ break;
+ }
// Psychic Horror
case 47571:
{