dlls/player_command.cpp
141516171819
#include "movehelper_server.h"
#include "iservervehicle.h"
#include "tier0/vprof.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
14151617181920
#include "movehelper_server.h"
#include "iservervehicle.h"
#include "tier0/vprof.h"
#include "ff_player.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
168169170171172173174
}
// Prepare remaining fields
move->m_flClientMaxSpeed = player->m_flMaxspeed;
move->m_nOldButtons = player->m_Local.m_nOldButtons;
move->m_vecAngles = player->pl.v_angle;
169170171172173174175176177178179180181182183184185186187188189190191192
}
// Prepare remaining fields
// --> Mirv:
// We're delaying the max speed for the server so that the client
// has time to catch up. This will stop a lot of warping that occurs when the
// max speed changes.
// m_flMaxspeedChangeTime is set to curtime + the client's latency
move->m_flClientMaxSpeed = player->m_flMaxspeed;
CFFPlayer *pPlayer = ToFFPlayer(player);
// Don't do this if not yet ready to apply the new speed modifier
if (pPlayer && pPlayer->m_flSpeedModifierChangeTime <= gpGlobals->curtime)
{
move->m_flClientMaxSpeed *= pPlayer->m_flSpeedModifier;
}
// <-- Mirv
move->m_nOldButtons = player->m_Local.m_nOldButtons;
move->m_vecAngles = player->pl.v_angle;
199200201202203204205
{
VPROF( "CPlayerMove::FinishMove" );
player->m_flMaxspeed = move->m_flClientMaxSpeed;
player->SetAbsOrigin( move->m_vecAbsOrigin );
player->SetAbsVelocity( move->m_vecVelocity );
217218219220221222223224225226
{
VPROF( "CPlayerMove::FinishMove" );
// --> Mirv: Don't change this afterall.
//player->m_flMaxspeed = move->m_flClientMaxSpeed;
// <--
player->SetAbsOrigin( move->m_vecAbsOrigin );
player->SetAbsVelocity( move->m_vecVelocity );