aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorclick <none@none>2010-11-13 04:10:48 +0100
committerclick <none@none>2010-11-13 04:10:48 +0100
commit5d42e2293c080d4190780511680dae2ca6504d02 (patch)
tree1323efe7aa27fb5b195e69473bc1c2142c66a047 /src
parente22426c7c0c0aa4088d079a821fc13233ba78887 (diff)
Core/Spells: Fix Culling the Herd (and a personal thanks to Xanadu for being patient on explaining the procsystem properly)
Closes issue 4533 --HG-- branch : trunk
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp11
-rwxr-xr-xsrc/server/game/Spells/SpellMgr.cpp5
2 files changed, 16 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 92b65a9c901..47b35321847 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -8831,6 +8831,17 @@ bool Unit::HandleProcTriggerSpell(Unit *pVictim, uint32 damage, AuraEffect* trig
return false;
break;
}
+ // Culling the Herd
+ case 70893:
+ {
+ // check if we're doing a critical hit
+ if (!(procSpell->SpellFamilyFlags[1] & 0x10000000) && (procEx != PROC_EX_CRITICAL_HIT) )
+ return false;
+ // check if we're procced by Claw, Bite or Smack (need to use the spell icon ID to detect it)
+ if (!(procSpell->SpellIconID == 262 || procSpell->SpellIconID == 1680 || procSpell->SpellIconID == 473 ))
+ return false;
+ break;
+ }
// Deathbringer Saurfang - Blood Link
case 72202:
target = FindNearestCreature(37813, 75.0f); // NPC_DEATHBRINGER_SAURFANG = 37813
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index 0c06a8cb5da..484ee03f091 100755
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -3896,6 +3896,11 @@ void SpellMgr::LoadSpellCustomAttr()
spellInfo->EffectImplicitTargetB[0] = TARGET_UNIT_PET;
count++;
break;
+ case 70893: // Culling The Herd
+ spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_CASTER;
+ spellInfo->EffectImplicitTargetB[0] = TARGET_UNIT_MASTER;
+ count++;
+ break;
case 71413: // Green Ooze Summon
case 71414: // Orange Ooze Summon
spellInfo->EffectImplicitTargetA[0] = TARGET_DEST_DEST;