52 pos.y += fontsize.y * 0.25;
56#define InfoMessage(s) MACRO_BEGIN \
57 pos = InfoMessages_drawstring(s, pos, mySize, ((img_curr_group >= 0) ? panel_fg_alpha * img_fade[img_curr_group] : panel_fg_alpha), fontsize); \
58 img_curr_group = -1; \
91 vector fontsize =
'0.2 0.2 0' * mySize.y;
92 int img_curr_group = -1;
102 s = _(
"^1Observing");
115 s = sprintf(_(
"^1Press ^3%s^1 to spectate"),
getcommandkey(_(
"primary fire"),
"+fire"));
117 s = sprintf(_(
"^1Press ^3%s^1 or ^3%s^1 for next or previous player"),
getcommandkey(_(
"next weapon"),
"weapnext"),
getcommandkey(_(
"previous weapon"),
"weapprev"));
121 s = sprintf(_(
"^1Use ^3%s^1 or ^3%s^1 to change the speed"),
getcommandkey(_(
"next weapon"),
"weapnext"),
getcommandkey(_(
"previous weapon"),
"weapprev"));
123 s = sprintf(_(
"^1Press ^3%s^1 to observe, ^3%s^1 to change camera mode"),
getcommandkey(_(
"secondary fire"),
"+fire2"),
getcommandkey(_(
"drop weapon"),
"dropweapon"));
125 s = sprintf(_(
"^1Press ^3%s^1 to change camera mode"),
getcommandkey(_(
"drop weapon"),
"dropweapon"));
128 s = sprintf(_(
"^1Press ^3%s^1 for gametype info"),
getcommandkey(_(
"server info"),
"+show_info"));
134 bool mutator_returnvalue =
MUTATOR_CALLHOOK(DrawInfoMessages, pos, mySize, img_curr_group);
136 img_curr_group =
M_ARGV(2,
int);
148 InfoMessage(sprintf(_(
"^2You're queued to join any available team")));
154 s = sprintf(_(
"^1Game starts in ^3%d^1 seconds"), countdown);
158 string blinkcolor = (
time % 1 >= 0.5) ?
"^1" :
"^3";
162 InfoMessage(_(
"^2Currently in ^1warmup^2 stage!"));
164 int players_needed = 0;
169 if (players_needed > 0)
171 if (players_needed == 1)
172 s = _(
"^31^2 more player is needed for the match to start.");
174 s = sprintf(_(
"^3%d^2 more players are needed for the match to start."), players_needed);
188 s = sprintf(_(
"%sPress ^3%s%s to end warmup"), blinkcolor, ready_key, blinkcolor);
190 s = _(
"^2Waiting for others to ready up to end warmup...");
193 s = sprintf(_(
"^2Press ^3%s^2 to end warmup"), ready_key);
207 s = sprintf(_(
"%sWaiting for 1 player to join..."), blinkcolor);
209 s = sprintf(_(
"%sWaiting for %d players to join..."), blinkcolor,
missing_teams_mask);
221 s =
strcat(blinkcolor, _(
"Teams are unbalanced!"));
224 s =
strcat(s, sprintf(_(
" Press ^3%s%s to adjust"),
getcommandkey(_(
"team selection"),
"team_selection_show"), blinkcolor));
237 s = ((
spectatee_status) ? _(
"^1Spectating this player:") : _(
"^1Spectating you:"));
241 for (
int i = 0; i < limit; ++i)
245 s =
strcat(s,
" ^7", spec_name);
247 s =
strcat(
"^7", spec_name);
254 InfoMessage(_(
"^7Press ^3ESC ^7to show HUD options."));
255 InfoMessage(_(
"^3Double-click ^7a panel for panel-specific options."));
256 InfoMessage(_(
"^3CTRL ^7to disable collision testing, ^3SHIFT ^7and"));
257 InfoMessage(_(
"^3ALT ^7+ ^3ARROW KEYS ^7for fine adjustments."));
#define MUTATOR_CALLHOOK(id,...)
#define BIT(n)
Only ever assign into the first 24 bits in QC (so max is BIT(23)).
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define drawcolorcodedstring(position, text, scale, alpha, flag)
#define draw_beginBoldFont()
#define draw_endBoldFont()
entity GetTeam(int Team, bool add)
int spectatorlist[MAX_SPECTATORS]
#define getcommandkey(cmd_name, command)
int spectatee_status
the -1 disables HUD panels before CSQC receives necessary data
bool ready_waiting_for_me
string getWrappedLine(float maxWidth, vector theFontSize, textLengthUpToWidth_widthFunction_t tw)
string getWrappedLine_remaining
const float DRAWFLAG_NORMAL
string entcs_GetName(int i)
int entcs_GetWantsJoin(int i)
void HUD_Panel_LoadCvars()
#define HUD_Panel_DrawBg()
#define HUD_Write_Cvar(cvar)
bool autocvar__hud_configure
void HUD_InfoMessages_Export(int fh)
float autocvar_hud_panel_infomessages_group_fadetime
string get_team_list(int team_mask, string suf_col)
vector InfoMessages_drawstring(string s, vector pos, vector sz, float a, vector fontsize)
float autocvar_hud_panel_infomessages_group0
int img_cur_msg[IMG_COUNT]
float img_time[IMG_COUNT]
float autocvar_hud_panel_infomessages_group_time
int img_select(int group_id)
float img_fade[IMG_COUNT]
bool autocvar_hud_panel_infomessages
bool autocvar_hud_panel_infomessages_dynamichud
bool autocvar_hud_panel_infomessages_flip
bool autocvar_cl_showspectators
strcat(_("^F4Countdown stopped!"), "\n^BG", _("Teams are too unbalanced."))
void Scoreboard_UpdatePlayerTeams()
float stringwidth_colors(string s, vector theSize)
string Team_ColorName(int teamid)
#define Team_ColoredFullName_WithSuffixColor(teamid, suf_col)
int Team_IndexToTeam(int index)
Converts team index into team value.
string Team_ColorCode(int teamid)