r3904 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Fri Jul 25 01:49:13 EDT 2008


Author: div0
Date: 2008-07-25 01:49:13 -0400 (Fri, 25 Jul 2008)
New Revision: 3904

Modified:
   trunk/data/qcsrc/server/cl_client.qc
   trunk/data/qcsrc/server/g_damage.qc
   trunk/data/qcsrc/server/keyhunt.qc
   trunk/data/qcsrc/server/scores.qc
   trunk/data/qcsrc/server/scores.qh
   trunk/data/qcsrc/server/teamplay.qc
Log:
some scores updates; route even more through them; fix team change and connect


Modified: trunk/data/qcsrc/server/cl_client.qc
===================================================================
--- trunk/data/qcsrc/server/cl_client.qc	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/cl_client.qc	2008-07-25 05:49:13 UTC (rev 3904)
@@ -385,6 +385,8 @@
 	else if(self.killcount != -666)
 		bprint ("^4", self.netname, "^4 is spectating now\n");
 
+	PlayerScore_Clear(self); // clear scores when needed
+
 	self.spectatortime = time;
 	
 	self.classname = "observer";
@@ -1176,10 +1178,6 @@
 
 	bot_clientdisconnect();
 
-#ifdef CSQCSCORES
-	PlayerScore_Detach(self);
-#endif
-
 	if(entcs_start)
 		detach_entcs();
 	
@@ -1242,6 +1240,10 @@
 	}
 	*/
 
+#ifdef CSQCSCORES
+	PlayerScore_Detach(self);
+#endif
+
 	if(self.netname_previous)
 		strunzone(self.netname_previous);
 

Modified: trunk/data/qcsrc/server/g_damage.qc
===================================================================
--- trunk/data/qcsrc/server/g_damage.qc	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/g_damage.qc	2008-07-25 05:49:13 UTC (rev 3904)
@@ -42,9 +42,12 @@
 
 void UpdateFrags(entity player, float f)
 {
+#ifndef CSQCSCORES
 	// TODO remove this, make callers route through PlayerScores instead
 	player.frags += f;
 	player.totalfrags += f;
+#endif
+	PlayerTeamScore_AddScore(player, f);
 }
 
 void GiveFrags (entity attacker, entity targ, float f)
@@ -244,7 +247,7 @@
 					bprint ("^1", a, "^1 mows down a teammate\n");
 				}
 				GiveFrags(attacker, targ, -1);
-				PlayerScore_Add(attacker, -1); // teamkills DO cound as -1 kill right?
+				PlayerScore_Add(attacker, SP_KILLS, -1); // teamkills DO cound as -1 kill right?
 				if (targ.killcount > 2) {
 					if(sv_gentle)
 						bprint ("^1",s,"'s ^1",ftos(targ.killcount)," scoring spree was ended by a teammate!\n");

Modified: trunk/data/qcsrc/server/keyhunt.qc
===================================================================
--- trunk/data/qcsrc/server/keyhunt.qc	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/keyhunt.qc	2008-07-25 05:49:13 UTC (rev 3904)
@@ -473,8 +473,7 @@
 		while((key = player.kh_next))
 		{
 			kh_Scores_Event(player, key, "losekey", 0, 0);
-			if(PlayerScore_IsValid(player))
-				PlayerScore_Add(player, SP_KH_LOSEKEY, 1);
+			PlayerScore_Add(player, SP_KH_LOSEKEY, 1);
 			bprint(player.netname, "^7 died and lost the ", key.netname, "\n");
 			kh_Key_AssignTo(key, world);
 			makevectors('-1 0 0' * (45 + 45 * random()) + '0 360 0' * random());

Modified: trunk/data/qcsrc/server/scores.qc
===================================================================
--- trunk/data/qcsrc/server/scores.qc	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/scores.qc	2008-07-25 05:49:13 UTC (rev 3904)
@@ -200,14 +200,6 @@
 	}
 }
 
-float PlayerScore_IsValid(entity player)
-{
-	if(!player.scorekeeper)
-		return FALSE;
-
-	return TRUE;
-}
-
 void PlayerScore_Attach(entity player)
 {
 	entity sk;

Modified: trunk/data/qcsrc/server/scores.qh
===================================================================
--- trunk/data/qcsrc/server/scores.qh	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/scores.qh	2008-07-25 05:49:13 UTC (rev 3904)
@@ -17,15 +17,6 @@
 void PlayerScore_Add(entity player, float scorefield, float score);
 
 /**
- * Check if the player can have scores.
- * This is needed for example in keyhunt, when the carrier disconnects.
- * The key-losing happens too late... which should probably be fixed
- * but I'm just not in the mood to do that now as I'm busy making the
- * csqc part work <.<
- */
-float PlayerScore_IsValid(entity player);
-
-/**
  * Initialize the score of this player if needed.
  * Does nothing in teamplay.
  * Use that when a spectator becomes a player.

Modified: trunk/data/qcsrc/server/teamplay.qc
===================================================================
--- trunk/data/qcsrc/server/teamplay.qc	2008-07-24 18:48:31 UTC (rev 3903)
+++ trunk/data/qcsrc/server/teamplay.qc	2008-07-25 05:49:13 UTC (rev 3904)
@@ -25,6 +25,7 @@
 
 void TeamchangeFrags(entity e)
 {
+#ifndef CSQCSCORES
 	if(g_ctf)
 	{
 		e.captures = 0;
@@ -34,6 +35,8 @@
 		// reduce frags during a team change
 		DistributeFragsAmongTeam(e, (e.clientcolors & 0x0F) + 1, 1 - cvar("g_changeteam_fragtransfer") / 100);
 	}
+#endif
+	PlayerScore_Clear(e);
 }
 
 vector TeamColor(float teem)




More information about the nexuiz-commits mailing list