Author Topic: Пауза в скрипте до нажатия клавиш  (Read 3814 times)

0 Members and 1 Guest are viewing this topic.

lllukasss

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Пауза в скрипте до нажатия клавиш
« on: January 18, 2022, 10:47:51 AM »
Здравствуйте. Возможно ли в скрипте создать паузу до тех пор, пока не будет нажата определенная клавиша? То есть чтобы скрипт останавливался, я нажимал условно Num1 и скрипт продолжался (не начинался заново)

lllukasss

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Re: Пауза в скрипте до нажатия клавиш
« Reply #1 on: January 18, 2022, 10:53:09 AM »
И еще вопрос, можо ли сделать команду MOVE или LCLICK не на определенную координату, а на определенное количество пикселей от текущего положения мыши?

4.У.В.@.К

  • Активный участник
  • ***
  • Posts: 117
    • View Profile
Re: Пауза в скрипте до нажатия клавиш
« Reply #2 on: January 18, 2022, 07:47:35 PM »
Привет!
I
Code: (clickermann) [Select]
IF(ISKEYDOWN(97) = 1) // клавиша NumPad 1
   $s = $s ^ 1 // переключатель (0 или 1)
   SETTHREAD (name, $s) // 0 - поставит поток на паузу; 1 - возобновит работу потока с места его остановки
   WHILE(ISKEYDOWN(97) = 1)
      WAITMS(50)
   END_CYC
END_IF

THREAD(name, 0) // 0 - на паузе, 1 - работает, 2 - остановлен (состояние потока при запуске скрипта)
   LOGWRITE ("Маша")
   WAIT(1)
   LOGWRITE ("мыла")
   WAIT(1)
   LOGWRITE ("раму",CHAR(13),CHAR(10))
   WAIT(1)
END_THREAD

WAITMS(50)

Если цикл WHILE переместить в начало блока IF (перед SETTHREAD), то переключение состояния потока будет происходить после отпускания клавиши NumPad 1, а не при её нажатии.

II
Code: (clickermann) [Select]
MOVER(10,10)
LCLICK($_xmouse,$_ymouse)

Смотри Справку по команде MOVER, там есть нюансы.
« Last Edit: January 18, 2022, 07:51:54 PM by 4.У.В.@.К »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Пауза в скрипте до нажатия клавиш
« Reply #3 on: January 19, 2022, 12:59:35 PM »
Code: (clickermann) [Select]
THREAD(name, 0) // 0 - на паузе, 1 - работает, 2 - остановлен (состояние потока при запуске скрипта)

У потока только два начальных состояния 0 или 1. Это у управления три.

II
Code: (clickermann) [Select]
MOVER(10,10)
LCLICK($_xmouse,$_ymouse)

Смотри Справку по команде MOVER, там есть нюансы.

Можно ещё тупо так
Code: (clickermann) [Select]
LCLICK($_xmouse+123,$_ymouse-456)


lllukasss

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Re: Пауза в скрипте до нажатия клавиш
« Reply #4 on: January 20, 2022, 10:17:31 AM »
Спасибо! А что такое:
$s = $s ^ 1 // переключатель (0 или 1)

Иван_Васильевич

  • Освоившийся
  • **
  • Posts: 72
    • View Profile
Re: Пауза в скрипте до нажатия клавиш
« Reply #5 on: January 20, 2022, 02:16:54 PM »
Спасибо! А что такое:
$s = $s ^ 1 // переключатель (0 или 1)
http://crapware.aidf.org/forum/index.php?topic=1134.0