Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: Lando on August 08, 2019, 09:24:41 PM
-
Приветствую прибывших в эту тему, заранее прошу не бить, если это уже когда-то обсуждалось. Проблема, что не могу реализовать таймер + кликер в точке одновременно)
Задача: нужно покупать(много кликать в окне) на две позиции, но проверять могу ли запустить ритуал это проверяется наличием белого пикселя в заданной области.
Текущий код такой:
$S_CORR = 10
$on = 1
$off = 0
$buy_wheat = $off
$buy_wood = $off
$_x1ritual = 216 // начало области кнопки PP
$_y1ritual = 689
$_x2ritual = 274 // конец...
$_y2ritual = 719
$_cWhite = 15657959
//=============================================
$tim = $_time_m + 1
WHILE($tim > $time_m)
if ($buy_wheat = $on)
move(80,190)
lDown(80,190)
waitms($S_CORR)
lUp(80,190)
end_if
if ($buy_wood = $on)
move(80,230)
lDown(80,230)
waitms($S_CORR)
lUp(80,230)
end_if
ELSE
GETSCREEN
IF_PIXEL_IN($_x1ritual, $_y1ritual, $_x2ritual,$_y2ritual, $_cWhite)
move(126,410)
waitms(50 + $S_CORR)
lDown(126,410)
waitms(50 + $S_CORR)
lUp(126,410)
END_IF
END_CYC
Проблема на данный момент что клик происходит единожды, и таймер будет всегда больше текущего времени На ум приходит лишь то, что можно запустить thread и там включать таймер, а в основной ветке программы уже кликать, но не уверен что сработает) может можно как-то запустить цикл по времени, например на минуту. и там уже в конце просто сделать проверку на пиксель
Давно программированием не занимался :)
-
что это за ELSE у тебя посреди цикла? ELSE может быть только посреди условия.
$S_CORR = 10
$on = 1
$off = 0
$buy_wheat = $off
$buy_wood = $off
$_x1ritual = 216 // начало области кнопки PP
$_y1ritual = 689
$_x2ritual = 274 // конец...
$_y2ritual = 719
$_cWhite = 15657959
//=============================================
WHILE(1)
$time = $_ms + 1000 // таймер на 1 секунду
WHILE($time > $_ms)
if ($buy_wheat = $on)
move(80,190)
lDown(80,190)
waitms($S_CORR)
lUp(80,190)
waitms($S_CORR)
end_if
if ($buy_wood = $on)
move(80,230)
lDown(80,230)
waitms($S_CORR)
lUp(80,230)
waitms($S_CORR)
end_if
END_CYC
GETSCREEN($_x1ritual, $_y1ritual, $_x2ritual,$_y2ritual)
IF_PIXEL_IN($_x1ritual, $_y1ritual, $_x2ritual,$_y2ritual, $_cWhite)
move(126,410)
waitms(50 + $S_CORR)
lDown(126,410)
waitms(50 + $S_CORR)
lUp(126,410)
END_IF
END_CYC
-
Спасибо. Да, действительно, остался со старых манипуляций. Так понимаю он никогда не выйдет из цикла, то что мне нужно было, оказывается был так близок, истина была рядом!) как все просто
-
Другой вопрос, не знаю, стоит ли поднимать новую тему для этого, поэтому решил спросить тут. Почему screenshot с привязкой к окну некорректно отображаются, скрин браузера — черный экран, игры — форма с серым цветом. Из-за этого не могу правильно отслеживать цвета при работе с getscreen. Почему это происходит, как решить?