Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ UO Pilot в онлайн играх _ рыбалка в Neverwinter online

Автор: Archik 22.3.2018, 17:03

Доброго времени суток.
не очень хорошо дружу с написанием скриптов, поэтому обращаюсь за помощью.
суть задачи: в определенной области имеется 3 кнопки которые рандомно загораются и рандомно тухнут (цветные, серые) при зажатии клавиши на активной кнопке набирается шкала. Не могу придумать даже алгоритм действий, так как они загораются и тухнут рандомно. Нужно что бы определило какая кнопка в данный момент активна, зажало ее, и в момент когда она потухла искало опять таки активную кнопку и зажимало ее и так по кругу пока шкала не заполнится.
Буду благодарен за любою подсказку!

Автор: cirus 23.3.2018, 2:16

Для начала проверьте будет ли игра воспринимать зажатия кнопки. Т. е. загорелась кнопка влево, запустить скрипт:

Код
// сделать привязку к окну Ctrl+A
send_down left  // зажать кнопку left
wait 5000  // ждать 5 секунд
send_up left  // отпустить кнопку
end_script

Или:
Код
showwindow windowhandle minimize  // свернуть пилот
wait 1500
sendex_down left  // зажать кнопку left, работает для активного окна
wait 5000  // ждать 5 секунд
sendex_up left  // отпустить кнопку
showwindow windowhandle
end_script

Если работает, то надо будет сделать картинки кнопок и научится искать их, с помощью http://uopilot.tati.pro/index.php?title=Findimage

Автор: Archik 23.3.2018, 16:02

Зажатие кнопки работает, так как есть другой скрипт рабочий, но там проще из за того что он проверяет активны ли они все 3 и если одна из них не активна сбрасывает наживку, если же все 3 активны он зажимает 1 на 14секунд что бы вытянуть.

Код
if 419, 629 2960685 or 456, 633 2960685 or 499, 628 2894892 //стрелки серые
sendex_down w //сброс наживки
wait 80
sendex_up w
else //стрелки активны
sendex_down q
wait 14000
sendex_up q
wait 100
sendex 1 //вытащить
end_if


как то так.

Автор: cirus 24.3.2018, 1:33

Код
// не забываем привязку сделать Ctrl+A
showwindow windowhandle minimize  // свернуть пилот
wait 1500

if 419, 629 2960685   // если стрелка влево загорелась, подставить нужные координаты и цвет
    sendex_down left    // зажимаем клавишу влево
    while 419, 629 2960685 // пока стрелка активна
        wait 10
    end_while
    sendex_up left     // отпускаем клавишу влево
end_if
// тут аналогичные 2 блока для клавиш вниз и вправо

Автор: Archik 24.3.2018, 1:39

спасибо большое!

Автор: cirus 24.3.2018, 2:05

Чуть подправил, а то сначала отпускалась кнопка, а потом зажималась smile.gif

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)