void Sbar_MiniDeathmatchOverlay (void);
void Sbar_DeathmatchOverlay (void);
+void Sbar_IntermissionOverlay (void);
+void Sbar_FinaleOverlay (void);
+
/*
===============
}
-
/*
===============
Sbar_SoloScoreboard
int i, k, l, x, f;
char num[12];
scoreboard_t *s;
- byte *c;
+ qbyte *c;
Sbar_SortFrags ();
continue;
// draw background
- c = (byte *)&d_8to24table[(s->colors & 0xf0) + 8];
+ c = (qbyte *)&d_8to24table[(s->colors & 0xf0) + 8];
DrawQ_Fill (sbar_x + x + 10, sbar_y - 23, 28, 4, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
- c = (byte *)&d_8to24table[((s->colors & 15)<<4) + 8];
+ c = (qbyte *)&d_8to24table[((s->colors & 15)<<4) + 8];
DrawQ_Fill (sbar_x + x + 10, sbar_y + 4 - 23, 28, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
// draw number
{
char num[12];
scoreboard_t *s;
- byte *c;
+ qbyte *c;
s = &cl.scores[cl.viewentity - 1];
// draw background
Sbar_DrawPic (112, 0, rsb_teambord);
- c = (byte *)&d_8to24table[(s->colors & 0xf0) + 8];
+ c = (qbyte *)&d_8to24table[(s->colors & 0xf0) + 8];
DrawQ_Fill (sbar_x + 113, vid.conheight-SBAR_HEIGHT+3, 22, 9, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
- c = (byte *)&d_8to24table[((s->colors & 15)<<4) + 8];
+ c = (qbyte *)&d_8to24table[((s->colors & 15)<<4) + 8];
DrawQ_Fill (sbar_x + 113, vid.conheight-SBAR_HEIGHT+12, 22, 9, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
// draw number
{
if (showfps.integer)
{
- static double currtime, frametimes[32];
- double newtime, total;
+ int calc;
char temp[32];
- int calc, count, i;
- static int framecycle = 0;
float fps_x, fps_y, fps_scalex, fps_scaley;
-
- newtime = Sys_DoubleTime();
- frametimes[framecycle] = newtime - currtime;
- total = 0;
- count = 0;
- while(total < 0.2 && count < 32 && frametimes[i = (framecycle - count) & 31])
+ if (showfps.integer > 1)
+ {
+ static double currtime, frametimes[32];
+ double newtime, total;
+ int count, i;
+ static int framecycle = 0;
+
+ newtime = Sys_DoubleTime();
+ frametimes[framecycle] = newtime - currtime;
+ total = 0;
+ count = 0;
+ while(total < 0.2 && count < 32 && frametimes[i = (framecycle - count) & 31])
+ {
+ total += frametimes[i];
+ count++;
+ }
+ framecycle++;
+ framecycle &= 31;
+ if (showfps.integer == 2)
+ calc = (int) (((double) count / total) + 0.5);
+ else // showfps 3, rapid update
+ calc = (int) ((1.0 / (newtime - currtime)) + 0.5);
+ currtime = newtime;
+ }
+ else
{
- total += frametimes[i];
- count++;
+ static double nexttime = 0, lasttime = 0;
+ static int framerate = 0, framecount = 0;
+ double newtime;
+ newtime = Sys_DoubleTime();
+ if (newtime < nexttime)
+ framecount++;
+ else
+ {
+ framerate = (int) (framecount / (newtime - lasttime) + 0.5);
+ lasttime = newtime;
+ nexttime = lasttime + 0.2;
+ framecount = 1;
+ }
+ calc = framerate;
}
- framecycle++;
- framecycle &= 31;
- if (showfps.integer == 1)
- calc = (int) (((double) count / total) + 0.5);
- else // showfps 2, rapid update
- calc = (int) ((1.0 / (newtime - currtime)) + 0.5);
sprintf(temp, "%4i", calc);
- currtime = newtime;
fps_scalex = 12;
fps_scaley = 12;
fps_x = vid.conwidth - (fps_scalex * strlen(temp));
Sbar_Draw
===============
*/
-void DrawCrosshair(int num);
+//void DrawCrosshair(int num);
void Sbar_Draw (void)
{
if (scr_con_current == vid.conheight)
return; // console is full screen
+ if (cl.intermission == 1)
+ {
+ Sbar_IntermissionOverlay();
+ return;
+ }
+ else if (cl.intermission == 2)
+ {
+ Sbar_FinaleOverlay();
+ return;
+ }
+
sbar_y = vid.conheight - SBAR_HEIGHT;
if (cl.gametype == GAME_DEATHMATCH)
sbar_x = 0;
if (vid.conwidth > 320 && cl.gametype == GAME_DEATHMATCH)
Sbar_MiniDeathmatchOverlay ();
- if (crosshair.integer >= 1)
- DrawCrosshair(crosshair.integer - 1);
-
- if (cl.intermission == 1)
- Sbar_IntermissionOverlay();
- else if (cl.intermission == 2)
- Sbar_FinaleOverlay();
-
Sbar_ShowFPS();
+
+// if (crosshair.integer >= 1)
+// DrawCrosshair(crosshair.integer - 1);
}
//=============================================================================
int i, k, l, x, y, total, n, minutes, tens, units, fph;
char num[128];
scoreboard_t *s;
- byte *c;
+ qbyte *c;
pic = Draw_CachePic ("gfx/ranking.lmp");
DrawQ_Pic ((vid.conwidth - pic->width)/2, 8, "gfx/ranking.lmp", 0, 0, 1, 1, 1, 1, 0);
// draw the text
l = scoreboardlines;
- x = ((vid.conwidth - 320)>>1) - 140;
+ x = (vid.conwidth - 280)>>1;
y = 40;
for (i = 0;i < l;i++)
{
continue;
// draw background
- c = (byte *)&d_8to24table[(s->colors & 0xf0) + 8];
- DrawQ_Fill ( x, y+1, 88, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
- c = (byte *)&d_8to24table[((s->colors & 15)<<4) + 8];
- DrawQ_Fill ( x, y+4, 88, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
+ c = (qbyte *)&d_8to24table[(s->colors & 0xf0) + 8];
+ DrawQ_Fill ( x + 8, y+1, 88, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
+ c = (qbyte *)&d_8to24table[((s->colors & 15)<<4) + 8];
+ DrawQ_Fill ( x + 8, y+4, 88, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
total = cl.time - s->entertime;
minutes = (int)total/60;
// put it together
sprintf (num, "%c %4i:%4i %4i:%c%c %s", k == cl.viewentity - 1 ? 12 : ' ', (int) s->frags, fph, minutes, tens, units, s->name);
- DrawQ_String(x - 8, y, num, 0, 8, 8, 1, 1, 1, 1, 0);
+ DrawQ_String(x, y, num, 0, 8, 8, 1, 1, 1, 1, 0);
y += 8;
}
int i, l, k, x, y, fph, numlines;
char num[128];
scoreboard_t *s;
- byte *c;
+ qbyte *c;
if (vid.conwidth < 512 || !sb_lines)
return;
continue;
// draw background
- c = (byte *)&d_8to24table[(s->colors & 0xf0) + 8];
+ c = (qbyte *)&d_8to24table[(s->colors & 0xf0) + 8];
DrawQ_Fill ( x, y+1, 72, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
- c = (byte *)&d_8to24table[((s->colors & 15)<<4) + 8];
+ c = (qbyte *)&d_8to24table[((s->colors & 15)<<4) + 8];
DrawQ_Fill ( x, y+4, 72, 3, c[0] * (1.0f / 255.0f), c[1] * (1.0f / 255.0f), c[2] * (1.0f / 255.0f), c[3] * (1.0f / 255.0f), 0);
fph = (cl.time - s->entertime) ? (int) ((float) s->frags * 3600.0 / (cl.time - s->entertime)) : 0;
return;
}
- sbar_x = 0;
- sbar_y = 0;
+ sbar_x = (vid.conwidth - 320) >> 1;
+ sbar_y = (vid.conheight - 200) >> 1;
- DrawQ_Pic (64, 24, "gfx/complete.lmp", 0, 0, 1, 1, 1, 1, 0);
- DrawQ_Pic (0, 56, "gfx/inter.lmp", 0, 0, 1, 1, 1, 1, 0);
+ DrawQ_Pic (sbar_x + 64, sbar_y + 24, "gfx/complete.lmp", 0, 0, 1, 1, 1, 1, 0);
+ DrawQ_Pic (sbar_x + 0, sbar_y + 56, "gfx/inter.lmp", 0, 0, 1, 1, 1, 1, 0);
// time
dig = cl.completed_time/60;
pic = Draw_CachePic ("gfx/finale.lmp");
DrawQ_Pic((vid.conwidth - pic->width)/2, 16, "gfx/finale.lmp", 0, 0, 1, 1, 1, 1, 0);
}
+