From b7074c5db897a6df22490d96965c33cafa3df816 Mon Sep 17 00:00:00 2001 From: r4tss <68610647+r4tss@users.noreply.github.com> Date: Tue, 9 Mar 2021 01:23:18 +0100 Subject: Made new custom menu function for UI --- nships.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/nships.c b/nships.c index ac62fdb..621684d 100644 --- a/nships.c +++ b/nships.c @@ -1,4 +1,9 @@ #include +#include +#include + +#define height 80 +#define width 200 struct p { int x; @@ -15,3 +20,56 @@ struct p rP() { p.y = (rand() % (height - 2)) + 1; return p; } + +struct items { + int len; + char items[3][15]; +}; + +int menu(int y, int x, int h, int w, int aLen, char it[][15]) +{ + int key, i, c = 0, o = 0; + WINDOW * menu = newwin(h, w, y, x); + refresh(); + box(menu, 0, 0); + while(o == 0) + { + for(i = 0; i < aLen; ++i) { + if(i == c) { + wattron(menu, A_STANDOUT); + mvwprintw(menu, i + 1, 1, "%s", it[i]); + wattroff(menu, A_STANDOUT); + } else { + mvwprintw(menu, i + 1, 1, "%s", it[i]); + } + } + switch(key = wgetch(menu)) + { + case 119: + if(c > 0) + --c; + break; + case 115: + if(c < aLen) + ++c; + break; + case 10: + o = 1; + break; + case 27: + o = 2; + break; + } + wrefresh(menu); + } + delwin(menu); + if(o == 1) + return c; + else + return -1; +} + +int main() +{ + +} -- cgit v1.2.3