Автокликер Clickermann :: Форум
Основной раздел => Использование => Topic started by: QiUi on March 14, 2017, 12:54:05 AM
-
Скрипт для просмотра рекламы в игре ради получения донатной валюты. Вместо выполнения кода выдает "ошибку при вызове функции POP ()"
Скрипт рассчитан на игру в полноэкранном режиме, при разрешении 1920х1080
sub(oneone)
WAIT(1)
MOVE(40,1036)
lclick(40,1036) //Выходит из магазина в игре.
WHILE($time > 5000)
GETSCREEN
IF_PICTURE_IN(733,444,1216,704,"got.bmp")
$time = 0
MOVE(960,600)
lclick(960,600)
WAITMS(100)
ELSE
WAITMS(50)
END_IF
END_CYC
// Проверяет наличие диалоговых окошек (иногда игра "затупает" и в магазине на время перестают показываться диалоговые окошки с наградой)
WAIT(1)
MOVE(1555,1036)
lclick(1555,1036) //Возвращаемся в игровой магазин
SUB(secsec)
WAIT(1)
MOVE(966,244)
lclick(966,244) //Запускаем просмотр рекламы
WAIT(40)
WAIT(1)
MOVE(25,20)
lclick(25,20) //После окончания просмотра рекламы возвращаемся в магазин
//Далее ожидаем окошко с наградой. Выше уже писал об этом. Есть несколько вариантов окошка, или его может не быть. Первый вариант (ngot.bmp) - уведомление, что реклама "закончилась". В этом случае необходимо перезайти в игровой магазин доната. Второй вариант (got.bmp) - есть награда, смотрим рекламу дальше. Третий вариант - отсутствует табличка с рекламой, так же смотрим рекламу. Не полученную награду выдадут позже.
WHILE($time > 5000)
GETSCREEN
IF_PICTURE_IN(733,444,1216,704,"ngot.bmp")
$time = 0
MOVE(960,600)
lclick(960,600)
WAITMS(100)
oneone()
ELSE
GETSCREEN
IF_PICTURE_IN(733,444,1216,704,"got.bmp")
$time = 0
MOVE(960,600)
lclick(960,600)
WAITMS(100)
start:
secsec()
GOTO(start)
ELSE
WAITMS(50)
start:
secsec()
GOTO(start)
END_IF
END_IF
END_CYC
END_SUB
end_sub
start:
oneone()
GOTO(start)
-
Большое спасибо! Да, желательно было б услышать полный перечень моих нубских ошибок :)
И буду их править плодя новые ошиПки и несуразности.
-
Спасибо за ответ, он меня отправил в нужном направлении.
Оказалось, я излишне усложнил жизнь себе и кликерманну.
В итоге скрипт превратился в:
LOGWRITE("start")
oneone:
LOGWRITE("exitshop")
WAIT(2)
lclick(40,1036) //Выходит из магазина в игре.
LOGWRITE("closewindow")
WAIT(3)
lclick(1030,585) //Закрываем окошко с наградой, если оно есть. Если нет - щелчок "в холостую".
LOGWRITE("goto shop")
WAIT(2)
lclick(1555,1036) //Возвращаемся в игровой магазин
WAIT(2)
LOGWRITE("startshow")
WAIT(2)
lclick(966,244) //Запускаем просмотр рекламы
WAIT(40)
LOGWRITE("retrun to shop")
lclick(25,20) //После окончания просмотра рекламы возвращаемся в магазин
WAIT(2)
WAIT(1)
LOGWRITE("jdem nagrady")
WAIT(2)
lclick(1030,585) //Закрываем окошко с наградой, если оно есть. Если нет - щелчок "в холостую".
goto(oneone)
Буду рад тапкам и найденным ошибкам.
Спасибо всем заранее!
P.S.: Так много задержек из-за подвисаний игры в Bluestacks (из-за рекламы). Задержки позволяют нивелировать отрицательные моменты.
-
Исправил твой скрипт до рабочего состояния
WAIT(1)
MOVE(40,1036)
lclick(40,1036) //Выходит из магазина в игре.
WAITMS(100)
$time = $_time_t + 5000 // таймер на 5000 секунд
WHILE($time > $_time_t)
GETSCREEN
IF_PICTURE_IN (733,444,1216,704,"got.bmp", -1, 100)
$time = 0
MOVE(960,600)
lclick(960,600)
WAITMS(100)
ELSE
WAITMS(50)
END_IF
END_CYC
// Проверяет наличие диалоговых окошек (иногда игра "затупает" и в магазине на время перестают показываться диалоговые окошки с наградой)
WAIT(1)
MOVE(1555,1036)
lclick(1555,1036) //Возвращаемся в игровой магазин
secsec:
WAIT(1)
MOVE(966,244)
lclick(966,244) //Запускаем просмотр рекламы
WAIT(40)
WAIT(1)
MOVE(25,20)
lclick(25,20) //После окончания просмотра рекламы возвращаемся в магазин
WAITMS(100)
$time = $_time_t + 5000 // таймер на 5000 секунд
WHILE($time > $_time_t)
GETSCREEN
IF_PICTURE_IN (733,444,1216,704,"ngot.bmp", -1, 100)
$time = 0
MOVE(960,600)
lclick(960,600)
WAITMS(100)
ELSE
IF_PICTURE_IN(733,444,1216,704,"got.bmp")
$time = 1
MOVE(960,600)
lclick(960,600)
WAITMS(100)
ELSE
WAITMS(50)
END_IF
END_IF
END_CYC
IF($time = 1)
GOTO(secsec)
END_IF
-
Огромное спасибо за исправленный скрипт! Учиться мне еще и учиться :)