mirror of
https://github.com/OpenMW/openmw.git
synced 2025-02-01 23:45:33 +00:00
remove MWWorld::Player::setPos()
This commit is contained in:
parent
e7a1ab9fa6
commit
f2a2e5f57d
3 changed files with 17 additions and 18 deletions
|
@ -38,12 +38,6 @@ namespace MWWorld
|
||||||
delete mClass;
|
delete mClass;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Player::setPos(float x, float y, float z)
|
|
||||||
{
|
|
||||||
/// \todo This fcuntion should be removed during the mwrender-refactoring.
|
|
||||||
MWBase::Environment::get().getWorld()->moveObject (getPlayer(), x, y, z);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Player::setRot(float x, float y, float z)
|
void Player::setRot(float x, float y, float z)
|
||||||
{
|
{
|
||||||
mRenderer->setRot(x, y, z);
|
mRenderer->setRot(x, y, z);
|
||||||
|
|
|
@ -42,9 +42,6 @@ namespace MWWorld
|
||||||
|
|
||||||
~Player();
|
~Player();
|
||||||
|
|
||||||
/// Set the player position. Uses Morrowind coordinates.
|
|
||||||
void setPos(float x, float y, float z);
|
|
||||||
|
|
||||||
/// Set where the player is looking at. Uses Morrowind (euler) angles
|
/// Set where the player is looking at. Uses Morrowind (euler) angles
|
||||||
void setRot(float x, float y, float z);
|
void setRot(float x, float y, float z);
|
||||||
|
|
||||||
|
|
|
@ -135,23 +135,31 @@ namespace MWWorld
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Scene::playerCellChange (Ptr::CellStore *cell, const ESM::Position& position,
|
void
|
||||||
|
Scene::playerCellChange(
|
||||||
|
MWWorld::CellStore *cell,
|
||||||
|
const ESM::Position& pos,
|
||||||
bool adjustPlayerPos)
|
bool adjustPlayerPos)
|
||||||
{
|
{
|
||||||
bool hasWater = cell->cell->data.flags & cell->cell->HasWater;
|
bool hasWater = cell->cell->data.flags & cell->cell->HasWater;
|
||||||
mPhysics->setCurrentWater(hasWater, cell->cell->water);
|
mPhysics->setCurrentWater(hasWater, cell->cell->water);
|
||||||
if (adjustPlayerPos)
|
|
||||||
{
|
MWBase::World *world = MWBase::Environment::get().getWorld();
|
||||||
MWBase::Environment::get().getWorld()->getPlayer().setPos (position.pos[0], position.pos[1], position.pos[2]);
|
MWWorld::Ptr player = world->getPlayer().getPlayer();
|
||||||
MWBase::Environment::get().getWorld()->getPlayer().setRot (position.rot[0], position.rot[1], position.rot[2]);
|
|
||||||
|
if (adjustPlayerPos) {
|
||||||
|
world->moveObject(player, pos.pos[0], pos.pos[1], pos.pos[2]);
|
||||||
|
MWBase::Environment::get().getWorld()->getPlayer().setRot (pos.rot[0], pos.rot[1], pos.rot[2]);
|
||||||
}
|
}
|
||||||
|
world->getPlayer().setCell(cell);
|
||||||
|
|
||||||
MWBase::Environment::get().getWorld()->getPlayer().setCell (cell);
|
MWMechanics::MechanicsManager *mechMgr =
|
||||||
|
MWBase::Environment::get().getMechanicsManager();
|
||||||
|
|
||||||
MWBase::Environment::get().getMechanicsManager()->addActor (MWBase::Environment::get().getWorld()->getPlayer().getPlayer());
|
mechMgr->addActor(player);
|
||||||
MWBase::Environment::get().getMechanicsManager()->watchActor (MWBase::Environment::get().getWorld()->getPlayer().getPlayer());
|
mechMgr->watchActor(player);
|
||||||
|
|
||||||
MWBase::Environment::get().getWindowManager()->changeCell( mCurrentCell );
|
MWBase::Environment::get().getWindowManager()->changeCell(mCurrentCell);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Scene::changeCell (int X, int Y, const ESM::Position& position, bool adjustPlayerPos)
|
void Scene::changeCell (int X, int Y, const ESM::Position& position, bool adjustPlayerPos)
|
||||||
|
|
Loading…
Reference in a new issue