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

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

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

> Без описания
b4k88
Отправлено: 13 Сентября, 2017 - 14:52:26
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 51
Дата рег-ции: Авг. 2017  
Откуда: Челябинск
Репутация: 0




Как сделать чтобы функция выполнялась определенное время? А то мне надо сделать чтобы скрипт искал картинки и клацал на них, если найдет, потом искал другие и проклацивал их, если найдет, потом опять проверял первый вариант, и потом уже переключался на следующую вкладку и проделывал то же самое, а потом еще на одну вкладку. (квесты короче запускать и собирать надо). Через визуальный редактор кода смог организовать максимум на две вкладки, на третью ваще хз как это сделать. нашел один выход - сделать зацикленную функцию на 1 вкладку, а потом по истечении секунд 30 чтобы переключалось на следующую и выполнялась та же функция так же секунд 30, и потом еще на одну так же секунд 30. жду экспертного мнения, надеюсь это не сильно сложно осуществить)) Спс заранее Подмигивание
 
 Top
Dantes3000
Отправлено: 13 Сентября, 2017 - 18:35:11
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1463
Дата рег-ции: Июнь 2016  
Репутация: 58




не очень понятно ты обьяснил. Напиши каждое действие по пунктам
 
 Top
b4k88
Отправлено: 14 Сентября, 2017 - 00:28:18
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 51
Дата рег-ции: Авг. 2017  
Откуда: Челябинск
Репутация: 0




ок, сокращу до смысла). имеется зацикленная функция. хочу чтобы она выполнялась только определенное время.
 
 Top
Dantes3000
Отправлено: 14 Сентября, 2017 - 00:55:08
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1463
Дата рег-ции: Июнь 2016  
Репутация: 58




CODE:
fun(10000); //будет выполняться 10 сек



function fun(int t)
{
int k=gettime();

s:if(gettime()-k>t) return;
else
{
//тело функции
}
goto s;
}

(Добавление)
еще можно как-то через for
CODE:
Пример как ожидать в цикле появление изображения на экране 5 секунд. Если изображения не появилось - выйти из цикла.

CODE:
for (int t=gettime(); gettime()-t<5000; sleep(20))
{
if (findimage(1, #Image[0][0], 0, #PosX, #PosY, 0, 0, 1366, 768, -1)==1)
{
messagebox ("нашлося...");
goto q;
}
}
messagebox ("не...");
q:;
 
 Top
b4k88
Отправлено: 14 Сентября, 2017 - 17:08:37
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 51
Дата рег-ции: Авг. 2017  
Откуда: Челябинск
Репутация: 0




Из разряда "что-то пошло не так" Растерялся
CODE:
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[59][17];
int Image_1_KIB[52][14];

mouse(LEFT, 509, 565);
key('Q');
pause(2000);
mouse(LEFT, 518, 700);
pause(1000);
key('Z');
quest(30000);
mouse(LEFT, 521, 329);
quest(30000);
mouse(LEFT, 715, 325);
quest(30000);
mouse(LEFT, 807, 262);
pause(1000);


function quest(int t)
{
int k=gettime();

s:if(gettime()-k>t) return;
else
{
start_();

m_KIB2: if (findimage_(#Image_0_KIB[0][0], 1000, 1000, 0, 1, 5, 5, 0, -1, 0, 75, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB1;
else goto m_KIB3;
m_KIB1: sleep(1000); goto m_KIB2;
m_KIB3: if (findimage_(#Image_1_KIB[0][0], 1000, 1000, 0, 1, 5, 5, 0, -1, 0, 75, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)>0) goto m_KIB4;
else goto m_KIB5;
m_KIB5: sleep(1000); goto m_KIB2;
m_KIB4: sleep(1000);

}
goto s;
}




function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}


function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}




function load_image_()
{
loadimage (#Image_0_KIB[0][0], "D:\Kibor\vikings\Êâåñòû\Çàáðàòü.bmp");
loadimage (#Image_1_KIB[0][0], "D:\Kibor\vikings\Êâåñòû\Íà÷àòü.bmp");
}

(Добавление)
Одиночная функция quest работает нормально, но когда добавляю все эти переходы, доходит до первой quest(30000); и дальше не двигается
(Добавление)
хах...а теперь начало выдавать ошибку в loadimage...
(Добавление)
в общем, когда без функции и дополнительных действий (тупо тело quest), то оно работает, в остальных случаях нет
 
 Top
Dantes3000
Отправлено: 14 Сентября, 2017 - 19:31:37
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1463
Дата рег-ции: Июнь 2016  
Репутация: 58




Я функцию тебе не так написал, как ты ее использовал.
(Добавление)
 
 Top
b4k88
Отправлено: 14 Сентября, 2017 - 20:45:37
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 51
Дата рег-ции: Авг. 2017  
Откуда: Челябинск
Репутация: 0




 Dantes3000 пишет:
Я функцию тебе не так написал, как ты ее использовал.
(Добавление)


сложно Радость эм, где-то я по-любому неправильно сделал(для просмотра ссылки Вам необходимо авторизоваться)
 
 Top
Dantes3000
Отправлено: 14 Сентября, 2017 - 22:20:47
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1463
Дата рег-ции: Июнь 2016  
Репутация: 58




в чем сложно сделать точно так же как я показал?
 
 Top
b4k88
Отправлено: 14 Сентября, 2017 - 22:34:12
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 51
Дата рег-ции: Авг. 2017  
Откуда: Челябинск
Репутация: 0




 Dantes3000 пишет:
в чем сложно сделать точно так же как я показал?

Ну, я еще не разобрался в киборе), да и там, где ты сделал вверх, вниз и тд, мне надо тело функции впихнуть да?)
Я там еще косяк свой нашел, в общем, щас покажу что должно выполняться 30сек, а потом переходить на следующее...я еще нубас, не ругайся)(для просмотра ссылки Вам необходимо авторизоваться) (Добавление)
И как ты свойство функции открыл? Радость

(Отредактировано автором: 14 Сентября, 2017 - 22:34:42)

 
 Top
Dantes3000
Отправлено: 14 Сентября, 2017 - 22:57:27
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1463
Дата рег-ции: Июнь 2016  
Репутация: 58




Давай ты почитаешь форум, справочку, посмотришь видео....а потом сюда еще раз придёшь? Не буду же я тебе всё-всё обьяснять
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


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




Powered by