Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: net-walker on December 22, 2018, 05:06:56 PM
-
Всем привет, написал простенький код для игры Vikings: War of Clans. Цель-пересылка ресурсов в цитадель (ибо очень тягомотно). В данном примере пересылка дерева. Хочется сделать так, чтобы спрашивало (в идеале всплывающее окно, где пишешь кол-во походов), сколько ресурсов отправить (или как вариант указать количество походов, так как количество ресурса в одном походе более-менее стабильно). Этот скрипт просто передвигает ползунок на максимум отправляет бессчетное кол-во раз.
Также есть еще ресурс дерево, камень, железо и серебро, там все по аналогии. Можно было бы сделать, чтоб спрашивало, какой ресурс отправить. В коде 5 повторений, потому что 5 походов, может это как то можно упростить? Буду очень признателен за помощь.
Это пример еды
LCLICK(671,409) Кликаем по ците
WAIT(RND(1,3))
LCLICK(517,563) Кликаем Передать ресы
WAIT(RND(1,3))
REPEAT:
LCLICK(500,342) Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) Перемещаем ползунок
LUP(724,338) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(RND(1,3))
LCLICK(500,342) Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) Перемещаем ползунок
LUP(724,338) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(RND(1,3))
LCLICK(500,342) Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) Перемещаем ползунок
LUP(724,338) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(RND(1,3))
LCLICK(500,342) Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) Перемещаем ползунок
LUP(724,338) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(RND(1,3))
LCLICK(500,342) Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) Перемещаем ползунок
LUP(724,338) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(20)
GOTO(REPEAT)
А это пример на серебро
LCLICK(671,409) Кликаем по ците
WAIT(RND(1,3))
LCLICK(517,563) Кликаем Передать ресы
WAIT(RND(1,3))
LCLICK(654,309)
WAITMS(100)
WHEELDOWN
WAIT(1)
WHEELDOWN
WAIT(1)
WHEELDOWN
WAIT(RND(1,3))
REPEAT:
LCLICK(500,521) Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) Перемещаем ползунок
LUP(724,518) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(1)
LCLICK(500,521) Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) Перемещаем ползунок
LUP(724,518) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(1)LCLICK(500,521) Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) Перемещаем ползунок
LUP(724,518) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(1)LCLICK(500,521) Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) Перемещаем ползунок
LUP(724,518) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(1)LCLICK(500,521) Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) Перемещаем ползунок
LUP(724,518) Отпускаем
WAITMS(100)
LCLICK(882,664) Кликаем отправить
WAIT(1)
WAIT(20)
GOTO(REPEAT)
HALT
-
Так понимаю можно написать это все короче с помощью цикла? Самое главное, чтобы всплывало окошко с вопросом, сколько караванов отправить и выполнялось заданное кол-во.
-
Скрипт 1
$count = INT(INPUTBOX("Сколько ресов передать?", "5", 999))
LCLICK(671,409) // Кликаем по ците
WAIT(RND(1,3))
LCLICK(517,563) // Кликаем Передать ресы
WAIT(RND(1,3))
FOR($a=0,$a<$count)
LCLICK(500,342) // Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) // Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) // Перемещаем ползунок
LUP(724,338) // Отпускаем
WAITMS(100)
LCLICK(882,664) // Кликаем отправить
WAIT(RND(1,3))
END_CYC
HALT
Скрипт 2
$count = INT(INPUTBOX("Сколько ресов передать?", "5", 999))
LCLICK(671,409) // Кликаем по ците
WAIT(RND(1,3))
LCLICK(517,563) // Кликаем Передать ресы
WAIT(RND(1,3))
LCLICK(654,309)
WAITMS(100)
FOR($a=0,$a<3)
WHEELDOWN
WAIT(1)
END_CYC
WAIT(RND(1,3))
FOR($a=0,$a<$count)
LCLICK(500,521) // Кликаем по ползунку
WAITMS(100)
LDOWN(500,521) // Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,518) // Перемещаем ползунок
LUP(724,518) // Отпускаем
WAITMS(100)
LCLICK(882,664) // Кликаем отправить
WAIT(1)
END_CYC
HALT
-
Спасибо большое за быстрый ответ и помощь, очень помогло, но есть одно условие, которое я забыл рассказать, нужно отправлять по группами по 5 караванов, то есть 5 отправили, ожидание 20 секунд, например, потом еще 5 и так до заданного количества караванов. И можно ли сделать окно, где сразу вводится количество караванов.
Например так:
Сколько еды? поле для ввода
Сколько дерева? поле для ввода
Сколько Железа? поле для ввода
Сколько камня? поле для ввода
Сколько серебра? поле для ввода
-
$count = INT(INPUTBOX("Сколько ресов передать?", "5", 999))
LCLICK(671,409) // Кликаем по ците
WAIT(RND(1,3))
LCLICK(517,563) // Кликаем Передать ресы
WAIT(RND(1,3))
FOR($a=0,$a<$count)
LCLICK(500,342) // Кликаем по ползунку
WAITMS(100)
LDOWN(500,342) // Зажимаем ползунок
WAIT(RND(1,3))
MOVE(724,338) // Перемещаем ползунок
LUP(724,338) // Отпускаем
WAITMS(100)
LCLICK(882,664) // Кликаем отправить
WAIT(RND(1,3))
INC($c,1)
IF($c = 5) // каждый пятый проход будет включаться задержка на 20 сек
WAIT(20)
$c = 0
END_IF
END_CYC
HALT
Кликер не поддерживает GUI (графическая оболочка), поэтому только через INPUTBOX отдельный для каждого параметра.
Пример:
$count1 = INT(INPUTBOX("Сколько еды?", "5", 999))
$count2 = INT(INPUTBOX("Сколько дерева?", "5", 999))
$count3 = INT(INPUTBOX("Сколько Железа?", "5", 999))
$count4 = INT(INPUTBOX("Сколько камня?", "5", 999))
$count5 = INT(INPUTBOX("Сколько серебра?", "5", 999))
В переменные $count1 - $count5 будут записаны введенные значения и их можно будет использовать в скрипте.
-
Огромное спасибо, я благодарен очень. благодаря вам, такие неучи как я, учатся программировать...