]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
add some more stuff to playerstats: 1) In header: W: winning team ID 2) In stats...
authorFruitieX <fruitiex@gmail.com>
Fri, 15 Apr 2011 17:01:06 +0000 (20:01 +0300)
committerFruitieX <fruitiex@gmail.com>
Fri, 15 Apr 2011 17:01:06 +0000 (20:01 +0300)
qcsrc/server/playerstats.qc
qcsrc/server/playerstats.qh

index 70ca6c912bfd6691befc7c423fc5211d8e90e3ab..663a59b32e5d1d54f57f5f611190f08296a8e1c8 100644 (file)
@@ -23,7 +23,7 @@ void PlayerStats_Init()
        PlayerStats_AddEvent(PLAYERSTATS_MATCHES);
        PlayerStats_AddEvent(PLAYERSTATS_JOINS);
        PlayerStats_AddEvent(PLAYERSTATS_SCOREBOARD_VALID);
-       PlayerStats_AddEvent(PLAYERSTATS_TEAM);
+       PlayerStats_AddEvent(PLAYERSTATS_RANK);
 
        PlayerStats_AddEvent(PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_3);
        PlayerStats_AddEvent(PLAYERSTATS_ACHIEVEMENT_KILL_SPREE_5);
@@ -175,7 +175,7 @@ void PlayerStats_Sent_URI_Get_Callback(float id, float status, string data)
                        total-<scoreboardname>: total score of that scoreboard item
                        scoreboard-<scoreboardname>: end-of-game score of that scoreboard item (can differ in non-team games)
                        achievement-<achievementname>: achievement counters
-            player-rank <number>: rank of player
+            rank <number>: rank of player
 */
 
 //#NO AUTOCVARS START
@@ -211,6 +211,9 @@ void PlayerStats_Shutdown()
                bufstr_set(b, i++, sprintf("C %d", cvar_purechanges_count));
         if(teams_matter)
         {
+            entity winner;
+            winner = PlayerScore_Sort(score_dummyfield);
+            bufstr_set(b, i++, sprintf("W %d", winner.team));
             for(t = teamstats_last; (tn = db_get(playerstats_db, sprintf("%s", t))) != ""; t = tn)
             {
                 bufstr_set(b, i++, strcat("t ", t));
@@ -234,7 +237,6 @@ void PlayerStats_Shutdown()
                 }
                 bufstr_set(b, i++, "");
             }
-            bufstr_set(b, i++, "");
         }
         else {
             for(p = playerstats_last; (pn = db_get(playerstats_db, sprintf("%s:*", p))) != ""; p = pn)
@@ -305,7 +307,8 @@ void PlayerStats_AddGlobalInfo(entity p)
 
 void PlayerStats_EndMatch(float finished)
 {
-       entity p;
+       entity p, winner;
+    winner = PlayerScore_Sort(score_dummyfield);
        FOR_EACH_PLAYER(p)
        {
                PlayerScore_PlayerStats(p);
@@ -314,6 +317,7 @@ void PlayerStats_EndMatch(float finished)
                {
                        PlayerStats_Event(p, PLAYERSTATS_WINS, p.winning);
                        PlayerStats_Event(p, PLAYERSTATS_MATCHES, 1);
+                       PlayerStats_Event(p, PLAYERSTATS_RANK, p.score_dummyfield);
                }
        }
 }
index dc9ac7c5f08960a15df2fc2e348bef1cdd08428d..f546e560590025c124a4615905e07a2c15252a3e 100644 (file)
@@ -4,7 +4,7 @@ string PLAYERSTATS_WINS = "wins";
 string PLAYERSTATS_MATCHES = "matches";
 string PLAYERSTATS_JOINS = "joins";
 string PLAYERSTATS_SCOREBOARD_VALID = "scoreboardvalid";
-string PLAYERSTATS_TEAM = "team";
+string PLAYERSTATS_RANK = "rank";
 
 string PLAYERSTATS_TOTAL = "total-";
 string PLAYERSTATS_SCOREBOARD = "scoreboard-";