所以在我的游戏中我有:
seconds = ((elapsed - now) / 1.0E9F);
代码中不同位置调用elapsed
和now
System.nanoTime();
的位置。
然后我将其转换为字符串并将其显示给用户。根据这段代码,我也有倒计时。
我想偶尔放慢这个倒计时,但我无法概念化我是如何做到的。
任何人都可以帮助我吗?
答案 0 :(得分:1)
这不是Java,但可能会帮助你,因为C#语法与java没什么不同:P
http://blog.gallusgames.com/programming/a-custom-game-clock-in-csharp
答案 1 :(得分:1)
您应该引入一个Clock
类似nanoTime
方法的界面。有一个简单包装系统时钟的实现,另一个允许您将时间设置为任意时间。将您需要的任何实例传递到倒计时代码中。
答案 2 :(得分:0)
您的代码应仅在一个地方和一个地方引用System.nanoTime()。在测试期间,您可以在这一个地方拦截定时呼叫。现在你可以每10个实际滴答一次,或者将时间设置为任意值,并在测试期间重新设置等等。