diff --git a/src/server/game/AI/CoreAI/PetAI.cpp b/src/server/game/AI/CoreAI/PetAI.cpp index c4a39d663..1c8222126 100644 --- a/src/server/game/AI/CoreAI/PetAI.cpp +++ b/src/server/game/AI/CoreAI/PetAI.cpp @@ -634,9 +634,11 @@ void PetAI::DoAttack(Unit* target, bool chase) if (_canMeleeAttack()) { - float angle = combatRange == 0.f && !target->IsPlayer() && !target->IsPet() ? float(M_PI) : 0.f; - float tolerance = combatRange == 0.f ? float(M_PI_4) : float(M_PI * 2); - me->GetMotionMaster()->MoveChase(target, ChaseRange(0.f, combatRange), ChaseAngle(angle, tolerance)); + std::optional chaseAngle; + if (combatRange == 0.f && !target->IsPlayer() && !target->IsPet()) + chaseAngle.emplace(float(M_PI), float(M_PI_4)); + + me->GetMotionMaster()->MoveChase(target, ChaseRange(0.f, combatRange), chaseAngle); } } else // (Stay && ((Aggressive || Defensive) && In Melee Range)))