added round number to the scoreboard

This commit is contained in:
Alfred Eriksson 2008-09-07 15:07:08 +00:00
parent a92c6d44dc
commit 6a4e17ea85
3 changed files with 25 additions and 7 deletions

View file

@ -97,6 +97,9 @@ Objects = [
NetIntRange("warmup", 0, 'max_int'), NetIntRange("warmup", 0, 'max_int'),
NetIntRange("round_num", 0, 'max_int'),
NetIntRange("round_current", 0, 'max_int'),
NetIntAny("teamscore_red"), NetIntAny("teamscore_red"),
NetIntAny("teamscore_blue"), NetIntAny("teamscore_blue"),
]), ]),

View file

@ -42,17 +42,29 @@ void SCOREBOARD::render_goals(float x, float y, float w)
// render goals // render goals
//y = ystart+h-54; //y = ystart+h-54;
if(gameclient.snap.gameobj && gameclient.snap.gameobj->time_limit) float tw = 0.0f;
{
char buf[64];
str_format(buf, sizeof(buf), "Time Limit: %d min", gameclient.snap.gameobj->time_limit);
gfx_text(0, x+w/2, y, 24.0f, buf, -1);
}
if(gameclient.snap.gameobj && gameclient.snap.gameobj->score_limit) if(gameclient.snap.gameobj && gameclient.snap.gameobj->score_limit)
{ {
char buf[64]; char buf[64];
str_format(buf, sizeof(buf), "Score Limit: %d", gameclient.snap.gameobj->score_limit); str_format(buf, sizeof(buf), "Score Limit: %d", gameclient.snap.gameobj->score_limit);
gfx_text(0, x+40, y, 24.0f, buf, -1); gfx_text(0, x+20.0f, y, 22.0f, buf, -1);
tw += gfx_text_width(0, 22.0f, buf, -1);
}
if(gameclient.snap.gameobj && gameclient.snap.gameobj->time_limit)
{
char buf[64];
str_format(buf, sizeof(buf), "Time Limit: %d min", gameclient.snap.gameobj->time_limit);
gfx_text(0, x+220.0f, y, 22.0f, buf, -1);
tw += gfx_text_width(0, 22.0f, buf, -1);
}
if(gameclient.snap.gameobj && gameclient.snap.gameobj->round_num && gameclient.snap.gameobj->round_current)
{
char buf[64];
str_format(buf, sizeof(buf), "Round %d/%d", gameclient.snap.gameobj->round_current, gameclient.snap.gameobj->round_num);
gfx_text(0, x+450.0f, y, 22.0f, buf, -1);
/*[48c3fd4c][game/scoreboard]: timelimit x:219.428558
[48c3fd4c][game/scoreboard]: round x:453.142822*/
} }
} }

View file

@ -450,6 +450,9 @@ void GAMECONTROLLER::snap(int snapping_client)
gameobj->warmup = warmup; gameobj->warmup = warmup;
gameobj->round_num = (strlen(config.sv_maprotation) || config.sv_rounds_per_map > 1) ? config.sv_rounds_per_map : 0;
gameobj->round_current = round_count+1;
gameobj->teamscore_red = is_teamplay() ? teamscore[0] : game.players[snapping_client].score; gameobj->teamscore_red = is_teamplay() ? teamscore[0] : game.players[snapping_client].score;
gameobj->teamscore_blue = teamscore[1]; gameobj->teamscore_blue = teamscore[1];
} }