2012-08-09 70 views
1

我試圖做一個模擬時鐘顯示的時間(12小時),我不得不使用Lua。我用下面的線來獲取時間格式爲:Lua os.date()函數不工作在計算機工藝

os.date('%I:%M') 

這顯然是我不斷收到一個零誤差不工作,這是唯一錯的代碼。 os.time工作正常,但不是os.date;我甚至嘗試過沒有'%I:%M'(該時間的格式),但它仍然無法與os.date()一起使用。

我在做什麼錯?我是否必須從其他庫中導入日期函數?我是一個總的Lua BTW nooby ...

實際上,我用它來工作了ComputerCraft顯示器上的Minecraft但代碼:

m = peripheral.wrap('back') 
m.setTextScale(5) 
while i == i do 
m.clear() 
m.setCursorPos(1,1) 
x = os.date('%I:%M') 
m.write(x) 
sleep(60) 
end 

的事情是,雖然該代碼的其餘部分沒有按不會影響它。 os.date是唯一的問題,因爲我單獨嘗試它,它給了我同樣的錯誤「嘗試調用nil」。

+1

我認爲你需要表現出更多的你*實際*代碼有點...什麼你張貼看起來不錯,但沒有按」沒有任何意義。 – Roddy 2012-08-09 22:33:47

回答

1

根據this,ComputerCraft似乎沒有公開os.date()。建議解決方法here

不幸的是,日期和時間不會暴露給我們。在Lua中,os.date()和os.time()函數是我們想要的,但是在ComputerCraft中沒有實現日期,並且時間給出了我的世界時間。

我知道獲取真實日期和時間的唯一方法是使用http API從網上獲取它。

1

另外,如果你想在我的世界日期,請嘗試使用os.getday()