aboutsummaryrefslogtreecommitdiff
path: root/src/game/CreatureAI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/CreatureAI.cpp')
-rw-r--r--src/game/CreatureAI.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/game/CreatureAI.cpp b/src/game/CreatureAI.cpp
index cfe72f654eb..165bb2411ec 100644
--- a/src/game/CreatureAI.cpp
+++ b/src/game/CreatureAI.cpp
@@ -200,13 +200,16 @@ void CreatureAI::EnterEvadeMode()
if(!_EnterEvadeMode())
return;
- if(Unit *owner = me->GetCharmerOrOwner())
+ if(!me->m_Vehicle) // otherwise me will be in evade mode forever
{
- me->GetMotionMaster()->Clear(false);
- me->GetMotionMaster()->MoveFollow(owner, PET_FOLLOW_DIST, m_creature->GetFollowAngle(), MOTION_SLOT_ACTIVE);
+ if(Unit *owner = me->GetCharmerOrOwner())
+ {
+ me->GetMotionMaster()->Clear(false);
+ me->GetMotionMaster()->MoveFollow(owner, PET_FOLLOW_DIST, m_creature->GetFollowAngle(), MOTION_SLOT_ACTIVE);
+ }
+ else
+ me->GetMotionMaster()->MoveTargetedHome();
}
- else
- me->GetMotionMaster()->MoveTargetedHome();
Reset();
}