뱀과 비슷한 간단한 C# 게임을 만들고 있는데, 두 가지 측면이 있습니다. 나는 둘 다 움직일 수있는 방법이 있지만, 둘 다 서로 다른 속도로 움직이기를 바란다. 여기 제가 지금 가지고있는 방법의 축소 버전입니다. 문 IF 처음에 여기 다른 기능의 지연이 다릅니다. C#
private async void mover()
{
while (GlobalVar.Status == "alive")
{
if (GlobalVar.Direction == "up")
{
try { moveupp(GlobalVar.Row, GlobalVar.Column, "player"); }
catch (System.IndexOutOfRangeException) { died(); }
}
if (GlobalVar.OppDirection == "up")
{
try { moveupp(GlobalVar.Row, GlobalVar.Column, "opp1"); }
catch (System.IndexOutOfRangeException) { died(); }
}
await Task.Delay(500);
}
}
는 내 문자 (플레이어)까지 이동하고, 문 IF 두 번째로, 상대 (opp1)이 움직이고 있습니다. 이들은 지연과 함께 500 밀리 초 지연과 동기화되어 작동하고 있습니다. "TaskDelay (500); 기다림". 제 질문은, 어쨌든 그들은 둘 다 서로 달릴 수 있으며 그 사이에 다른 지연이 있습니까? 따라서 opp1은 플레이어보다 빠르게 움직일 수 있습니까? 미리 감사드립니다.
프로그램 흐름을 제어하기 위해 예외를 사용하지 마십시오. –