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

 
Ответить в эту темуОткрыть новую тему
> Системное время в UoPilot, Выполнение по времени
AnTAreS
сообщение 5.2.2013, 23:53
Сообщение #1


*

Registred
Сообщений: 5
Регистрация: 4.2.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.756
Возраст: 23



Вопрос следующий: может ли пилот извлекать системное время?
Нужно в определенное время суток приостанавливать выполнение скрипта, выполнить пару команд, ну и продолжить естественно.
Какие есть для этого команды и какой их синтаксис?
Очень надо.

Заранее спасибо.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 6.2.2013, 0:49
Сообщение #2


***********

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



нажимаем правой кнопкой мыши в теле скрипта, выбираем переменные/время. Использовать как обыкновенные переменные, только без знаков # и $.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AnTAreS
сообщение 6.2.2013, 0:52
Сообщение #3


*

Registred
Сообщений: 5
Регистрация: 4.2.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.756
Возраст: 23



Цитата(DarkMaster @ 5.2.2013, 23:49) *

нажимаем правой кнопкой мыши в теле скрипта, выбираем переменные/время. Использовать как обыкновенные переменные, только без знаков # и $.

О! Сенк) не знал, что в контекстном меню столько всего (IMG:style_emoticons/default/cool.gif) прост не юзал его ни разу)))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AnTAreS
сообщение 6.2.2013, 1:18
Сообщение #4


*

Registred
Сообщений: 5
Регистрация: 4.2.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.756
Возраст: 23



Цитата(DarkMaster @ 5.2.2013, 23:49) *

нажимаем правой кнопкой мыши в теле скрипта, выбираем переменные/время. Использовать как обыкновенные переменные, только без знаков # и $.


правильно ли будет следующее:

While Hour <> 01 and Min <> 57 and Sec <>00
. . . .
. . . .
. . . .
End_while
Wait 23m
Left <координаты>
Wait 5000

и после этого снова начнется выполнение с While ......
То есть, нужно чтобы раз в сутки, в период с 01:57:00 по 02:20:00, скрипт приостановился, потом выполнил клик в нужном месте, а замет снова продолжил работу до следующих 01:57:00.

Хотя, вообще то, нужно чтобы скрипт не останавливался прямо посреди его выполнения, если наступило нужное время, а завершил тело While, а потом уже стал на паузу так сказать...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AnTAreS
сообщение 6.2.2013, 1:39
Сообщение #5


*

Registred
Сообщений: 5
Регистрация: 4.2.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.756
Возраст: 23



Вот пробовал с разным временем — не работает... почему-то сразу перескакивает на выполнение действий после end_while. В чем причина может быть? Или я вообще нифига правильного не сделал? (IMG:style_emoticons/default/blink.gif)
Пробовал и "while", и "if", и "while_not Hour = ..." — результат тот же

В записи "While Hour <> 1", если часов "1" и не важно, что дальше стоит еще условие — что должны совпадать еще и минуты и секунды, — сразу происходит выход с цикла.

По идее в записи
While (Hour <> 1) and (Min > 5 and Min < 4) and (Sec > 30 and Sec < 1)
если хоть какое-то из условий не соблюдается, то цикл должен исполняться до тех пор, пока не наступит момент, что совпадают ВСЕ ТРИ условия
А такое впечатление, что у меня строит не "and", а "or" везде.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 6.2.2013, 3:17
Сообщение #6


***********

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



во 1 используйте числа не "01", а 1. Пилот в таком формате возвращает. В целях отладки рекомендую разбить условия по 1 и включить log commands (просто в шапке напишите).

Цитата
Min > 5 and Min < 4

Назовите мне число больше 5, но меньше 4.
Цитата
Sec > 30 and Sec < 1

Назовите число больше 30, но меньше 1.

Код
While Hour = 7 and Min > 10 and Sec < 30
      log успех
      wait 500
end_while

wait 500

все идеально отрабатывает. В 7 часов, когда больше 10 минут и меньше 30 секунд пишется в лог "успех".
В вашем случае условие будет выглядеть так:
Код
while ( hour > 0 and min > 56 ) and ( hour < 3 and min < 21 )
    log выполняется тело скрипта
end_while
log left куда-то там
while_not ( hour > 0 and min > 56 ) and ( hour < 3 and min < 21 )
    log ожидание
    wait 1000
end_while

01:57:00 по 02:20:00

Сообщение отредактировал DarkMaster - 6.2.2013, 3:20


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AnTAreS
сообщение 6.2.2013, 4:18
Сообщение #7


*

Registred
Сообщений: 5
Регистрация: 4.2.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.756
Возраст: 23



...только там наоборот: while_not сначала, а потом while и left что-то там (IMG:style_emoticons/default/smile.gif)
Да, я понял свои ошибки и как правильно логически мыслить. Спасибо за советы и помощь! (IMG:style_emoticons/default/cool.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

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

 

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