Помогите с скриптом АХК

Georgine

Новичок
Автор темы
3
0
В игре надо нажимать поочерёдно кнопки чтобы пройти. Я решил зажать все, что бы они сами нажимались. Программа запускается и всё получается (кроме стрелочек), но она не останавливается продолжает нажимать всё подряд, таймер нельзя потому, что есть длинные уровни, есть короткие. Помогите)





Или так:
vk54::
    T := !T
Loop:

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {0x26 Up}                  ;
    }
    KeyWait 1                       ;
    return


    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {0x27 Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {0x28 Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {0x25 Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {z Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {s Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {l Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {k Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {j Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {h Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {f Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {d Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {Space Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {Shift Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {b Up}                  ;
    }
    KeyWait 1                       ;
    return

    If isKeyPressed := !isKeyPressed    ;
        SetTimer, SendA, 40             ;
    Else
    {
        SetTimer, SendA, Off            ;
        Send {v Up}                  ;
    }
    KeyWait 1                       ;
    return

SendA:
    Send {0x26 Down}
    Send {0x27 Down}
    Send {0x28 Down}
    Send {0x25 Down}
    Send {z Down}
    Send {s Down}
    Send {l Down}
    Send {k Down}
    Send {j Down}
    Send {h Down}
    Send {f Down}
    Send {d Down}
    Send {Space Down}
    Send {Shift Down}
    Send {b Down}
    Send {v Down}
    return

If !T
        Return
    SetTimer, Loop, -1
    Return




Никак не выключается:
vk54::
  
vk54::
    T := !T
    SetTimer, Loop, -1
    return

Loop:
    While T
    {
    Send, {0x26 Down}
    Send, {0x28 Down}
    Send, {0x25 Down}
    Send, {z Down}
    Send, {s Down}
    Send, {l Down}
    Send, {k Down}
    Send, {j Down}
    Send, {h Down}
    Send, {f Down}
    Send, {d Down}
    Send, {Space Down}
    Send, {Shift Down}
    Send, {b Down}
    Send, {v Down}
    }
    return

Хочу написать скрипт на шахту там нужно нажимать разные клавиши, отличное решение зажать все и они сами прожимаются. Но скрипт после запуска не закрывается и не останавливается.