В этом две проблемы.
Во-первых, ваш l oop является недостижимым кодом.
Выполнение кода останавливается, когда встречается ваша первая метка горячей клавиши. Это называется Секция автоматического выполнения .
Во-вторых, l oop не принимает выражения для первого параметра. Требуется устаревший текстовый параметр. Таким образом, вы либо захотите использовать устаревший способ обращения к переменной, который будет %a%
, но лично я бы побудил вас sh к использованию современного синтаксиса выражений и принудительному выражению этого параметра, запустив параметр выключен с %
, за которым следует пробел. Итак, Loop, % a
.
Чтобы узнать больше о устаревшем синтаксисе и синтаксисе выражений, см. эту страницу документации.
Вот ваш фиксированный скрипт:
#SingleInstance, Force
a := 112
name := 1
Sleep, 3000
Loop, % a
{
MouseClickDrag, Left, 1300, 210, 645, 140
Sleep, 100
MouseClick, Left, 1277, 1038, 0, 5
Sleep, 100
MouseClick, Left, 838, 64, 0, 5
Sleep, 100
SendInput, % name
name++
Sleep, 100
SendInput, {Enter}
Sleep, 100
MouseClickDrag, Left, 670, 13, 1393, 153
Sleep, 100
MouseClick, Left, 500, 490, 0, 5
Sleep, 300
MouseClick, Left, 500, 490, 0, 5
SendInput, {Right}
}
;this return here ends the auto-execute section
;but of course, in this specific case it's totally
;useless since the next line is a hotkey label
;which would also stop the auto-execute section
return
;even though the code execution gets stuck inside the loop,
;hotkeys can be specified down here
;they're created even before the auto-execute section starts
x::Pause, Toggle
y::ExitApp