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

 
Ответить в эту темуОткрыть новую тему
> Perfect World и UO Pilot Пообщаемся ?, Предлагаю пообщаться да и помочь друг другу макросами и советами
Vik_777
сообщение 14.10.2018, 16:23
Сообщение #1


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Для начала автохилл. если полоска здоровья исчезла то прожимаем хилл.
клавиша F6

set $a 0
set #time timer +300 // ВРЕМЯ ПОИСКА
while $a < 1
set $a findcolor (217, 41 224, 49 1 1 2502707 %K 2)
if #time > timer
end_while
if $a > 10 // чтоб не было ложных сработок найденных точек не меньше 10 д.б.
send217 F6
hint (22 clRed 335 50 (ХИЛЛ))
end_if
end_if
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 14.10.2018, 17:10
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Неправильно расставлены end_if и end_while.
Цитата
set $a 0
set #time timer +300 // ВРЕМЯ ПОИСКА
while $a < 1
set $a findcolor (217, 41 224, 49 1 1 2502707 %K 2)
if #time > timer
end_while
if $a > 10 // чтоб не было ложных сработок найденных точек не меньше 10 д.б.
send217 F6
hint (22 clRed 335 50 (ХИЛЛ))
end_if
end_if

if должен закрываться end_if, while end_while.
Цитата
if #time > timer

В условии ничего нет, т. е. можно убрать ничего не изменится.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 14.10.2018, 21:37
Сообщение #3


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Цитата(cirus @ 14.10.2018, 17:10) *

Неправильно расставлены end_if и end_while.

if должен закрываться end_if, while end_while.

В условии ничего нет, т. е. можно убрать ничего не изменится.


Наверно вы правы но по мне и так работает.
если ничего не нашло то пропуск всего .
если время вышло тоже норм ошибки не выдает
хотя можно попробовать вообще без while_not и end_while


Цитата(Vik_777 @ 14.10.2018, 21:29) *

Наверно вы правы но по мне и так работает.
если ничего не нашло то пропуск всего .
если время вышло тоже норм ошибки не выдает
хотя можно попробовать вообще без while_not и end_while

хотя нет нельзя

Цитата(Vik_777 @ 14.10.2018, 21:31) *

Наверно вы правы но по мне и так работает.
если ничего не нашло то пропуск всего .
если время вышло тоже норм ошибки не выдает
хотя можно попробовать вообще без while_not и end_while
хотя нет нельзя

Но к слову если можно то прокомментируйте двойное вложение
первый if и его end_if очень далеки друг от друга

set #t 0
:поиск_лу
set #a 0
set #time timer + 600 // ВРЕМЯ ПОИСКА ЛУ ВУ
while_not #a > 80 // ИШЕМ НИПА ОФИЦЕР ЛУ ВУ И ТЫКАЕМ
set #a FindImage(300 120 1600 820(C:\1\ЛУ_ВУ.bmp)%Y #h 70 1 10)
if #time > timer
end_while
if #a > 0 // вижу тыкаю
mouse disable
move %Y [1 1] %Y [1 2] #h
left %Y [1 1] %Y [1 2] #h // ОФИЦЕР ЛУ ВУ тык
wait 600
mouse enable
***********************************************
set #a 0 // если далеко стоит то начнет бежать и еше раз ткнет
set #time timer + 600 // ВРЕМЯ ПОИСКА ЛУ ВУ
while_not #a > 80 // ИШЕМ НИПА ОФИЦЕР ЛУ ВУ И ТЫКАЕМ
set #a FindImage(300 120 1600 820(C:\1\ЛУ_ВУ.bmp)%Y #h 70 1 10)
if #time > timer
end_while
if #a > 0 // вижу тыкаю
mouse disable
move %Y [1 1] %Y [1 2] #h
left %Y [1 1] %Y [1 2] #h // ОФИЦЕР ЛУ ВУ тык
hint (22 clRed 720 210 (ТЫК ЛУ ВУ ТЫК))
wait 600
mouse enable
end_if
end_if
***********************************************
hint (22 clRed 720 210 (ТЫК ЛУ ВУ ТЫК))
set #a 0 // ЖДЕМ ОТКРЫТИЯ ОКНА ДИАЛОГА
set #time timer + 3000
while_not #a > 70
set #a FindImage(400 10 1350 350(C:\1\ОФИЦЕР.bmp)%M #h 70 1 10)
if #time > timer
end_while
mouse disable
move %M [1 1] %M [1 2] #h
kleft_down %M [1 1] %M [1 2] #h
kleft_up 792 16 // ОФИЦЕР ОТЦЕНТРОВАЛИ
wait 500
left 800,324 // ОБМЕН СОКРОВИЩА ПРИНЦА
wait 200
left 800,294 // ХОРОШО
wait 200
mouse enable
end_if // время вышло
goto выход_лу // и перход к след зад.
end_if // вижу тыкаю
end_if
set #t #t + 1
if #t < 3 // если 2 раза не находим то дальше
hint (22 clRed 700 250 (не вижу))
wait 1000 // ждем
hint (22 clRed 950 250 (2.5сек))
wait 2500
goto поиск_лу // в начало
end_script
end_if
:выход_лу // дальше

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 14.10.2018, 21:59
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
Но к слову если можно то прокомментируйте двойное вложение

Код
while 0 = 0    // цикл
    if  1 = 1  // условие 1
        if  2 = 2    // условие 2

        end_if       // конец условия 2
        if  3 = 3    // условие 3

        end_if       // конец условия 3
    end_if       // конец условия 1
end_while     // конец цикла

Таймер зачем нужен?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 15.10.2018, 8:41
Сообщение #5


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Цитата(cirus @ 14.10.2018, 21:59) *

Таймер зачем нужен?

таймер чтоб не зацикливался в поиске того что может не появиться.
лучше пусть пропустит и передаст задание следующему персу (игроку).
А время поиска задается чтоб больше шансов был найти требуемое
бывает задержи интернета (время отклика ). Но как говориться без фанатизма.
Спасибо за коммент.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 15.10.2018, 11:05
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
set #time timer + 600  // искать картинку в течении 600 мсек

while #time > timer   // пока не вышло время
    set #a FindImage(400 10 1350 350 (C:\1\ОФИЦЕР.bmp) %M 2 70 1 10)
    if  #a > 0     // если картинка найдена
        log Картинка найдена
        // нужные действия
        break    // выход из цикла
    end_if
    wait 10
end_while
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 16.10.2018, 10:29
Сообщение #7


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



чтож, так более элегантно надо опробовать (IMG:style_emoticons/default/unsure.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 16.10.2018, 22:16
Сообщение #8


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Цитата(Vik_777 @ 16.10.2018, 10:29) *

чтож, так более элегантно надо опробовать (IMG:style_emoticons/default/unsure.gif)

Спасибо работает (IMG:style_emoticons/default/tongue.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 26.10.2018, 10:08
Сообщение #9


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Прикрепленный файл  Ошибка.bmp ( 237,04 килобайт ) Кол-во скачиваний: 357


Вопросик. Когда запускаю макрос с быстрой клавиши почти всегда идет такое сообщение
см рис. макрос тем не менее запускается все норм.Иногда ошибка не выскакивает.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.10.2018, 10:25
Сообщение #10


***********

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



попробуйте в настройках во вкладке ультимы онлайн снять все три галки "при ошибке чтения параметров чара" и во вкладке скритпа "при закрытии клиента останавливать скрипт".


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


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Это сообщение появляется если не указано рабочее окно.
Вначале скрипта:
Код
set #h findwindow ("Perfect World")
set workwindow #h
// если окно будет найдено сообщения не будет
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.10.2018, 11:23
Сообщение #12


***********

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



Из описанного выше - привязка тут как раз не нужна. Так же лично у меня есть некоторые сомнения, что это приведет к нужному результату, т.к. все эти попытки чтения статов чара и контроля состояния приложения никуда не денутся, а вызваны, скорее всего, будут еще до выполнения скрипта. В лучшем случае будут наперегонки бегать с привязкой окна. Ну 2+ запуск при условии, что окно с привязкой не перезапускалось, не должен вызывать сообщения. Тем не менее остается сам непосредственный функционал контроля ошибок и состояния клиента. Он нужен? Судя по тому, что скрипты не требуют привязки - никоем образом. Зачем прикручивать костылики, чтобы функционал который не нужен продолжал работать, жрать ресурсы? Не логичнее ли его отключить?

Сообщение отредактировал DarkMaster - 26.10.2018, 11:25


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


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Сообщение выводится только при запуске скрипта и только если не указано рабочее окно. Не отключается никакими галочками.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 3.11.2018, 8:10
Сообщение #14


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Спасибо надо осмыслить все сказанное (IMG:style_emoticons/default/unsure.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Vik_777
сообщение 3.11.2018, 8:21
Сообщение #15


**

Neophyte
Сообщений: 48
Регистрация: 3.10.2016
Группа: Пользователи
Наличность: 0
Пользователь №: 18.140
Возраст: 40



Цитата(WKnight @ 26.10.2018, 12:39) *

Сообщение выводится только при запуске скрипта и только если не указано рабочее окно. Не отключается никакими галочками.


Да так подтверждаю.
Причем если см файл


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


***********

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



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


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

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

 

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