Roblox计时系统只为您提供当地时间

时间:2018-05-02 23:50:26

标签: lua roblox

所以我一直在玩这个模拟时钟,我试图在网上找到答案,但没有找到。我基本上希望这个时钟做的几乎是参考GMT时间,而不是计算机上的时间,因为我正在尝试制作一个世界上所有时间的游戏。但我不能这样做,因为如果我加上6个小时来显示德国时间,它会正确地告诉我时间,但对于不同时区的任何人都不会。我应该在代码中更改什么?

    local sp = script.Parent
local Clock = sp.Clock
local HourArrow = Clock.Hour
local MinArrow = Clock.Min
 SecArrow = Clock.Sec

while true do
    local t=tick()
    local hour=(((t/60)/60)/12)%1
    local minute=(hour*12)%1
    local mint = math.floor(minute*60)
    local second= math.floor(((minute*60)%1)*60)
    HourArrow.Rotation = 180+(hour*360)
    MinArrow.Rotation = 180+(mint*6)
    SecArrow.Rotation = 180+(second*6)
    wait(1)
end

3 个答案:

答案 0 :(得分:0)

您可能需要查看os.time。这允许您根据需要格式化时间表示。有关格式字符串,请参阅strftime手册。您还可以将以小时,分钟等组件解构的时间作为os.date的表格。

答案 1 :(得分:0)

您应该使用“os.date(”!%c“)”直接打印UTC时间,或者使用“os.time()”来从1970年1月1日00:00:00(UTC)获得秒数< / p>

来源:StackOverflowRoblox timeRoblox date

答案 2 :(得分:0)

您当前的脚本是不必要的。

myTime = os.time{year=1970,month=1,day=1,hour=0} --current time in seconds from jan 1 1970 midnight
hoursToMove = 1 --how many hours to move forward
myTime = hoursToMove*60*60 + myTime --multiplies by 60 twice to reach minutes then hours

myTime现在等于自January 1, 1970, 00:00 UTC以来经过的秒数,再加上一小时-更改hoursToMove以修改您想要的前进/后退小时数(负数可以工作)