Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Описание: Цикл в котором меняются координаты
werter85
Отправлено: 21 Ноября, 2014 - 00:32:51
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 9
Дата рег-ции: Нояб. 2014  
Репутация: 0




Помогите создать не простой цикл.

Есть цикл в котором нужно в определённом порядке по определённым координатам делать клики. Для этого я выбрал точку отсчёта Image_1 и уже относительно неё при клике корректирую координаты.

Как сделать так, чтобы при первом проходе, клик проходил по первым координатам, второй по вторым, третий по третьим? и т.д. И мне кажется что лучше всего этот цикл сделать в функции.

Прокатит ли следующий вариант?

int z=0;
function click()
{
z++
if (z=1);
{
findimage(-1, #Image_1[0][0], 0, #X[0], #Y[0], 0, 0, 1920, 979, -1);
mouse(LEFT, X[0]+20, Y[0]+80);
}
if (z=2);
{
findimage(-1, #Image_1[0][0], 0, #X[0], #Y[0], 0, 0, 1920, 979, -1);
mouse(LEFT, X[0]+20, Y[0]+50);
}
if (z=3);
{
findimage(-1, #Image_1[0][0], 0, #X[0], #Y[0], 0, 0, 1920, 979, -1);
mouse(LEFT, X[0]+50, Y[0]+60);
}
}
 
 Top
Kibor
Отправлено: 21 Ноября, 2014 - 01:08:01
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 Цитата:
int xx[3], yy[3];
xx[0]=20; yy[0]=80;
xx[1]=20; yy[1]=50;
xx[2]=50; yy[2]=60;


int x, y;

for (int h=0; h<3; h++)
{
if (findimage(1, #Image_1[0][0], 0, #x, #y, 0, 0, 1920, 979, -1)==1) mouse(LEFT, x+xx[h], y+yy[h]);
}


 
 Top
werter85
Отправлено: 21 Ноября, 2014 - 18:44:06
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 9
Дата рег-ции: Нояб. 2014  
Репутация: 0




Спасибо! Всё работает, но немного не так как я хотел. Наверное плохо объясняю )
В данном коде все 3 клика делаются подряд, пока h будет меньше 3. И только потом происходит выполнение остального кода.
Мне нужно сделать чтобы данный код выполнился 1 раз и продолжил работу, при повторном попадании на данный участок кода, кликало по вторым координатам и т.д.

Пока писал решил задачу:

int h=0;
int x, y;
int xx[3], yy[3];
xx[0]=20; yy[0]=80;
xx[1]=20; yy[1]=50;
xx[2]=50; yy[2]=60;


if ( h<3)
{
if (findimage(1, #Image_1[0][0], 0, #x, #y, 0, 0, 1920, 979, -1)==1) mouse(LEFT, x+xx[h], y+yy[h]);
h++;
}


Теперь пока код работает идёт перебор координат от 0 до 2. Если код остановить, то при новом запуске перебор начнётся с начала.
 
 Top
Kibor
Отправлено: 21 Ноября, 2014 - 20:46:48
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 werter85 пишет:
int h=0;
int x, y;
int xx[3], yy[3];
xx[0]=20; yy[0]=80;
xx[1]=20; yy[1]=50;
xx[2]=50; yy[2]=60;


if ( h<3)
{
if (findimage(1, #Image_1[0][0], 0, #x, #y, 0, 0, 1920, 979, -1)==1) mouse(LEFT, x+xx[h], y+yy[h]);
h++;
}


так можно
CODE:
int h=0;
int x, y;
int xx[3], yy[3];
xx[0]=20; yy[0]=80;
xx[1]=20; yy[1]=50;
xx[2]=50; yy[2]=60;


if (findimage(1, #Image_1[0][0], 0, #x, #y, 0, 0, 1920, 979, -1)==1) mouse(LEFT, x+xx[h], y+yy[h]);
h++;
if ( h==3)h=0;

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 2 (гостей: 2, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by