Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - QiUi

Pages: [1]
1
Собственно, благодаря не равнодушным людям из сообщества Clickermann мой скриптик для просмотра рекламы в котах принял завершенный вид.

Данный пост не нуждается в помощи и написан просто для информирования страждущих. Вдруг, кому-то мой опыт пригодится.

Этот способ самый простой, потому и был использован. Мне не нужны были от кликера навороты вроде сравнивания и поиска цветов и т.п.. Поэтому, привязка к окну оказалась возможной.

Само окно Bluestacks 2 в полноэкранном режиме "составлено" из 3х окон. Я не принимаю во внимание Bluestacks TV и боковую панель с инструментами в оконном режиме Bluestacks.

Границы окон выделил разными цветами. На самом деле, граница окна выделенного синим цветом - не верна, это окно - фоновое для всего окна программы, но... в моем случае - это не существенно. Из-за размеров скриншот под спойлером.

[spoiler][/spoiler]

Code: [Select]
// Скрипт написан для использования при разрешении 1920х1080p совместно с BlueStacks 2 в полноэкранном режиме.

$o1 = HGET(966,220) // Получаем HWND окон по заданным координатам
$o2 = HGET(25,20) // Получаем HWND окон по заданным координатам

HSET($o1,1) // Делаем активным нужное нам окно.

script:

WAIT(4)
lclick(966,220) // Запуск просмотра рекламы
WAIT(45) // Ожидание окончания просмотра рекламы.

HSET($o2,1) // Делаем активным нужное нам окно.

WAIT(1)
lclick(25,20) // Возврат в игровой магазин, после просмотра рекламы.

WAIT(1)
HSET($o1,1) // Делаем активным нужное нам окно.

WAIT(10)
lclick(1030,585) // Получение награды за рекламу.


//WAIT(2)
//lclick(40,1036)  // Выход из игрового магазина.

//WAIT(3)
//lclick(1030,585) // Сбор награды.

//WAIT(2)
//lclick(1555,996)  // Возврат в игровой магазин.

goto(script)

Что делает скрипт:
1. При запуске скрипта получает HWND окон;
2. Просматривает рекламу;
3. Собирает награду;
4. Если раскомментированны нижние строчки - перезаходит в игровой магазин, необходимо при "закончившейся рекламе";
5. Переходит к началу выполнения скрипта, пропуская момент получения HWND - они у нас не изменились.

В вашем случае тело скрипта может быть иным, главное - переключение между "окнами" в Bluestacks командой HSET.

2
Огромное спасибо за исправленный скрипт! Учиться мне еще и учиться :)

3
Спасибо за ответ, он меня отправил в нужном направлении.

Оказалось, я излишне усложнил жизнь себе и кликерманну.

В итоге скрипт превратился в:

Code: [Select]
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 (из-за рекламы). Задержки позволяют нивелировать отрицательные моменты.

4
Большое спасибо! Да, желательно было б услышать полный перечень моих нубских ошибок :)

И буду их править плодя новые ошиПки и несуразности.

5
Скрипт для просмотра рекламы в игре ради получения донатной валюты. Вместо выполнения кода выдает "ошибку при вызове функции POP ()"

Скрипт рассчитан на игру в полноэкранном режиме, при разрешении 1920х1080

Code: [Select]
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)

Pages: [1]