From: Samual Lenks Date: Sun, 1 Dec 2013 02:25:05 +0000 (-0500) Subject: Invert playerstats_waitforme so it's not fucking retarded X-Git-Tag: xonotic-v0.8.0~139^2~1^2~98 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=62701803b446536af7498f79c3334cb73e932cfd;p=xonotic%2Fxonotic-data.pk3dir.git Invert playerstats_waitforme so it's not fucking retarded --- diff --git a/qcsrc/common/playerstats.qc b/qcsrc/common/playerstats.qc index e90a92c9a..8cea4f9bc 100644 --- a/qcsrc/common/playerstats.qc +++ b/qcsrc/common/playerstats.qc @@ -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); diff --git a/qcsrc/server/g_world.qc b/qcsrc/server/g_world.qc index 53b6c9308..aed68ab76 100644 --- a/qcsrc/server/g_world.qc +++ b/qcsrc/server/g_world.qc @@ -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() {