Author Topic: игра блокирует горячую клавишу запуска скрипта  (Read 3214 times)

0 Members and 1 Guest are viewing this topic.

mahadin

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Мне нужно запустить кликер в игре с помощью горячей клавишы, скрипт работает через ps 2 keyboard уже проверял, но не работает клавиша запуска скрипта, например я поставил запустиить скрипт на 1, когда я нажимаю в игре на 1, то в самой игре нажимается 1, а кликер не запускается, что можно придумать? спасибо

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Может все же лучше выложить свой пример...? Ато кто его знает - как ты там запуск клавишей реализовал...
Я не ду... Потому и не бу...

mahadin

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
#ps2_mouse
#ps2_keyboard
KEYPRESS(#c)
KEYPRESS(#w)
KEYPRESS(#q)
halt

вот обычный скрипт, а запуск в настройках кликера горячую клавишу поставил 1

mahadin

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
убедился что скрипт запускается и работает вне игры, но когда игра открыта, она встает поверх кликера, приведу пример
вот скрипт
#ps2_mouse
#ps2_keyboard
KEYPRESS(#c)
KEYPRESS(#w)
KEYPRESS(#q)
halt

горячая клавиша на 1(в настройках кликера), открываю чат в игре, нажимаю на 1, в чат должно написаться cwq если работает скрипт, но в чат пишется 1, выхожу на рабочий стол, проверяю в текстовом документе, и в нем написалось cwq

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
А попробуй поставь задержки между нажатиями, и перед ними. Мало ли, игра не принимает одновременное нажатие 1+с, 1+w, 1+q. Или этот код ты дал как тестовый, и основной скрипт с задержками, и тоже не работает?
Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard
wait(2)
KEYPRESS(#c)
wait(1)
KEYPRESS(#w)
wait(1)
KEYPRESS(#q)
halt

А чтобы проверить, отработал скрипт или нет, тебе же кирил написал, проверь с помощью лога.

Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard
wait(2)
KEYPRESS(#c)
wait(1)
KEYPRESS(#w)
wait(1)
KEYPRESS(#q)
print("скрипт отработал.")//смотри в логе, сработала твоя горячая клавиша или нет.
halt
« Last Edit: April 05, 2019, 04:47:19 PM by dramster »

mahadin

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
с задержками тоже не работает, кликер не запускается в время открытой игры, мой скрипт в игре работает если я мышкой запущу свой сценарий(но уже зацикленный) и зайду в игру, но мне нужно его запускать горячей клавишей в нужное мне время, проблема в горячей клавише, игра не дает запускать через нее

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Запускаешь скрипт, потом игру и оперируешь клавишами "-" и "="

Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard

//============================================= Поток горячих клавиш
THREAD(hotkey, 1)
   IF(iskeydown(189)=1) // Клавиша "-"
      HINTPOPUP("_", "Скрипт на паузе...")
      $skript = 0
      WHILE(iskeydown(189)=1)
         WAITMS(20)
      END_CYC
   END_IF
   
   IF(iskeydown(187)=1) // Клавиша "="
      HINTPOPUP("_", "Скрипт работает!")
      $skript = 1
      WHILE(iskeydown(187)=1)
         WAITMS(20)
      END_CYC
   END_IF
   
   WAITMS(20)
END_THREAD

IF($skript)
   // Тут твой скрипт
END_IF
WAITMS(50)
« Last Edit: April 05, 2019, 04:56:11 PM by Hito »
Я не ду... Потому и не бу...

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Я тоже подготовил включение в самом скрипте, не пропадать же  :D

Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard


//ожидание нажатия единицы
WHILE(ISKEYDOWN (#1) = 0)
  waitms(50)
END_CYC
WHILE(ISKEYDOWN (#1) = 1)
  waitms(50)
END_CYC
//


//дальше твой код
wait(2)
KEYPRESS(#c)
wait(1)
KEYPRESS(#w)
wait(1)
KEYPRESS(#q)

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Я тоже подготовил включение в самом скрипте, не пропадать же  :D

Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard


//ожидание нажатия единицы
WHILE(ISKEYDOWN (#1) = 0)
  waitms(50)
END_CYC
WHILE(ISKEYDOWN (#1) = 1)
  waitms(50)
END_CYC
//


//дальше твой код
wait(2)
KEYPRESS(#c)
wait(1)
KEYPRESS(#w)
wait(1)
KEYPRESS(#q)

Ему на каждый цикл скрипта нужно будет жать клавишу "1"  :D
Я не ду... Потому и не бу...

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Ему на каждый цикл скрипта нужно будет жать клавишу "1"  :D

А я именно так задачу и понял - в нужный момент нажать на кнопку, скрипт чето по быстрому сделал, и далше ожидает нажатия горячей клавиши. Не зря в конце у него halt  :-\ .

мой скрипт в игре работает если я мышкой запущу свой сценарий(но уже зацикленный) и зайду в игру, но мне нужно его запускать горячей клавишей в нужное мне время.
Значит то , что скрипт зацикленый, автора не устраивает  :) .
« Last Edit: April 05, 2019, 05:03:33 PM by dramster »

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
А я именно так задачу и понял - в нужный момент нажать на кнопку, скрипт чето по быстрому сделал, и далше ожидает нажатия горячей клавиши. Не зря в конце у него halt  :-\ .
Ну, возможно... Примеров надавали, а там пусть сам уже разбирается и экспериментирует, подбирая себе то, что нужно.
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
В принципе в моем случае, если выполнение скрипта нужно единожды, а потом вновь ожидание клавиши, то достаточно добавить лишь одну строчку:
Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard
     
//============================================= Поток горячих клавиш
THREAD(hotkey, 1)
   IF(iskeydown(189)=1) // Клавиша "-"
      HINTPOPUP("_", "Скрипт на паузе...")
      $skript = 0
      WHILE(iskeydown(189)=1)
         WAITMS(20)
      END_CYC
   END_IF
   
   IF(iskeydown(187)=1) // Клавиша "="
      HINTPOPUP("_", "Скрипт работает!")
      $skript = 1
      WHILE(iskeydown(187)=1)
         WAITMS(20)
      END_CYC
   END_IF
   
   WAITMS(20)
END_THREAD

IF($skript)
   // Тут твой скрипт
   $skript = 0
END_IF
WAITMS(50)
Я не ду... Потому и не бу...

mahadin

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Я тоже подготовил включение в самом скрипте, не пропадать же  :D

Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard


//ожидание нажатия единицы
WHILE(ISKEYDOWN (#1) = 0)
  waitms(50)
END_CYC
WHILE(ISKEYDOWN (#1) = 1)
  waitms(50)
END_CYC
//


//дальше твой код
wait(2)
KEYPRESS(#c)
wait(1)
KEYPRESS(#w)
wait(1)
KEYPRESS(#q)

Ему на каждый цикл скрипта нужно будет жать клавишу "1"  :D

все работает большое спасибо
« Last Edit: April 05, 2019, 05:33:56 PM by mahadin »