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

 
Ответить в эту темуОткрыть новую тему
> Некорректная работа Timer, Timer2, Timer3.
Alfer
сообщение 30.7.2026, 21:04
Сообщение #1


**

Neophyte
Сообщений: 18
Регистрация: 23.9.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.128
Возраст: 32



С недавнего времени заметил что мой скрипт уходит в бесконечный цикл, где "прерывателем" выступает таймер.
Вот часть скрипта:
Код

:335a_Heal_H_Ren
if timer3 > 15000
   set #335a_renmark_h 0
end_if
log #335a_renmark_h
log timer3
if #335a_renmark_h = 0
    set timer3
    send {num_1} #335a_gcd
    set #335a_renmark_h 1
    return  
end_if
return


Коротко смысл его работы - на метку :335a_Heal_H_Ren перекидывает ранее switch и вот если с последнего раза нажатия кнопки num_1 прошло меньше 15 секунд - не нажимать ее еще раз, а выходить из этой подпроцедуры.

И вот заметил что Пилот начал зацикливаться и вот в этой части всегда выполнять присвоение значения переменной 0.
if timer3 > 15000
set #335a_renmark_h 0
end_if

Запустил лог и вижу что Таймер начал показывать огромные значения. А после логирования стало понятно, что таймер почему-то считает как-бы в обратную сторону начиная от 2^32 степени.

ОС - Win10 64bit, запускаю пилот от Админа(локального).


Эскизы прикрепленных изображений
Прикрепленное изображение
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
nykep
сообщение 31.7.2026, 2:15
Сообщение #2


****

Apprentice
Сообщений: 269
Регистрация: 1.9.2012
Группа: Пользователи
Наличность: 2247
Пользователь №: 15.246
Возраст: 25



у меня тот же код нормально таймер показывает, перезагрузи комп или просто обнули таймер там где надо
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 31.7.2026, 15:39
Сообщение #3


***********

Модератор UOPilot
Сообщений: 9.829
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 30900
Пользователь №: 11.279



В старом синтаксисе есть баг с таймером как таковым. Лечится исключительно перезагрузкой. Перезапуск пилота не помогает. В lua есть обходные пути. Переходите на новый синтаксис.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____

Контакт актуален, подпись актуальна.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

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

 

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