From: Laurent Mazet Date: Sun, 30 Jun 2024 21:35:49 +0000 (+0200) Subject: all symbols defined X-Git-Tag: v1.0~33 X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=74bbc08f04d0d05f86718977031b133012552cec;p=checkers.git all symbols defined --- diff --git a/display.c b/display.c index 8595908..08d9298 100644 --- a/display.c +++ b/display.c @@ -118,43 +118,70 @@ int helpwindow (char *msg, int xoffset, int yoffset) return j; } -void _element0 (board_t *board, int x, int y, int symb) +void _set_symb_color (char symb) { - int element = ' '; switch (symb) { - case 'F': - case 'H': - case 'X': - element = ACS_DIAMOND; + case ' ': + set_color (black); break; - } - set_color (black); - switch (symb) { - case 'C': - set_color (bgreen); + case '.': + set_color (white); break; - case 'F': + case '0': + case '6': set_color (wgreen); break; - case 'H': + case '1': + case '7': + set_color (wred); + break; + case '2': + case '8': + set_color (green); + break; + case '3': + case '9': set_color (red); break; - case 'P': - set_color (byellow); + case '4': + case ':': + set_color (bgreen); break; - case 'O': - set_color (white); + case '5': + case ';': + set_color (bred); break; - case 'X': - set_color (white); + case 'S': + set_color (byellow); break; case 'Z': set_color (bblue); break; - case ' ': - set_color (black); + } +} + +void _element0 (board_t *board, int x, int y, int symb) +{ + int element = ' '; + switch (symb) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + element = ACS_S1; + break; + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + element = ACS_DIAMOND; break; } + _set_symb_color (symb); mvaddch (board->yoffset + y, board->xoffset + x, element); set_color (white); } @@ -164,40 +191,26 @@ void _element1 (board_t *board, int x, int y, int symb) int element0 = ' '; int element1 = ' '; switch (symb) { - case 'F': - case 'H': - case 'X': - element0 = ACS_LARROW; - element1 = ACS_RARROW; - break; - } - set_color (black); - switch (symb) { - case 'C': - set_color (bgreen); - break; - case 'F': - set_color (wgreen); - break; - case 'H': - set_color (red); - break; - case 'P': - set_color (byellow); - break; - case 'O': - set_color (white); - break; - case 'X': - set_color (white); - break; - case 'Z': - set_color (bblue); - break; - case ' ': - set_color (black); + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + element0 = '<'; + element1 = '>'; + break; + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + element0 = ACS_LEQUAL; + element1 = ACS_GEQUAL; break; } + _set_symb_color (symb); mvaddch (board->yoffset + y, board->xoffset + 2 * x, element0); mvaddch (board->yoffset + y, board->xoffset + 2 * x + 1, element1); set_color (white); @@ -221,40 +234,19 @@ void _element2 (board_t *board, int x, int y, int symb) element10 = ACS_LLCORNER; element11 = ACS_LRCORNER; break; - } - set_color (black); - switch (symb) { - case ' ': - set_color (black); - break; - case '.': - set_color (white); - break; - case '0': - set_color (wgreen); - break; - case '1': - set_color (wred); - break; - case '2': - set_color (green); - break; - case '3': - set_color (red); - break; - case '4': - set_color (bgreen); - break; - case '5': - set_color (bred); - break; - case 'S': - set_color (byellow); - break; - case 'Z': - set_color (bblue); + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + element00 = '/'; + element01 = '\\'; + element10 = '\\'; + element11 = '/'; break; } + _set_symb_color (symb); mvaddch (board->yoffset + 2 * y, board->xoffset + 2 * x, element00); mvaddch (board->yoffset + 2 * y, board->xoffset + 2 * x + 1, element01); mvaddch (board->yoffset + 2 * y + 1, board->xoffset + 2 * x, element10); @@ -271,9 +263,12 @@ void _element3 (board_t *board, int x, int y, int symb) int element02 = ' '; int element12 = ' '; switch (symb) { - case 'F': - case 'H': - case 'X': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': element00 = ACS_ULCORNER; element01 = ACS_HLINE; element02 = ACS_URCORNER; @@ -281,34 +276,22 @@ void _element3 (board_t *board, int x, int y, int symb) element11 = ACS_HLINE; element12 = ACS_LRCORNER; break; - } - set_color (black); - switch (symb) { - case 'C': - set_color (bgreen); - break; - case 'F': - set_color (wgreen); - break; - case 'H': - set_color (red); - break; - case 'P': - set_color (byellow); - break; - case 'O': - set_color (white); - break; - case 'X': - set_color (white); - break; - case 'Z': - set_color (bblue); - break; - case ' ': - set_color (black); + element10 = '\\'; + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + element00 = '/'; + element01 = ACS_HLINE; + element02 = '\\'; + element10 = '\\'; + element11 = ACS_HLINE; + element12 = '/'; break; } + _set_symb_color (symb); mvaddch (board->yoffset + 2 * y, board->xoffset + 3 * x, element00); mvaddch (board->yoffset + 2 * y, board->xoffset + 3 * x + 1, element01); mvaddch (board->yoffset + 2 * y, board->xoffset + 3 * x + 2, element02);