diff options
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 46 |
1 files changed, 46 insertions, 0 deletions
@@ -0,0 +1,46 @@ +#include <ncurses.h> +#include <stdlib.h> +#include "board.h" + +int main(void) { + initscr(); /* Start curses mode */ + if(has_colors() == FALSE) + { endwin(); + printf("Your terminal does not support colour\n"); + return 1; + } + start_color(); /* Start color */ + noecho(); + curs_set(0); + /* End of ncurses init nonsense */ + + int ch; + bool reveal = false; + generate_first_line(puzzle); + generate_puzzle(puzzle); + + while (1) { + print_puzzle(puzzle, reveal); + + ch = getch(); + switch (ch) { + case 'q': + endwin(); + return 1; + break; + case 'g': + reveal = false; + generate_first_line(puzzle); + generate_puzzle(puzzle); + break; + case 'r': + if ( reveal == true ) reveal = false; + else reveal = true; + break; + } + clear(); + }; + + endwin(); /* End curses mode */ + return 0; +} |