X-Git-Url: http://git.shiar.nl/netris.git/blobdiff_plain/c7eeb8f0c70c3d6538b7199f0e2094967413d35d..a48189e5c6981f787eb634e94c940ca5b2e517e2:/curses.c diff --git a/curses.c b/curses.c index a2c5234..e963cce 100644 --- a/curses.c +++ b/curses.c @@ -37,7 +37,6 @@ static MyEventType KeyGenFunc(EventGenRec *gen, MyEvent *event); static EventGenRec keyGen = { -// NULL, 0, FT_read, STDIN_FILENO, KeyGenFunc, EM_key NULL, 0, FT_read, STDIN_FILENO, KeyGenFunc, EM_key }; @@ -68,7 +67,7 @@ void InitScreens(void) * Ctrl-C during initialization might leave the terminal in a bad state. */ BlockSignals(&oldMask, SIGINT, 0); - initscr(); //start curses + initscr(); //start curses #ifdef CURSES_HACK { @@ -289,8 +288,8 @@ void InitFields(void) messageXPos = 2; messageYPos = 24; - if ((messageWidth = x - messageXPos - 2) > MSG_WIDTH) messageWidth = MSG_WIDTH; - if ((messageHeight = y - messageYPos - 1) > MSG_HEIGHT) messageHeight = MSG_HEIGHT; + messageWidth = MIN(x - messageXPos - 2, MSG_WIDTH); + messageHeight = MIN(y - messageYPos - 1, MSG_HEIGHT); if (messageHeight <= 0) { messageWidth = 27; messageHeight = y - 3; @@ -300,7 +299,7 @@ void InitFields(void) DrawBox(messageXPos - 2, messageYPos - 1, messageXPos + messageWidth + 1, messageYPos+messageHeight); if (msgwin = subwin(stdscr, messageHeight, messageWidth, - messageYPos, messageXPos)) + messageYPos, messageXPos)) scrollok(msgwin, 1); //allow scrolling wmove(msgwin, messageHeight - 2, 0); for (scr = messageHeight - 2; scr >= 0; scr--) //display message history @@ -352,7 +351,7 @@ void DisplayMessage(char *p) while (psearch = strchr(p, '\\')) { *psearch = '\0'; waddstr(msgwin, p); - c = atoi(++psearch)+1; + c = atoi(++psearch) + 1; if (haveColor) wattrset(msgwin, A_REVERSE | COLOR_PAIR(c)); p = ++psearch; } //search for color escapes (\) @@ -446,11 +445,11 @@ void PlotBlock1(int y, int x, unsigned char type) case 16: addch(ACS_ULCORNER); addch(ACS_URCORNER); break;//top end case 32: addch(ACS_LLCORNER); addch(ACS_LRCORNER); break;//bottom end case 48: addch(ACS_VLINE); addch(ACS_VLINE); break; //vertical middle - case 64: addch(' '); addch(ACS_HLINE); break; //left end + case 64: addch('['); addch(ACS_HLINE); break; //left end case 80: addch(ACS_ULCORNER); addch(ACS_TTEE); break; //top left corner case 96: addch(ACS_LLCORNER); addch(ACS_BTEE); break; //bottom left corner case 112: addch(ACS_LTEE); addch(ACS_PLUS); break; //vertical+right - case 128: addch(ACS_HLINE); addch(' '); break; //right end + case 128: addch(ACS_HLINE); addch(']'); break; //right end case 144: addch(ACS_TTEE); addch(ACS_URCORNER); break; //top right corner case 160: addch(ACS_BTEE); addch(ACS_LRCORNER); break; //bottom right corner case 176: addch(ACS_PLUS); addch(ACS_RTEE); break; //vertical+left @@ -514,8 +513,8 @@ void ShowScore(int scr, struct _Score score) mvaddstr(13, statusXPos, MSG_NEXT " "); mvaddstr(14, statusXPos + 5, " "); - ShapeIterate(Players[scr].nextShape, scr, - 8, statusXPos/2 + (Players[scr].nextShape/4 == 5 ? 3 : 4), + ShapeIterate(Players[scr].nextShape, scr, 8, + statusXPos/2 + (Players[scr].nextShape/4 == 5 ? 3 : 4), GlanceFunc); //draw; stick one more to the left mvprintw(3, statusXPos, MSG_LEVEL, score.level); mvprintw(5, statusXPos, MSG_SCORE, score.score);