I've been struggling to get any input from Ncurses working. The keyboard input works fine if I use stdscr
rather than my custom window. However, if I use the stdscr
, I get absolutely no output to the terminal.
Here is my compile argument:
gcc -o dungeon dungeon.c -lncursesw
Code in question:
setlocale(LC_ALL, "");
int key;
window = newwin(XLEN, YLEN, 0, 0);
keypad(window, TRUE);
initscr();
clear();
noecho();
cbreak();
refresh();
while (player.alive && !playerWin(monsters)){
key = wgetch(window);
if (key == 'y' || key == '7'){
player.alive = 0;
}
render(monsters);
refresh();
for(i = 0; i < numMonsters; i++){
moveMonsters(&monsters[i]);
}
monsterPlayerCollision(monsters);
int dead = monsterMonsterCollision(monsters);
if(dead){
monsters[dead].alive = 0;
}
dijkstraNon();
dijkstraTunnel();
clear();
usleep(3);
wrefresh(window);
}
Please let me know if there's anything I can do to clarify.