1 (изменено: apbapb12, 2015-07-22 00:20:22)

Тема: Скрипт автоклик

Собственно игра APB.
Нужен скрипт -при зажатии левой кнопки мыши чтобы шли повторные нажатия,при отпускании  нажатия прекращались.
Имеется вот такой скрипт.


LButton::
   While GetKeyState("LButton", "P")
   {
      SendInput, {Click}
      Sleep, 30
   }
   Return

Но при зажатии левой кнопки мыши + шифт он почему то не работает и еще ужасно тупит,вплоть до того,пока я удерживаю левую кнопку мыши курсор вообще не могу сдвинуть с места.
(шифт в игре нажат практически перманентно ибо это спринт,поэтому важно чтоб в этой комбинации скрипт работал)

2

Re: Скрипт автоклик

apbapb12, ознакомьтесь с этой темой, отредактируйте свой пост.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: Indomito, 2015-07-22 00:26:16)

Re: Скрипт автоклик

Попробуй так.

~LButton::
   While GetKeyState("LButton", "P")
   {
      ;SendInput, {Click}
      Sleep, 25
      Send, {Click}
   }
   Return

Хотя в системе я глюков не заметил, т.е. в редакторе NotePad++.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

4 (изменено: apbapb12, 2015-07-22 12:35:05)

Re: Скрипт автоклик

С шифтом не работает по прежнему,зато вроде пропали глюки,когда при зажатии мышки курсор на месте замирал и не двигался.

5 (изменено: Indomito, 2015-07-22 00:44:09)

Re: Скрипт автоклик

Тогда отлавливай комбинацию Shift+ЛКМ по той же схеме  ~+LButton, а дальше ветвление внутри обработчика.

Опс... сек... я не заметил самовызова.  Сейчас поправлю.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

6 (изменено: apbapb12, 2015-07-22 12:35:16)

Re: Скрипт автоклик

Я если честно вообще скрипты вижу первый раз в жизни)поэтому даже не понял,что ты сказал.

7 (изменено: Indomito, 2015-07-22 00:55:29)

Re: Скрипт автоклик

AHK не сложный - разберёшься быстро.

Вот так должно точно работать.

#UseHook, On
~$LButton::
Thread, NoTimers
Critical
   While GetKeyState("LButton", "P")
   {
      ;SendInput, {Click}
      Sleep, 25
      Send, {Click}
   }
Critical , Off
Thread, NoTimers, false 
Return
#UseHook, Off

P.S. У тебя в коде ЛКМ вызывала сама себя это 100% глюк который должен был проявиться.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

8 (изменено: Indomito, 2015-07-22 01:08:58)

Re: Скрипт автоклик

Про спец. символы.
Про ~ префикс.

При использовании префикса ~ в момент запуска обработчика горячей клавиши нельзя подавить системную обработку этого действия.

Про $ префикс.

Префикс $ обычно необходим, если в скрипте используется команда Send для имитации нажатий клавиш, входящих в состав самой горячей клавиши, иначе такая горячая клавиша может запустить сама себя.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

9 (изменено: apbapb12, 2015-07-22 12:36:27)

Re: Скрипт автоклик

Шифт перестал отрубать скрипт,но если шифт изначально нажат,то скрипт работать не будет.
Выглядит так:шифт зажат=нажимаешь лкм ничего не происходит,затем ожимаешь шифт и скрипт начинает работать,при нажатой лкм зажимаешь шифт обратно скрипт работает.

10

Re: Скрипт автоклик

Убери ~ и проверь, просто у меня не возникает таких проблем.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

11 (изменено: apbapb12, 2015-07-22 12:36:42)

Re: Скрипт автоклик

Нажми шифт  и удерживай шифт затем нажми лкм и увидишь,что скрипт не работает

12

Re: Скрипт автоклик

Да, сейчас поправлю... Левый или Правый Shift или по фиг?

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

13 (изменено: apbapb12, 2015-07-23 00:44:01)

Re: Скрипт автоклик

Левый шифт.

14 (изменено: Indomito, 2015-07-22 01:55:47)

Re: Скрипт автоклик

Сорри, что так долго проверял работоспособность в игре Ведьмак 3.

#UseHook, On
$*LButton::
Thread, NoTimers
Critical
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Critical , Off
Thread, NoTimers, false 
Return
#UseHook, Off

P.S. Просто Shift - это модификатор... я как то не учёл этого.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

15 (изменено: Indomito, 2015-07-22 02:08:43)

Re: Скрипт автоклик

Или так.

#UseHook, On  ; Не обязательно
~$*LButton::
Thread, NoTimers ; Убери если таймеров нет
Critical ; Не обязательно
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Critical , Off  ; Не обязательно
Thread, NoTimers, false  ; Убери если таймеров нет
Return
#UseHook, Off  ; Не обязательно
"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

16

Re: Скрипт автоклик

apbapb12, у нас принято использовать заглавные буквы и точки в конце предложений. Отредактируйте свои посты. Indomito, крайне нежелательно отвечать в темах, оформленных неправильно!

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

17

Re: Скрипт автоклик

teadrinker Извиняюсь - не заметил, думал, что дело было в тегах CODE.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

18 (изменено: apbapb12, 2015-07-22 12:34:37)

Re: Скрипт автоклик

Спасибо большое заработало),теперь скрипт работает при нажатом шифте.
Вся соль была в * перед LButton.
Не подскажите,почему вы убрали из скрипта команду  ;SendInput, {Click}
С ней скрипт выдает клики быстрее 21 клик за 3.5 секунды и 21 клик за 5.6 сек без этой команды.

19 (изменено: Indomito, 2015-07-22 15:35:19)

Re: Скрипт автоклик

Исправьте свои посты, например.
Сейчас.

apbapb12 пишет:

левый шифт

Должно быть.

apbapb12 пишет:

Левый шифт.

Тогда я отвечу.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

20

Re: Скрипт автоклик

Обнаружился еще один баг в этом скрипте.
После зажатия шифт ( в игре это спринт) и нажатия на лкм этот самый спринт почему то пропадает,как будто шифт не нажат,приходится отжимать шифт и нажимать его обратно.
ПС.Сегодня замерили и команда Sendinput и Send дают одинаковое кол-во кликов,так что паника была ложной.
Осталось разобраться почему Шифт перестает работать.

21

Re: Скрипт автоклик

Cам скрипт вот такой.


~$*LButton::
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Return

22

Re: Скрипт автоклик

Возможно, что угодно... например забивание буфера. Ты посылаешь много ЛКМ и они не успевают отработать, но это вряд ли, хотя можно сделать так... для надёжности.
~$*LButton::
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
     MouseClick, left

   }
Return

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

23

Re: Скрипт автоклик

И ещё версия - посылать отжатие, то есть одно физическое + имитационное, нужно отжатие.

#UseHook, On
~$*LButton::
Thread, NoTimers
Critical
   While GetKeyState("LButton", "P")
   {
   Send, {LButton Down}
   Sleep, 25
   }
   KeyWait, % A_ThisHotkey ; Можно поставить просто задержку - Sleep, 25
   Send, {LButton Up}   
Critical , Off
Thread, NoTimers, false 
Return
#UseHook, Off

Надо понять, тебе клик нужен или нажатие.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

24

Re: Скрипт автоклик

На самом деле нужен простой скрипт,который при зажатии ЛКМ спамит клики,при отжатии перестает их спамить.
Тоесть скрипт,который я обозначил полностью меня устраивает и он рабочий и работает именно так как нужно,спамит клики,но есть одно но,он каким то образом мешает работе кнопки шифт.Получается парадокс,то шифт не давал скрипту работать,то теперь скрит отрубает шифт.
Шифт-это бег в игре,практически всегда он зажат,что позволяет твоему персонажу бежать.
Но как только я зажимаю лкм,при зажатом шифте персонаж бежать перестает,как будто шифт перестает давать сигнал вообще.Лечится это перенажатием на шифт,что абсолютно неудобно,ибо в этой игре каждая милисекунда на счету.
Приходится перенажимать шифт.

25

Re: Скрипт автоклик

Правильный вариант такой:

#IfWinActive [название окна игры]
~*LButton::
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Return

Если он чему-то мешает, то это уже особенности игры.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

26

Re: Скрипт автоклик

Нет,это именно проблема скрипта ,несложно проверить в том же WORD,что скрипт дезактивирует зажатый шифт,игра тут абсолютно не причем.
У меня был рабочий скрипт,но к сожалению он пропал вместе с умершим винтом,а так,как я далек от написания скриптов,решил попытать счастья у вас.

27

Re: Скрипт автоклик

А как вы проверяете на Word, что он дезактивирует шифт? У меня ничего не дезактивирует. Запускаем скрипт в таком виде:

#IfWinActive ahk_class OpusApp
~*LButton::
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Return

Запускаем ворд, нажимаем шифт и какую-либо буквенную клавишу — печатается в верхнем регистре.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

28 (изменено: apbapb12, 2015-07-24 13:43:02)

Re: Скрипт автоклик

teadrinker пишет:

А как вы проверяете на Word, что он дезактивирует шифт? У меня ничего не дезактивирует. Запускаем скрипт в таком виде:

#IfWinActive ahk_class OpusApp
~*LButton::
   While GetKeyState("LButton", "P")
   {
      Sleep, 25
      Send, {Click}
   }
Return

Запускаем ворд, нажимаем шифт и какую-либо буквенную клавишу — печатается в верхнем регистре.

Суть скрипта спам клика?да!
Нажмите шифт и удерживайте,нажмите лкм и удерживайте и нажмите любую буквенную клавишу - она будет в нижнем регистре.
Теперь отключите скрипт,и  проделайте туже самую операцию и вы получите верхний регистр.
Скрипт запускается при зажатой лкм,при  этом он почему то вырубает действие зажатого шифта.
Пэтому существует конфликт шифта и этого скрипта.

29

Re: Скрипт автоклик

Доброго времени суток. Попробуйте вот так.

~*lbutton::
while GetKeyState("LButton","P")
{
DllCall("mouse_event", UInt, 0x2, Int, 0, Int, 0, UInt, 0, Int, 0)
      Sleep, 20
DllCall("mouse_event", UInt, 0x4, Int, 0, Int, 0, UInt, 0, Int, 0)
      Sleep, 20
}
Return
OS: Win11x64, AutoHotkey v1.1.25.01 (Unicode 64-bit).

30

Re: Скрипт автоклик

Ядрён пишет:

Доброго времени суток. Попробуйте вот так.

~*lbutton::
while GetKeyState("LButton","P")
{
DllCall("mouse_event", UInt, 0x2, Int, 0, Int, 0, UInt, 0, Int, 0)
      Sleep, 20
DllCall("mouse_event", UInt, 0x4, Int, 0, Int, 0, UInt, 0, Int, 0)
      Sleep, 20
}
Return

Ядрён,огромной респект,это именно то,что нужно,все работает как надо и не вызывает никаких конфликтов с шифтом!

31

Re: Скрипт автоклик

помогите НУБУ!!! срочно нужен скрипт  где  зациклевается (Enter )  тоисть многократное нажатие ентера с задержкой между кликом 0,2 секунды. кому не сложно выделите пару минут пожалуйста

32

Re: Скрипт автоклик

Нубам сюда и сюда.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder