我正在學習基於文本的遊戲,因爲我正在學習Java。我希望能夠在遊戲中統計輪次,作爲管理某些事件進度的手段。例如,更換室可以每輪限定爲一次(在測試代碼中爲一秒)。小型生物可能會以更高的速度攻擊或更換房間,而較大的生物可能更麻煩。目前很好?大。在基於文本的遊戲中處理時間(Java)
所以,我熟悉了這一點,並立即意識到,每當while循環等待播放器輸入命令時,我都會觸碰一個塊。代碼:
private void startPlaying() {
//declare clock/round variables.
int lastRound = 0;
int currentRound = 0;
long lastTime = System.currentTimeMillis();
long currentTime;
while (player.getIsPlaying()){
//Clocking
currentTime = System.currentTimeMillis();
if ((lastTime + 1000) < currentTime) {
lastTime = currentTime;
lastRound = currentRound;
currentRound++;
System.out.println("Current round:\t" + currentRound + "\tCurrent time:\t" + currentTime); //EDIT:NOTE: This is just a test line to observe the loop.
}//end if (Clocking)
Command command = new Command();
String[] commandString = command.setAll(); //Array gets parsed elsewhere.
player.doCommand(commandString);
//Class Player extends Pawn extends Actor; Pawn has most command methods.
}
finishPlaying();
}//END STARTPLAYING()
所以,這裏是我的問題:
有沒有一種方法,我可以用一個單獨的方法來記錄時間/輪併發往while循環使用命令提示符呈現的球員?
如果沒有,是否有另一種方法可以使這個問題不存在,我只是沒有看到/練習過呢?
我想Oracle的教程將是一個更明智的開始。一旦我擁有聲望,就會進行投票。 – eenblam 2013-03-20 18:57:13