2014-10-20 85 views
0

我正在研究需要遊戲中的「日曆」和日/夜週期的iOS遊戲。我設想一個完整的「24小時」可能需要15分鐘的實際時間(例如)。以前,我使用int計數器計時。iOS遊戲世界的日曆/時鐘

如何有效地跟蹤遊戲世界的日曆?

我想我至少可以使用天數計數器的時間,每次復位時,我可以增加一個day計數器,每7天,我可以增加一個week,等等。

或者可能值得使用類似epoch的系統,並轉換爲可讀格式。

回答

0

如果你想24假小時需要15真正分鐘,您可以將您的NSTimeInterval就像這樣:

NSTimeInterval real = [[NSDate date] timeIntervalSince1970]; 
NSTimeInterval fake = real * 96.0; // There are 96 fake minutes for each real minute. 

你可以記錄你的遊戲世界中的啓動時間NSUserDefaults和使用[[NSDate date] timeIntervalSinceDate:date]此偏移相反,如果你選擇。

+0

你認爲這個方法對僞造一個時代有什麼好處嗎?當用戶開始遊戲時,它可以從0開始,每個遊戲循環都可以增加計數,並且我可以在需要時計算年/日/等等。 – helion3 2014-10-20 19:05:13

+0

如果您計算刻度而不是使用時鐘,那麼您將會受到處理器限制。這會導致您的遊戲在不同系統負載下的不同處理器上以不同的速度運行。我建議使用你的時鐘。 – 2014-10-20 19:30:17

+0

你的例子不會在幾秒鐘內? 「考慮到這個時代在幾秒鐘內,每個真實秒數爲96假」? – helion3 2014-10-20 23:32:55