]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - cl_screen.c
Fixed getserversResponse parsing:
[xonotic/darkplaces.git] / cl_screen.c
index d34f838ae8e0b8ee89a4fc42f6a72e34a5cfc7ca..dc0418a19968096b6fdf22f8af521f61bf972817 100644 (file)
@@ -34,7 +34,6 @@ int jpeg_supported = false;
 qboolean       scr_initialized;                // ready to draw
 
 float          scr_con_current;
-float          scr_conlines;           // lines of console to display
 
 extern int     con_vislines;
 
@@ -234,6 +233,9 @@ SCR_SetUpToDrawConsole
 */
 void SCR_SetUpToDrawConsole (void)
 {
+       // lines of console to display
+       float conlines;
+
        Con_CheckResize ();
 
        if (key_dest == key_game && cls.signon != SIGNONS && scr_conforcewhiledisconnected.integer)
@@ -242,31 +244,29 @@ void SCR_SetUpToDrawConsole (void)
                key_consoleactive &= ~KEY_CONSOLEACTIVE_FORCED;
 
 // decide on the height of the console
-       if (key_consoleactive & KEY_CONSOLEACTIVE_FORCED)
-               scr_conlines = vid.conheight; // full screen
-       else if (key_consoleactive & KEY_CONSOLEACTIVE_USER)
-               scr_conlines = vid.conheight/2; // half screen
+       if (key_consoleactive & KEY_CONSOLEACTIVE_USER)
+               conlines = vid.conheight/2;     // half screen
        else
-               scr_conlines = 0;                               // none visible
+               conlines = 0;                           // none visible
 
        if (scr_conspeed.value)
        {
-               if (scr_conlines < scr_con_current)
+               if (scr_con_current > conlines)
                {
                        scr_con_current -= scr_conspeed.value*host_realframetime;
-                       if (scr_conlines > scr_con_current)
-                               scr_con_current = scr_conlines;
+                       if (scr_con_current < conlines)
+                               scr_con_current = conlines;
 
                }
-               else if (scr_conlines > scr_con_current)
+               else if (scr_con_current < conlines)
                {
                        scr_con_current += scr_conspeed.value*host_realframetime;
-                       if (scr_conlines < scr_con_current)
-                               scr_con_current = scr_conlines;
+                       if (scr_con_current > conlines)
+                               scr_con_current = conlines;
                }
        }
        else
-               scr_con_current = scr_conlines;
+               scr_con_current = conlines;
 }
 
 /*
@@ -276,7 +276,12 @@ SCR_DrawConsole
 */
 void SCR_DrawConsole (void)
 {
-       if (scr_con_current)
+       if (key_consoleactive & KEY_CONSOLEACTIVE_FORCED)
+       {
+               // full screen
+               Con_DrawConsole (vid.conheight);
+       }
+       else if (scr_con_current)
                Con_DrawConsole (scr_con_current);
        else
        {
@@ -530,7 +535,7 @@ void DrawQ_String(float x, float y, const char *string, int maxlen, float scalex
        if (r_textshadow.integer)
                DrawQ_String_Real(x+scalex*0.25,y+scaley*0.25,string,maxlen,scalex,scaley,0,0,0,alpha*0.8,flags);
 
-       DrawQ_String_Real(x,y,string,maxlen,scalex,scaley,red,green,blue,alpha,flags); 
+       DrawQ_String_Real(x,y,string,maxlen,scalex,scaley,red,green,blue,alpha,flags);
 }
 
 void DrawQ_Fill (float x, float y, float w, float h, float red, float green, float blue, float alpha, int flags)
@@ -720,12 +725,12 @@ static qfile_t *cl_capturevideo_videofile = NULL;
 static qfile_t *cl_capturevideo_soundfile = NULL;
 static short cl_capturevideo_rgbtoyuvscaletable[3][3][256];
 static unsigned char cl_capturevideo_yuvnormalizetable[3][256];
-static unsigned char cl_capturevideo_rgbgammatable[3][256];
+//static unsigned char cl_capturevideo_rgbgammatable[3][256];
 
 void SCR_CaptureVideo_BeginVideo(void)
 {
        double gamma, g;
-       unsigned int i, j;
+       unsigned int i;
        qbyte out[44];
        if (cl_capturevideo_active)
                return;
@@ -738,13 +743,15 @@ void SCR_CaptureVideo_BeginVideo(void)
        cl_capturevideo_buffer = Mem_Alloc(tempmempool, vid.realwidth * vid.realheight * (3+3+3) + 18);
        gamma = 1.0/scr_screenshot_gamma.value;
 
+       /*
        for (i = 0;i < 256;i++)
        {
-               j = (unsigned char)bound(0, 255*pow(i/255.0, gamma), 255);
+               unsigned char j = (unsigned char)bound(0, 255*pow(i/255.0, gamma), 255);
                cl_capturevideo_rgbgammatable[0][i] = j;
                cl_capturevideo_rgbgammatable[1][i] = j;
                cl_capturevideo_rgbgammatable[2][i] = j;
        }
+       */
 /*
 R = Y + 1.4075 * (Cr - 128);
 G = Y + -0.3455 * (Cb - 128) + -0.7169 * (Cr - 128);
@@ -755,7 +762,7 @@ Cr = R *  .500 + G * -.419 + B * -.0813 + 128.;
 */
        for (i = 0;i < 256;i++)
        {
-               g = i;//255*pow(i/255.0, gamma);
+               g = 255*pow(i/255.0, gamma);
                // Y weights from RGB
                cl_capturevideo_rgbtoyuvscaletable[0][0][i] = (short)(g *  0.299);
                cl_capturevideo_rgbtoyuvscaletable[0][1][i] = (short)(g *  0.587);
@@ -777,12 +784,12 @@ Cr = R *  .500 + G * -.419 + B * -.0813 + 128.;
        if (cl_capturevideo_rawrgb.integer)
        {
                cl_capturevideo_format = CAPTUREVIDEOFORMAT_RAWRGB;
-               cl_capturevideo_videofile = FS_Open ("video/dpvideo.rgb", "wb", false);
+               cl_capturevideo_videofile = FS_Open ("video/dpvideo.rgb", "wb", false, true);
        }
        else if (cl_capturevideo_rawyv12.integer)
        {
                cl_capturevideo_format = CAPTUREVIDEOFORMAT_RAWYV12;
-               cl_capturevideo_videofile = FS_Open ("video/dpvideo.yv12", "wb", false);
+               cl_capturevideo_videofile = FS_Open ("video/dpvideo.yv12", "wb", false, true);
        }
        else if (scr_screenshot_jpeg.integer)
        {
@@ -795,7 +802,7 @@ Cr = R *  .500 + G * -.419 + B * -.0813 + 128.;
                cl_capturevideo_videofile = NULL;
        }
 
-       cl_capturevideo_soundfile = FS_Open ("video/dpvideo.wav", "wb", false);
+       cl_capturevideo_soundfile = FS_Open ("video/dpvideo.wav", "wb", false, true);
 
        // wave header will be filled out when video ends
        memset(out, 0, 44);