X-Git-Url: http://git.shiar.net/netris.git/blobdiff_plain/02d0eeb0e0a5f43971cf687eac35dcedc59a0247..eb820d60637feceb84f559675344cf24a2c2f1cd:/curses.c diff --git a/curses.c b/curses.c index e0a77ab..5a90d21 100644 --- a/curses.c +++ b/curses.c @@ -29,7 +29,7 @@ #include "curses.h" #include "util.h" #include "board.h" -#include "msg.en.h" +#include "msg.h" #ifdef NCURSES_VERSION # define HAVE_NCURSES @@ -202,7 +202,7 @@ void OutputTermStr(char *str, int flush) void DrawTitle(void) { int rows, cols; - char s[255]; + char *s; #ifdef HAVE_NCURSES attrset(A_REVERSE); @@ -210,13 +210,15 @@ void DrawTitle(void) standout(); #endif getmaxyx(stdscr, rows, cols); - sprintf(s, " NETRIS %s", version_string); - memset(&s[strlen(s)], ' ', 254 - strlen(s)); - if (cols > 56 + strlen(version_string)) - memcpy(&s[cols - 48], - "(C)1994-1996,1999 Mark H. Weaver, (C)2002 Shiar \0", 49); - else memcpy(&s[cols], "\0", 1); + s = malloc(cols + 1); + sprintf(s, " " MSG_TITLE " %s", version_string); + const int titlelen = strlen(s); + memset(&s[titlelen], ' ', cols - titlelen); // pad + if (cols > titlelen + 1 + strlen(MSG_TITLESUB)) + memcpy(&s[cols - 1 - strlen(MSG_TITLESUB)], MSG_TITLESUB, sizeof(MSG_TITLESUB) - 1); + memcpy(&s[cols], "\0", 1); mvaddstr(0, 0, s); + free(s); standend(); //normal text } @@ -290,8 +292,8 @@ void InitFields(void) messageYPos = 24; messageWidth = MIN(x - messageXPos - 2, MSG_WIDTH); messageHeight = MIN(y - messageYPos - 1, MSG_HEIGHT); - if (messageHeight <= 0) { - messageWidth = 27; + if (messageHeight < 3) { + messageWidth = MIN(x - statusXPos - 18, 27); messageHeight = y - 3; messageXPos = statusXPos + 16; messageYPos = 2; @@ -335,10 +337,6 @@ void InitFields(void) DrawField(scr); } -void CleanupScreen(int scr) -{ -} - void DisplayMessage(char *p) { char s[MSG_WIDTH];