]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/playerstats.qc
Document r parameter in player stats specs
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / playerstats.qc
index ac3c46822ef472574a08809e41f90ca6058c3640..f8aa2b514059884b5ed43020a06740ece5a6fc37 100644 (file)
@@ -40,8 +40,10 @@ void PlayerStats_GameReport_Reset_All()
        strfree(PS_GR_OUT_EVL);
 
        if (PS_GR_OUT_DB >= 0)
+       {
                db_close(PS_GR_OUT_DB);
-       PlayerStats_GameReport_Init();
+               PlayerStats_GameReport_Init();
+       }
        if(PS_GR_OUT_DB < 0)
                return;
 
@@ -203,7 +205,7 @@ void PlayerStats_GameReport_FinalizePlayer(entity p)
        {
                if(CS(p).latency_cnt)
                {
-                       float latency = (CS(p).latency_sum / CS(p).latency_cnt);
+                       float latency = max(0, CS(p).latency_sum / CS(p).latency_cnt);
                        if(latency)
                                PlayerStats_GameReport_Event_Player(p, PLAYERSTATS_AVGLATENCY, latency);
                }
@@ -279,6 +281,10 @@ void PlayerStats_GameReport_Init() // initiated before InitGameplayMode so that
                PlayerStats_GameReport_DelayMapVote = true;
 
                serverflags |= SERVERFLAG_PLAYERSTATS;
+               if(autocvar_g_playerstats_gamereport_uri != cvar_defstring("g_playerstats_gamereport_uri"))
+               {
+                       serverflags |= SERVERFLAG_PLAYERSTATS_CUSTOM;
+               }
 
                PlayerStats_GameReport_AddEvent(PLAYERSTATS_ALIVETIME);
                PlayerStats_GameReport_AddEvent(PLAYERSTATS_AVGLATENCY);
@@ -360,6 +366,7 @@ void PlayerStats_GameReport_Handler(entity fh, entity pass, float status)
                 * i: player index
                 * n: nickname of the player (optional)
                 * t: team ID
+                * r: player ranking enabled / disabled
                 * e: followed by an event name, a space, and the event count/score
                 *  event names can be:
                 *   alivetime: total playing time of the player