]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Invert playerstats_waitforme so it's not fucking retarded
authorSamual Lenks <samual@xonotic.org>
Sun, 1 Dec 2013 02:25:05 +0000 (21:25 -0500)
committerSamual Lenks <samual@xonotic.org>
Sun, 1 Dec 2013 02:25:05 +0000 (21:25 -0500)
qcsrc/common/playerstats.qc
qcsrc/server/g_world.qc

index e90a92c9aae69116bd14ff72340841fb1e5def5e..8cea4f9bceec5e0fd7fd6afa42adf5d65cffdd25 100644 (file)
@@ -32,8 +32,6 @@ void PlayerStats_Prematch(void)
        //foobar
 }
 
-.string playerstats_id;
-
 void PlayerStats_GameReport_AddPlayer(entity e)
 {
        string s;
@@ -213,13 +211,13 @@ void PlayerStats_GameReport_Init() // initiated before InitGameplayMode so that
 {
        string uri;
        PS_GR_OUT_DB = -1;
-       playerstats_waitforme = TRUE;
+       playerstats_waitforme = FALSE;
        uri = autocvar_g_playerstats_uri;
        if(uri == "")
                return;
        PS_GR_OUT_DB = db_create();
        if(PS_GR_OUT_DB >= 0)
-               playerstats_waitforme = FALSE; // must wait for it at match end
+               playerstats_waitforme = TRUE; // must wait for it at match end
 
        serverflags |= SERVERFLAG_PLAYERSTATS;
 
@@ -266,12 +264,12 @@ void PlayerStats_GameReport_Shutdown()
        uri = autocvar_g_playerstats_uri;
        if(uri != "")
        {
-               playerstats_waitforme = FALSE;
+               playerstats_waitforme = TRUE;
                url_multi_fopen(uri, FILE_APPEND, PlayerStats_GameReport_Handler, world);
        }
        else
        {
-               playerstats_waitforme = TRUE;
+               playerstats_waitforme = FALSE;
                db_close(PS_GR_OUT_DB);
                PS_GR_OUT_DB = -1;
        }
@@ -414,7 +412,7 @@ void PlayerStats_GameReport_Handler(entity fh, entity pass, float status)
                {
                        // url_fclose has finished
                        print("Player stats written\n");
-                       playerstats_waitforme = TRUE;
+                       playerstats_waitforme = FALSE;
                        db_close(PS_GR_OUT_DB);
                        PS_GR_OUT_DB = -1;
                        break;
@@ -424,7 +422,7 @@ void PlayerStats_GameReport_Handler(entity fh, entity pass, float status)
                default:
                {
                        print("Player stats writing failed: ", ftos(status), "\n");
-                       playerstats_waitforme = TRUE;
+                       playerstats_waitforme = FALSE;
                        if(PS_GR_OUT_DB >= 0)
                        {
                                db_close(PS_GR_OUT_DB);
index 53b6c930817846f71834832a6ef1dccaa29bb662..aed68ab76f6587723859c3b11541ef4aa661f2a6 100644 (file)
@@ -2642,16 +2642,27 @@ void MapVote_Tick()
 }
 void MapVote_Start()
 {
-       if(mapvote_run)
-               return;
+       // if mapvote is already running, don't do this initialization again
+       if(mapvote_run) { return; }
+
+       // don't start mapvote until after playerstats gamereport is sent
+       if(playerstats_waitforme) { return; }
 
-       // wait for stats to be sent first
-       if(!playerstats_waitforme)
-               return;
 
+       // set up map information for mapvote
        MapInfo_Enumerate();
-       if(MapInfo_FilterGametype(MapInfo_CurrentGametype(), MapInfo_CurrentFeatures(), MapInfo_RequiredFlags(), MapInfo_ForbiddenFlags(), 1))
-               mapvote_run = TRUE;
+       if
+       (
+               MapInfo_FilterGametype
+               (
+                       MapInfo_CurrentGametype(),
+                       MapInfo_CurrentFeatures(),
+                       MapInfo_RequiredFlags(),
+                       MapInfo_ForbiddenFlags(),
+                       1
+               )
+       )
+               { mapvote_run = TRUE; }
 }
 void MapVote_Think()
 {