Что нового

[Мышь, клавиатура] Скрипт с AHK в Autoit

Juice1992

Новичок
Сообщения
7
Репутация
0
Версия AutoIt: 3.
3.6.1

Описание:
Нужно переделать скрипт AHK под вашу програмуу

Код:
$4::
Loop
{
if not GetKeyState("4", "P")
break
Send {F6}
click
Setkeydelay 0
#MaxHotKeysPerInterval 10000
}
return
:-\
Примечания:
Я нуб,я не шарю как это сделать :'( :-[ :wacko:
Это кликер :smile:
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
1. Код запихни в тег "код"...:smile: (# решетка на нем нарисована)
2. Опиши лучше словами, что он делает.
Честно не понимаю, что тут написано в этом коде, но кликер сделать помог бы :smile:
 
Автор
J

Juice1992

Новичок
Сообщения
7
Репутация
0
zlo-kazan сказал(а):
1. Код запихни в тег "код"...:smile: (# решетка на нем нарисована)
2. Опиши лучше словами, что он делает.
Честно не понимаю, что тут написано в этом коде, но кликер сделать помог бы :smile:
кароче при нажатии на 4 ахк выполняет ф6(там типа скилл)-клик лкм
при зажатии выполняет скипт без ошибок пока не отпущу,почему так написал,на других прогах при долгом зажатии клавиши выдает ошыбку
 
Автор
J

Juice1992

Новичок
Сообщения
7
Репутация
0
zlo-kazan сказал(а):
1. Код запихни в тег "код"...:smile: (# решетка на нем нарисована)
2. Опиши лучше словами, что он делает.
Честно не понимаю, что тут написано в этом коде, но кликер сделать помог бы :smile:
Сделай кликер пожалуйсто!! :( :-[
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
Клик идет на текущую позицию мыши или в определенный пиксель? :smile:

Нажимаешь 4. Жмет F6 и кликает там где мышь.
Код:
$key="4" ; Клавиша для нажатия
hotkeyset($key, "click") ; Хоткей. При нажатии на 4 будет выполнятся функция Click

hotkeyset("^q", "_quit") ; Горячие клавиши для завершения скрипта. Ctrl+Q

; Бесконечный цикл, чтобы скрипт сразу не закрылся.
While 1
sleep(10)
WEnd


Func click()
Send("{F6}") ; Нажатие F6
MouseClick("left") ; Клик мыши в текущую позицию
EndFunc

; функция выхода из скрипта
Func _quit()
Exit
Endfunc
 
Автор
J

Juice1992

Новичок
Сообщения
7
Репутация
0
zlo-kazan сказал(а):
Клик идет на текущую позицию мыши или в определенный пиксель? :smile:

Нажимаешь 4. Жмет F6 и кликает там где мышь.
Код:
$key="4" ; Клавиша для нажатия
hotkeyset($key, "click") ; Хоткей. При нажатии на 4 будет выполнятся функция Click

hotkeyset("^q", "_quit") ; Горячие клавиши для завершения скрипта. Ctrl+Q

; Бесконечный цикл, чтобы скрипт сразу не закрылся.
While 1
sleep(10)
WEnd


Func click()
Send("{F6}") ; Нажатие F6
MouseClick("left") ; Клик мыши в текущую позицию
EndFunc

; функция выхода из скрипта
Func _quit()
Exit
Endfunc
Большое спасибо!)ато у нас защиту от ахк поставили))а без кликалки как без рук ;D
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
Juice1992 сказал(а):
Большое спасибо!)ато у нас защиту от ахк поставили))а без кликалки как без рук ;D
"Для выражения благодарностей в первую очередь на форуме присутствует кнопка "Полезное сообщение", если уж действительно помощь оказалась такой полезной." (с) Belfigor :smile:
 
Автор
J

Juice1992

Новичок
Сообщения
7
Репутация
0
zlo-kazan сказал(а):
"Для выражения благодарностей в первую очередь на форуме присутствует кнопка "Полезное сообщение", если уж действительно помощь оказалась такой полезной." (с) Belfigor :smile:
Сделал :D
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
Juice1992

{OverQuoteWarn}
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 471
Репутация
2 401
Kaster [?]
обычный код соответственно в тег [code]
Ещё добавлю, что для autohotkey есть подсветка:

[box title=Пример кода на Autohotkey][code=autohotkey]Loop[/code][/box]

P.S
Juice1992
Ещё одно...
Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Как правильно называть темы

"[Мышь, клавиатура] Скрипт с AHK в Autoit" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, Администратор форума.
 

Lazy

Новичок
Сообщения
40
Репутация
0
zlo-kazan сказал(а):
Нажимаешь 4. Жмет F6 и кликает там где мышь.
$key="4" ; Клавиша для нажатия
hotkeyset($key, "click") ; Хоткей. При нажатии на 4 будет выполнятся функция Click

hotkeyset("^q", "_quit") ; Горячие клавиши для завершения скрипта. Ctrl+Q

; Бесконечный цикл, чтобы скрипт сразу не закрылся.
While 1
sleep(10)
WEnd


Func click()
Send("{F1}") ; Нажатие F1
MouseClick("left") ; Клик мыши в текущую позицию
EndFunc

; функция выхода из скрипта
Func _quit()
Exit
Endfunc
А как сделать,чтобы при нажатии F1 выполнялось множественное нажатие?
Скрипт выше был описан.
Но,если 4ку заменить на F1,то скрипт не выполняется.
Так же пробовал {F1} писать.
П.С. да я нуб и впервые с этой прогой столкнулся.=)
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
Код:
$key="{F1}" ; Клавиша для нажатия
hotkeyset($key, "click") ; Хоткей. При нажатии на 4 будет выполнятся функция Click

hotkeyset("^q", "_quit") ; Горячие клавиши для завершения скрипта. Ctrl+Q

; Бесконечный цикл, чтобы скрипт сразу не закрылся.
While 1
sleep(10)
WEnd


Func click()
Send("{F6}") ; Нажатие F6
MouseClick("left") ; Клик мыши в текущую позицию
EndFunc

; функция выхода из скрипта
Func _quit()
Exit
Endfunc

Подставил {F1}. в windows срабатывает нормально, в бокноте и т.д. работает. Возможно в игре на F1 уже есть своя горячая клавиша?
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
Сделал тоже самое, только через IsPressedEx.au3
Код:
#include <IsPressedEx.au3>

HotKeySet("^q", "_Quit")

$hU32_DllOpen = DllOpen("User32.dll")
While 1
	$iRet = _IsPressedEx("[:ALLKEYS:]", $hU32_DllOpen) 
	If $iRet=70 then  ;iRet=70 это код клавиши F1 
        Send("{F6}") ; Нажатие F6
        MouseClick("left") ; Клик мыши в текущую позицию
        Endif
	Sleep(100)
WEnd

Func _Quit()
	DllClose($hU32_DllOpen)
	Exit
EndFunc



Чтобы заработало нужна библиотека IsPressedEx.au3. Качаем архив и распаковываем в C:/..../AutoItv3/include/
 

Lazy

Новичок
Сообщения
40
Репутация
0
zlo-kazan сказал(а):
Код:
$key="{F1}" ; Клавиша для нажатия
hotkeyset($key, "click") ; Хоткей. При нажатии на 4 будет выполнятся функция Click

hotkeyset("^q", "_quit") ; Горячие клавиши для завершения скрипта. Ctrl+Q

; Бесконечный цикл, чтобы скрипт сразу не закрылся.
While 1
sleep(10)
WEnd


Func click()
Send("{F6}") ; Нажатие F6
MouseClick("left") ; Клик мыши в текущую позицию
EndFunc

; функция выхода из скрипта
Func _quit()
Exit
Endfunc

Подставил {F1}. в windows срабатывает нормально, в бокноте и т.д. работает. Возможно в игре на F1 уже есть своя горячая клавиша?
На F1 там пустота,т.е. скил или предмет на F1 ты устанавливаешь сам.
Там есть батлмод,т.е. ты сам назначаешь 4 строки клавишь, которые будут у тебя работать.
С ахк проблем не было: ставишь клавишу для нажатия F1 и скрипт на повторение зажатия-отпускания F1 и клик левой кнопкой.
Самый прикол,что клик левой кнопкой работает,а вот нажатие кнопки игнорится,но множественное нажатие F1, при выходе из игры, производится в windowsе.
 

Lazy

Новичок
Сообщения
40
Репутация
0
zlo-kazan сказал(а):
Сделал тоже самое, только через IsPressedEx.au3
Код:
#include <IsPressedEx.au3>

HotKeySet("^q", "_Quit")

$hU32_DllOpen = DllOpen("User32.dll")
While 1
	$iRet = _IsPressedEx("[:ALLKEYS:]", $hU32_DllOpen) 
	If $iRet=70 then  ;iRet=70 это код клавиши F1 
        Send("{F6}") ; Нажатие F6
        MouseClick("left") ; Клик мыши в текущую позицию
        Endif
	Sleep(100)
WEnd

Func _Quit()
	DllClose($hU32_DllOpen)
	Exit
EndFunc



Чтобы заработало нужна библиотека IsPressedEx.au3. Качаем архив и распаковываем в C:/..../AutoItv3/include/
Вот это помогло.=)
А не подскажешь где найти коды клавишь от F1 до F12.
Если не трудно,то напишите пжлст.
 

zlo-kazan

Скриптер
Сообщения
374
Репутация
100
В том же архиве библиотеки есть пример:
ALL Keys Pressed Example.au3

Код:
#include <IsPressedEx.au3>

HotKeySet("^q", "_Quit")

$hU32_DllOpen = DllOpen("User32.dll")

While 1
	$iRet = _IsPressedEx("[:ALLKEYS:]", $hU32_DllOpen)
	
	If $iRet Then _Output_IsPressedEx_Result($iRet, @Extended)
	
	Sleep(10)
WEnd

Func _Output_IsPressedEx_Result($iRet, $iExtended)
	Local $sTT_Data = StringFormat("+ _IsPressedEx Return:\t%s (%s)\n! @Extended code:\t%i (see docs for details)", $iRet, __KeyGetType($iRet, 0), $iExtended)
	ToolTip($sTT_Data)
EndFunc

Func _Quit()
	DllClose($hU32_DllOpen)
	Exit
EndFunc

Запускаешь и жмешь на все подряд клавиши(включая мышь)... И смотришь на сообщение рядом с курсором... :smile:

P.S. F1=70... F2=71... F3=72.... ... ... F10=80... F11=8A... F12=8B...
 
Верх