#include "curses.h"
#include "util.h"
#include "board.h"
-#include "msg.en.h"
+#include "msg.h"
#ifdef NCURSES_VERSION
# define HAVE_NCURSES
char type;
short color;
} myColorTable[] = {
- { BT_white, COLOR_WHITE },
- { BT_blue, COLOR_BLUE },
- { BT_magenta, COLOR_MAGENTA },
- { BT_cyan, COLOR_CYAN },
- { BT_yellow, COLOR_YELLOW },
- { BT_green, COLOR_GREEN },
- { BT_red, COLOR_RED },
- { BT_none, 0 }
+ { BT_T, COLOR_WHITE },
+ { BT_I, COLOR_BLUE },
+ { BT_O, COLOR_MAGENTA },
+ { BT_L, COLOR_CYAN },
+ { BT_J, COLOR_YELLOW },
+ { BT_S, COLOR_GREEN },
+ { BT_Z, COLOR_RED },
+ { BT_none, 0 }
}; //myColorTable
int i = 0;
void DrawTitle(void)
{
int rows, cols;
- char s[255];
+ char *s;
#ifdef HAVE_NCURSES
attrset(A_REVERSE);
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
}
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;
DrawField(scr);
}
-void CleanupScreen(int scr)
-{
-}
-
void DisplayMessage(char *p)
{
char s[MSG_WIDTH];