Proper fix for non-master player rotation resetting on load
This commit is contained in:
parent
e64aabfcf1
commit
4328119e1c
@ -284,16 +284,16 @@ EntityType Player::entityType() const {
|
||||
void Player::init(World* world, EntityId entityId, EntityMode mode) {
|
||||
Entity::init(world, entityId, mode);
|
||||
|
||||
auto speciesDefinition = Root::singleton().speciesDatabase()->species(m_identity.species);
|
||||
|
||||
m_tools->init(this);
|
||||
m_movementController->init(world);
|
||||
m_movementController->setIgnorePhysicsEntities({entityId});
|
||||
m_movementController->setRotation(0);
|
||||
m_statusController->init(this, m_movementController.get());
|
||||
m_techController->init(this, m_movementController.get(), m_statusController.get());
|
||||
|
||||
if (mode == EntityMode::Master) {
|
||||
auto speciesDefinition = Root::singleton().speciesDatabase()->species(m_identity.species);
|
||||
m_movementController->setRotation(0);
|
||||
m_statusController->setStatusProperty("ouchNoise", speciesDefinition->ouchNoise(m_identity.gender));
|
||||
m_emoteState = HumanoidEmote::Idle;
|
||||
m_questManager->init(world);
|
||||
|
@ -656,8 +656,8 @@ void WorldClient::handleIncomingPackets(List<PacketPtr> const& packets) {
|
||||
}
|
||||
|
||||
auto entity = entityFactory->netLoadEntity(entityCreate->entityType, entityCreate->storeData);
|
||||
entity->init(this, entityCreate->entityId, EntityMode::Slave);
|
||||
entity->readNetState(entityCreate->firstNetState);
|
||||
entity->init(this, entityCreate->entityId, EntityMode::Slave);
|
||||
m_entityMap->addEntity(entity);
|
||||
|
||||
if (m_interpolationTracker.interpolationEnabled()) {
|
||||
|
@ -392,8 +392,8 @@ void WorldServer::handleIncomingPackets(ConnectionId clientId, List<PacketPtr> c
|
||||
}
|
||||
|
||||
auto entity = entityFactory->netLoadEntity(entityCreate->entityType, entityCreate->storeData);
|
||||
entity->init(this, entityCreate->entityId, EntityMode::Slave);
|
||||
entity->readNetState(entityCreate->firstNetState);
|
||||
entity->init(this, entityCreate->entityId, EntityMode::Slave);
|
||||
m_entityMap->addEntity(entity);
|
||||
|
||||
if (clientInfo->interpolationTracker.interpolationEnabled())
|
||||
|
Loading…
Reference in New Issue
Block a user