diff options
author | click <none@none> | 2010-07-27 17:29:33 +0200 |
---|---|---|
committer | click <none@none> | 2010-07-27 17:29:33 +0200 |
commit | e5b7f6ad01cbf85c6212f0cc4e8584c621f225b7 (patch) | |
tree | 2a007a1272a4cccd060bd3171c8aed4fb9c65e05 /src/server/collision/Maps/MapTree.cpp | |
parent | dbd76ef9edce23543c1d1732269c889da79fc350 (diff) |
Add option for search distance to getHeight() functions and make Creature::FallGround() use VMaps properly. (Fix by Lynx3d)
This finally prevents flying creatures from falling to infinity (basically instantly diappearing) in several instances, aswell
as prevent creatures from falling inside larger solid object around the world.
--HG--
branch : trunk
Diffstat (limited to 'src/server/collision/Maps/MapTree.cpp')
-rw-r--r-- | src/server/collision/Maps/MapTree.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/collision/Maps/MapTree.cpp b/src/server/collision/Maps/MapTree.cpp index b47e34b2b72..4fce91920e9 100644 --- a/src/server/collision/Maps/MapTree.cpp +++ b/src/server/collision/Maps/MapTree.cpp @@ -224,12 +224,12 @@ namespace VMAP //========================================================= - float StaticMapTree::getHeight(const Vector3& pPos) const + float StaticMapTree::getHeight(const Vector3& pPos, float maxSearchDist) const { float height = G3D::inf(); Vector3 dir = Vector3(0,0,-1); G3D::Ray ray(pPos, dir); // direction with length of 1 - float maxDist = VMapDefinitions::getMaxCanFallDistance(); + float maxDist = maxSearchDist; if (getIntersectionTime(ray, maxDist, false)) { height = pPos.z - maxDist; |