Здравствуйте, гость ( Вход | Регистрация )

> Таймер на IF, внутри цикла
Levo222
сообщение 7.9.2019, 0:12
Сообщение #1


*****

Journeyman
Сообщений: 411
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 12
Пользователь №: 18.689



Как сделать таймер на If внутри цикла? --Lua
Код
                  if  условие
                        and () -- условие 1
                        and () -- условие 2
                        and () -- условие 3
                         then
Где-то здесь должен быть таймер на исполнение по истечении которого выполнение отменяется и ищется заново, иначе происходит задержка выполнения и клавиша нажимается когда все условия уже прошли.
                        send217 ("клавиша")
                        wait (0)
                    else
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
Levo222
сообщение 10.9.2019, 3:51
Сообщение #2


*****

Journeyman
Сообщений: 411
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 12
Пользователь №: 18.689



Покопавшись в Lua увидел что при написании
Код
Timer = os.clock()
слово timer подсветилось синтаксисом команды. Но ведь в Lua нет понятия Timer это глюк пилота или что-то еще?

Не совсем понятно как в контексте многоуровневой проверки условий сделать
os.clock() - для каждой проверки в отдельности
когда есть
Код
if условие
таймаут
выполнение
else
if условие
таймаут
выполнение
else
if условие
таймаут
выполнение
else
в каждом условии в конце нужно сбрасывать значение времени запуска пилота как я понимаю?

Например на примере такой конструкции

lastTimeProcessed = os.clock()

function IsTimeToProcess(currentTime)
span = currentTime - lastTimeProcessed
if span >= 60 then
lastTimeProcessed = currentTime
return true
end

return false
end

while true do
if IsTimeToProcess(os.clock()) then
-- process some data here
end
-- otherwise do another round of whatever you're doing
end

Нужно что-то такое:
Код
присвоить время значения для таймера 500 мс
while 1 do
[code]if условие
таймаут
выполнение
однако, если после первой проверки условий прошло заданное время - то условия проверяются еще раз или переходят ниже
Как двойное else создать
--время на выполнение команды и отправка проверки по новой
else
if условие
таймаут
выполнение
else
if условие
таймаут
выполнение
else
end
end
end
end
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения



Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 19.9.2025, 19:58
Designed by Nickostyle