diff options
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 21d6dbf18ac..3ffab7e8f33 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -4262,9 +4262,10 @@ void Spell::EffectKnockBack(SpellEffIndex /*effIndex*/) if (!unitTarget) return; - if (Creature* creatureTarget = unitTarget->ToCreature()) - if (creatureTarget->isWorldBoss() || creatureTarget->IsDungeonBoss()) - return; + if (m_caster->GetTypeId() == TYPEID_PLAYER || m_caster->GetOwnerGUID().IsPlayer() || m_caster->IsHunterPet()) + if (Creature* creatureTarget = unitTarget->ToCreature()) + if (creatureTarget->isWorldBoss() || creatureTarget->IsDungeonBoss()) + return; // Spells with SPELL_EFFECT_KNOCK_BACK (like Thunderstorm) can't knockback target if target has ROOT/STUN if (unitTarget->HasUnitState(UNIT_STATE_ROOT | UNIT_STATE_STUNNED)) |