Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Curses: näppäinten lukeminen ilman odotusta

Jyri [06.12.2010 22:53:18]

#

Terve,

Olen koodailemassa yksinkertaista ASCII pohjaista peliä C++:lla ja PDCursesilla, ja eteen tuli pieni ongelma:
Pelin pääsilmukassa pitäisi lukea käyttäjän antamia komentoja näppäimistöltä ja samalla liikuttaa vihollisia. Eli jos kirjoita silmukan muotoon:

do
{
switch(key)
{
case KEY_UP: ...
}
... liikuta vihollisia ...
} while((key=getch()) != KEY_F(12));

niin silmukka keskeytyy aina odottamaan näppäimistön painalluksia.
Onko kenelläkään ideoita / kokemusta vastaavanlaisesta tilanteesta?

Grez [06.12.2010 22:59:18]

#

if (kbhit()) key=getch();  // this will require the conio.h library

Jyri [06.12.2010 23:06:21]

#

conio.h taitaa olla huono vaihtoehto, käsittääkseni se ja curses.h sisältää samannimisiä funktioita, eli ei taida mennä kääntäjästä läpi.

Metabolix [06.12.2010 23:08:41]

#

Tee näin ennen näppäimen lukemista (esim. ohjelman alussa):

nodelay(stdscr, TRUE);

Jyri [06.12.2010 23:15:20]

#

Kiitos, toimii kuin unelma :)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta