float checkrules_suddendeathend;
float checkrules_overtimesadded; //how many overtimes have been already added
+string cache_mutatormsg;
+string cache_lastmutatormsg;
+
const int WINNING_NO = 0; // no winner, but time limits may terminate the game
const int WINNING_YES = 1; // winner found
const int WINNING_NEVER = 2; // no winner, enter overtime if time limit is reached
const int WINNING_STARTSUDDENDEATHOVERTIME = 3; // no winner, enter suddendeath overtime NOW
-bool limits_are_set = false;
-void SetLimits(int fraglimit_override, int leadlimit_override, float timelimit_override, float qualifying_override);
-
float WinningCondition_Scores(float limit, float leadlimit);
void SetWinners(.float field, float value);
-void CheckRules_Player(entity this);
void IntermissionThink(entity this);
void GotoNextMap(float reinit);
void ReadyRestart();
+string GetGametype();
+
void DumpStats(float final);
float Map_IsRecent(string m);
string GetNextMap();
void ShuffleMaplist();
void Map_Goto_SetStr(string nextmapname);
void Map_Goto(float reinit);
+void Map_MarkAsRecent(string m);
float DoNextMapOverride(float reinit);
void CheckRules_World();
+float RedirectionThink();