Merge pull request #1584

pull/359/head
scrawl 7 years ago
commit e9ecaf712b
No known key found for this signature in database
GPG Key ID: 2E6CC3676024C402

@ -227,6 +227,17 @@ namespace MWScript
} }
else if(axis == "z") else if(axis == "z")
{ {
// We should not place actors under ground
if (ptr.getClass().isActor())
{
float terrainHeight = -std::numeric_limits<float>::max();
if (ptr.getCell()->isExterior())
terrainHeight = MWBase::Environment::get().getWorld()->getTerrainHeightAt(osg::Vec3f(ax, ay, az));
if (pos < terrainHeight)
pos = terrainHeight;
}
updated = MWBase::Environment::get().getWorld()->moveObject(ptr,ax,ay,pos); updated = MWBase::Environment::get().getWorld()->moveObject(ptr,ax,ay,pos);
} }
else else

Loading…
Cancel
Save