Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: kvenom on September 09, 2020, 02:44:33 PM

Title: Вопрос в освоении переключателей
Post by: kvenom on September 09, 2020, 02:44:33 PM
Хелп
Я не совсем понимаю как они здесь пишутся, я пытаюсь создать скрипт, который каждые 9 секунд активирует зацикленное  зажатие клавиши 4 на секунды 4, и сам этот скрипт включается/выключается по нажатию другой клавиши(например Z).

Т.е.:
Если Нажата кнопка Z
То Включается скрипт:
{Зажим 4
Ожидание 4000 мс
Отпустить 4
Ожидание 9000 мс}
Повтор скрипта до следующего нажатия Z
Title: Re: Вопрос в освоении переключателей
Post by: Vint on September 09, 2020, 06:49:27 PM
Code: (clickermann) [Select]
THREAD(cl, 0)
    KEYDOWN(#4)   
    WAITMS(4000)
    KEYUP(#4)
    WAITMS(9000)
END_THREAD

// переключатель
IF(ISKEYDOWN(#Z) = 1)
    $run = $run ^ 1
    IF($run = 0)
        SETTHREAD(cl, 2)
        WAITMS(20)
        IF(ISKEYDOWN(#4) = 1)
            KEYUP(#4)
        END_IF
    ELSE
        SETTHREAD(cl, 1)
    END_IF
    WHILE(ISKEYDOWN(#Z) = 1)
        WAITMS(20)
    END_CYC
END_IF
WAITMS(30)
Title: Re: Вопрос в освоении переключателей
Post by: 4.У.В.@.К on September 09, 2020, 07:06:13 PM
Не успел я немного.)) Напишу раз уж сделал.
Неправильно у меня работает. Удалил.
Добавил в переключать пропущенный KEYUP(#4). Заработало.)
Code: (clickermann) [Select]
DEFINE($cond, 2)

IF(ISKEYDOWN(#Z) = 1)
   $cond = $cond ^ 3
   KEYUP(#4)
   SETTHREAD (hread, $cond)
   WHILE(ISKEYDOWN(#Z) = 1)
      WAITMS(30)
   END_CYC
END_IF

THREAD(hread, 0)
   KEYDOWN(#4)
   WAITMS(4000)
   KEYUP(#4)
   WAITMS(9000)
END_THREAD

WAITMS(30)