4
我正在尝试在Pascal中创建一个简单的游戏。它使用控制台。游戏的目标是在60秒内收集尽可能多的“苹果”。游戏结构是一个简单的无限循环。每次迭代,你都可以做出一个动作。这就是问题所在 - 在你进行移动之前(readKey
),时间可以尽可能多地传递。例如,用户可以在10秒后按下一个键!有什么方法可以计算时间吗?我需要的程序知道当用户播放(按键之前和之后),所以我不知道如何防止用户“作弊”。如何检测Pascal中的流逝时间?
这里是我的游戏结构简单:
begin
repeat
{* ... *}
case ReadKey of
{* ... *}
end;
{* ... *}
until false;
end.
全码:http://non.dagrevis.lv/junk/pascal/Parad0x/Parad0x.pas。
据我所知,有两种可能的解决方案:
- 的getTime(从DOS),
- 延迟(从CRT)。
......但我不知道如何在循环中使用它们。