]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/playerstats.qc
Merge remote-tracking branch 'origin/master' into samual/respawn_improvements
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / playerstats.qc
index c1f3ab09c6c85445bd29525d2adcc6853f41086d..a6e3d61e96824c813394cad6125eb98f8f3c95ce 100644 (file)
@@ -25,6 +25,7 @@ void PlayerStats_Init() // initiated before InitGameplayMode so that scores are
        PlayerStats_AddEvent(PLAYERSTATS_MATCHES);
        PlayerStats_AddEvent(PLAYERSTATS_JOINS);
        PlayerStats_AddEvent(PLAYERSTATS_SCOREBOARD_VALID);
+       PlayerStats_AddEvent(PLAYERSTATS_SCOREBOARD_POS);
        PlayerStats_AddEvent(PLAYERSTATS_RANK);
 
     // accuracy stats
@@ -67,12 +68,12 @@ void PlayerStats_AddPlayer(entity e)
        s = string_null;
        if(e.crypto_idfp != "" && e.cvar_cl_allow_uidtracking == 1)
                s = e.crypto_idfp;
-       else if(clienttype(e) == CLIENTTYPE_BOT)
+       else if(IS_BOT_CLIENT(e))
                s = sprintf("bot#%g#%s", skill, e.cleanname);
 
        if((s == "") || find(world, playerstats_id, s)) // already have one of the ID - next one can't be tracked then!
        {
-               if(clienttype(e) == CLIENTTYPE_BOT)
+               if(IS_BOT_CLIENT(e))
                        s = sprintf("bot#%d", e.playerid);
                else
                        s = sprintf("player#%d", e.playerid);
@@ -144,10 +145,10 @@ void PlayerStats_AddEvent(string event_id)
        }
 }
 
-void PlayerStats_Event(entity e, string event_id, float value)
+float PlayerStats_Event(entity e, string event_id, float value)
 {
        if((e.playerstats_id == "") || playerstats_db < 0)
-               return;
+               return 0;
        
        string key;
        float val;
@@ -155,6 +156,7 @@ void PlayerStats_Event(entity e, string event_id, float value)
        val = stof(db_get(playerstats_db, key));
        val += value;
        db_put(playerstats_db, key, ftos(val));
+       return val;
 }
 
 void PlayerStats_TeamScore(float t, string event_id, float value) // TODO: doesn't this remain unused?
@@ -351,7 +353,7 @@ void PlayerStats_AddGlobalInfo(entity p)
 
        db_put(playerstats_db, sprintf("%s:_playerid", p.playerstats_id), ftos(p.playerid));
 
-       if(p.cvar_cl_allow_uid2name == 1 || clienttype(p) == CLIENTTYPE_BOT)
+       if(p.cvar_cl_allow_uid2name == 1 || IS_BOT_CLIENT(p))
                db_put(playerstats_db, sprintf("%s:_netname", p.playerstats_id), p.netname);
 
        if(teamplay)
@@ -362,7 +364,7 @@ void PlayerStats_AddGlobalInfo(entity p)
 
        PlayerStats_Accuracy(p);
 
-       if(clienttype(p) == CLIENTTYPE_REAL)
+       if(IS_REAL_CLIENT(p))
        {
                if(p.latency_cnt)
                {