seta hud_panel_healtharmor_hide_ondeath 0 "hide this panel when dead"
seta hud_panel_timer_increment "0" "show elapsed time instead of remaining time"
+seta hud_panel_timer_secondary "1" "secondary timer (0 = hide, 1 = show, 2 = show swapped)"
seta hud_panel_timer_unbound "0" "show seconds leading up to the start of the match"
seta hud_panel_engineinfo_framecounter_exponentialmovingaverage 1 "use an averaging method for calculating fps instead of counting frametime like engine does"
vector timer_size, subtext_size, subtimer_size;
vector timer_color = '1 1 1';
vector subtimer_color = '1 1 1';
+ bool swap = (autocvar_hud_panel_timer_secondary == 2);
// Calculate timelimit
if(warmup_stage)
}
// Round-based game modes
- if(STAT(ROUNDSTARTTIME))
+ if(STAT(ROUNDSTARTTIME) && autocvar_hud_panel_timer_secondary)
{
round_timelimit = STAT(ROUND_TIMELIMIT);
if(subtimer) {
timer_size.x -= subtimer_size.x;
- drawstring_aspect(pos + eX * timer_size.x, subtimer, subtimer_size, subtimer_color, panel_fg_alpha, DRAWFLAG_NORMAL);
+ drawstring_aspect(pos + eX * timer_size.x, (swap ? timer : subtimer), subtimer_size, (swap ? timer_color : subtimer_color), panel_fg_alpha, DRAWFLAG_NORMAL);
}
- drawstring_aspect(pos, timer, timer_size, timer_color, panel_fg_alpha, DRAWFLAG_NORMAL);
+ drawstring_aspect(pos, (swap ? subtimer : timer), timer_size, (swap ? subtimer_color : timer_color), panel_fg_alpha, DRAWFLAG_NORMAL);
if(subtext)
drawstring_aspect(pos + eY * timer_size.y, subtext, subtext_size, '0 1 0', panel_fg_alpha, DRAWFLAG_NORMAL);
bool autocvar_hud_panel_timer;
bool autocvar_hud_panel_timer_dynamichud = true;
bool autocvar_hud_panel_timer_increment;
+int autocvar_hud_panel_timer_secondary = 1;
bool autocvar_hud_panel_timer_unbound;