Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: novickek on January 11, 2018, 10:26:14 PM
-
Здравствуйте гуру, нужна небольшая помощь в коде:
getscreen
IF_PIXEL_IN (0,0, 1366, 768, 255) // поиск пикселя
WAITMS(500)
MOVE($_return1+40, $_return2+50) // наведение на моба
WAITMS(500)
LCLICK($_return1+40, $_return2+50) // выстрел в моба
WAITMS(500)
LCLICK(1121,590) //отдать ход
WAIT(5)
ELSE
LCLICK(1121,590) //нажать ок если нет моба на экране
END_IF
Суть такова, что я не пойму где и как дальше дописать следующий поиск пикселя.
Что я преследую:
1 поиск нужно пикселя
2 Провести действие с этим пикселем.
3 Поиск следующего пикселя такого же цвета. (после найденного первого)
4 провести действие.
И в таком же действии до 5 раз
По данному скрипту получается что программа работает только с первым найденным пикселем.
Заранее спасибо за помощь! :)
-
Нужно использовать другую функцию поиска всех пикселов заданного цвета.
GETSCREEN
SCANPXL($ARR_SCAN, 0,0, $_xmax,$_ymax, 255)
IF(ARRSIZE($ARR_SCAN) = 0)
LCLICK(1121,590) //нажать ок если нет моба на экране
WAITMS(500)
END_IF
$ARR_NUM = 0
$SHIFT_X = 0 // смещение (кол-во игнор пикселов после найденного)
$SHIFT_Y = 0
WHILE ($ARR_NUM < ARRSIZE($ARR_SCAN))
$X = $ARR_SCAN[$ARR_NUM]
INC($ARR_NUM,1)
$Y = $ARR_SCAN[$ARR_NUM]
INC($ARR_NUM,1)
IF(($X > $X2)|($Y > $Y2))
$X2 = $X + $SHIFT_X
$Y2 = $Y + $SHIFT_Y
MOVE($X+40, $Y+50) // наведение на моба
WAITMS(500)
LCLICK($X+40, $Y+50) // выстрел в моба
WAITMS(500)
LCLICK(1121,590) //отдать ход
WAIT(5)
END_IF
END_CYC
UNDEFINE($ARR_SCAN)