]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - console.c
no need to update lightmaps if using r_vertexsurfaces
[xonotic/darkplaces.git] / console.c
index 5d424f663a9961cef603d3b6b8a2c7b6b09d34f1..31c19cc500028aa8edb5fbc2930a25ceee9e583d 100644 (file)
--- a/console.c
+++ b/console.c
@@ -37,9 +37,7 @@ int           con_linewidth;
 
 float          con_cursorspeed = 4;
 
-#define                CON_TEXTSIZE    16384
-
-qboolean       con_forcedup;           // because no entities to refresh
+#define                CON_TEXTSIZE    131072
 
 int                    con_totallines;         // total lines in console scrollback
 int                    con_backscroll;         // lines up from bottom to display
@@ -80,21 +78,8 @@ Con_ToggleConsole_f
 */
 void Con_ToggleConsole_f (void)
 {
-       if (key_dest == key_console)
-       {
-               if (cls.state == ca_connected)
-//             {
-                       key_dest = key_game;
-//                     key_lines[edit_line][1] = 0;    // clear any typing
-//                     key_linepos = 1;
-//             }
-               else
-                       M_Menu_Main_f ();
-       }
-       else
-               key_dest = key_console;
-
-       SCR_EndLoadingPlaque ();
+       // toggle the 'user wants console' bit
+       key_consoleactive ^= KEY_CONSOLEACTIVE_USER;
        memset (con_times, 0, sizeof(con_times));
 }
 
@@ -162,14 +147,14 @@ void Con_CheckResize (void)
        int             i, j, width, oldwidth, oldtotallines, numlines, numchars;
        char    tbuf[CON_TEXTSIZE];
 
-       width = (vid.conwidth >> 3) - 2;
+       width = (vid.conwidth >> 3);
 
        if (width == con_linewidth)
                return;
 
        if (width < 1)                  // video hasn't been initialized yet
        {
-               width = 78; // LordHavoc: changed from 38 to 78 (320 -> 640 conversion)
+               width = 80;
                con_linewidth = width;
                con_totallines = CON_TEXTSIZE / con_linewidth;
                memset (con_text, ' ', CON_TEXTSIZE);
@@ -265,8 +250,7 @@ void Con_Linefeed (void)
 {
        con_x = 0;
        con_current++;
-       memset (&con_text[(con_current%con_totallines)*con_linewidth]
-       , ' ', con_linewidth);
+       memset (&con_text[(con_current%con_totallines)*con_linewidth], ' ', con_linewidth);
 }
 
 /*
@@ -363,15 +347,13 @@ Con_DebugLog
 void Con_DebugLog(char *file, char *fmt, ...)
 {
     va_list argptr;
-    static char data[1024];
-    int fd;
+    FILE* fd;
 
+    fd = fopen(file, "at");
     va_start(argptr, fmt);
-    vsprintf(data, fmt, argptr);
+    vfprintf (fd, fmt, argptr);
     va_end(argptr);
-    fd = open(file, O_WRONLY | O_CREAT | O_APPEND, 0666);
-    write(fd, data, strlen(data));
-    close(fd);
+    fclose(fd);
 }
 
 
@@ -389,7 +371,6 @@ void Con_Printf (char *fmt, ...)
 {
        va_list         argptr;
        char            msg[MAXPRINTMSG];
-//     static qboolean inupdate;
 
        va_start (argptr,fmt);
        vsprintf (msg,fmt,argptr);
@@ -415,24 +396,6 @@ void Con_Printf (char *fmt, ...)
 
 // write it to the scrollable buffer
        Con_Print (msg);
-
-// update the screen if the console is displayed
-       // LordHavoc: I don't think there's a real need for this
-       /*
-       // LordHavoc: don't print text while loading scripts
-       if (cls.state != ca_disconnected)
-       if (cls.signon != SIGNONS && !scr_disabled_for_loading )
-       {
-       // protect against infinite loop if something in SCR_UpdateScreen calls
-       // Con_Printf
-               if (!inupdate)
-               {
-                       inupdate = true;
-                       SCR_UpdateScreen ();
-                       inupdate = false;
-               }
-       }
-       */
 }
 
 /*
@@ -469,16 +432,12 @@ void Con_SafePrintf (char *fmt, ...)
 {
        va_list         argptr;
        char            msg[1024];
-       //int                   temp;
 
        va_start (argptr,fmt);
        vsprintf (msg,fmt,argptr);
        va_end (argptr);
 
-       //temp = scr_disabled_for_loading;
-       //scr_disabled_for_loading = true;
        Con_Printf ("%s", msg);
-       //scr_disabled_for_loading = temp;
 }
 
 
@@ -504,7 +463,7 @@ void Con_DrawInput (void)
 {
        char editlinecopy[256], *text;
 
-       if (key_dest != key_console && !con_forcedup)
+       if (!key_consoleactive)
                return;         // don't draw anything
 
        text = strcpy(editlinecopy, key_lines[edit_line]);
@@ -525,7 +484,7 @@ void Con_DrawInput (void)
                text += 1 + key_linepos - con_linewidth;
 
        // draw it
-       DrawQ_String(8, con_vislines - 16, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
+       DrawQ_String(0, con_vislines - 16, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
 
        // remove cursor
        key_lines[edit_line][key_linepos] = 0;
@@ -563,7 +522,7 @@ void Con_DrawNotify (void)
 
                clearnotify = 0;
 
-               DrawQ_String(8, v, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
+               DrawQ_String(0, v, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
 
                v += 8;
        }
@@ -582,13 +541,13 @@ void Con_DrawNotify (void)
                        sprintf(temptext, "say:%s%c", chat_buffer, (int) 10+((int)(realtime*con_cursorspeed)&1));
                while (strlen(temptext) >= con_linewidth)
                {
-                       DrawQ_String (8, v, temptext, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
+                       DrawQ_String (0, v, temptext, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
                        strcpy(temptext, &temptext[con_linewidth]);
                        v += 8;
                }
                if (strlen(temptext) > 0)
                {
-                       DrawQ_String (8, v, temptext, 0, 8, 8, 1, 1, 1, 1, 0);
+                       DrawQ_String (0, v, temptext, 0, 8, 8, 1, 1, 1, 1, 0);
                        v += 8;
                }
        }
@@ -632,7 +591,7 @@ void Con_DrawConsole (int lines)
                j = max(i - con_backscroll, 0);
                text = con_text + (j % con_totallines)*con_linewidth;
 
-               DrawQ_String(8, y, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
+               DrawQ_String(0, y, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
        }
 
 // draw the input prompt, user text, and cursor if desired