void drawstringright(vector, string, vector, vector, float, float);
void drawstringcenter(vector, string, vector, vector, float, float);
-float SCOREBOARD_OFFSET = 50;
+const float SCOREBOARD_OFFSET = 50;
// wrapper to put all possible scores titles through gettext
string TranslateScoresLabel(string l)
case "lives": return CTX(_("SCO^lives"));
case "losses": return CTX(_("SCO^losses"));
case "name": return CTX(_("SCO^name"));
- case "net": return CTX(_("SCO^net"));
+ case "sum": return CTX(_("SCO^sum"));
case "nick": return CTX(_("SCO^nick"));
case "objectives": return CTX(_("SCO^objectives"));
case "pickups": return CTX(_("SCO^pickups"));
print(_("^3suicides^7 Number of suicides\n"));
print(_("^3frags^7 kills - suicides\n"));
print(_("^3kd^7 The kill-death ratio\n"));
- print(_("^3net^7 frags - deaths\n"));
+ print(_("^3sum^7 frags - deaths\n"));
print(_("^3caps^7 How often a flag (CTF) or a key (KeyHunt) was captured\n"));
print(_("^3pickups^7 How often a flag (CTF) or a key (KeyHunt) or a ball (Keepaway) was picked up\n"));
print(_("^3captime^7 Time of fastest cap (CTF)\n"));
return strcat( // fteqcc sucks
"ping pl name | ",
"-teams,race,lms/kills +freezetag/kills -teams,lms/deaths +freezetag/deaths -teams,lms,race,ka/suicides +freezetag/suicides -race,dm,tdm,ka,freezetag/frags ", // tdm already has this in "score"
- "+tdm/kills +tdm/deaths +tdm/suicides +tdm/net ",
+ "+tdm/kills +tdm/deaths +tdm/suicides ",
"+ctf/caps +ctf/pickups +ctf/fckills +ctf/returns ",
"+lms/lives +lms/rank ",
"+kh/caps +kh/pushes +kh/destroyed ",
hud_field[hud_num_fields] = SP_PL;
} else if(str == "kd" || str == "kdr" || str == "kdratio" || str == "k/d") {
hud_field[hud_num_fields] = SP_KDRATIO;
- } else if(str == "net" || str == "net" || str == "net" || str == "f-d") {
- hud_field[hud_num_fields] = SP_NET;
+ } else if(str == "sum" || str == "diff" || str == "f-d") {
+ hud_field[hud_num_fields] = SP_SUM;
} else if(str == "name" || str == "nick") {
hud_field[hud_num_fields] = SP_NAME;
have_name = 1;
hud_title[0] = strzone(TranslateScoresLabel("name"));
hud_field[0] = SP_NAME;
++hud_num_fields;
- print(sprintf(_("fixed missing field '%s'\n"), "name"));
+ print("fixed missing field 'name'\n");
if(!have_separator)
{
hud_field[1] = SP_SEPARATOR;
hud_size[1] = stringwidth("|", FALSE, hud_fontsize);
++hud_num_fields;
- print(sprintf(_("fixed missing field '%s'\n"), "|"));
+ print("fixed missing field '|'\n");
}
}
else if(!have_separator)
hud_size[hud_num_fields] = stringwidth("|", FALSE, hud_fontsize);
hud_field[hud_num_fields] = SP_SEPARATOR;
++hud_num_fields;
- print(sprintf(_("fixed missing field '%s'\n"), "|"));
+ print("fixed missing field '|'\n");
}
if(!have_secondary)
{
hud_size[hud_num_fields] = stringwidth(hud_title[hud_num_fields], FALSE, hud_fontsize);
hud_field[hud_num_fields] = ps_secondary;
++hud_num_fields;
- print(sprintf(_("fixed missing field '%s'\n"), scores_label[ps_secondary]));
+ print(sprintf("fixed missing field '%s'\n", scores_label[ps_secondary]));
}
if(!have_primary)
{
hud_size[hud_num_fields] = stringwidth(hud_title[hud_num_fields], FALSE, hud_fontsize);
hud_field[hud_num_fields] = ps_primary;
++hud_num_fields;
- print(sprintf(_("fixed missing field '%s'\n"), scores_label[ps_primary]));
+ print(sprintf("fixed missing field '%s'\n", scores_label[ps_primary]));
}
}
str = sprintf("%.1f", num/denom);
return str;
- case SP_NET:
+ case SP_SUM:
f = pl.(scores[SP_KILLS]);
f -= pl.(scores[SP_DEATHS]);
return 0;
}
-float g_minstagib;
float average_accuracy;
vector HUD_DrawScoreboardAccuracyStats(vector pos, vector rgb, vector bg_size)
{
float fontsize = height * 1/3;
float weapon_height = height * 2/3;
float weapon_width = sbwidth / weapon_cnt;
+ float g_minstagib = 0;
drawstring(pos, sprintf(_("Accuracy stats (average %d%%)"), average_accuracy), hud_fontsize, '1 1 1', scoreboard_alpha_fg, DRAWFLAG_NORMAL);
pos_y += 1.25 * hud_fontsize_y + autocvar_scoreboard_border_thickness;