我目前正在努力解决我认为相当简单的问题。我正在使用c#进行乒乓球比赛。我试图实现一个30秒倒计时器,一旦时间用完就会将玩家踢回主菜单。
这是处理开始新游戏的方法。我相信这是放置计时器的最佳位置。
public void StartNewGame()
{
scene = new GameScene(this);
//Start timer
//If timer <= 0
{
load main menu
}
}
我在加载不同的场景时非常好,但我不知道我的生活如何使用计时器。
如果您有任何其他问题,请不要犹豫,并一如既往地感谢任何帮助! 谢谢。
答案 0 :(得分:0)
您需要为此使用线程。
在一个线程中,您将运行游戏,其中包含一些变量,用于定义游戏是否仍应运行。
在另一个主题上,你只需要睡觉,等待你想要的金额。如果你想环顾图书馆,C#提供各种花哨的计时器。一旦完成睡眠,或者一旦你的Timer类结束,你就可以在你的游戏线程中翻转旗帜,这会让游戏停止。
您可以像这样运行游戏线程:
Thread thread = new Thread();
thread.Start(() => { //start your game });
只要您以异步方式运行游戏,您也可以使用Task
静态类,这可能是性能更好的。