this.nextthink = time + delta;
e = edict_num(this.cnt + 1);
- if(IS_REAL_CLIENT(e))
+ if(IS_CLIENT(e) && IS_REAL_CLIENT(e))
{
WriteHeader(MSG_BROADCAST, TE_CSQC_PINGPLREPORT);
WriteByte(MSG_BROADCAST, this.cnt);
else
{
this.nextthink = time + 1;
- LOG_INFO("Waiting for _sv_init being set to 1 by initialization scripts...\n");
+ LOG_INFO("Waiting for _sv_init being set to 1 by initialization scripts...");
}
}
BADCVAR("g_freezetag");
BADCVAR("g_freezetag_teams");
BADCVAR("g_invasion_teams");
+ BADCVAR("g_invasion_type");
BADCVAR("g_jailbreak");
BADCVAR("g_jailbreak_teams");
BADCVAR("g_keepaway");
o.y += random() * (world.maxs.y - world.mins.y);
o.z += random() * (world.maxs.z - world.mins.z);
- tracebox(o, STAT(PL_MIN, NULL), STAT(PL_MAX, NULL), o - '0 0 32768', MOVE_WORLDONLY, NULL);
+ tracebox(o, STAT(PL_MIN), STAT(PL_MAX), o - '0 0 32768', MOVE_WORLDONLY, NULL);
if(trace_fraction == 1)
continue;
tracebox(o, '-1 -1 -1' * i, '1 1 1' * i, o - '0 0 32768', MOVE_WORLDONLY, NULL);
if(trace_fraction == 1)
continue;
- LOG_INFO(ftos(i), " -> ", vtos(trace_endpos), "\n");
+ LOG_INFO(ftos(i), " -> ", vtos(trace_endpos));
}
break;
MapInfo_Shutdown();
}
-void SetLimits(int fraglimit_override, int leadlimit_override, float timelimit_override, float qualifying_override)
-{
- if(!autocvar_g_campaign)
- {
- if(fraglimit_override >= 0) cvar_set("fraglimit", ftos(fraglimit_override));
- if(timelimit_override >= 0) cvar_set("timelimit", ftos(timelimit_override));
- if(leadlimit_override >= 0) cvar_set("leadlimit", ftos(leadlimit_override));
- if(qualifying_override >= 0) cvar_set("g_race_qualifying_timelimit", ftos(qualifying_override));
- }
- limits_are_set = true;
-}
-
void Map_MarkAsRecent(string m);
float world_already_spawned;
void Nagger_Init();
fclose(sentinel);
if (switchversion != "" && switchversion != WATERMARK)
{
- LOG_INFOF("Switching progs: " WATERMARK " -> %s\n", switchversion);
+ LOG_INFOF("Switching progs: " WATERMARK " -> %s", switchversion);
// if it doesn't exist, assume either:
// a) the current program was overwritten
// b) this is a client only update
}
if (wantrestart)
{
- LOG_INFOF("Restart requested\n");
+ LOG_INFOF("Restart requested");
changelevel(mapname);
// let initialization continue, shutdown depends on it
}
readlevelcvars();
GrappleHookInit();
- if(!limits_are_set)
- SetLimits(autocvar_fraglimit_override, autocvar_leadlimit_override, autocvar_timelimit_override, -1);
+ GameRules_limit_fallbacks();
if(warmup_limit == 0)
warmup_limit = (autocvar_timelimit > 0) ? autocvar_timelimit * 60 : autocvar_timelimit;
continue;
if(argv(0) == "cd")
{
- LOG_INFO("Found ^1UNSUPPORTED^7 cd loop command in .cfg file; put this line in mapinfo instead:\n");
- LOG_INFO(" cdtrack ", argv(2), "\n");
+ LOG_INFO("Found ^1UNSUPPORTED^7 cd loop command in .cfg file; put this line in mapinfo instead:");
+ LOG_INFO(" cdtrack ", argv(2));
}
else if(argv(0) == "fog")
{
- LOG_INFO("Found ^1UNSUPPORTED^7 fog command in .cfg file; put this line in worldspawn in the .map/.bsp/.ent file instead:\n");
- LOG_INFO(" \"fog\" \"", s, "\"\n");
+ LOG_INFO("Found ^1UNSUPPORTED^7 fog command in .cfg file; put this line in worldspawn in the .map/.bsp/.ent file instead:");
+ LOG_INFO(" \"fog\" \"", s, "\"");
}
else if(argv(0) == "set")
{
- LOG_INFO("Found ^1UNSUPPORTED^7 set command in .cfg file; put this line in mapinfo instead:\n");
- LOG_INFO(" clientsettemp_for_type all ", argv(1), " ", argv(2), "\n");
+ LOG_INFO("Found ^1UNSUPPORTED^7 set command in .cfg file; put this line in mapinfo instead:");
+ LOG_INFO(" clientsettemp_for_type all ", argv(1), " ", argv(2));
}
else if(argv(0) != "//")
{
- LOG_INFO("Found ^1UNSUPPORTED^7 set command in .cfg file; put this line in mapinfo instead:\n");
- LOG_INFO(" clientsettemp_for_type all ", argv(0), " ", argv(1), "\n");
+ LOG_INFO("Found ^1UNSUPPORTED^7 set command in .cfg file; put this line in mapinfo instead:");
+ LOG_INFO(" clientsettemp_for_type all ", argv(0), " ", argv(1));
}
}
fclose(fd);
WinningConditionHelper(this); // set worldstatus
world_initialized = 1;
+ __spawnfunc_spawn_all();
}
spawnfunc(light)
{
FixIntermissionClient(this);
- float server_screenshot = (autocvar_sv_autoscreenshot && this.cvar_cl_autoscreenshot);
- float client_screenshot = (this.cvar_cl_autoscreenshot == 2);
+ float server_screenshot = (autocvar_sv_autoscreenshot && CS(this).cvar_cl_autoscreenshot);
+ float client_screenshot = (CS(this).cvar_cl_autoscreenshot == 2);
if( (server_screenshot || client_screenshot)
&& ((this.autoscreenshot > 0) && (time > this.autoscreenshot)) )
s = strcat(s, GetGametype(), "_", GetMapname(), ":", ftos(rint(time)));
if(to_console)
- LOG_INFO(s, "\n");
+ LOG_INFO(s);
if(to_eventlog)
GameLogEcho(s);
s = strcat(":labels:player:", GetPlayerScoreString(NULL, 0));
if(to_console)
- LOG_INFO(s, "\n");
+ LOG_INFO(s);
if(to_eventlog)
GameLogEcho(s);
if(to_file)
fputs(file, strcat(s, "\n"));
- FOREACH_CLIENT(IS_REAL_CLIENT(it) || (IS_BOT_CLIENT(it) && autocvar_sv_logscores_bots), LAMBDA(
+ FOREACH_CLIENT(IS_REAL_CLIENT(it) || (IS_BOT_CLIENT(it) && autocvar_sv_logscores_bots), {
s = strcat(":player:see-labels:", GetPlayerScoreString(it, 0), ":");
s = strcat(s, ftos(rint(time - CS(it).jointime)), ":");
if(IS_PLAYER(it) || MUTATOR_CALLHOOK(GetPlayerStatus, it))
s = strcat(s, "spectator:");
if(to_console)
- LOG_INFO(s, playername(it, false), "\n");
+ LOG_INFO(s, playername(it, false));
if(to_eventlog)
GameLogEcho(strcat(s, ftos(it.playerid), ":", playername(it, false)));
if(to_file)
fputs(file, strcat(s, playername(it, false), "\n"));
- ));
+ });
if(teamplay)
{
s = strcat(":labels:teamscores:", GetTeamScoreString(0, 0));
if(to_console)
- LOG_INFO(s, "\n");
+ LOG_INFO(s);
if(to_eventlog)
GameLogEcho(s);
if(to_file)
s = strcat(":teamscores:see-labels:", GetTeamScoreString(i, 0));
s = strcat(s, ":", ftos(i));
if(to_console)
- LOG_INFO(s, "\n");
+ LOG_INFO(s);
if(to_eventlog)
GameLogEcho(s);
if(to_file)
}
if(to_console)
- LOG_INFO(":end\n");
+ LOG_INFO(":end");
if(to_eventlog)
GameLogEcho(":end");
if(to_file)
{
stuffcmd(e, "\nscr_printspeed 1000000\n");
RandomSelection_Init();
- FOREACH_WORD(autocvar_sv_intermission_cdtrack, true, LAMBDA(
+ FOREACH_WORD(autocvar_sv_intermission_cdtrack, true, {
RandomSelection_AddString(it, 1, 1);
- ));
+ });
if (RandomSelection_chosen_string != "")
{
stuffcmd(e, sprintf("\ncd loop %s\n", RandomSelection_chosen_string));
GameLogClose();
- FOREACH_CLIENT(IS_PLAYER(it), LAMBDA(
+ FOREACH_CLIENT(IS_PLAYER(it), {
FixIntermissionClient(it);
if(it.winning)
bprint(playername(it, false), " ^7wins.\n");
- ));
+ });
target_music_kill();
// set the .winning flag for exactly those players with a given field value
void SetWinners(.float field, float value)
{
- FOREACH_CLIENT(IS_PLAYER(it), LAMBDA(it.winning = (it.(field) == value)));
+ FOREACH_CLIENT(IS_PLAYER(it), { it.winning = (it.(field) == value); });
}
// set the .winning flag for those players with a given field value
void AddWinners(.float field, float value)
{
- FOREACH_CLIENT(IS_PLAYER(it), LAMBDA(
+ FOREACH_CLIENT(IS_PLAYER(it), {
if(it.(field) == value)
it.winning = 1;
- ));
+ });
}
// clear the .winning flags
void ClearWinners()
{
- FOREACH_CLIENT(IS_PLAYER(it), LAMBDA(it.winning = 0));
+ FOREACH_CLIENT(IS_PLAYER(it), { it.winning = 0; });
}
void ShuffleMaplist()
team1_score = team2_score = team3_score = team4_score = 0;
- FOREACH_CLIENT(IS_PLAYER(it) && !IS_DEAD(it), LAMBDA(
+ FOREACH_CLIENT(IS_PLAYER(it) && !IS_DEAD(it), {
switch(it.team)
{
case NUM_TEAM_1: team1_score = 1; break;
case NUM_TEAM_3: team3_score = 1; break;
case NUM_TEAM_4: team4_score = 1; break;
}
- ));
+ });
IL_EACH(g_spawnpoints, true,
{
float playerswithlaps;
float readyplayers;
totalplayers = playerswithlaps = readyplayers = 0;
- FOREACH_CLIENT(IS_PLAYER(it), LAMBDA(
+ FOREACH_CLIENT(IS_PLAYER(it), {
++totalplayers;
- if(PlayerScore_Add(it, SP_RACE_FASTEST, 0))
+ if(GameRules_scoring_add(it, RACE_FASTEST, 0))
++playerswithlaps;
if(it.ready)
++readyplayers;
- ));
+ });
// at least 2 of the players have completed a lap: start the RACE
// otherwise, the players should end the qualifying on their own
redirection_nextthink = time + 1;
clients_found = 0;
- FOREACH_CLIENT(IS_REAL_CLIENT(it), LAMBDA(
+ FOREACH_CLIENT(IS_REAL_CLIENT(it), {
// TODO add timer
- LOG_INFO("Redirecting: sending connect command to ", it.netname, "\n");
+ LOG_INFO("Redirecting: sending connect command to ", it.netname);
if(redirection_target == "self")
stuffcmd(it, "\ndisconnect; defer ", ftos(autocvar_quit_and_redirect_timer), " reconnect\n");
else
stuffcmd(it, strcat("\ndisconnect; defer ", ftos(autocvar_quit_and_redirect_timer), " \"connect ", redirection_target, "\"\n"));
++clients_found;
- ));
+ });
- LOG_INFO("Redirecting: ", ftos(clients_found), " clients left.\n");
+ LOG_INFO("Redirecting: ", ftos(clients_found), " clients left.");
if(time > redirection_timeout || clients_found == 0)
localcmd("\nwait; wait; wait; quit\n");
}
else if(world_initialized == 0)
{
- LOG_INFO("NOTE: crashed before even initializing the world, not saving persistent data\n");
+ LOG_INFO("NOTE: crashed before even initializing the world, not saving persistent data");
}
else
{