Здравствуйте, гость ( Вход | Регистрация )

3 страниц V  1 2 3 >  
Ответить в эту темуОткрыть новую тему
> Помогите разобраться с командой для скрипта
Alessandrinho
сообщение 16.8.2018, 11:13
Сообщение #1


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



Вопрос такой после каждого клика левой в заданые координаты нужно проверить цвет, если цвет 1644825(цифра цвета взята с uopilot), то ждем, если цвет будет 1340143(цифра цвета взята с uopilot) то кликаем дальше.

left 350,125
left 350,195
left 350,265
left 350,325
left 350,395
left 350,455
left 350,525
left 350,590
left 350,660
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.8.2018, 11:51
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
left 350,125    // клик
wait 500        // пауза после клика
if 350,125 1340143  // проверяем цвет в координатах
    log ++          // какие-то действия, если цвет нужный
end_if
end_script

Цитата
если цвет 1644825(цифра цвета взята с uopilot), то ждем

Непонятно чего ждать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 12:06
Сообщение #3


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



там может проскакивать заставка длинною секунд 3-5, заставка закрывает собою окно куда нужно кликать и соответсвенно сбивает этим последующий алгоритм. А когда заставка прошла то открывается окно в котором нужно кликать. Заставка появляется рандомно, и вычислить ее невозможно, пеоэтому нжна проверка по цвету.

if 350,125 1340143 // проверяем цвет в координатах
log ++ // какие-то действия, если цвет нужный
Оно проверило цвет, если вдруг цвет не тот, то оно все равно сразу клацнет в координату, или будет ждать пока цвет не станет нужным???
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.8.2018, 12:10
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
while_not 350,125 1340143  // пока цвет не станет нужным
    // какие-то действия если надо
    wait 1
end_while
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 12:16
Сообщение #5


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



while_not 350,125 1340143 // пока цвет не станет нужным
// какие-то действия если надо
wait 1
end_while
end_script

wait 1 это ждать 1 секунду? Обязательно или нет?
аесли прописать так:

while_not 350,125 1340143 // пока цвет не станет нужным
// какие-то действия если надо
end_while
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.8.2018, 12:36
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
wait 1 это ждать 1 секунду?

1 мсек. Т. е. 1/1000 секунды.
Цитата
Обязательно или нет?

Необязательно. Откройте диспетчер и посмотрите загрузку процессора запустив код:
Код
while 1 = 1
end_while

И так:
Код
while 1 = 1
    wait 1
end_while
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 12:47
Сообщение #7


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



while_not 350,125 1340143 //ждем указанный цвет
left 350,125// когда цвет стал таким как надо клацаем
end_while

Правильно я понял???
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 16.8.2018, 12:55
Сообщение #8


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Правильно я понял???

Да, но wait я настоятельно рекомендую вставить. В противном случае будет очень большая нагрузка на процессор и дикое количество кликов.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 13:13
Сообщение #9


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



я до этого не прописывал wait
у меня например сейчас идет 50 точек на которые каждые 30 мсек идет клик мышкой? и так на протяжениее 10 часов... это плохо для проца?
надо после каждого клика прописать команду wait 50????
или и так сойдет?


или просто увеличить паузу между исполнениями команд, у меня сейчас стоит 30мсек. если поставить 100мсек то тогда как то долговато будет кликаться.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 16.8.2018, 13:15
Сообщение #10


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



тут вопрос целесообразности. Вы получаете большую нагрузку на камень, если не мешает, то какая разница. Так же от большого количества кликов в секунду приложение может начать лагать до полного зависания, если подобных проблем нет, то опять же какая разница? Тем не менее будет ли реальная разница в результате, если кликов будет не 33 в секунду, а 10? Я обычно ставлю вейты в подобных циклах 50-200 мс.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.8.2018, 13:32
Сообщение #11


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
left 100 100
if 100 100 255  // нет смысла проверять, т. к. приложение не успеет среагировать клик
   // какие-то действия
end_if

Т. е. нужна пауза после клика.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 14:11
Сообщение #12


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



while_not 350,125 1340143
left 350,125
end_while
while_not 350,195 1340143
left 350,195
end_while
while_not 350,265 1340143
left 350,265
end_while
while_not 350,325 1340143
left 350,325
end_while
while_not 350,395 1340143
left 350,395
end_while
while_not 350,455 1340143
left 350,455
end_while
while_not 350,525 1340143
left 350,525
end_while
while_not 350,590 1340143
left 350,590
end_while
while_not 350,660
left 350,660
end_while

Написал как говорили.... кликает по первой координате и все, дальше координаты не кликает


Т.е. все время клацает в первую координату.
Просто ньюанс там например оранжевая кнопка, если она оранжевая то ее надо нажать 1 раз. Когда кнопка нажалась она поменяла цвет на белый. Я так понял что алгоритм видит что кнопка не оранжевого цвета, ждет когда она снова станет оранжевой и потом клацает, при этом почему то не переходит на остальные кнопки....
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 16.8.2018, 14:55
Сообщение #13


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Никто не говорил, что там куча кнопок =) В таком случае лучше сделать наоброт.
Код
if x1 y1 цвет_кнопки1
    left x1 y1
    wait 100
end
if x2 y2 цвет_кнопки2
    left x2 y2
    wait 100
end


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 16.8.2018, 15:04
Сообщение #14


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



Цитата(DarkMaster @ 16.8.2018, 14:55) *

Никто не говорил, что там куча кнопок =) В таком случае лучше сделать наоброт.
Код
if x1 y1 цвет_кнопки1
    left x1 y1
    wait 100
end
if x2 y2 цвет_кнопки2
    left x2 y2
    wait 100
end



а если на данный момент цвет кнопки не тот что надо... оно будет ждать пока цвет кнопки станет тот что надо? или просто дальше по списку будет кликать? и получится:

left x1 y1
left x2 y2
left x3 y3
?????????????
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 16.8.2018, 21:03
Сообщение #15


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



подставьте цвет по которому нужно кликать


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Fors1k
сообщение 17.8.2018, 0:50
Сообщение #16


*****

Journeyman
Сообщений: 497
Регистрация: 19.12.2017
Группа: Пользователи
Наличность: 2420
Пользователь №: 18.746



Цитата(Alessandrinho @ 16.8.2018, 11:13) *

Вопрос такой после каждого клика левой в заданые координаты нужно проверить цвет, если цвет 1644825(цифра цвета взята с uopilot), то ждем, если цвет будет 1340143(цифра цвета взята с uopilot) то кликаем дальше.

left 350,125
left 350,195
left 350,265
left 350,325
left 350,395
left 350,455
left 350,525
left 350,590
left 350,660


Если я правильно понял, задача такая:
1. Нужно делать клики в окно
2. Если вылезла заставка и закрыла собой окно, куда кликать, то нужно остановиться.
3. Дождаться её ухода.
4. Продолжить кликать.

А если сделать так (мне кажется поменьше строк будет и условий).
Ваш скрипт не трогаем, добавляем второй, и запускаем оба.

Скрипт 1 :

Код
left 350,125
left 350,195
left 350,265
left 350,325
left 350,395
left 350,455
left 350,525
left 350,590
left 350,660


Скрипт 2 :

Код
if 350,125 1644825 //  скрипт 2 увидел мешающую заставку
pause_script allex   //  остановил скрипт который кликает
else                       //  увидел, что заставка ушла, можно продолжить кликать
resume_script all    //  возобновляем скрипт, который кликает


--------------------
Для связиИзображение
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 17.8.2018, 1:31
Сообщение #17


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Alessandrinho, опишите нормально что нужно сделать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Alessandrinho
сообщение 17.8.2018, 8:47
Сообщение #18


**

Neophyte
Сообщений: 36
Регистрация: 4.6.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 18.967
Возраст: 36



1. Нужно делать клики в окно
2. Если вылезла заставка и закрыла собой окно, куда кликать, то нужно остановиться.
3. Дождаться её ухода.
4. Продолжить кликать.
Все верно, так и нужно.

Вот весь мой алгоритм полность
left 10,173
left 50,250
left 90,370
left 120,385
left 311,187
left 347,135
left 380,99
left 420,135
left 180,587
left 257,365
left 350,125 // все клики что ниже нужно проверить не выскочила ли заставка
left 350,195
left 350,265
left 350,325
left 350,395
left 350,455
left 350,525
left 350,590
left 350,660

куда и как вставить проверку, которую тут предложили, у меня просто идет все одним куском:
if 350,125 1644825 // скрипт 2 увидел мешающую заставку
pause_script allex // остановил скрипт который кликает
else // увидел, что заставка ушла, можно продолжить кликать
resume_script all // возобновляем скрипт, который кликает
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Fors1k
сообщение 17.8.2018, 10:34
Сообщение #19


*****

Journeyman
Сообщений: 497
Регистрация: 19.12.2017
Группа: Пользователи
Наличность: 2420
Пользователь №: 18.746



Цитата(Alessandrinho @ 17.8.2018, 8:47) *

Цитата
1. Нужно делать клики в окно
2. Если вылезла заставка и закрыла собой окно, куда кликать, то нужно остановиться.
3. Дождаться её ухода.
4. Продолжить кликать.

Все верно, так и нужно.

куда и как вставить проверку, которую тут предложили, у меня просто идет все одним куском:


Смотри скрин. Откроется окно для запуска второго скрипта.


Эскизы прикрепленных изображений
Прикрепленное изображение

--------------------
Для связиИзображение
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 17.8.2018, 11:19
Сообщение #20


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Про 2 скрипта лучше сразу забыть, это тут не нужно.
Используйте findimage для поиска заставки. http://uopilot.tati.pro/index.php?title=Findimage Если заставка всегда в одном и том же месте появляется, то можно и цвет проверять, вместо findimage.
Код
left 420,135
left 180,587
left 257,365
left 350,125 // все клики что ниже нужно проверить не выскочила ли заставка
gosub find   // переход в подпрограмму поиска заставки
left 350,195
gosub find
left 350,265
end_script

:find
    set #a 1
    while #a > 0      // пока картинка найдена или вместо findimage цвет тут проверять
        set #a findimage(0 0 1920 1080 (C:\image.bmp) %arr)    // поиска изображения заставки
        wait 10
    end_while
return
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

3 страниц V  1 2 3 >
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 18:48
Designed by Nickostyle