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

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

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

> Без описания
AdryV
Отправлено: 19 Мая, 2016 - 15:24:55
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




Здравствуйте, подскажите как сделать что бы таймер времени(зедержка) кнопки 1 и кнопки 2 не мешали друг другу.
хотелось бы :
на кнопку 1 поставил таймер 5000 и 100
на кнопку 2 поставить таймер 1000 и 50
тоисть что бы кнопка 2 чаще нажималась а кнопка 1 реже
пробовал прикручивать gettime не разобрался (заработали две кнопки но вторая вызывалась только после нажатия первой)
а с CREATE_TIMER вообще не вьехал

Спойлер (Отобразить)

(Отредактировано автором: 19 Мая, 2016 - 15:29:58)

 
 Top
Kibor
Отправлено: 19 Мая, 2016 - 16:12:14
Post Id



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


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




CODE:
int t0=0;//задержка до 1
int t1=0;//задержка после 1
int t2=0;//задержка до 2
int t3=0;//задержка после 2
t0=formatsn(getcontrol(EDIT_0));
t1=formatsn(getcontrol(EDIT_1));
t2=formatsn(getcontrol(EDIT_2));
t3=formatsn(getcontrol(EDIT_3));

if (getcontrol(CHECK_0)==1) enabletimer(0);
if (getcontrol(CHECK_1)==1) enabletimer(1);


loop()sleep(5);

function pause1(int tt)
{
for(int t=gettime()+tt; t>gettime(); sleep(10)){}
}

function pause2(int tt)
{
for(int t=gettime()+tt; t>gettime(); sleep(10)){}
}


CREATE_TIMER(0, 50)//Номер таймера, выполнение таймера через мсек.
{
pause1(t0);
key("1");
pause1(t1);
}


CREATE_TIMER(1, 50)//Номер таймера, выполнение таймера через мсек.
{
pause2(t2);
key("2");
pause2(t3);
}
 
 Top
AdryV
Отправлено: 19 Мая, 2016 - 16:31:25
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




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

попрошу пока что не закрывать тему может еще появятся вопросы Подмигивание

(Отредактировано автором: 19 Мая, 2016 - 16:39:27)

 
 Top
AdryV
Отправлено: 20 Мая, 2016 - 15:27:17
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




подскажите пожалуйста,
ниже код
есть две проблемки:
1. после всех настроек в диалоге нажимаю запуск все вроде нормально, пока не нашло нужное изображение ничего не нажимается, после того как нашло нужное изображение, убило моба, полоска исчезла еще около 5сек продолжает нажимать кнопки

2. после установки галки на кнопке "f" все таймеры начинают тормозить, тоисть срабатывают только после "f"

и подскажите как реализовать удержание кнопки, тоисть нажать ее и держать 2 секунды и потом отпустить. я так понимаю что нужно через gettime? так как пауза и слип не подходят.
пробовал через keydown("кнопка"Подмигивание; даже в блокноте не работает

тут весь код

(Отредактировано автором: 20 Мая, 2016 - 15:39:55)

 
 Top
Kibor
Отправлено: 20 Мая, 2016 - 16:14:08
Post Id



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


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




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

надо при запуске так
CODE:
int k0=getcontrol(CHECK_0);


проверять
CODE:
if (k0==1) ......


во вторых надо ставить паузу в замкнутом цикле
CODE:
vozv: sleep(50);
 
 Top
AdryV
Отправлено: 20 Мая, 2016 - 17:04:45
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




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

также на таймер кнопки "f" это никак не повлияло, как будто она все таймеры складывает и потом аж срабатывает и все остальные после нее

(Отредактировано автором: 20 Мая, 2016 - 17:08:59)

 
 Top
Kibor
Отправлено: 20 Мая, 2016 - 17:58:01
Post Id



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


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




ну во первых что такое
CODE:
key("tab");

??

подразумевается нажать tab??

используйте правильный синтаксис.. лучше цифровой код..(для просмотра ссылки Вам необходимо авторизоваться)
CODE:
key(9);


по тормозу не знаю..
(Добавление)
аа..

проблема в том, что при включение таймера enabletimer(..);
время таймера обнуляется.

таймер включать 1 раз, в таймере использовать флаги можно..
(Добавление)
CODE:
int f[11];
for(int n=0; n<11; n++)f[n]=0;



CODE:
if (findimage_(#Image_0_KIB[0][0], 100, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, #sum_KIB, #x_KIB, #y_KIB)==1)//ищем полоску хп мобов
{
/////////////////////////////////////////////////////нашли включаем таймеры кнопок
if (k0==1) f[0]=1;

if (k1==1) f[1]=1;

if (k2==1) f[2]=1;

..............
.............
}
else // не нашли полоску отключаем таймеры
{
if (k0==1) f[0]=0;

if (k1==1) f[1]=0;

if (k2==1) f[2]=0 ;
..........
}

CREATE_TIMER(0, 50)
{
if (f[0]==1)
{
pause0(t0);
key("1");
pause0(t1);
}
}

CREATE_TIMER(1, 50)
{
if (f[1]==1)
{
pause1(t2);
key("2");
pause1(t3);
}
}

CREATE_TIMER(2, 50)
{
if (f[2]==1)
{
pause2(t4);
key("3");
pause2(t5);
}
}

 
 Top
AdryV
Отправлено: 20 Мая, 2016 - 18:16:44
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




 Kibor пишет:
подразумевается нажать tab??

спасибо исправил.

ради интиреса взял полностью убрал кнопку "f" последней стала кнопка "\" и опять из-за последней кнопки та же картина что и с "f" как будто складывает все таймера и только после нажатия кнопки "\" все остальные срабатывают, без галки все работает по таймеру
если не считать первый нюанс
 
 Top
Kibor
Отправлено: 20 Мая, 2016 - 18:19:48
Post Id



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


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




я код привел выше и сказал почему оно так..

 Цитата:
проблема в том, что при включение таймера enabletimer(..);
время таймера обнуляется.
 
 Top
AdryV
Отправлено: 20 Мая, 2016 - 19:26:29
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




 Kibor пишет:
int f[11];
for(int n=0; n<11; n++)f[n]=0;

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


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




Powered by