1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-20 18:39:39 +00:00

Another fallout from MR 722: objects were treated like actors by

accident. Net effect was that calls to Move/MoveWorld didn't update
position of collision object.
This commit is contained in:
fredzio 2021-04-16 16:09:15 +02:00
parent e350d7d4ff
commit f137b7341f

View file

@ -1256,11 +1256,13 @@ namespace MWWorld
MWWorld::Ptr World::moveObjectBy(const Ptr& ptr, osg::Vec3f vec, bool moveToActive)
{
auto* actor = mPhysics->getActor(ptr);
if (actor)
actor->adjustPosition(vec);
osg::Vec3f newpos = ptr.getRefData().getPosition().asVec3() + vec;
return moveObject(ptr, newpos.x(), newpos.y(), newpos.z(), false, moveToActive && ptr != getPlayerPtr());
if (actor)
{
actor->adjustPosition(vec);
return moveObject(ptr, newpos.x(), newpos.y(), newpos.z(), false, moveToActive && ptr != getPlayerPtr());
}
return moveObject(ptr, newpos.x(), newpos.y(), newpos.z());
}
void World::scaleObject (const Ptr& ptr, float scale)