diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/PetAI.cpp | 4 | ||||
-rw-r--r-- | src/game/PetHandler.cpp | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/game/PetAI.cpp b/src/game/PetAI.cpp index 25125c2a0dc..534500e51ea 100644 --- a/src/game/PetAI.cpp +++ b/src/game/PetAI.cpp @@ -323,6 +323,10 @@ Unit *PetAI::SelectNextTarget() if (me->GetCharmerOrOwner()->getAttackerForHelper()) return me->GetCharmerOrOwner()->getAttackerForHelper(); + // 3.0.2 - Pets now start attacking their owners target in defensive mode as soon as the hunter does + if (me->GetCharmerOrOwner()->getVictim()) + return me->GetCharmerOrOwner()->getVictim(); + // Default return NULL; } diff --git a/src/game/PetHandler.cpp b/src/game/PetHandler.cpp index c9b07823d5f..733a857373b 100644 --- a/src/game/PetHandler.cpp +++ b/src/game/PetHandler.cpp @@ -143,7 +143,7 @@ void WorldSession::HandlePetActionHelper(Unit *pet, uint64 guid1, uint16 spellid pet->clearUnitState(UNIT_STAT_FOLLOW); // This is true if pet has no target or has target but targets differs. - if(pet->getVictim() != TargetUnit) + if(pet->getVictim() != TargetUnit || ( pet->getVictim() == TargetUnit && !pet->GetCharmInfo()->IsCommandAttack() )) { if (pet->getVictim()) pet->AttackStop(); |