Common/Maps: Reduce differences between 3.3.5 and 6.x branches

Partially port 1347d7cf7a too
This commit is contained in:
jackpoz
2016-08-03 18:51:42 +02:00
parent 9bc28632b3
commit 02a9ae031e
4 changed files with 2 additions and 4 deletions

View File

@@ -248,7 +248,7 @@ bool DynamicMapTree::isInLineOfSight(float x1, float y1, float z1, float x2, flo
float DynamicMapTree::getHeight(float x, float y, float z, float maxSearchDist, uint32 phasemask) const
{
G3D::Vector3 v(x, y, z);
G3D::Vector3 v(x, y, z + 0.5f);
G3D::Ray r(v, G3D::Vector3(0, 0, -1));
DynamicTreeIntersectionCallback callback(phasemask);
impl->intersectZAllignedRay(r, callback, maxSearchDist);

View File

@@ -19,7 +19,6 @@
#include "ModelInstance.h"
#include "WorldModel.h"
#include "MapTree.h"
#include "VMapDefinitions.h"
using G3D::Vector3;
using G3D::Ray;

View File

@@ -17,7 +17,6 @@
*/
#include "WorldModel.h"
#include "ModelInstance.h"
#include "VMapDefinitions.h"
#include "MapTree.h"

View File

@@ -61,7 +61,7 @@ void RandomMovementGenerator<Creature>::_setRandomLocation(Creature* creature)
// Limit height change
const float distanceZ = float(rand_norm()) * travelDistZ/2.0f;
destZ = respZ + distanceZ;
float levelZ = map->GetWaterOrGroundLevel(destX, destY, destZ-2.0f);
float levelZ = map->GetWaterOrGroundLevel(destX, destY, destZ-2.5f);
// Problem here, we must fly above the ground and water, not under. Let's try on next tick
if (levelZ >= destZ)