From 0be44221d20359f7b5ae03e7147c753e10dafde3 Mon Sep 17 00:00:00 2001 From: Stoabrogga <38475780+Stoabrogga@users.noreply.github.com> Date: Wed, 9 Jan 2019 18:51:27 +0100 Subject: [PATCH] Core/Pet: additional check if it's a creature (#1248) --- .../TargetedMovementGenerator.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp index b3d97f217..2cd1496d3 100644 --- a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp @@ -100,12 +100,17 @@ void TargetedMovementGeneratorMedium::_setTargetLocation(T* owner, bool ini float angle = i_angle; - if (i_target->GetTypeId() == TYPEID_PLAYER && owner->ToCreature()->GetCreatureType() == CREATURE_TYPE_NON_COMBAT_PET) + if (i_target->GetTypeId() == TYPEID_PLAYER) { - // fix distance and angle for vanity pets - dist = 0.3f; - angle = PET_FOLLOW_ANGLE + M_PI * 0.2f; - size = i_target->GetCombatReach() - i_target->GetObjectSize(); + Creature* creature = owner->ToCreature(); + + if (creature && creature->GetCreatureType() == CREATURE_TYPE_NON_COMBAT_PET) + { + // fix distance and angle for vanity pets + dist = 0.3f; + angle = PET_FOLLOW_ANGLE + M_PI * 0.2f; + size = i_target->GetCombatReach() - i_target->GetObjectSize(); + } } // Xinef: Fix follow angle for hostile units