Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: msgkumisi on October 21, 2015, 08:28:09 AM
-
У меня скрипт, который написал с помощью этого форума, за что отдельное спасибо, пашет нормально.
Но иногда координаты на сайте меняются из-за рекламы и скрипт не может кликать по заданным координатам. Для возобновления работы скрипта нужно обновит страницу.
ВОПРОС : можно ли написать такую конструкцию?
1. //клик по координатам
SUB(ban1)
start:
waitms(100)
GETSCREEN
IF_PIXEL_IN (0,$l,$k,$l',$cv)
MOVE($xba1,$yba)
waitms(200)
LDOWN($xba1,$yba)
waitms(200)
LUP($xba1,$yba)
else
//подключение подпрограммы "ban"
ban()
goto(start)
END_IF
WAIT(2)
GETSCREEN
IF_PIXEL_IN (0,$l,$k,$l',$cv)
MOVE($xpbs,$ypbs)
waitms(200)
LDOWN($xpbs,$ypbs)
waitms(200)
LUP($xpbs,$ypbs)
else
//подключение подпрограммы "ban"
ban()
goto(start)
END_IF
END_SUB
2. \\проверка "проверка на 10000 и если есть то купит"
//подпрога "проверка на 10000 и если есть то купит"
SUB(pak)
// скопироват с сайта цифры
waitms(500)
start10:
GETSCREEN
IF_PIXEL_IN (0,$l,$k,$l',$cv)
move($xDa,$yDa)
waitms(400)
DBLCLICK($xDa,$yDa)
else
//подключение подпрограммы "ban"
ban()
goto(start10)
END_IF
waitms(50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
KEYUP (#CTRL)
waitms(100)
IF($kak = 1)
IF(ROUND(STRREPLACE(FROMCLIP(),",","."), 0) > 10000) // проверит цифры из буфера, скажем в буфере "916,50"
// если цифра больше 10000 сделать
move($xaka,$yaka)
waitms(380)
lDown($xaka,$yaka)
waitms(255)
lUp($xaka,$yaka)
waitms(2000)
move($xka,$yka)
waitms(228)
lDown($xka,$yka)
waitms(227)
lUp($xka,$yka)
waitms(200)
// запись в лог
print("купил")
IF($zvYES = 1)
SOUND("data/Yes.wav")
END_IF
END_IF
waitms(100)
ELSE
// если цифра меньше 10000 сделать
MOVE(145,155)
END_IF
END_SUB
кусок кода:
IF($time1 < $_time_t)
$time1 = $_time_t + 64 // 1 минута
INIWRITE ("time.ini", "Time1", $time1, "TIME") // запись в файл time.ini времени следующего срабатывания условия
// Здесь пишутся необходимые действия
pera()
WAITMS(100)
ban1()
WAIT(2)
//подключение подпрограммы "pak"
pak()
// запись в лог
print("собрал 1 мин:", FROMCLIP())
END_IF
ВОПРОС : можно ли написать такую конструкцию?
//подпрога "проверка клика"
SUB(prov)
//записат в буфер
print( TFRead("ban.txt", 2 ) )
IF(( StrReadln("ban.txt", 1 ) = ( StrReadln("ban.txt", 2 ))
TFDelete("ban.txt", 1)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
goto(ban1)
END_IF
END_SUB
-
там у тебя лишние скобки
//подпрога "проверка клика"
SUB(prov)
//записат в буфер
print( TFRead("ban.txt", 2 ) )
IF(StrReadln("ban.txt", 1) = StrReadln("ban.txt", 2))
TFDelete("ban.txt", 1)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
WAITMS (50)
KEYDOWN (#C)
WAITMS (50)
KEYUP (#C)
goto(ban1)
END_IF
END_SUB
-
goto (ban1)
не надо так.
-
СПАСИБО!!! всем кто откликнулся.
1. не стирал строку когда TFDelete была последней, пришлось перетащить в перед
2. мне не print( TFRead("ban.txt", 2 ) ) был нужен, а TFWRITE("ban.txt", FROMCLIP())
и вот что получилось :
IF($time1 < $_time_t)
$time1 = $_time_t + 64 // 1 минута
INIWRITE ("time.ini", "Time1", $time1, "TIME") // запись в файл time.ini времени следующего срабатывания условия
// Здесь пишутся необходимые действия
pera()
ban1:
WAITMS(100)
ban1()
WAIT(2)
//подключение подпрограммы "pak"
pak()
//стерет в файле 2-ю строку
TFDELETE("ban.txt", 1)
//записат с буфера в файле на 2-ой строке
TFWRITE("ban.txt", FROMCLIP())
//если цифры совпадаю
IF(StrReadln("ban.txt", 1) = StrReadln("ban.txt", 2))
//перезагрузит браузер
obn()
WAITMS (1000)
//и перейти к метке //ban1//
goto(ban1)
END_IF
// запись в лог
print("собрал 1 мин:", FROMCLIP())
END_IF
P.S. стирание - добавление делает правильно. но не могу проверит делает или нет проверку.
как добавит ответ в лог.
-
IF($time1 < $_time_t)
$time1 = $_time_t + 64 // 1 минута
INIWRITE ("time.ini", "Time1", $time1, "TIME") // запись в файл time.ini времени следующего срабатывания условия
// Здесь пишутся необходимые действия
pera()
ban1:
WAITMS(100)
ban1()
WAIT(2)
//подключение подпрограммы "pak"
pak()
//стерет в файле 2-ю строку
TFDELETE("ban.txt", 1)
//записат с буфера в файле на 2-ой строке
TFWRITE("ban.txt", FROMCLIP())
//если цифры совпадаю
LOGWRITE ("ban 1: ", StrReadln("ban.txt", 1), " ban 2: ", StrReadln("ban.txt", 2)) // запись значений ban
IF(StrReadln("ban.txt", 1) = StrReadln("ban.txt", 2))
LOGWRITE ("Совпадение ban1 и ban2")
//перезагрузит браузер
obn()
WAITMS (1000)
//и перейти к метке //ban1//
goto(ban1)
END_IF
// запись в лог
print("собрал 1 мин:", FROMCLIP())
END_IF
-
как-то умудрился пропустит клик при работающем скрипте, СРАБОТАЛО.
вот запись лога:
20:44:37 ban 1: 71659.50 ban 2: 71659.50
20:44:37 Совпадение ban1 и ban2
20:44:45 ban 1: 71659.50 ban 2: 71687.50
20:44:45 собрал 1мин::71687.50
СПАСИБО за помощь.