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

2 страниц V  1 2 >  
Ответить в эту темуОткрыть новую тему
> Как Именно Происходит Поиск Точек В Findcolor?
nEPCnEKTuBA
сообщение 8.2.2010, 9:06
Сообщение #1


**

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



Всем привет!
Я пытаюсь реализовать в программе поиск точек нужного цвета и мне стало интересно в коде я прописываю две кординаты, а каким образом идет этот поиск точки?
Я прикрепил примеры
В 2х случаях по координатам создается квадрат или прямоугольник и уже в нем идет поиск просто по разным осям, а в 3м случае просто на прямую от одной координаты к другой.


Прикрепленное изображение

Еще как можно сделать так чтоб пока не найдет точку далее действий не происходило?

set $a findcolor (10, 100 10, 400 1 1 3355443 %arr 1)
set #x %arr [1 1] + 70
set #y %arr [1 2]
left #x, #y
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 8.2.2010, 10:49
Сообщение #2


***********

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



set $a findcolor
в $a помещается число найденных совпадений. т.е. можно сделать примерно так:

set $a 0

while $a = 0
set $a findcolor (10, 100 10, 400 1 1 3355443 %arr 1)
set #x %arr [1 1] + 70
set #y %arr [1 2]
left #x, #y
end while

Сам наступал на грабли, так что еще несколько тонкостей использования команды:
1) Если вторая координата 100, 400, то последний поиск будет в 99, 399. По абсциссе 100 и ординате 400 поиск не будет происходить вообще.
2) Если задать начальную и конечную координату одинаковую хотя бы для одной из осей, то поиска не будет вообще. Например:
10, 100 и 10, 200 поиска не будет вообще
10, 100 и 11, 200 скрипт просканирует линию толщиной в 1 точку с началом 10, 100 и концом 10, 199.
3) Если утащить окно за область экрана координаты при нахождении будут меньше реальных, а при сильном смещении за экран скрипт выдаст ошибку.


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


**

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



Спасибо за ответ, еще я заметил что если 1я кордината в верхней левой части а 2я в нижней правой части экрана, то сканирование идет по линии Х с лева на право, сверху в низ. Как на картинке 1й вариант. Может кому то пригодится (IMG:style_emoticons/default/smile.gif)

Ошибку выдавало, исправил на
set $a 0

while $a = 0
set $a findcolor (10, 100 11, 400 1 1 3355443 %arr 1)

end while

set #x %arr [1 1] + 70
set #y %arr [1 2]
left #x, #y
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 8.2.2010, 18:08
Сообщение #4


***********

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



ага... я накосячил в запарке чуток)


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


*

Registred
Сообщений: 2
Регистрация: 22.7.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.882
Возраст: 19



Этот скрип пока ненайдет нужный цвет неостановится, а можно его модифицировать всетаки чтоб он по прошествию нескольких повторов переходил к следующей задаче?

и еще, в нем можно както указать диапазон цветов или нет?

зарание спасибо )) ато я в матиматике несилен (
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.7.2010, 20:23
Сообщение #6


***********

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



диапазон - нельзя
прерывание проверки вариантов море:
1) Использовать переменную timer. Время указывается в миллисекундах - 1сек = 1000мс.
set timer 0
while $a = 0
if timer > x
break или goto
end_if
2) Сделать счетчик проверок.
set #n 0
while $a = 0
set #n #n + 1
if #n > x
break или goto
3) Можно вместо while перестроить под repeat.


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


*

Registred
Сообщений: 2
Регистрация: 22.7.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.882
Возраст: 19



чтото ниче у меня неполучилось , видимо руки кривые )
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Korgalom
сообщение 23.7.2010, 2:00
Сообщение #8


***

Novice
Сообщений: 80
Регистрация: 30.3.2006
Группа: Banned
Наличность: 0
Пользователь №: 5.604



Чит автоприцеливания для дума хочешь написать?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DiabloKiller
сообщение 15.8.2010, 16:51
Сообщение #9


*

Registred
Сообщений: 6
Регистрация: 15.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.928



Возникает проблема с перебором точек он отказывается проверять каждую 10 и так далее он проверяет каждыйпиксель.
и разницы между set $a FindColor (700, 350 750, 375 10 10 4376097 %arr 1)
и между set $a FindColor (700, 350 750, 375 1 1 4376097 %arr 1)
по времени не обнаружено (IMG:style_emoticons/default/sad.gif).
Прописывать через фор не хотелось бы уверен будет медленее работать.
Помогите пожалуйсто.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 16.8.2010, 4:24
Сообщение #10


***********

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



потестил на 2,17 и 2,18,1. да проблема действительно есть. шаг просто игнорируется. в массив тоже запись идет с шагом 1. for смысла не имеет точно т.к. скорость выполнения с шагом 10 по обоим осям выполняется почти в 4 раза медленнее чем с шагом 1, но финдколором.


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


********

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



Бага имела место быть, удивительно как ее раньше никто не заметил.
2.18.2
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
kellas
сообщение 18.9.2010, 14:56
Сообщение #12


***

Novice
Сообщений: 76
Регистрация: 22.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.943
Возраст: 27



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


***********

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



вы бы хоть тему прочитали прежде чем постить... в 3 посте готовый ответ.


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


***

Novice
Сообщений: 76
Регистрация: 22.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.943
Возраст: 27



спс ща гляну
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
kellas
сообщение 24.1.2011, 14:10
Сообщение #15


***

Novice
Сообщений: 76
Регистрация: 22.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.943
Возраст: 27



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


***********

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



https://forum.uokit.com/index.php?showtopic=20548


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


***

Novice
Сообщений: 76
Регистрация: 22.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.943
Возраст: 27



Цитата(DarkMaster @ 24.1.2011, 14:36) *

то что там написано мне знакомо с этим и работал
в данный момент времени нужно что бы клик происходил там где цвет не константа
где появится мигалка и какого цвета она будет мне не известно
а вариаций больше милиона цветов грубо говоря
вот я и подумал мож кто знает как сделать так чтоб кликало там где цвет постоянно меняется
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 24.1.2011, 18:39
Сообщение #18


***********

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



я подумал тебе диапазон цветов нужен в финдколоре вот и отправил.

я бы тебе порекомендовал подумать над тем, что ты хочешь сделать. На данный момент ты просишь кликнуть "незнаю куда" и выглядит это "не знаю как". Как ты себе это представляешь в коде?) Можешь написать хотя бы просто словами в столбик как это должно работать и на что опираться. Что в ифах писать? if не знаю, не знаю не знаю?))


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


***

Novice
Сообщений: 76
Регистрация: 22.8.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.943
Возраст: 27



та думал может что новенькое появилось)

есть заданная область которая задается двумя координатами в ней может мигать лампочка
разными желтыми оттенками
ранее я использовал финдколор и ждал пока не появится нужный мне цвет
в данный момент все изменилось теперь эта лампочка может быть с оттенками любого цвета
т.е. или 200 000 цветов красного или 200 000 цветов синего и т.д.
одним словом финдколор тут уже не поможет поскольку уже нет одного цвета который присутствовал бы во всех лампочках а таких вариаций слишком много вплоть до серобуромалинового((((
осталось ток условие что лампочка плавно загорается и тухнет
вот я и надеялся мож есть что то новенькое есть))))

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

X1,Y1____X2,Y1____X3,Y1
X1,Y2____X2,Y2____X3,Y2
X1,Y3____X2,Y3____X3,Y3
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 24.1.2011, 20:43
Сообщение #20


***********

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



попробовать можно, но проверять это надо будет диапазонами и это будет очень тормознуто. так же большой проблемой из-за тормознутости будет вовремя собрать результат второй проверки. к тому же ты не учел одну мелочь - надо делать еще промежуточную, чтобы понять, что фон изменился - иначе он тебе все статичные точки найдет. Навскидку - нормально не сделаешь из-за медленной обработки. Может имеет смысл ловить не возвращение цвета, а именно изменение цвета?


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

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

 

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