void run(char* dirname) { int ch, x, y, i; curs_set(0); draw_chara(dirname); draw_stats(dirname); draw_skill(dirname); x = 0; y = 0; for(;;) { draw_controls(0); move_cursor(y); cbreak(); noecho(); ch = getch(); for(i = 0; i < COLS; ++i) mvaddch(LINES - 1, i, ' '); mvaddch(LINES - 1, COLS - 1, ch); if(ch == 'q') break; if(ch == 'j') y = move_cursor(y + 1) ? y + 1 : y; if(ch == 'k') y = move_cursor(y - 1) ? y - 1 : y; if(ch == 'h') change_hp(); if(ch == 'm') change_mp(); if(ch == 'f') change_fate(); if(ch == 'd') ndice(); if(ch == '?') draw_help(); } return; }
void draw_top_bar(uint8_t swap, CNTRLDISPLAY controls) { rectangle_filled(0, 0, 640, 30, 1); rectangle_filled(0, 30, 640, 480-30, 0); draw_glyph(3, 7, spclr_logo_width, spclr_logo_height, spclr_logo, 0, 0); draw_controls(controls); if (swap) swap_buffers(); }