Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: moon27 on April 13, 2017, 05:12:43 AM
-
Добрый день. Есть кусок кода.
WAITMS(100 * $K_SPEED)
KEYDOWN(8)
WAITMS(18 * $K_SPEED)
KEYUP(8)
WAITMS(100 * $K_SPEED)
KEYDOWN(8)
WAITMS(18 * $K_SPEED)
KEYUP(8)
WAITMS(100 * $K_SPEED)
KEYDOWN(8)
WAITMS(18 * $K_SPEED)
KEYUP(8)
Как мы видим - это три нажатия на Backspace.
Как можно сократить этот кусок кода ? Что-то краткое, чтобы поставить где-нибудь число 8 и 8 раз нажалась кнопка Backspace или другое кол-во раз. И чтоб это действовало для других клавиш.
Можно конечно дублировать куски по кол-ву нажатий, но хочется красивого кода - эстетики.
И второе. В последней версии Clickermann v4.12. я назначил запись сценария сочетанию Ctrl +1, но программа виснет при этом. Назначал запись Ctrl +Q и Ctrl +Z, все равно не реагирует.
Но, если назначить Ctrl +1 остановке или воспроизведению, то все работает. С чем связано зависание записи при сочетаниях?
Пользуясь случаем, хочу выразить большое человеческое спасибо, всем разработчикам и участникам отвечающим на вопросы таких же дилетантов как я.
С искренним уважением.
-
Забудь про запись и пиши уже код в ручную, вот тебе и будет "эстетика".
Цикл For лучше всего подходит для повторов кода так как он сам наращивает указанную переменную.
FOR($a=0,$a<8)
KEYPRESS(#BACKSPACE)
WAITMS(100)
END_CYC
В 4.12 присутствует баг горячих клавиш на запись. Нужно назначить одну клавишу, например F3 тогда виснуть не будет.
-
Если просто сократить троекратное действие в коде, то цикл
FOR($i=0, $i < 3)
KEYDOWN(8)
WAITMS(20)
KEYUP(8)
WAITMS(100)
END_CYC
Если нужно вызывать с разным количеством повторений и для разных клавиш - подпрограмма с параметрами. В подпрограмме тоже цикл.
SUB(n_key, $key, $count)
FOR($i=0, $i < $count)
KEYDOWN($key)
WAITMS(20)
KEYUP($key)
WAITMS(100)
END_CYC
END_SUB
// так вызываем в коде в нужных местах
n_key(8, 3) // BACKSPACE 3 раза
n_key(40, 10) // DOWN 10 раз
И раз уж код пишется руками, то нужно уходить от записи и всяких $K_SPEED.
Лишняя цепочка действий получается, запись, потом чистка от мусора, правка задержек (как было здесь WAITMS(100 * $K_SPEED)).
Проще сразу вставлять команды . Можно из меню команд и шаблонов.
И второе. В последней версии Clickermann v4.12. я назначил запись сценария сочетанию Ctrl +1, но программа виснет при этом. Назначал запись Ctrl +Q и Ctrl +Z, все равно не реагирует.
В версии v4.12 есть баг с горячими кнопками. Нужно назначить одиночную кнопку, а не сочетание, тогда всё будет нормально.
-
Блин. Ты что, не спишь? :D
-
SUB(n_key, $key, $count)
Красиво...
Автор темы просил эстетики, поэтому подпрограмму нужно переименовать на
key_n :) :) :)
-
Блин. Ты что, не спишь? :D
В 9 утра? Конечно нет, я просыпаюсь в 7-8
-
В 9 утра? Конечно нет, я просыпаюсь в 7-8
Часовые пояса, часовые пояса. Забываю я про вас.
-
Автор темы просил эстетики, поэтому подпрограмму нужно переименовать на
key_n :) :) :)
Не поверишь, после задания параметров так и хотелось поменять на key_n. Но было лень. Не код из проекта, а одноразовый пример. Поэтому было забито.
-
Большое спасибо. Теперь новая проблема. Не могу выбрать). Выбирать из двух красивых решений это все равно выбирать одну из двух красивых девушек)