1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-10 12:39:53 +00:00

made player respect NpcStats for mDrawState

This commit is contained in:
Aleksandar Jovanov 2012-04-08 19:43:04 +02:00
parent 23cc1d17ca
commit 9893e4b384
2 changed files with 12 additions and 5 deletions

View File

@ -4,6 +4,7 @@
#include "../mwrender/player.hpp"
#include "../mwmechanics/movement.hpp"
#include "../mwmechanics/npcstats.hpp"
#include "world.hpp"
#include "class.hpp"
@ -12,7 +13,7 @@ namespace MWWorld
{
Player::Player (MWRender::Player *renderer, const ESM::NPC *player, MWWorld::World& world) :
mCellStore (0), mRenderer (renderer), mWorld (world), mClass (0),
mAutoMove (false), mForwardBackward (0) , mDrawState(DrawState_Nothing)
mAutoMove (false), mForwardBackward (0)
{
mPlayer.base = player;
mPlayer.ref.refID = "player";
@ -50,7 +51,8 @@ namespace MWWorld
void Player::setDrawState(const DrawState& value)
{
mDrawState = value;
MWWorld::Ptr ptr = getPlayer();
MWWorld::Class::get(ptr).getNpcStats(ptr).mDrawState = value;
}
void Player::setAutoMove (bool enable)
@ -94,4 +96,10 @@ namespace MWWorld
MWWorld::Class::get (ptr).setStance (ptr, MWWorld::Class::Run, !running);
}
DrawState Player::getDrawState()
{
MWWorld::Ptr ptr = getPlayer();
return MWWorld::Class::get(ptr).getNpcStats(ptr).mDrawState;
}
}

View File

@ -20,7 +20,7 @@ namespace MWWorld
class World;
/// \brief NPC object representing the player and additional player data
class Player
class Player
{
ESMS::LiveCellRef<ESM::NPC, MWWorld::RefData> mPlayer;
MWWorld::Ptr::CellStore *mCellStore;
@ -33,7 +33,6 @@ namespace MWWorld
ESM::Class *mClass;
bool mAutoMove;
int mForwardBackward;
DrawState mDrawState;
public:
Player(MWRender::Player *renderer, const ESM::NPC *player, MWWorld::World& world);
@ -110,7 +109,7 @@ namespace MWWorld
return mAutoMove;
}
DrawState getDrawState() { return mDrawState; }
DrawState getDrawState();
void setAutoMove (bool enable);