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

> findimage, не работает
dunkel
сообщение 17.10.2022, 21:25
Сообщение #1


***

Novice
Сообщений: 87
Регистрация: 20.1.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.296
Возраст: 30



Решил воспользоваться findimage, но почему то она не видит изображения не в игре, не на рабочем столе, не в браузере. Поиск по цвету и другие функции отлично действуют. Пробовал на элементарном примере:

set #a findimage(0, 0, 1920, 1080 (d:\images\2.bmp") %arr 2 80 1 3)
hint #a
if #a > 0
move %arr[1 1] %arr[1 2]
wait 5000
end_if

Раньше таких проблем не было, но давно я не прибегал к помощи УО пилота наверное что-то забыл или какой то плагин не доставил.
win11, UOpilot v.2.42 WK
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
DarkMaster
сообщение 23.10.2022, 21:14
Сообщение #2


***********

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



для начала вам вообще не нужен mouse_pos здесь.

move %arr[#j 1] %arr[#j 2]
вы же тут не используете mouse_pos

get mouse_pos #x #y
move #x,#y
в чем смысл конструкции? мы получаем координаты мыши, и перемещаем ее в эти же самые координаты. Т.е. по сути эффективная работа равна нулю: где мышь была там она и будет. Я допускаю, в некоторых частных случаях этот может активировать кнопку, но в общем случае полностью бессмысленные действия.

kleft #x,#y
с тем же успехом вы можете использовать
kleft %arr[#j 1] %arr[#j 2]

разницы не будет никакой. Т.к. по сути вы делаете:
move %arr[#j 1] %arr[#j 2]
get mouse_pos #x #y
move #x,#y
kleft #x,#y
итого мы перемещаем мышь в
%arr[#j 1] %arr[#j 2]
потом получаем координаты мыши в перменные x и y. Зачем? мы уже знаем где она - %arr[#j 1] %arr[#j 2]
и туда же кликаем.

итого:
выкинуть get_mousepos
выкинуть move #x #y
заменить в kleft #x #y на kleft %arr[#j 1] %arr[#j 2]


Если глобально - переходите на lua. Проще его выучить и писать спокойно, чем ловить проблемы старого синтаксиса.
Если не глобально - выкинуть все goto и забыть про них навсегда.


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


***

Novice
Сообщений: 87
Регистрация: 20.1.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.296
Возраст: 30



Цитата(DarkMaster @ 23.10.2022, 20:14) *

для начала вам вообще не нужен mouse_pos здесь.

move %arr[#j 1] %arr[#j 2]
вы же тут не используете mouse_pos

get mouse_pos #x #y
move #x,#y
в чем смысл конструкции? мы получаем координаты мыши, и перемещаем ее в эти же самые координаты. Т.е. по сути эффективная работа равна нулю: где мышь была там она и будет. Я допускаю, в некоторых частных случаях этот может активировать кнопку, но в общем случае полностью бессмысленные действия.

kleft #x,#y
с тем же успехом вы можете использовать
kleft %arr[#j 1] %arr[#j 2]

разницы не будет никакой. Т.к. по сути вы делаете:
move %arr[#j 1] %arr[#j 2]
get mouse_pos #x #y
move #x,#y
kleft #x,#y
итого мы перемещаем мышь в
%arr[#j 1] %arr[#j 2]
потом получаем координаты мыши в перменные x и y. Зачем? мы уже знаем где она - %arr[#j 1] %arr[#j 2]
и туда же кликаем.

итого:
выкинуть get_mousepos
выкинуть move #x #y
заменить в kleft #x #y на kleft %arr[#j 1] %arr[#j 2]
Если глобально - переходите на lua. Проще его выучить и писать спокойно, чем ловить проблемы старого синтаксиса.
Если не глобально - выкинуть все goto и забыть про них навсегда.


Да надо наверное подучить lua. Хотя я ни разу не програмист).
А про goto
чем я могу заменить вот этот цикл?

:1
if #x,#y 6818061 9526877
kleft #x,#y
stop_script
end_if
goto 1

как мне сделать чтобы в середине скприпта можно было бы вставить цикл ожидания который бы прирывался только при выполнение условия. И чем плох goto? Он делает скрипт более медленным?

И ещё можно вопрос, вот этот скрипт по моему работает очень долго и у меня не получается им найти нужную картинку которая появляется на какие то ,03 секунды. Это дело в скрипте или просто УО пилот неспособен отслеживать появления картинки с такой скоростью. Например цвет в определённой координате он отслеживает моментально. Можно ли как то ускорить этот скрипт?

set #startX 491
set #startY 280
set #endX 1264
set #endY 712
set $path "d:\images\"
init_arr %image 4 5 6 7 8

set #size size(%image)

for #i 1 #size 1 // цикл для поиска картинок
set #a findimage (#startX #startY #endX #endY ($path%image[#i].bmp) %arr 2 80 1 7)
if size(%arr) > 0
for #j 1 size(%arr)
move %arr[#j 1] %arr[#j 2]
wait 500
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
dunkel   findimage   17.10.2022, 21:25
DarkMaster   у вас кавычка в адресе изображения только одна   19.10.2022, 9:56
dunkel   тоже не работает, я помимо него пробовал и другие ...   19.10.2022, 12:40
DarkMaster   Пилот запущен от админа?   19.10.2022, 13:32
dunkel   Пилот запущен от админа? да, мб дело в windows 1...   19.10.2022, 13:51
DarkMaster   Попробуйте сделать getimage, затем saveimage получ...   19.10.2022, 14:27
dunkel   Проблема была в касперском, после его отключения в...   19.10.2022, 14:39
DarkMaster   смотрите синтаксис финдимиджа. точность и девиэйшн...   19.10.2022, 15:17
dunkel   смотрите синтаксис финдимиджа. точность и девиэйш...   19.10.2022, 19:28
DarkMaster   2 - тип поиска. по сути актуально либо 2 либо хэнд...   19.10.2022, 20:28
dunkel   2 - тип поиска. по сути актуально либо 2 либо хэн...   19.10.2022, 20:49
DarkMaster   Можно. Нужно будет описывать всю эту логику. Тем ...   19.10.2022, 21:05
dunkel   Можно. Нужно будет описывать всю эту логику. Тем ...   19.10.2022, 21:11
DarkMaster   а зачем вообще мышь двигать? После того, как вы на...   21.10.2022, 11:55
dunkel   а зачем вообще мышь двигать? После того, как вы н...   23.10.2022, 17:06
DarkMaster   Во 1 это не цикл =) это подобие функции. Да прост...   25.10.2022, 0:26
Cockney   При снятии цвета не по хендлу идет съем 30 раз в ...   25.10.2022, 10:18
dunkel   Да просто закинуть в основное тело: if ... kleft ...   25.10.2022, 15:23
DarkMaster   у вас в массив падают кооррдинаты первого изображе...   25.10.2022, 19:08
DarkMaster   Скорее особенности НЕ aero, т.к. эта проблема был...   25.10.2022, 19:34
Cockney   Скорее особенности НЕ aero, т.к. эта проблема был...   26.10.2022, 19:45


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

 

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