local label = script.Parent
-- Функция для получения времени следующей пятницы 15:00 UTC (18:00 МСК)
function getTargetTime()
local now = os.time()
local dateTable = os.date("!*t", now) -- Получаем текущую дату в UTC
-- Находим, сколько дней осталось до пятницы (пятница = 6 день недели в Lua)
-- В Lua: 1 = Воскресенье, 6 = Пятница
local daysUntilFriday = (6 - dateTable.wday + 7) % 7
-- Если сегодня пятница, но уже больше 15:00 UTC, ищем следующую неделю
if daysUntilFriday == 0 and dateTable.hour >= 15 then
daysUntilFriday = 7
end
-- Формируем время цели (18:00 МСК = 15:00 UTC)
local target = os.time({
year = dateTable.year,
month = dateTable.month,
day = dateTable.day + daysUntilFriday,
hour = 15, -- 15:00 UTC это 18:00 по Москве
min = 0,
sec = 0
})
return target
end
local targetTime = getTargetTime()
-- Цикл обновления текста
while true do
local now = os.time()
local diff = targetTime - now
if diff <= 0 then
label.Text = "СОБЫТИЕ НАЧАЛОСЬ!"
-- Если нужно, чтобы таймер сразу искал следующую пятницу, удалите break
break
end
-- Расчет времени
local days = math.floor(diff / 86400)
local hours = math.floor((diff % 86400) / 3600)
local minutes = math.floor((diff % 3600) / 60)
local seconds = diff % 60
-- Красивый формат текста на блоке
label.Text = string.format("%dд. %02d:%02d:%02d", days, hours, minutes, seconds)
task.wait(1)
end