local Timer = { -- тут параметры нашего таймера
State = false, -- статус (вкл/выкл)
Start = -1, -- время начала
Time = 15 -- длительность
}
function main()
while not isSampAvailable() do wait(0) end
sampRegisterChatCommand('start', function(arg)
Timer.State = not Timer.State -- переключаем статус таймера
if Timer.State then -- если таймер включен, то...
Timer.Start = os.clock() --... устанавливаем время запуска на текущее время
sampAddChatMessage('Таймер запущен на '..Timer.Time..' сек.', -1)
else
sampAddChatMessage('Таймер выключен', -1)
end
end)
while true do
wait(0)
if Timer.State then -- если таймер активен, то:
local TimeLeft = math.floor(Timer.Start + Timer.Time - os.clock()) -- получаем время до конца таймера (math.floor тут не обязателен, но так время отображается без мс (для лучшего вывода на экран))
printStyledString('TIME LEFT: ~y~'..TimeLeft..'~w~ sec.', 25, 7) -- выводим время на экран
if TimeLeft <= 0 then -- если время таймера меньше или == 0, то... (он выключился)
Timer.State = false -- выключаем таймер
sampAddChatMessage('Время прошло!', -1)
end
end
end
end