// most weapons arena
if (M_ARGV(0, string) == "0" || M_ARGV(0, string) == "") M_ARGV(0, string) = "most";
}
+
+MUTATOR_HOOKFUNCTION(ca, SV_ParseServerCommand)
+{
+ shuffleteams_on_reset_map = !allowed_to_spawn;
+ return false;
+}
return true;
}
+MUTATOR_HOOKFUNCTION(ft, SV_ParseServerCommand)
+{
+ shuffleteams_on_reset_map = !(round_handler_IsActive() && !round_handler_IsRoundStarted());
+ return false;
+}
+
void freezetag_Initialize()
{
freezetag_teams = autocvar_g_freezetag_teams_override;
{
case CMD_REQUEST_COMMAND:
{
- shuffleteams();
+ if (shuffleteams_on_reset_map)
+ {
+ bprint("Players will be shuffled when this round is over.\n");
+ shuffleteams_on_reset_map = true;
+ }
+ else
+ shuffleteams();
return;
}
// Declarations for server side game commands
// =================================================
+bool shuffleteams_on_reset_map;
string GotoMap(string m);
void race_deleteTime(string map, float pos);
round_handler_Reset(game_starttime);
}
+ if (shuffleteams_on_reset_map)
+ {
+ shuffleteams();
+ shuffleteams_on_reset_map = false;
+ }
MUTATOR_CALLHOOK(reset_map_global);
FOREACH_ENTITY_FLOAT_ORDERED(pure_data, false,