|
|
|
@ -1114,7 +1114,7 @@ namespace MWWorld
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
MWWorld::Ptr World::moveObject(const Ptr &ptr, CellStore* newCell, const osg::Vec3f& position, bool movePhysics)
|
|
|
|
|
MWWorld::Ptr World::moveObject(const Ptr &ptr, CellStore* newCell, const osg::Vec3f& position, bool movePhysics, bool keepActive)
|
|
|
|
|
{
|
|
|
|
|
ESM::Position pos = ptr.getRefData().getPosition();
|
|
|
|
|
std::memcpy(pos.pos, &position, sizeof(osg::Vec3f));
|
|
|
|
@ -1171,7 +1171,7 @@ namespace MWWorld
|
|
|
|
|
}
|
|
|
|
|
else if (!newCellActive && currCellActive)
|
|
|
|
|
{
|
|
|
|
|
mWorldScene->removeObjectFromScene(ptr);
|
|
|
|
|
mWorldScene->removeObjectFromScene(ptr, keepActive);
|
|
|
|
|
mLocalScripts.remove(ptr);
|
|
|
|
|
removeContainerScripts (ptr);
|
|
|
|
|
haveToMove = false;
|
|
|
|
@ -2433,7 +2433,7 @@ namespace MWWorld
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// Remove the old CharacterController
|
|
|
|
|
MWBase::Environment::get().getMechanicsManager()->remove(getPlayerPtr());
|
|
|
|
|
MWBase::Environment::get().getMechanicsManager()->remove(getPlayerPtr(), true);
|
|
|
|
|
mNavigator->removeAgent(getPathfindingHalfExtents(getPlayerConstPtr()));
|
|
|
|
|
mPhysics->remove(getPlayerPtr());
|
|
|
|
|
mRendering->removePlayer(getPlayerPtr());
|
|
|
|
@ -2449,7 +2449,7 @@ namespace MWWorld
|
|
|
|
|
|
|
|
|
|
void World::renderPlayer()
|
|
|
|
|
{
|
|
|
|
|
MWBase::Environment::get().getMechanicsManager()->remove(getPlayerPtr());
|
|
|
|
|
MWBase::Environment::get().getMechanicsManager()->remove(getPlayerPtr(), true);
|
|
|
|
|
|
|
|
|
|
MWWorld::Ptr player = getPlayerPtr();
|
|
|
|
|
|
|
|
|
|