[nexuiz-commits] r7285 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Fri Jul 31 10:24:41 EDT 2009


Author: mand1nga
Date: 2009-07-31 10:24:41 -0400 (Fri, 31 Jul 2009)
New Revision: 7285

Modified:
   trunk/data/qcsrc/server/cl_client.qc
Log:
Prevent players from joining after the match ended (#419)

Modified: trunk/data/qcsrc/server/cl_client.qc
===================================================================
--- trunk/data/qcsrc/server/cl_client.qc	2009-07-30 23:42:43 UTC (rev 7284)
+++ trunk/data/qcsrc/server/cl_client.qc	2009-07-31 14:24:41 UTC (rev 7285)
@@ -28,13 +28,13 @@
 		sf |= 4; // zoomed
 	if(e.porto_v_angle_held)
 		sf |= 8; // angles held
-	
+
 	WriteByte(MSG_ENTITY, ENT_CLIENT_CLIENTDATA);
 	WriteByte(MSG_ENTITY, sf);
 
 	if(sf & 2)
 		WriteByte(MSG_ENTITY, to.spectatee_status);
-	
+
 	if(sf & 8)
 	{
 		WriteAngle(MSG_ENTITY, e.v_angle_x);
@@ -119,7 +119,7 @@
 	if(race_spawns)
 		if(spot.target == "")
 			return -1;
-	
+
 	if(clienttype(self) == CLIENTTYPE_REAL)
 	{
 		if(spot.restriction == 1)
@@ -227,7 +227,7 @@
 				// too short distance
 				spawn_allgood = FALSE;
 			}
-			else 
+			else
 			{
 				// perfect
 				spawn_allbad = FALSE;
@@ -412,7 +412,7 @@
 float Client_customizeentityforclient()
 {
 	entity modelsource;
-	
+
 	if(self.modelindex == 0)
 		return TRUE;
 
@@ -565,7 +565,7 @@
 		DropBall(self.ballcarried, self.origin + self.ballcarried.origin, self.velocity);
 
 	WaypointSprite_PlayerDead();
-	
+
 	if(self.killcount != -666)
 	{
 		if(g_lms)
@@ -582,7 +582,7 @@
 	PlayerScore_Clear(self); // clear scores when needed
 
 	self.spectatortime = time;
-	
+
 	self.classname = "observer";
 	self.iscreature = FALSE;
 	self.health = -666;
@@ -734,7 +734,7 @@
 		oldskin = self.skinindex;
 		self.skinindex = RestrictSkin(stof(self.playerskin));
 	}
-	
+
 	if(chmdl || oldskin != self.skinindex)
 		self.species = player_getspecies(); // model or skin has changed
 
@@ -792,6 +792,9 @@
 	if(!self.spawned)
 		self.classname = "observer";
 
+	if(gameover)
+		self.classname = "observer";
+
 	if(self.classname == "player") {
 		entity spot, oldself;
 
@@ -1132,7 +1135,7 @@
 	float killtime;
 	entity e;
 	killtime = cvar("g_balance_kill_delay");
-	
+
 	if(g_race_qualifying)
 		killtime = 0;
 
@@ -1241,7 +1244,7 @@
 	// send prediction settings to the client
 	stuffcmd(e, "\nin_bindmap 0 0\n");
 	/*
-	 * we no longer need to stuff this. Remove this comment block if you feel 
+	 * we no longer need to stuff this. Remove this comment block if you feel
 	 * 2.3 and higher (or was it 2.2.3?) don't need these any more
 	stuffcmd(e, strcat("cl_gravity ", ftos(cvar("sv_gravity")), "\n"));
 	stuffcmd(e, strcat("cl_movement_accelerate ", ftos(cvar("sv_accelerate")), "\n"));
@@ -1476,12 +1479,12 @@
 
 	if(self.entcs)
 		detach_entcs();
-	
+
 	if(cvar("sv_eventlog"))
 		GameLogEcho(strcat(":part:", ftos(self.playerid)));
 	bprint ("^4",self.netname);
 	bprint ("^4 disconnected\n");
-	
+
 	SoundEntity_Detach(self);
 
 	DropAllRunes(self);
@@ -1954,7 +1957,7 @@
 		self.pressedkeys &~= KEY_FORWARD;
 		self.pressedkeys &~= KEY_BACKWARD;
 	}
-	
+
 	if (self.movement_y > 0)
 	{	// right key pressed
 		self.pressedkeys |= KEY_RIGHT;
@@ -1970,7 +1973,7 @@
 		self.pressedkeys &~= KEY_RIGHT;
 		self.pressedkeys &~= KEY_LEFT;
 	}
-	
+
 	if (self.BUTTON_JUMP) // get if jump and crouch keys are pressed
 		self.pressedkeys |= KEY_JUMP;
 	else
@@ -2025,7 +2028,7 @@
 
 	if (self == self.enemy)
 		return 0;
-	
+
 	if(self.enemy.classname != "player")
 		return 0;
 
@@ -2276,7 +2279,7 @@
 	if(blockSpectators && frametime)
 		// WORKAROUND: only use dropclient in server frames (frametime set). Never use it in cl_movement frames (frametime zero).
 		checkSpectatorBlock();
-	
+
 	zoomstate_set = 0;
 
 	if(self.netname_previous != self.netname)
@@ -2474,7 +2477,7 @@
 				}
 			}
 		}
-		
+
 		if(self.health <= g_bloodloss && self.deadflag == DEAD_NO)
 		{
 			if(self.bloodloss_timer < time)
@@ -2708,7 +2711,7 @@
 
 	if(Drag_MayChangeAngles(draggee))
 		draggee.angles_y = draggee.angles_y * (1 - f) + (dragger.v_angle_y + dragger.draglocalangle) * f;
-	
+
 	draggee.ltime = max(servertime + serverframetime, draggee.ltime); // fixes func_train breakage
 
 	te_lightning1(dragger, dragger.origin + dragger.view_ofs, curorigin);
@@ -2802,7 +2805,7 @@
 								detach_sameorigin(self.cursor_trace_ent);
 							Drag_Begin(self, self.cursor_trace_ent, self.cursor_trace_endpos);
 						}
-	
+
 	if(Drag_IsDragging(self))
 	{
 		if(self.BUTTON_DRAG)



More information about the nexuiz-commits mailing list