diff --git a/Source/Client/Player.c b/Source/Client/Player.c index c63d2af2..385367e6 100755 --- a/Source/Client/Player.c +++ b/Source/Client/Player.c @@ -20,20 +20,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. float Player_PreDraw( void ) { if ( self.entnum == player_localentnum ) { - self.movetype = MOVETYPE_WALK; - // Prepare rollback vector vOldOrigin = self.origin; vector vOldVelocity = self.velocity; float fOldPMoveFlags = self.pmove_flags; - // Apply physics for every single input-frame that has not yet been - // acknowledged by the server (servercommandframe = last acknowledged frame) + self.movetype = MOVETYPE_WALK; + for ( int i = servercommandframe + 1; i <= clientcommandframe; i++ ) { getinputstate( i ); runstandardplayerphysics( self ); } - // Smooth stair stepping, this has to be done manually! vPlayerOriginOld = vPlayerOrigin; if ( ( self.flags & FL_ONGROUND ) && ( self.origin_z - vPlayerOriginOld_z > 0 ) ) { @@ -54,14 +51,12 @@ float Player_PreDraw( void ) { vPlayerVelocity = self.velocity; addentity( self ); - // Time to roll back self.origin = vOldOrigin; setorigin( self, self.origin ); self.velocity = vOldVelocity; self.pmove_flags = fOldPMoveFlags; self.movetype = MOVETYPE_NONE; - // Set renderflag for mirrors! self.renderflags = RF_EXTERNALMODEL; } else { addentity( self ); diff --git a/Source/Server/Client.c b/Source/Server/Client.c index 433b2df9..d2c3c799 100755 --- a/Source/Server/Client.c +++ b/Source/Server/Client.c @@ -127,7 +127,7 @@ void SV_RunClientCommand( void ) { self.fInBuyZone = FALSE; self.fInHostageZone = FALSE; - if( fGameState == GAME_FREEZE && self.team != 0 ) { + if ( fGameState == GAME_FREEZE && self.health > 0 ) { input_movevalues = '0 0 0'; input_buttons = 0; input_impulse = 0; diff --git a/freecs/motd.txt b/freecs/motd.txt new file mode 100755 index 00000000..afb67f72 --- /dev/null +++ b/freecs/motd.txt @@ -0,0 +1,3 @@ +You are playing FreeCS +Visit the official FreeCS web site @ +icculus.org/~marco/freecs/ \ No newline at end of file diff --git a/freecs/progs.dat b/freecs/progs.dat index 1533f8b3..6b9f76d9 100644 Binary files a/freecs/progs.dat and b/freecs/progs.dat differ