diff --git a/Source/Game/Movement/Generators/ChaseMovementGenerator.cs b/Source/Game/Movement/Generators/ChaseMovementGenerator.cs index 02241c13e..6ad0bd5d1 100644 --- a/Source/Game/Movement/Generators/ChaseMovementGenerator.cs +++ b/Source/Game/Movement/Generators/ChaseMovementGenerator.cs @@ -73,11 +73,7 @@ namespace Game.Movement // our target might have gone away Unit target = _abstractFollower.GetTarget(); - if (!target) - return false; - - // the owner might've selected a different target (feels like we shouldn't check this here...) - if (owner.GetVictim() != target) + if (target == null || !target.IsInWorld) return false; // the owner might be unable to move (rooted or casting), pause movement diff --git a/Source/Game/Movement/Generators/FollowMovementGenerator.cs b/Source/Game/Movement/Generators/FollowMovementGenerator.cs index 264c887ab..84d19a9d9 100644 --- a/Source/Game/Movement/Generators/FollowMovementGenerator.cs +++ b/Source/Game/Movement/Generators/FollowMovementGenerator.cs @@ -73,7 +73,7 @@ namespace Game.Movement // our target might have gone away Unit target = _abstractFollower.GetTarget(); - if (target == null) + if (target == null || !target.IsInWorld) return false; if (owner.HasUnitState(UnitState.NotMove) || owner.IsMovementPreventedByCasting())