0

この問題があります。コンソールでテキストを描画するための while ループがあり、インタラクティブにしたいと考えています。実際のキーの条件を含む 2 つの if ステートメントがあります。したがって、「W」を押すと何かが実行されますが、機能しません。テスト用に engine.dll と testApp の 2 つのプロジェクトがあります。コードは次のとおりです。

 while (true)
            {
                game g = new game();
                g.Draw(cHP, mHP, name,posX,posY,blip);
                Thread.Sleep(50);
                Console.CursorVisible = false;
                ConsoleKeyInfo cki = new ConsoleKeyInfo();
                //if (Console.KeyAvailable) { Console.CursorVisible = true; break; }
                if (cki.KeyChar == 'w') MoveY(1); // Here it is
                if (cki.KeyChar == 's') MoveY(-1); // and here
            }
4

1 に答える 1

0

最終バージョンで何が必要かはわかりませんが、既存のコードの修正はこれになります

 Console.CursorVisible = false;
 while(true)
 {
       game g = new game();
       g.Draw(cHP, mHP, name,posX,posY,blip);
       Thread.Sleep(50); //might not be required depending
                         //on what you want to do

       var cki = Console.ReadKey(true);
       if (cki.KeyChar == 'w') MoveY(1);// Here it is
       if (cki.KeyChar == 's') MoveY(-1); // and here
 }
于 2013-06-30T17:08:41.987 に答える