diff options
| author | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-04-08 17:27:41 +0200 |
|---|---|---|
| committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-04-08 17:27:41 +0200 |
| commit | 5fd0e9783b7b7a35d8304522d6169291408346d2 (patch) | |
| tree | 88050587d83392ff2fb928f14eacad49669be9ab /src/server/game/Movement | |
| parent | 1f7260ca4b8ea351a8692cc51ec6fd933c000e14 (diff) | |
| parent | 8d97a0e9060ebac9ddc6afbe069b48881f2a2b07 (diff) | |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Diffstat (limited to 'src/server/game/Movement')
| -rwxr-xr-x | src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp index 28e58c87323..c59762066ae 100755 --- a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp @@ -159,10 +159,15 @@ bool TargetedMovementGeneratorMedium<T, D>::DoUpdate(T* owner, uint32 time_diff) if (TransportBase* transport = owner->GetDirectTransport()) transport->CalculatePassengerPosition(dest.x, dest.y, dest.z); + // First check distance if (owner->GetTypeId() == TYPEID_UNIT && owner->ToCreature()->CanFly()) targetMoved = !i_target->IsWithinDist3d(dest.x, dest.y, dest.z, allowed_dist); else targetMoved = !i_target->IsWithinDist2d(dest.x, dest.y, allowed_dist); + + // then, if the target is in range, check also Line of Sight. + if (!targetMoved) + targetMoved = !i_target->IsWithinLOSInMap(owner); } if (i_recalculateTravel || targetMoved) |
