|
Тайм аут |
|
|
Серж |
28.1.2014, 4:07
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Есть скрипт на тайм аут? мне нужно чтоб скрит не задерживался долго на одном месте, и по истечению времени, продолжал дальше работать... Например: Код if 1258, 438 255 kleft 1244, 524 [abs] wait 300 else send {F9} wait 500 end_if Бывает "тупик", когда надо проехать к цвету кликом мышкой, а не может, из за препяствия, и нужно нажать на F9 по тайм ауту...
|
|
|
|
Серж |
29.1.2014, 0:30
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Что то не понял я про блоки, и не понятно что за кнопка такая "$buffButton1"?... И вот еще вопрос, возможно сделать так, типа по цвету запустился таймер, а потом цвет вдруг изчез раньше времени, можно сделать чтоб отменял таймер, т.к. цвет "ложный" сработал раньше чем истек таймер? И пожалуйста меньше теорий, больше практики! (IMG: style_emoticons/default/smile.gif)
|
|
|
|
DarkMaster |
29.1.2014, 0:56
|
Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008 Группа: Супермодераторы Наличность: 27725
Пользователь №: 11.279
|
есть у нашего форума одна особенность: рыбу за вас ловить не будут, а вот учить как это делать будут очень терпеливо. Перевожу: вместо вас писать не будут, подсказать - всегда пожалуйста. Бывают очень редкие исключения, если задачи очень интересные и/или сложные. Тут все что нужно - это посидеть и чуток подумать. Лучше с ручкой и бумажкой. Цитата что за кнопка такая "$buffButton1"? Это переменная. Предполагается, что пользователь сам присвоит ей необходимое значение. Скрипт расчитан на бафф, но его структура абсолютно универсальная. Цитата И вот еще вопрос, возможно сделать так, типа по цвету запустился таймер, а потом цвет друг изчез раньше времени, можно сделать чтоб отменял таймер, т.к. цвет "ложный" сработал раньше чем истек таймер? Можно, такие вещи пишутся ручками. Замените в своем предложении "(в)друг", "т.к." на if'ы и получите структуру кода (IMG: style_emoticons/default/smile.gif) Сообщение отредактировал DarkMaster - 29.1.2014, 0:57
--------------------
Скрипты UOPilot под заказ. Консультации по UOpilot 15$/час. Услуги Lua разработчика (не пилот, проекты, постоянка) Disсоrd: Kov____
|
|
|
|
Серж |
29.1.2014, 3:32
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Писал по всякому, путем проб и ошибок, и не могу понять как правильно впихнуть if'ы с таймерами в существующий скрипт, максимум что пока получилость, это ждать тайм аут, но работает в обоих условиях, есть цвет или нет... Или if'ы с таймером вообще отдельным скриптом писать нужно было? (IMG: style_emoticons/default/smile.gif)
|
|
|
|
Серж |
29.1.2014, 5:09
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Вот что первое на ум пришло... Код if 1258, 438 65280 kleft 1244, 524 [abs] wait 100 if #time > timer end_if else set #time timer + 12000 send {F9} wait 500 end_if Я думал что после истечения таймера, курсор скрипта ( или как вы его называете) перейдет с 4 стоки на 7 стоку... А на практике, по истечении таймера перестает читать 5 строку...
|
|
|
|
Серж |
29.1.2014, 18:10
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Написал еще вот так: Код if #time > timer if 1258, 438 65280 kleft 1244, 524 [abs] wait 100 end_if else send {F9} wait 500 set #time timer + 12000 end_if Но тут уже получается что перед нажатием Ф9, ждет 12 секунд, не зависимо есть цвет или нет. не совсем то что нужно...
|
|
|
|
Серж |
29.1.2014, 18:58
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Цитата(DarkMaster @ 29.1.2014, 19:15) Потому что не на своем месте.
Ну я много раз по разному if'ы переставлял и смотрел как работает, пока не получается как нужно... Цитата(DarkMaster @ 29.1.2014, 19:15) Смысл блока?
Незнаю, разве на 2 if'а можно написать 1 "конец"? я так вроде пробывал, ошибку выдает.
|
|
|
|
DarkMaster |
30.1.2014, 0:57
|
Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008 Группа: Супермодераторы Наличность: 27725
Пользователь №: 11.279
|
Цитата Незнаю, разве на 2 if'а можно написать 1 "конец"? я так вроде пробывал, ошибку выдает. Нет. Просто у тебя внутри if'а вообще никаких действий нет. Т.е. блок что есть, что нет - результат один. Хотя бы в лог сообщение какое-то пиши, чтобы понимать(в т.ч. тебе самому), что это такое. Вернемся к 1 варианту. Он был очень близок. Цитата по цвету запустился таймер Цитата if 1258, 438 65280 ... else set #time timer + 12000 ... end_if Посмотри где запускается таймер. По цвету или по отсутствию цвета? Эта конструкция может стопорить скрипт или ей этого делать нельзя? Если можно, то проще на while это написать. Если нельзя, то тебе необходимо будет сделать защиту от повторного запуска таймера. Т.е. в текущем виде таймер будет перезапускаться каждый раз согласно условию. Таким образом он будет постоянно отсрочиваться пока не изменится выражение правда/ложь. Самый простой вариант сделать флаг: запустили таймер - изменили переменную, при запуске таймера проверять эту переменную: если таймер запущен, то таймер больше не запускать.
--------------------
Скрипты UOPilot под заказ. Консультации по UOpilot 15$/час. Услуги Lua разработчика (не пилот, проекты, постоянка) Disсоrd: Kov____
|
|
|
|
Серж |
30.1.2014, 1:10
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Цитата(DarkMaster @ 30.1.2014, 1:57) Вернемся к 1 варианту. Он был очень близок. Посмотри где запускается таймер. По цвету или по отсутствию цвета?
По цвету запуск таймера... Просто для меня пока темный лес с операторами Set, не могу точно понять как он работает
|
|
|
|
DarkMaster |
30.1.2014, 1:26
|
Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008 Группа: Супермодераторы Наличность: 27725
Пользователь №: 11.279
|
set? да по сути он обычное присвоение. Т.е.: set #a ... по смыслу тоже самое, что: #a == ... Мы просто присваиваем переменной #a какое-то значение. Кстати таймер по большому счету мы не создаем. Таймер в пилоте один: timer. Мы создаем значение, которое потом сравниваем с текущим значением таймера. Попробуй понять эту фразу (IMG: style_emoticons/default/smile.gif). Цитата По цвету запуск таймера... Тогда еще раз смотрим на условие: Код if 1258, 438 65280 ... else set #time timer + 12000 ... end_if Код если в 1258, 438 цвет равен 65280 ... в противном случае set #time timer + 12000 ... конец_условия
--------------------
Скрипты UOPilot под заказ. Консультации по UOpilot 15$/час. Услуги Lua разработчика (не пилот, проекты, постоянка) Disсоrd: Kov____
|
|
|
|
Серж |
30.1.2014, 4:57
|
Neophyte
Сообщений: 21
Регистрация: 11.1.2009 Группа: Пользователи Наличность: 0
Пользователь №: 11.391
Возраст: 21
|
Написал вот так, у меня просто кончилисть другие идеи (IMG: style_emoticons/default/smile.gif) Код if 1258, 438 65280 kleft 1244, 524 [abs] wait 200 if_not #time > timer goto 8 end_if else :8 set #time timer + 20000 send {F9} wait 500 end_if На практике работает так как я хотел, а у вас в голове какой скрипт был? (IMG: style_emoticons/default/smile.gif)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|