// mapinfo
BADCVAR("fraglimit");
- BADCVAR("g_arena");
BADCVAR("g_assault");
BADCVAR("g_ca");
BADCVAR("g_ca_teams");
// does nothing visible
BADCVAR("captureleadlimit_override");
- BADCVAR("g_arena_point_leadlimit");
BADCVAR("g_balance_kill_delay");
BADCVAR("g_ca_point_leadlimit");
BADCVAR("g_ctf_captimerecord_always");
Map_MarkAsRecent(mapname);
- PlayerStats_Init(); // we need this to be initiated before InitGameplayMode
+ PlayerStats_GameReport_Init(); // we need this to be initiated before InitGameplayMode
precache_model ("null"); // we need this one before InitGameplayMode
InitGameplayMode();
{
s = strcat(":player:see-labels:", GetPlayerScoreString(other, 0), ":");
s = strcat(s, ftos(rint(time - other.jointime)), ":");
- if(IS_PLAYER(other) || g_arena || other.caplayer == 1 || g_lms)
+ if(IS_PLAYER(other) || other.caplayer == 1 || g_lms)
s = strcat(s, ftos(other.team), ":");
else
s = strcat(s, "spectator:");
DumpStats(TRUE);
// send statistics
- entity e;
- PlayerStats_EndMatch(1);
- FOR_EACH_CLIENT(e)
- PlayerStats_AddGlobalInfo(e);
- PlayerStats_Shutdown();
+ PlayerStats_GameReport(TRUE);
WeaponStats_Shutdown();
Kill_Notification(NOTIF_ALL, world, MSG_CENTER, 0); // kill all centerprints now
if(WinningConditionHelper_zeroisworst)
leadlimit = 0; // not supported in this mode
- if(g_dm || g_tdm || g_arena || g_ca || (g_race && !g_race_qualifying) || g_nexball)
+ if(g_dm || g_tdm || g_ca || (g_race && !g_race_qualifying) || g_nexball)
// these modes always score in increments of 1, thus this makes sense
{
if(leaderfrags != WinningConditionHelper_topscore)
}
void MapVote_Start()
{
- if(mapvote_run)
- return;
+ // if mapvote is already running, don't do this initialization again
+ if(mapvote_run) { return; }
- // wait for stats to be sent first
- if(!playerstats_waitforme)
- return;
+ // don't start mapvote until after playerstats gamereport is sent
+ if(PlayerStats_GameReport_DelayMapVote) { 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()
{
void Shutdown()
{
- entity e;
-
gameover = 2;
if(world_initialized > 0)
print("Saving persistent data...\n");
Ban_SaveBans();
- PlayerStats_EndMatch(0);
- FOR_EACH_CLIENT(e)
- PlayerStats_AddGlobalInfo(e);
- PlayerStats_Shutdown();
+ // playerstats with unfinished match
+ PlayerStats_GameReport(FALSE);
if(!cheatcount_total)
{