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

 
Ответить в эту темуОткрыть новую тему
> Findcolor + drag
Logic
сообщение 31.1.2014, 5:34
Сообщение #1


**

Neophyte
Сообщений: 10
Регистрация: 24.11.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.448
Возраст: 25



Снова прошу помощи:
использую команду findcolor

set $a findcolor (0 0 1015 900 1 1 40191 %f 2)
msg %f
end_script

разумеется в сообщении 2 координаты, слитые в одну: "326548",

В конечном итоге мне нужно переместить найденный объект, для чего нужны раздельные координаты. Подскажите, пожалуйста, как?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 31.1.2014, 6:02
Сообщение #2


***********

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



это массив.
%f [ 1 1 ] - X координата 1 совпадения
%f [ 1 2 ] - Y координата 1 совпадения
%f [ 2 1 ] - X координата 2 совпадения
....
Цитата
set $a findcolor (0 0 1015 900 1 1 40191 %f 2)
msg %f

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

https://forum.uokit.com/index.php?showtopic=20548
смотрите findcolor - они очень близки с финдимиджем и обращаться с ними надо почти полностью идентично.


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


**

Neophyte
Сообщений: 10
Регистрация: 24.11.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.448
Возраст: 25



Цитата(DarkMaster @ 31.1.2014, 9:02) *

это массив.
%f [ 1 1 ] - X координата 1 совпадения
%f [ 1 2 ] - Y координата 1 совпадения
%f [ 2 1 ] - X координата 2 совпадения
....

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

https://forum.uokit.com/index.php?showtopic=20548
смотрите findcolor - они очень близки с финдимиджем и обращаться с ними надо почти полностью идентично.

Блин, ну конечно, он же двумерный. Спасибо большое. Пошел читать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 31.1.2014, 6:30
Сообщение #4


***********

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



Цитата
Блин, ну конечно, он же двумерный.

Когда финдколор только появился у меня точно такой же вопрос был. Правда я писал msg %f [ 1 ].


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


**

Neophyte
Сообщений: 10
Регистрация: 24.11.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.448
Возраст: 25



Цитата(DarkMaster @ 31.1.2014, 9:30) *

Когда финдколор только появился у меня точно такой же вопрос был. Правда я писал msg %f [ 1 ].

:santa:

set $a findimage (0 0 1015 900 (C:\Users\23\AppData\Roaming\UoFiddler\Item 0xEEF) %f 2)
set #x %f [1 1] + 15
set #y %f [1 2] + 10
drag #x, #y 1167, 248 all
end_script

Не работает... 14:38:12 3 (autosaved_3.txt, 1): set - (1): Символ не распознан (pos:1 ' + 15')

Цитата(DarkMaster @ 31.10.2010, 21:08) *

в) Бывают случаи, когда необходимо нажать чуть в сторону от появившейся точки. Берем все тот же скрипт:
set $a 0
while $a < 1
set $a findcolor (154, 80 318, 260 1 1 2366701 %arr 2)
end_while
set #x %arr [1 1] + #deltaX
set #y %arr [1 2] + #deltaY
left #x, #y
#deltaX и #deltaY это разница координат между найденой точкой и точкой по которой необходим клик. Например, если вам надо кликнуть на 30 пикслелей левее и на 12 ниже, то это будет выглядеть так:
set #x %arr [1 1] - 30
set #y %arr [1 2] + 12
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 31.1.2014, 16:21
Сообщение #6


***********

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



Во 1 у тебя нет проверки а существование массива. Он вообще есть?


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


**

Neophyte
Сообщений: 10
Регистрация: 24.11.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.448
Возраст: 25



Цитата(DarkMaster @ 31.1.2014, 19:21) *

Во 1 у тебя нет проверки а существование массива. Он вообще есть?

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

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

 

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