float scr_conlines; // lines of console to display
float oldscreensize, oldfov;
-cvar_t scr_viewsize = {"viewsize","100", true};
-cvar_t scr_fov = {"fov","90"}; // 10 - 170
-cvar_t scr_conspeed = {"scr_conspeed","300"};
-cvar_t scr_centertime = {"scr_centertime","2"};
-cvar_t scr_showram = {"showram","1"};
-cvar_t scr_showturtle = {"showturtle","0"};
-cvar_t scr_showpause = {"showpause","1"};
-cvar_t scr_printspeed = {"scr_printspeed","8"};
-cvar_t showfps = {"showfps", "0", true};
-cvar_t r_render = {"r_render", "1"};
-cvar_t r_brightness = {"r_brightness", "1", true}; // LordHavoc: a method of operating system independent color correction
-cvar_t r_contrast = {"r_contrast", "1", true}; // LordHavoc: a method of operating system independent color correction
+cvar_t scr_viewsize = {CVAR_SAVE, "viewsize","100"};
+cvar_t scr_fov = {CVAR_SAVE, "fov","90"}; // 10 - 170
+cvar_t scr_conspeed = {CVAR_SAVE, "scr_conspeed","900"}; // LordHavoc: quake used 300
+cvar_t scr_centertime = {0, "scr_centertime","2"};
+cvar_t scr_showram = {CVAR_SAVE, "showram","1"};
+cvar_t scr_showturtle = {CVAR_SAVE, "showturtle","0"};
+cvar_t scr_showpause = {CVAR_SAVE, "showpause","1"};
+cvar_t scr_printspeed = {0, "scr_printspeed","8"};
+cvar_t showfps = {CVAR_SAVE, "showfps", "0"};
+cvar_t r_render = {0, "r_render", "1"};
+cvar_t r_brightness = {CVAR_SAVE, "r_brightness", "1"}; // LordHavoc: a method of operating system independent color correction
+cvar_t r_contrast = {CVAR_SAVE, "r_contrast", "1"}; // LordHavoc: a method of operating system independent color correction
qboolean scr_initialized; // ready to draw
scr_erase_lines = scr_center_lines;
scr_centertime_off -= host_frametime;
-
+
if (scr_centertime_off <= 0 && !cl.intermission)
return;
if (key_dest != key_game)
// intermission is always full screen
if (cl.intermission)
- size = 120;
- else
- size = scr_viewsize.value;
-
- if (size >= 120)
- sb_lines = 0; // no status bar at all
- else if (size >= 110)
- sb_lines = 24; // no inventory
- else
- sb_lines = 24+16+8;
-
- if (scr_viewsize.value >= 100.0)
{
full = true;
- size = 100.0;
+ size = 1;
+ sb_lines = 0;
}
else
- size = scr_viewsize.value;
- if (cl.intermission)
{
- full = true;
- size = 100;
- sb_lines = 0;
+ if (scr_viewsize.value >= 120)
+ sb_lines = 0; // no status bar at all
+ else if (scr_viewsize.value >= 110)
+ sb_lines = 24; // no inventory
+ else
+ sb_lines = 24+16+8;
+
+ if (scr_viewsize.value >= 100.0)
+ {
+ full = true;
+ size = 1.0f;
+ }
+ else
+ size = scr_viewsize.value * (1.0f / 100.0f);
}
- size /= 100.0;
- // LordHavoc: always fullyscreen rendering
+ // LordHavoc: always fullscreen rendering
h = vid.height/* - sb_lines*/;
r_refdef.vrect.width = vid.width * size;
//============================================================================
-void gl_screen_start()
+void gl_screen_start(void)
{
scr_ram = Draw_PicFromWad ("ram");
scr_net = Draw_PicFromWad ("net");
scr_turtle = Draw_PicFromWad ("turtle");
}
-void gl_screen_shutdown()
+void gl_screen_shutdown(void)
{
}
-void gl_screen_newmap()
+void gl_screen_newmap(void)
{
}
char filename[80];
char checkname[MAX_OSPATH];
int i;
-//
+//
// find a file name to save it to
//
strcpy(filename,"dp0000.tga");
filename[2] = (i/1000)%10 + '0';
filename[3] = (i/ 100)%10 + '0';
filename[4] = (i/ 10)%10 + '0';
- filename[5] = (i/ 1)%10 + '0';
+ filename[5] = (i/ 1)%10 + '0';
sprintf (checkname, "%s/%s", com_gamedir, filename);
if (Sys_FileTime(checkname) == -1)
break; // file doesn't exist
// for (j=0 ; j<l ; j++, x+=8)
// Draw_Character (x, y, start[j]);
Draw_String (x, y, start, l);
-
+
y += 8;
while (*start && *start != '\n')
void DrawCrosshair(int num);
void GL_Set2D (void);
-extern void SHOWLMP_drawall();
-extern cvar_t r_speeds2;
-
-void GL_BrightenScreen()
+void GL_BrightenScreen(void)
{
float f;
LordHavoc: due to my rewrite of R_WorldNode, it no longer takes 256k of stack space :)
==================
*/
-void GL_Finish();
+void GL_Finish(void);
+void R_Clip_DisplayBuffer(void);
void SCR_UpdateScreen (void)
{
double time1 = 0, time2;
GL_BeginRendering (&glx, &gly, &glwidth, &glheight);
-
+
//
// determine size of refresh window
//
GL_Set2D();
+ R_Clip_DisplayBuffer();
+
SCR_DrawRam();
SCR_DrawNet();
SCR_DrawTurtle();
else if (cl.intermission == 2)
Sbar_FinaleOverlay();
- SCR_DrawConsole();
+ SCR_DrawConsole();
M_Draw();
+ ui_draw();
+
// if (scr_drawloading)
// SCR_DrawLoading();
Draw_String(vid.width - (8*8), vid.height - sb_lines - 8, temp, 9999);
}
- if (r_speeds2.value)
+ // LordHavoc: only print info if renderer is being used
+ if (r_speeds2.value && !con_forcedup)
{
- extern char r_speeds2_string1[81], r_speeds2_string2[81], r_speeds2_string3[81], r_speeds2_string4[81], r_speeds2_string5[81], r_speeds2_string6[81], r_speeds2_string7[81];
- Draw_String(0, vid.height - sb_lines - 56, r_speeds2_string1, 80);
- Draw_String(0, vid.height - sb_lines - 48, r_speeds2_string2, 80);
- Draw_String(0, vid.height - sb_lines - 40, r_speeds2_string3, 80);
- Draw_String(0, vid.height - sb_lines - 32, r_speeds2_string4, 80);
- Draw_String(0, vid.height - sb_lines - 24, r_speeds2_string5, 80);
- Draw_String(0, vid.height - sb_lines - 16, r_speeds2_string6, 80);
- Draw_String(0, vid.height - sb_lines - 8, r_speeds2_string7, 80);
+ int i, j, lines, y;
+ lines = 1;
+ for (i = 0;r_speeds2_string[i];i++)
+ if (r_speeds2_string[i] == '\n')
+ lines++;
+ y = vid.height - sb_lines - lines * 8 - 8;
+ i = j = 0;
+ while (r_speeds2_string[i])
+ {
+ j = i;
+ while (r_speeds2_string[i] && r_speeds2_string[i] != '\n')
+ i++;
+ if (i - j > 0)
+ Draw_String(0, y, r_speeds2_string + j, i - j);
+ if (r_speeds2_string[i] == '\n')
+ i++;
+ y += 8;
+ }
}
V_UpdateBlends();
}
// for profiling, this is separated
-void GL_Finish()
+void GL_Finish(void)
{
if (!r_render.value)
return;