2 .float delay; // stores delay from round end to countdown start
3 .float count; // stores initial number of the countdown
4 .float wait; // it's set to TRUE when round ends, to FALSE when countdown starts
5 .float cnt; // its initial value is .count + 1, then decreased while counting down
6 // reaches 0 when the round starts
7 .float round_timelimit;
9 .float() canRoundStart;
13 void round_handler_Init(float the_delay, float the_count, float the_round_timelimit);
14 void round_handler_Spawn(float() canRoundStart_func, float() canRoundEnd_func, void() roundStart_func);
15 void round_handler_Reset(float next_think);
16 void round_handler_Remove();
18 #define round_handler_IsActive() (round_handler != world)
19 #define round_handler_AwaitingNextRound() (round_handler.wait)
20 #define round_handler_CountdownRunning() (!round_handler.wait && round_handler.cnt)
21 #define round_handler_IsRoundStarted() (!round_handler.wait && !round_handler.cnt)
22 #define round_handler_GetEndTime() (round_handler.round_endtime)