From f29f867a18ee82d6c79900420b6a6d5f66a75f18 Mon Sep 17 00:00:00 2001 From: sumuel Date: Wed, 15 Jul 2026 06:46:24 +0100 Subject: init --- input.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 input.c (limited to 'input.c') diff --git a/input.c b/input.c new file mode 100644 index 0000000..d7c8ffb --- /dev/null +++ b/input.c @@ -0,0 +1,54 @@ +#include +#include +#include "input.h" +#include "board.h" +char hand = ' '; +int turnPart = 1; +int turns = 0; + +int InputBoard(char board[8][8], int keypress) { + + /* Handle key input */ + switch (keypress) { + case 'q': + endwin(); + exit(0); + break; + case KEY_UP: + if (cursorPosX > 0) cursorPosX--; + break; + case KEY_DOWN: + if (cursorPosX < 7) cursorPosX++; + break; + case KEY_LEFT: + if (cursorPosY > 0 ) cursorPosY--; + break; + case KEY_RIGHT: + if (cursorPosY < 7) cursorPosY++; + break; + case '\n': /* This is the ENTER key. KEY_ENTER does not work */ + if ( hand == ' ' && board[cursorPosX][cursorPosY] != ' '){ + hand = board[cursorPosX][cursorPosY]; + board[cursorPosX][cursorPosY] = ' '; + turnPart++; + } + + else if ( hand != ' ' && board[cursorPosX][cursorPosY] != ' ') { + board[cursorPosX][cursorPosY] = hand; + hand = ' '; + turnPart++; + } + else if ( hand != ' ' && board[cursorPosX][cursorPosY] == ' ') { + board[cursorPosX][cursorPosY] = hand; + hand = ' '; + turnPart++; + } + if (turnPart & 1) turns++; + + + break; + } + + + return 0; +} -- cgit v1.2.3