//foobar
}
-.string playerstats_id;
-
void PlayerStats_GameReport_AddPlayer(entity e)
{
string s;
{
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;
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;
}
{
// 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;
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);
}
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()
{