draw game improvement

This commit is contained in:
ProgramSnail 2021-04-11 20:14:23 +03:00
parent bee718ad9b
commit 220dd71d8f
15 changed files with 274 additions and 75 deletions

View file

@ -4,18 +4,18 @@
namespace draw {
void initColorPairs() {
init_pair(ColorScheme::simple, COLOR_BLACK, COLOR_WHITE);
init_pair(ColorScheme::map_simple, COLOR_BLACK, COLOR_WHITE);
init_pair(ColorScheme::map_active, COLOR_WHITE, COLOR_BLACK);
init_pair(ColorScheme::menu_simple, COLOR_BLACK, COLOR_WHITE);
init_pair(ColorScheme::menu_active, COLOR_WHITE, COLOR_BLACK);
init_pair(ColorScheme::player0, COLOR_BLACK, COLOR_RED);
init_pair(ColorScheme::player1, COLOR_BLACK, COLOR_BLUE);
init_pair(ColorScheme::player2, COLOR_BLACK, COLOR_MAGENTA);
init_pair(ColorScheme::player3, COLOR_BLACK, COLOR_YELLOW);
init_pair(ColorScheme::neutral, COLOR_WHITE, COLOR_GREEN);
init_pair(ColorScheme::enviroment, COLOR_BLACK, COLOR_WHITE);
init_pair(ColorScheme::damaged, COLOR_RED, COLOR_WHITE);
init_pair(static_cast<short>(ColorScheme::simple), COLOR_WHITE, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::map_simple), COLOR_WHITE, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::map_active), COLOR_BLACK, COLOR_WHITE);
init_pair(static_cast<short>(ColorScheme::menu_simple), COLOR_WHITE, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::menu_active), COLOR_BLACK, COLOR_WHITE);
init_pair(static_cast<short>(ColorScheme::player0), COLOR_RED, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::player1), COLOR_BLUE, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::player2), COLOR_MAGENTA, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::player3), COLOR_YELLOW, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::neutral), COLOR_GREEN, COLOR_WHITE);
init_pair(static_cast<short>(ColorScheme::enviroment), COLOR_WHITE, COLOR_BLACK);
init_pair(static_cast<short>(ColorScheme::damaged), COLOR_WHITE, COLOR_RED);
}
void begin() {
@ -36,7 +36,14 @@ namespace draw {
void drawCh(size_t x, size_t y,
Cell cell, ColorScheme colorScheme) {
attron(COLOR_PAIR(colorScheme));
mvaddch(y, x, cell);
mvaddch(y, x, static_cast<short>(cell));
attroff(COLOR_PAIR(colorScheme));
}
void drawKey(size_t x, size_t y,
char key, ColorScheme colorScheme) {
attron(COLOR_PAIR(colorScheme));
mvaddch(y, x, key);
attroff(COLOR_PAIR(colorScheme));
}