content_cao: fix getPlayerControl structure copy on each step (#5677)

Also fix some codestyle issues around it.
This commit is contained in:
Loïc Blot 2017-04-29 18:16:58 +02:00 committed by GitHub
parent 3db66b4531
commit 3251e44938
1 changed files with 7 additions and 13 deletions

View File

@ -1041,12 +1041,9 @@ void GenericCAO::updateNodePos()
void GenericCAO::step(float dtime, ClientEnvironment *env)
{
// Handel model of local player instantly to prevent lags
if(m_is_local_player)
{
if (m_is_local_player) {
LocalPlayer *player = m_env->getLocalPlayer();
if (m_is_visible)
{
if (m_is_visible) {
int old_anim = player->last_animation;
float old_anim_speed = player->last_animation_speed;
m_position = player->getPosition() + v3f(0,BS,0);
@ -1054,7 +1051,7 @@ void GenericCAO::step(float dtime, ClientEnvironment *env)
m_acceleration = v3f(0,0,0);
pos_translator.vect_show = m_position;
m_yaw = player->getYaw();
PlayerControl controls = player->getPlayerControl();
const PlayerControl &controls = player->getPlayerControl();
bool walking = false;
if (controls.up || controls.down || controls.left || controls.right ||
@ -1075,11 +1072,10 @@ void GenericCAO::step(float dtime, ClientEnvironment *env)
m_client->checkLocalPrivilege("fly"))))
new_speed *= 1.5;
// slowdown speed if sneeking
if(controls.sneak && walking)
if (controls.sneak && walking)
new_speed /= 2;
if(walking && (controls.LMB || controls.RMB))
{
if (walking && (controls.LMB || controls.RMB)) {
new_anim = player->local_animations[3];
player->last_animation = WD_ANIM;
} else if(walking) {
@ -1092,8 +1088,7 @@ void GenericCAO::step(float dtime, ClientEnvironment *env)
// Apply animations if input detected and not attached
// or set idle animation
if ((new_anim.X + new_anim.Y) > 0 && !player->isAttached)
{
if ((new_anim.X + new_anim.Y) > 0 && !player->isAttached) {
allow_update = true;
m_animation_range = new_anim;
m_animation_speed = new_speed;
@ -1101,8 +1096,7 @@ void GenericCAO::step(float dtime, ClientEnvironment *env)
} else {
player->last_animation = NO_ANIM;
if (old_anim != NO_ANIM)
{
if (old_anim != NO_ANIM) {
m_animation_range = player->local_animations[0];
updateAnimation();
}