r3922 - in trunk/data: . qcsrc/client qcsrc/common qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sat Jul 26 03:12:12 EDT 2008


Author: div0
Date: 2008-07-26 03:12:10 -0400 (Sat, 26 Jul 2008)
New Revision: 3922

Modified:
   trunk/data/defaultNexuiz.cfg
   trunk/data/qcsrc/client/Main.qc
   trunk/data/qcsrc/client/main.qh
   trunk/data/qcsrc/client/sbar.qc
   trunk/data/qcsrc/client/teamplay.qc
   trunk/data/qcsrc/common/constants.qh
   trunk/data/qcsrc/server/g_world.qc
   trunk/data/qcsrc/server/keyhunt.qc
   trunk/data/qcsrc/server/scores.qc
   trunk/data/qcsrc/server/teamplay.qc
Log:
LMS works!


Modified: trunk/data/defaultNexuiz.cfg
===================================================================
--- trunk/data/defaultNexuiz.cfg	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/defaultNexuiz.cfg	2008-07-26 07:12:10 UTC (rev 3922)
@@ -1056,6 +1056,7 @@
 // sbar: font size
 set sbar_fontsize 11
 alias sbar_font "loadfont user1 $*; sbar_columns_set"
+seta sbar_columns default
 sbar_font gfx/vera-sans
 
 // these entities are not referenced by anything directly, they just represent

Modified: trunk/data/qcsrc/client/Main.qc
===================================================================
--- trunk/data/qcsrc/client/Main.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/client/Main.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -64,7 +64,7 @@
 	registercmd("sbar_columns_help");
 
 	registercvar("sbar_usecsqc", "1");
-	registercvar("sbar_columns", "ping name | caps returns frags deaths", CVAR_SAVE);
+	registercvar("sbar_columns", "default", CVAR_SAVE);
 
 	gametype = 0;
 

Modified: trunk/data/qcsrc/client/main.qh
===================================================================
--- trunk/data/qcsrc/client/main.qh	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/client/main.qh	2008-07-26 07:12:10 UTC (rev 3922)
@@ -90,8 +90,8 @@
 .float scores[MAX_SCORE];
 .float teamscores[MAX_TEAMSCORE];
 
-#define IS_INCREASING(x) ( (x)&SFL_DECREASING )
-#define IS_DECREASING(x) ( !((x)&SFL_DECREASING) )
+#define IS_INCREASING(x) ( (x)&SFL_LOWER_IS_BETTER )
+#define IS_DECREASING(x) ( !((x)&SFL_LOWER_IS_BETTER) )
 
 float csqc_flags;
 #define CSQC_FLAG_READPICTURE 1

Modified: trunk/data/qcsrc/client/sbar.qc
===================================================================
--- trunk/data/qcsrc/client/sbar.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/client/sbar.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -285,6 +285,10 @@
 	print("^3kd^7 or ^3kdr^7 or ^3kdratio^7 or ^3k/d\n");
 	print("                         The kill-death ratio\n");
 
+	print("Before a field you can put a + or - sign, then a comma separated list\n");
+	print("of game types, then a slash, to make the field show up only in these\n");
+	print("or in all but these game types.\n");
+
 /*
 	print("^3caps^7 or ^3captures^7         Number of flags captured\n");
 	print("^3rets^7 or ^3returns^7          Number of flags returned\n");
@@ -305,7 +309,7 @@
 
 string Sbar_DefaultColumnLayout()
 {
-	return "ping name | +kh,ctf/caps -ctf,kh/kills -ctf,kh/deaths score";
+	return "ping name | +kh,ctf/caps -ctf,kh/kills -ctf,kh/deaths -lms,score +lms,lives +lms,place";
 	/*
 	switch(gametype)
 	{
@@ -433,7 +437,7 @@
 			if(field == ps_primary)
 				sbar_field_rgb = '1 1 0';
 			else if(field == ps_secondary)
-				sbar_field_rgb = '1 0 1';
+				sbar_field_rgb = '0 1 1';
 			else
 				sbar_field_rgb = '1 1 1';
 			if(!tmp)

Modified: trunk/data/qcsrc/client/teamplay.qc
===================================================================
--- trunk/data/qcsrc/client/teamplay.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/client/teamplay.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -18,7 +18,10 @@
 {
 	if(getplayerkey(i, "frags") == "-666")
 		return COLOR_SPECTATOR;
-	return stof(getplayerkey(i, "colors")) & 15;
+	else if(!teamplay)
+		return 0;
+	else
+		return stof(getplayerkey(i, "colors")) & 15;
 }
 
 vector GetTeamRGB(float color)

Modified: trunk/data/qcsrc/common/constants.qh
===================================================================
--- trunk/data/qcsrc/common/constants.qh	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/common/constants.qh	2008-07-26 07:12:10 UTC (rev 3922)
@@ -195,9 +195,9 @@
 const float MAPVOTE_NET_OWNVOTE = 3;
 
 /**
- * Lower scores are better (e.g. deaths)
+ * Lower scores are better (e.g. suicides)
  */
-#define SFL_DECREASING          1
+#define SFL_LOWER_IS_BETTER     1
 
 /**
  * Don't show zero values as scores

Modified: trunk/data/qcsrc/server/g_world.qc
===================================================================
--- trunk/data/qcsrc/server/g_world.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/server/g_world.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -1324,8 +1324,7 @@
 // limit.
 float WinningCondition_LMS()
 {
-	// FIXME make this use the new score system
-	entity head;
+	entity head, head2;
 	float have_player;
 	float have_players;
 	float l;
@@ -1337,8 +1336,8 @@
 	head = find(world, classname, "player");
 	if(head)
 		have_player = TRUE;
-	head = find(head, classname, "player");
-	if(head)
+	head2 = find(head, classname, "player");
+	if(head2)
 		have_players = TRUE;
 
 	if(have_player)
@@ -1363,6 +1362,8 @@
 			else
 			{
 				// a winner!
+				// and assign him his first place
+				PlayerScore_Add(head, SP_LMS_PLACE, 1);
 				return WINNING_YES;
 			}
 		}

Modified: trunk/data/qcsrc/server/keyhunt.qc
===================================================================
--- trunk/data/qcsrc/server/keyhunt.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/server/keyhunt.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -978,13 +978,13 @@
 	ScoreInfo_SetLabel_TeamScore  (ST_KH_CAPS,      "caps",      SFL_SORT_PRIO_SECONDARY);
 	ScoreInfo_SetLabel_PlayerScore(SP_KILLS,        "kills",     0);
 	ScoreInfo_SetLabel_PlayerScore(SP_DEATHS,       "deaths",    0);
-	ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_DECREASING);
+	ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_LOWER_IS_BETTER);
 	ScoreInfo_SetLabel_PlayerScore(SP_SCORE,        "score",     SFL_SORT_PRIO_PRIMARY);
 	ScoreInfo_SetLabel_PlayerScore(SP_KH_COLLECT,   "collect",   0);
-	ScoreInfo_SetLabel_PlayerScore(SP_KH_LOSEKEY,   "losekey",   SFL_DECREASING);
+	ScoreInfo_SetLabel_PlayerScore(SP_KH_LOSEKEY,   "losekey",   SFL_LOWER_IS_BETTER);
 	ScoreInfo_SetLabel_PlayerScore(SP_KH_CAPS,      "caps",      SFL_SORT_PRIO_SECONDARY);
 	ScoreInfo_SetLabel_PlayerScore(SP_KH_PUSH,      "push",      0);
-	ScoreInfo_SetLabel_PlayerScore(SP_KH_DESTROYED, "destroyed", SFL_DECREASING);
+	ScoreInfo_SetLabel_PlayerScore(SP_KH_DESTROYED, "destroyed", SFL_LOWER_IS_BETTER);
 	ScoreInfo_SetLabel_PlayerScore(SP_KH_KCFRAG,    "kcfrag",    0);
 }
 

Modified: trunk/data/qcsrc/server/scores.qc
===================================================================
--- trunk/data/qcsrc/server/scores.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/server/scores.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -29,7 +29,7 @@
 
 	previous_y = fieldflags & SFL_SORT_PRIO_MASK;
 
-	if(fieldflags & SFL_DECREASING)
+	if(fieldflags & SFL_LOWER_IS_BETTER)
 		previous_x = (t2.field - t1.field);
 	else
 		previous_x = (t1.field - t2.field);

Modified: trunk/data/qcsrc/server/teamplay.qc
===================================================================
--- trunk/data/qcsrc/server/teamplay.qc	2008-07-26 06:57:31 UTC (rev 3921)
+++ trunk/data/qcsrc/server/teamplay.qc	2008-07-26 07:12:10 UTC (rev 3922)
@@ -222,10 +222,10 @@
 		ScoreInfo_Init(0);
 		ScoreInfo_SetLabel_PlayerScore(SP_KILLS,        "kills",     0);
 		ScoreInfo_SetLabel_PlayerScore(SP_DEATHS,       "deaths",    0);
-		ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_DECREASING);
+		ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_LOWER_IS_BETTER);
 		// do not define SP_SCORE for LMS
 		ScoreInfo_SetLabel_PlayerScore(SP_LMS_LIVES,    "lives",     SFL_SORT_PRIO_SECONDARY);
-		ScoreInfo_SetLabel_PlayerScore(SP_LMS_PLACE,    "place",     SFL_DECREASING | SFL_HIDE_ZERO | SFL_SORT_PRIO_PRIMARY);
+		ScoreInfo_SetLabel_PlayerScore(SP_LMS_PLACE,    "place",     SFL_LOWER_IS_BETTER | SFL_HIDE_ZERO | SFL_SORT_PRIO_PRIMARY);
 	}
 	else if(game == GAME_ARENA || cvar("g_arena"))
 	{
@@ -339,7 +339,7 @@
 		ScoreInfo_SetLabel_TeamScore  (ST_SCORE,        "score",     SFL_SORT_PRIO_PRIMARY);
 		ScoreInfo_SetLabel_PlayerScore(SP_KILLS,        "kills",     0);
 		ScoreInfo_SetLabel_PlayerScore(SP_DEATHS,       "deaths",    0);
-		ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_DECREASING);
+		ScoreInfo_SetLabel_PlayerScore(SP_SUICIDES,     "suicides",  SFL_LOWER_IS_BETTER);
 		ScoreInfo_SetLabel_PlayerScore(SP_SCORE,        "score",     SFL_SORT_PRIO_PRIMARY);
 	}
 }




More information about the nexuiz-commits mailing list