diff options
author | Shauren <shauren.trinity@gmail.com> | 2018-04-07 00:21:51 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-09-25 01:04:21 +0200 |
commit | 453b59de57b3502163adc99a6fc9cbeec0645dcf (patch) | |
tree | 82a2975fc6ecdf1de3e72edf595473aeb4ed8ef0 /src/common/Collision/Models | |
parent | 3d9d6fbcb80eaab72acbe6ef09b9b1c29f2439c7 (diff) |
Core/Maps: Adjusted logic in GetFullTerrainStatusForPosition to closer match what the client does regarding being inside WMOs
Closes #21625
Closes #21624
Closes #21516
(cherry picked from commit b9c6bbb51df0ed10f74617482740fedb91ff5366)
Diffstat (limited to 'src/common/Collision/Models')
-rw-r--r-- | src/common/Collision/Models/WorldModel.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/common/Collision/Models/WorldModel.cpp b/src/common/Collision/Models/WorldModel.cpp index 9bbb6278950..4c0f7042b75 100644 --- a/src/common/Collision/Models/WorldModel.cpp +++ b/src/common/Collision/Models/WorldModel.cpp @@ -398,9 +398,7 @@ namespace VMAP vertices(vert.begin()), triangles(tris.begin()), hit(false) { } bool operator()(G3D::Ray const& ray, uint32 entry, float& distance, bool /*pStopAtFirstHit*/) { - bool result = IntersectTriangle(triangles[entry], vertices, ray, distance); - if (result) - hit = true; + hit = IntersectTriangle(triangles[entry], vertices, ray, distance) || hit; return hit; } std::vector<Vector3>::const_iterator vertices; @@ -422,7 +420,6 @@ namespace VMAP { if (triangles.empty() || !iBound.contains(pos)) return false; - GModelRayCallback callback(triangles, vertices); Vector3 rPos = pos - 0.1f * down; float dist = G3D::finf(); G3D::Ray ray(rPos, down); |