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

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

UoKit.com Форумы _ UO Pilot в онлайн играх _ Нужна помощь , перестает работать как только делаю клик в другом месте (не в окне в котором работает кликер) .

Автор: tomazzz 21.4.2017, 1:22

Всем добрый вечер , помогите пожалуйста разобраться ,

окно с игрой развернуто на одной части монитора , ничем не перекрыто , просто висит себе и все .

задача , что бы кликер тапал исходя из скрипта , я в то время мог пользовать мышь в другой части монитора ...



вот скрипт :



left 516, 288
wait 250
set $a findcolor (751, 498 980, 658 1 1 4194523 %arr 2)
if $a > 0
right %arr [1 1], %arr [1 2]
end_if
left 171,672
wait 250
left 595,664
wait 250
left 121,697
wait 250
left 516,618
wait 250

Все работает как и запланировано , но только если сделать клик в окне .

В общем привязываю кликер к окну (тап на кликер - ctrl+a на окно с игрой,название в строке верное) нажимаю на старт - и НИЧЕГО НЕ ПРОИСХОДИТ ...

Как только я делаю клик в любом месте этого (с игрой) окна - ВСЕ НАЧИНАЕТ РАБОТАТЬ ...

При этом я могу переместить курсор мышки из окна - все продолжает работать ....

НО как только я делаю любое нажатие клавиши мыши не в игровом окне - ВСЕ СТОПИТСЯ (((


Знатоки , подскажите , что не так , как можно исправить ?

Всех заранее благодарю !


Автор: cirus 21.4.2017, 2:07

Попробуйте установить окно с игрой поверх всех окон:

Код
set #handle findwindow ("Имя_окна")        // найти окно с игрой 
set windowpos -1 -1 -1 2 #handle        //  установить поверх всех окон
End_script

Ещё писали какой-то способ здесь: https://forum.uokit.com/index.php?s=&showtopic=29899&view=findpost&p=224224

Автор: tomazzz 21.4.2017, 10:57

Огромное спасибо ,

set #handle findwindow ("Имя_окна") // найти окно с игрой
set windowpos -1 -1 -1 2 #handle // установить поверх всех окон
End_script

Вроде работает ,

но есть еще один момент , во время того как запущен скрипт , не возможно что то напечатать , курсор , как бы перескакивает все время в игру , это можно как то исправить ?
Спасибо.

Автор: cirus 21.4.2017, 11:23

Цитата
set #handle findwindow ("395706") // найти окно с игрой

Надо имя окна указывать, а не хендл.
Цитата
и на второе окно , но работает только одно

А оба окна поверх всех окон?

Автор: tomazzz 21.4.2017, 18:13

Цитата(cirus @ 21.4.2017, 11:23) *

Надо имя окна указывать, а не хендл.

А оба окна поверх всех окон?


Спасибо , что помогаете разобраться ,

если указывать имя , то не работает одно окно , так как имена у них одинаковы и начинает работать только одно , если указать хэндл ,
то вроде пашет , но не всегда , иногда не работает , иногда начинает работать , когда ткнешь мышкой в окно , короче не стабильно в отличие от одного ...

и косяк с клавиатурой как я уже написал , это в не зависимости от того одно окно или 2 ....

но есть еще один момент , во время того как запущен скрипт , не возможно что то напечатать , курсор , как бы перескакивает все время в игру , это можно как то исправить ?


Сейчас скрипт выглядит так :

wait 500

set #handle findwindow ("395706") // найти окно с игрой
set windowpos -1 -1 -1 2 #handle // установить поверх всех окон


left 516, 288
wait 250

set $a findcolor (751, 498 980, 658 1 1 4194523 %arr 2)
if $a > 0
right %arr [1 1], %arr [1 2]
end_if





left 171,672
wait 250
left 595,664
wait 250
left 121,697
wait 250
left 516,618
wait 250

set #handle findwindow ("1179758") // найти окно с игрой
set windowpos -1 -1 -1 2 #handle
wait 500
left 552, 348
wait 1000

Автор: cirus 22.4.2017, 2:12

Цитата
начинает работать только одно

Потому что скрипт работает только с тем окном, к которому привязан.
Варианты:
1. Для каждого окна свой скрипт.
2. Менять рабочее окно перед нужными действиями. Через set workwindow хендл_окна.
3. Если используются только клики, то можно указывать хендл нужного окна после координат.

Код
set %handle findwindow ("Calculator")   // найти все окна с таким названием
hint Нашлось окон: size(%handle)      
for #i 1 size(%handle)
    set windowpos -1 -1 -1 2 %handle[#i 1]  // установить все найденные окна поверх всех
end_for

:start
    // тут скрипт
    //
    left 516, 288 %handle[1 1]   // клик в первое окно
    left 552, 348 %handle[2 1]   // клик во второе окно
goto start

Цитата
курсор , как бы перескакивает все время в игру , это можно как то исправить ?

Вообще не должно дёргать курсор. В настройках убрана галка 'Перемещать курсор в точку клика'?

Автор: tomazzz 22.4.2017, 21:34

Цитата(cirus @ 22.4.2017, 2:12) *

Потому что скрипт работает только с тем окном, к которому привязан.
Варианты:
1. Для каждого окна свой скрипт.
2. Менять рабочее окно перед нужными действиями. Через set workwindow хендл_окна.
3. Если используются только клики, то можно указывать хендл нужного окна после координат.

Код
set %handle findwindow ("Calculator")   // найти все окна с таким названием
hint Нашлось окон: size(%handle)      
for #i 1 size(%handle)
    set windowpos -1 -1 -1 2 %handle[#i 1]  // установить все найденные окна поверх всех
end_for

:start
    // тут скрипт
    //
    left 516, 288 %handle[1 1]   // клик в первое окно
    left 552, 348 %handle[2 1]   // клик во второе окно
goto start


Вообще не должно дёргать курсор. В настройках убрана галка 'Перемещать курсор в точку клика'?



В общем настроил все как ты и сказал просто 2 окна кликера запустил и привязал окна через хэдеры , все вроде работает ....

Курсор не дергает , я наверно не совсем доходчиво объяснил (

Тема такая . К примеру , пишу сообщение на форуме и в окне где мигает курсор перед печатью палка , он как бы в игру вылетает все время ... Сам курсор стоит на месте (мышки) , но когда работаешь на клавиатуре , в момент клика в игре , перестает набираться текст и мигать курсор печати , вот он как бы переносится в игру ... И каждый раз после клика в игре, приходится снова наводить мышкой на то место где остановился печатать ... И так везде , где это касается клавиатуры и печати ... Блокнот браузер и т.д. так что если клик в игре каждые 3-4 секунды , то напечатать в браузере адрес к примеру ,становится просто невозможно (((
Вот с этим бы разобраться и было бы вообще кайф )))

Автор: cirus 22.4.2017, 21:45

У меня таких проблем не было, так что не знаю в чём дело.

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