diff --git a/Source/Client/Player.c b/Source/Client/Player.c index bfb70926..d7978f4d 100755 --- a/Source/Client/Player.c +++ b/Source/Client/Player.c @@ -32,10 +32,10 @@ float Player_PreDraw( void ) { vector vOldVelocity = self.velocity; float fOldPMoveFlags = self.pmove_flags; - if ( getplayerkeyvalue( player_localnum, "*spectator" ) == "1" ) { - self.movetype = MOVETYPE_NOCLIP; - } else { + if ( getplayerkeyvalue( player_localnum, "*spectator" ) == "0" ) { self.movetype = MOVETYPE_WALK; + } else { + self.movetype = MOVETYPE_NOCLIP; } for ( int i = servercommandframe + 1; i <= clientcommandframe; i++ ) { diff --git a/Source/Server/Spawn.c b/Source/Server/Spawn.c index e711b4c9..6b06d3e0 100755 --- a/Source/Server/Spawn.c +++ b/Source/Server/Spawn.c @@ -201,7 +201,7 @@ void Spawn_MakeSpectator( void ) { setsize (self, '-16 -16 -16', '16 16 16'); self.view_ofs = self.velocity = '0 0 0'; - forceinfokey( self, "*spectator", "1" ); // Make sure we are known as a spectator + forceinfokey( self, "*spectator", "2" ); // Make sure we are known as a spectator // Clear all the ammo stuff for ( int i = 0; i < CS_WEAPON_COUNT; i++ ) { diff --git a/freecs/csprogs.dat b/freecs/csprogs.dat index 49844980..6d2cbdc0 100644 Binary files a/freecs/csprogs.dat and b/freecs/csprogs.dat differ diff --git a/freecs/progs.dat b/freecs/progs.dat index 502f81df..6053b969 100644 Binary files a/freecs/progs.dat and b/freecs/progs.dat differ