Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: bOTpROGER on August 19, 2017, 04:32:58 PM
-
В общем мой скрипт стоит на автозапуске, пк каждый час перезагружаеться. После старта все запускается и скрипт начинает работать, сначала он запускает нужное приложение (1-ая часть), потом по идее скрипт должен продолжиться и делать свою работу.
Но у меня каждый раз 1-ая часть повторяеться, т.е. скрипт дальше не идет. Как сделать так чтобы 1-ая часть сработало один раз, а затем работала только 2-ая до перезапуска компа.
#autorun
WAIT(20)
THREAD(reload, 1)
WAIT(3800) // через час после запуска скрипта сработает перезапуск компа.
EXECUTE("shutdown.exe", "/r /t 00")
HALT(1)
END_THREAD
//1-ая часть
wait(17)
MOVE(131,209)
WAITMS(100)
LCLICK(131,209)
WAITMS(100)
MOVE(344,202)
WAITMS(100)
DBLCLICK(344,202)
WAIT(25)
//2-ая часть
GETSCREEN
IF_PIXEL_IN(0,0,261,236,16038,350881)
MOVE(110,53)
WAITMS(100)
//..... продолжаеться 2-ая часть скрипта
Помогите пожалуйста. Заранее спасибо!)
-
#autorun
WAIT(20)
THREAD(reload, 1)
WAIT(3800) // через час после запуска скрипта сработает перезапуск компа.
EXECUTE("shutdown.exe", "/r /t 00")
HALT(1)
END_THREAD
//1-ая часть сработает один раз
IF($first=0)
$first=1
wait(17)
MOVE(131,209)
WAITMS(100)
LCLICK(131,209)
WAITMS(100)
MOVE(344,202)
WAITMS(100)
DBLCLICK(344,202)
WAIT(25)
END_IF
//2-ая часть
GETSCREEN
IF_PIXEL_IN(0,0,261,236,16038,350881)
MOVE(110,53)
WAITMS(100)
//..... продолжается 2-ая часть скрипта
-
Но у меня каждый раз 1-ая часть повторяеться, т.е. скрипт дальше не идет.
Возможно, таких цветов нет в куске экрана (0,0,261,236) либо скрипт не успевает их найти. Допишите ELSE, чтобы узнать. Например:
IF_PIXEL_IN(0,0,261,236,16038,350881)
...
ELSE
PRINT("Что-то случилось")
WAITMS(100)
END_IF
Ещё как вариант можно подождать, пока цвет появится (пример есть в редакторе редактора Шаблоны - Циклы, условия - Ожидание цвета IF_PIXEL_IN).
Как сделать так чтобы 1-ая часть сработало один раз, а затем работала только 2-ая до перезапуска компа.
В главном окне кликера поставьте выполнение 1 раз. Режим выполнения - Фиксированное 1 - Применить.
Запускайте код 2й части в цикле. Например, запускать с таймером или n-ное количество раз. Код с примером таймера также есть в Шаблонах.
-
К сожалению первый способ не подошел, все равно не продолжается, а цвета он находит нормально, я проверил без автозапуска скрипта и приложения. Не знаю что и делать(
-
К сожалению первый способ не подошел, все равно не продолжается, а цвета он находит нормально, я проверил без автозапуска скрипта и приложения. Не знаю что и делать(
Значит косяк во второй части. Но мы не видели её, и что делать тоже не знаем. :(
-
К сожалению первый способ не подошел, все равно не продолжается, а цвета он находит нормально, я проверил без автозапуска скрипта и приложения. Не знаю что и делать(
Возможно такое, что во время снятия скриншота цвета не успевают прогружаться? Сохраните скриншот, посмотрите, что там есть.
Насчёт своего совета с отключением повтора я точно не уверена, не работала с автозапуском.
-
Вот весь скрипт, через циклы тоже перепробывал, ничего.
#autorun
WAIT(20)
THREAD(reload, 1)
WAIT(3800) // через час после запуска скрипта сработает перезапуск компа.
EXECUTE("shutdown.exe", "/r /t 00")
HALT(1)
END_THREAD
//1-ая часть сработает один раз
wait(17)
KEYPRESS(#ENTER)
wait(17)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(25000)
$first=0
waitms(2000)
END_IF
//2-ая часть
GETSCREEN
IF_PIXEL_IN(0,0,261,236,16038,350881)
MOVE(110,53)
WAITMS(100)
LCLICK(110,53)
END_IF
IF_PIXEL_IN(0,0,629,371,51448)
MOVE(1213,706)
WAITMS(100)
LCLICK(1213,706)
WAITMS(2000)
MOVE(617,433)
WAITMS(100)
LCLICK(617,433)
END_IF
IF_PIXEL_IN(534,357,848,539,40157)
WAITMS(15000)
MOVE(679,501)
WAITMS(200)
LCLICK(679,501)
WAITMS(5000)
MOVE(683,412)
WAITMS(200)
LCLICK(683,412)
WAITMS(6000)
MOVE(1238,66)
WAITMS(200)
LCLICK(1238,66)
WAITMS(5000)
END_IF
IF_PIXEL_IN(438,248,788,468,7749633,12084737)
BEEP(800,200)
END_IF
-
Да и все успевает прогружаться там задержка стоит нормальная.
-
Чёт внезапно первая часть поменялась... Убери мусор в 24 и 26 строке.
Запусти вот так и посмотри ЛОГ:#autorun
WAIT(20)
THREAD(reload, 1)
WAIT(3800) // через час после запуска скрипта сработает перезапуск компа.
EXECUTE("shutdown.exe", "/r /t 00")
HALT(1)
END_THREAD
//1-ая часть сработает один раз
wait(17)
KEYPRESS(#ENTER)
wait(17)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(25000)
//2-ая часть
WHILE(1)
GETSCREEN
IF_PIXEL_IN(0,0,261,236,16038,350881)
PRINT("Найден первый")
MOVE(110,53)
WAITMS(100)
LCLICK(110,53)
ELSE
PRINT("Не найден первый")
END_IF
IF_PIXEL_IN(0,0,629,371,51448)
PRINT("Найден второй")
MOVE(1213,706)
WAITMS(100)
LCLICK(1213,706)
WAITMS(2000)
MOVE(617,433)
WAITMS(100)
LCLICK(617,433)
ELSE
PRINT("Не найден второй")
END_IF
IF_PIXEL_IN(534,357,848,539,40157)
PRINT("Найден третий")
WAITMS(15000)
MOVE(679,501)
WAITMS(200)
LCLICK(679,501)
WAITMS(5000)
MOVE(683,412)
WAITMS(200)
LCLICK(683,412)
WAITMS(6000)
MOVE(1238,66)
WAITMS(200)
LCLICK(1238,66)
WAITMS(5000)
ELSE
PRINT("Не найден третий")
END_IF
IF_PIXEL_IN(438,248,788,468,7749633,12084737)
PRINT("Найден четвертый")
BEEP(800,200)
ELSE
PRINT("Не найден четвертый")
END_IF
END_CYC
-
а да я его поменял так лучше. Я просто по разному пробовал поэтому весь этот мусор остался вот чистый стандартный код:
#autorun
WAIT(20)
THREAD(reload, 1)
WAIT(3800) // через час после запуска скрипта сработает перезапуск компа.
EXECUTE("shutdown.exe", "/r /t 00")
HALT(1)
END_THREAD
//1-ая часть сработает один раз
wait(17)
KEYPRESS(#ENTER)
wait(17)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(1500)
KEYPRESS(#RIGHT)
waitms(1500)
KEYPRESS(#ENTER)
waitms(25000)
//2-ая часть
GETSCREEN
IF_PIXEL_IN(0,0,261,236,16038,350881)
MOVE(110,53)
WAITMS(100)
LCLICK(110,53)
LOGWRITE("Матч начался")
END_IF
IF_PIXEL_IN(0,0,629,371,51448)
MOVE(1213,706)
WAITMS(100)
LCLICK(1213,706)
WAITMS(2000)
MOVE(617,433)
WAITMS(100)
LCLICK(617,433)
LOGWRITE("Выполнено успешно")
END_IF
IF_PIXEL_IN(534,357,848,539,40157)
WAITMS(15000)
MOVE(679,501)
WAITMS(200)
LCLICK(679,501)
WAITMS(5000)
MOVE(683,412)
WAITMS(200)
LCLICK(683,412)
WAITMS(6000)
MOVE(1238,66)
WAITMS(200)
LCLICK(1238,66)
WAITMS(5000)
LOGWRITE("Проблема устранена")
END_IF
IF_PIXEL_IN(438,248,788,468,7749633,12084737)
BEEP(800,200)
END_IF
-
Тут два варианта.
1) Не хватает терпения дождаться (задержек на полторы минуты :o).
2) Нету искомых цветов.
Проверил из прошлого поста вариант?
-
Боже мой, я только что кончил в себя. Там где я поставил задержку 25000 мс я ждал около 10-15 сек и недожидаясь 25 вырубал скрипт. Сейчас решил вдруг подождать и все работает.Просто пол дня в никуда. Еще ваше время отнял. Как же мне стыдно. Будьте внимательнее и терпеливее. Всем Спасибо)))
-
;D