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)。
......但我不知道如何在循環中使用它們。