1

Тема: Помогите сделать задержку в скрипте если он не выполнен

XButton2::
	loop
	{
		
		click
		SLEEP 20
		click, up
		sleep 450
		
		click 
		
		click, up
		
		send, {sc39} 
		sleep 250                           
		if !GetKeyState("XButton2", "p")
			break                           
		}
		return

Имеется такой скрипт на нажатие, паузу в 400 мс, еще одно нажатие и нажатие на пробел. Проблема в том что анимация атаки в игре не поспевает за скриптом, в итоге после первого цикла идет Нажатие и Прыжок, а не Нажатие+пауза+нажатие+прыжок. Как оптимизировать задержку?

2

Re: Помогите сделать задержку в скрипте если он не выполнен

DOLAS1337

Просто подставить нужные задержки в 'Sleep, сюда'.
Код переписал.

XButton2::
Loop
{
	; Первый удар:
 SendInput {vk1 Down}
 Sleep, 450
 SendInput {vk1 Up}
 Sleep, 100

	; Второй удар:
 SendInput {vk1 Down}
 Sleep, 450
 SendInput {vk1 Up}
 Sleep, 100

 SendInput, {sc39}	; {Space}
 Sleep, 400
                       
 If !GetKeyState("XButton2", "p")
  Break
}
Return
Win10x64, AHK v1.1.37.01 (Unicode 64-bit) | AHK-Wiki | Переменные и выражения | RegEx101

3

Re: Помогите сделать задержку в скрипте если он не выполнен

__Михаил__
Спасибо за верный синтаксис! Я в этом деле начинающий, так что не мог понять почему кнопка мыши не нажимается, так что пришлось все писать через CLICK.

XBotton2::
Loop
{
	; Первый удар:
 Sleep 170
 SendInput {vk1 Down}
 
 SendInput {vk1 Up}
 Sleep, 400

	; Второй удар:
 SendInput {vk1 Down}
 
 SendInput {vk1 Up}
 Sleep, 100 

 SendInput, {sc39}	; {Space}
 Sleep, 370
                       
 If !GetKeyState("XBotton2", "p")
  Break
}
Return

Поигрался с таймингами, в общем вот идеальный вариант.