34 entity pl2 = pl1.sort_next;
60 float starttime =
STAT(GAMESTARTTIME);
61 float roundstarttime =
STAT(ROUNDSTARTTIME);
62 if(roundstarttime == -1)
71 bool inround = (roundstarttime &&
time >= starttime);
72 float countdown = (inround ? roundstarttime -
time : starttime -
time);
73 float countdown_rounded =
floor(0.5 + countdown);
97 this.
nextthink = (roundstarttime - (countdown - 1));
104 if(!roundstarttime && annce_num !=
NULL)
106 this.
nextthink = (starttime - (countdown - 1));
129 float startTime =
STAT(GAMESTARTTIME);
130 float roundstarttime =
STAT(ROUNDSTARTTIME);
131 if(
time > startTime && roundstarttime > startTime)
132 startTime = roundstarttime;
165 if(
time + 5.0 < startTime)
176#define ANNOUNCER_CHECKMINUTE(minute) MACRO_BEGIN \
177 if(announcer_##minute##min) { \
178 if(timeleft > minute * 60) \
179 announcer_##minute##min = false; \
181 if(timeleft < minute * 60 && timeleft > minute * 60 - 1) { \
182 announcer_##minute##min = true; \
183 Local_Notification(MSG_ANNCE, ANNCE_REMAINING_MIN_##minute); \
190 static bool warmup_stage_prev;
202 float starttime =
STAT(GAMESTARTTIME);
212 float warmup_timelimit =
STAT(WARMUP_TIMELIMIT);
213 if(warmup_timelimit > 0)
214 timeleft =
max(0, warmup_timelimit + starttime -
time);
219 timeleft =
max(0,
STAT(TIMELIMIT) * 60 + starttime -
time);
float prev_roundstarttime
entity announcer_countdown
string prev_pl1_name
Displays duel title; updates it if the players in-game have changed.
void Announcer_Gamestart()
void Announcer_Countdown(entity this)
void Announcer_ClearTitle()
float previous_game_starttime
Checks whether the server initiated a map restart (stat_game_starttime changed)
#define ANNOUNCER_CHECKMINUTE(minute)
string autocvar_cl_announcer
float autocvar_cl_announcer_maptime
#define MUTATOR_CALLHOOK(id,...)
void centerprint_ClearTitle()
void centerprint_SetTitle(string title)
void centerprint_SetDuelTitle(string left, string right)
void centerprint_Kill(int id)
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
Notification Announcer_PickNumber(int type, int num)
string entcs_GetName(int i)
string MapInfo_Type_ToText(Gametype t)
strcat(_("^F4Countdown stopped!"), "\n^BG", _("Teams are too unbalanced."))
void Local_Notification(MSG net_type, Notification net_name,...count)
entity Notification
always last
#define new_pure(class)
purely logical entities (not linked to the area grid)
void Scoreboard_UpdatePlayerTeams()