Auto Hot Key

Может кто подсказать почему кнопки нажимаются по очереди, а не в своем интервале? И как  это можно исправить?

$+6::

IfWinActive,

if (enable := !enable)

setTimer, routine, -1

return

routine:

while enable

{

Random, r, 5538, 6000

sleep r

sendInput 1


Random, r, 5615, 6000

sleep r

sendInput 2


Random, r, 3138, 3500

sleep r

sendInput 3


Random, r, 4362, 4800

sleep r

sendInput 4


Random, r, 3812, 4200

sleep r

sendInput 5

}

return

Вы смотрите срез комментариев. Показать все
0
Автор поста оценил этот комментарий

Аутохоткей - однопоточный и когда ты ставишт sleep, на паузу ставится весь скрипт. То есть вся эта конструкция будет работать так, что кнопки и должны нажиматься подряд, с рандомным интервалом. Тут нужно рандомить число от одного до 5 и вызывать нажатие в зависимости от этого числа.

раскрыть ветку (2)
Автор поста оценил этот комментарий

Благодарю вас за разъяснение буду делать так

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Рандомные интервалы можно сделать без sleep, если сделаешь цикл, в котором будешь забирать в переменную системное время и сверять, соответствует ли оно времени +r секунд. А если вообще с коней зайти - можно переписать на autoit, там можно гораздо больше крутых штук реализовать а синтаксис плюс-минус такой же.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку