Member 13497705 Ответов: 2

Как я использую консоль.ключ доступен.


Я хочу определить, нажата ли какая-либо клавиша, но, насколько я могу судить, оператор if не срабатывает.

"работа" печатается, поэтому вызывается GameLoop ().

Не знаю, что делать.. Спасибо за помощь!

Что я уже пробовал:

public static int GameLoop()
           {
               while(true)
               {
                   if(Console.KeyAvailable == true)
                   {
                       Environment.Exit(0); //test to see if being used
                       Player.KeyPressed = Console.ReadKey().KeyChar;
                       Player.Movement();
                   }

                   Console.WriteLine("working");

2 Ответов

Рейтинг:
13

OriginalGriff

Вероятно, именно линия записи является причиной проблемы: это будет сделано так часто, что часть вывода на консоль будет настолько занята, что ее резервное копирование будет выполнено до небес.

Вместо того чтобы выводить все время, используйте DateTime.Теперь, чтобы определить, когда количество секунд изменилось, и вывести одну строку в секунду вместо этого. Я подозреваю, что KeyAvailable волшебным образом начнет работать...


Рейтинг:
0