Ich habe mich mal an die Programmierung eines Snake-Spieles gewagt.
Soweit bin ich mit dem Ergebnis mehr als zufrieden.
Allerdings ist noch eine kleine Sache die mich stört:
Ich frage derzeit die Pfeiltasten mit dieser Funktion ab:
Code: Alles auswählen
if(kbhit()){
pressed_key=key_input();
if((pressed_key==KEY_UP && direction!=KEY_DOWN) ||
(pressed_key==KEY_RIGHT && direction!=KEY_LEFT) ||
(pressed_key==KEY_DOWN && direction!=KEY_UP) ||
(pressed_key==KEY_LEFT && direction!=KEY_RIGHT))
{
direction=pressed_key;
}
}
Code: Alles auswählen
char key_input()
{
char ch;
ch=getch();
ch=getch();
return ch;
}
Mache ich nur eine getch() abfrage erkennt das Programm die Eingabe erst bei dem zweiten Durchlauf. Daraus ergibt sich, dass die Schlange eine zu lange Reaktionszeit auf die Eingabe hat.
Gibt es eine andere/bessere Möglichkeit dieses Problem anzugehen?
Gruß!