UoKit.com Форумы > Кликер > UO Pilot
Korsar2888
Так в общем подскажите как сделать так, если это вообще возможно...
При даблклики клавиши А и ее зажатии пилот бесконечно нажимал А до тех пор пока она не будет отжата
Вверх
cirus
Цитата
и ее зажатии пилот бесконечно нажимал А

Если клавиша зажата, то и без пилота будут нажатия A.
В любом случае нужен плагин Определение статуса клавиш клавиатуры

Вверх
Korsar2888
Цитата(cirus @ 4.9.2018, 13:14)

Если клавиша зажата, то и без пилота будут нажатия A.
В любом случае нужен плагин Определение статуса клавиш клавиатуры

Так статья то, что нужно, прям огонь, в точку. Спасибо большое.
Но всегда есть НО(
1) что это за ошибки?
20:51:02 : Error loading plugin: Kbd.dll. 'InitPlugin' not found.
20:51:02 : Error loading plugin: lua5.1.dll. 'InitPlugin' not found.
все плагины добавлены, Kb.dll без жалоб, им и пользуемся.
2) в игре нельзя зажать клавишу и она будет кликаться вечно. при зажатии нажимается 1 раз в любом случае.
3) Ну и само "НО". Нужно чтобы после двойного клика при зажатой клавише работало. Работает при 1 зажатии. Команда "KB.GetKeyState($k2) = 1" соответственно только одна на нажатие, а не на зажатие! При двойном нажатии и зажатии робит как надо

Вот сам код
Код
set $k1 q
set $k2 z
:1
set #c 0


while  KB.GetKeyState($k2) = 1
    while  KB.GetKeyState($k2) = 1       //что-то типо счетчика, не работает
        set #c #c + 1
    end_while

    wait 100
    if #c > 2
        goto 1
    end_if       //счетчик кончился
    wait 200     //задержка, в теории для распознавания дабл клик или проверить зажата ли клавиша единожды
        while KB.GetKeyState($k2) = 1  //
            send217 wwwwwwwwww
        end_while
end_while

goto 1

ЗЫ Админы можете заголовок темы исправить, а то "клавишЬ" прям так глаза мозолит((
Вверх
cirus
Цитата
что это за ошибки?

Версия пилота какая?
Скачайте 2.40 или Night version http://uopilot.uokit.com
Код
if  KB.GetKeyState(a) = 1         // если нажата A
    set #t timer + 500
    while timer < #t              // если в течении 500мсек
        if  KB.GetKeyState(a) = 1   // была снова нажата A
            while KB.GetKeyState(a) = 0   // пока не нажата A
                log 111    // вывод в лог, вместо этого любой код
                wait 100
            end_while
        end_if
    end_while
end_if
wait 100

При двойном нажатии кнопки 'A' будет писать в лог 111, нажатие кнопки 'A' остановит вывод в лог.
Вверх
Levo222
Цитата(Korsar2888 @ 4.9.2018, 16:52)

Так в общем подскажите как сделать так, если это вообще возможно...
При даблклики клавиши А и ее зажатии пилот бесконечно нажимал А до тех пор пока она не будет отжата

Личные сообщения прочти
Вверх
Invision Power Board © 2001-2024 Invision Power Services, Inc.
Version for Pocket PC © 2006-2024, IPBest Studio.