diff options
author | Golrag <Golrag@users.noreply.github.com> | 2017-03-19 14:32:39 +0100 |
---|---|---|
committer | Keader <keader.android@gmail.com> | 2017-03-19 10:32:39 -0300 |
commit | 020a6b984d6f6c04a57211e433a8d995514c6c0a (patch) | |
tree | e6daea1736beb439fb6c4fa82d80aacb8098327a | |
parent | 9226e212053ef8ec10eeb9509f2ce6ec002d8e3b (diff) |
Core/Object: Fix Line of Sight issue with object edges
Fixes: https://github.com/TrinityCore/TrinityCore/pull/15807#issuecomment-268077802
-rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index a9a2425748f..70c8e2f46c2 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -1255,7 +1255,7 @@ Position WorldObject::GetHitSpherePointFor(Position const& dest) const { G3D::Vector3 vThis(GetPositionX(), GetPositionY(), GetPositionZ()); G3D::Vector3 vObj(dest.GetPositionX(), dest.GetPositionY(), dest.GetPositionZ()); - G3D::Vector3 contactPoint = vThis + (vObj - vThis).directionOrZero() * GetObjectSize(); + G3D::Vector3 contactPoint = vThis + (vObj - vThis).directionOrZero() * std::min(dest.GetExactDist(GetPosition()), GetObjectSize()); return Position(contactPoint.x, contactPoint.y, contactPoint.z, GetAngle(contactPoint.x, contactPoint.y)); } |