aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormik1893 <michele.roscelli@gmail.com>2016-05-15 10:26:27 +0100
committerjoschiwald <joschiwald.trinity@gmail.com>2017-01-08 19:32:51 +0100
commit4c60bbea0eaddf137db7758aec24df38ba123caf (patch)
tree2f810143197f08c73472703fe8079fd80ca88280
parentae11329e7185cc838c09a23030a6faec82f79813 (diff)
Core/Unit: Pet shouldn't be notified for DOT damage on the owner (#17133)
- Fix by @MrSmite - Closes #16894 (cherry picked from commit 4de1426d080084667da83a60857ee9c0492086fd)
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 6f23f57b3c7..fec094e2458 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -623,11 +623,14 @@ uint32 Unit::DealDamage(Unit* victim, uint32 damage, CleanDamage const* cleanDam
if (victim->GetTypeId() == TYPEID_PLAYER && this != victim)
{
- // Signal to pets that their owner was attacked
- Pet* pet = victim->ToPlayer()->GetPet();
+ // Signal to pets that their owner was attacked - except when DOT.
+ if (damagetype != DOT)
+ {
+ Pet* pet = victim->ToPlayer()->GetPet();
- if (pet && pet->IsAlive())
- pet->AI()->OwnerAttackedBy(this);
+ if (pet && pet->IsAlive())
+ pet->AI()->OwnerAttackedBy(this);
+ }
if (victim->ToPlayer()->GetCommandStatus(CHEAT_GOD))
return 0;