diggerアドオンを見ていたら以下のコードがあった。
local today = os.date('!%Y-%m-%d', os.time() + 32400)
32400秒は9時間であるためUTC+9つまり日本標準時JSTを指定している。なお、Luaのos.dateで!を使うとUTCで書式化される決まり。それを9時間ずらしてどのタイムゾーンでも日本時間の日付を取得できる。
たとえば、日本時間1月1日AM8時は、ニューヨークだと前日のPM6時。14時間の時差があり日付が異なる状態となる。でも、ニューヨークで稼働しているWindowerも新年1月1日の日付がtodayに格納される。
diggerアドオンは、このtodayの値をsettings(config)を使ってファイルに保存し、地球時間0時またぎのリセットが発生したかどうかを検出している。
0 件のコメント:
コメントを投稿