2017-04-08 2 views
0

최근에 Console-Application에서 기본 게임을 만들려고합니다. 화살표가있는 커서를 움직이는 것과 같습니다 (어쩌면 뱀과 게임의 가장 기본적인 시작으로 콘솔 화면), 나는 커서가 움직이지 않는 것을 가능하게 할 수 있는지 묻고 싶었고, 화살표를 눌렀을 때 방향을 바꾸었다. 이벤트가있는 것입니까?C# Console- 키를 누를 때까지 무언가를하십시오.

감사합니다.

+0

'while (true)'루프를 사용하고 키를 눌렀을 때 모든 루프 검사의 시작 부분에 사용하십시오. –

+0

Console.ReadKey를 사용하지 않고 어떻게 할 수 있습니까? 만약 내가 그것을 사용하면, 프로그램은 입력 키를 기다릴 것이다 – Dvir

+0

'if (Console.KeyAvailable) {Console.ReadKey();}' –

답변

0

나는 다음과 같은 제안 : 키를 누를되는 경우

bool isRight, isUp; //Used to determine direction 
while (gamePlaying) 
{ 
    if(Console.KeyAvailable) 
    { 
     Console.ReadKey(); //Do your thing in here 
    } 
} 

그래서 당신이 확인을하고 있는지 당신은 그것을 읽었다.

콘솔 게임을하는 경우 화면을 이중 버퍼링하고 Win32 API를 사용하여 가능하면 쓰기 호출을 최소화하거나 화면이 깜박 거리는 것을 최소화해야합니다.

0

어쨌든 콘솔 창의 커서 위치를 제어 할 수 있다고 생각하지 않습니다. 텍스트를 읽거나 쓸 수는 있지만 그게 전부입니다. 따라서 콘솔 게임을 만들고 싶다면 텍스트 기반이어야합니다. 새 텍스트가 애니메이션으로 표시 될 정도로 빠르지 만 콘솔에 빠르게 인쇄되는 곳에 기반하여 게임 ASCII 아트를 만들 수는 있지만 콘솔이 빠르게 작동 할 수 있다고는 생각하지 않습니다.

관련 문제