Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Условие scanpixel

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

11. Wolf_Quest - 31 Марта, 2016 - 13:37:05 - перейти к сообщению
 Kibor пишет:
а если надо что б не перебивал можно отключать таймеры если один сработал и включать после конца отработки..

Это как?)

И такое будет работать? Если правильно написал для визуального редактора ^_^
Code (Отобразить)


С добавлением в код визуального в начало int и loadimage картинки)
12. Kibor - 31 Марта, 2016 - 13:44:16 - перейти к сообщению
будет..
но надо использовать свои переменные в каждом таймере которые в нем могут меняться..

CODE:
int x1, y1, x2, y2, x3, y3;
enabletimer(0);
enabletimer(1);
enabletimer(2);

loop()
{
s:;
////////
/////////
b:;
sleep(20);
}

a:;
disabletimer(0);
disabletimer(1);
disabletimer(2);
//////

//////
enabletimer(0);
enabletimer(1);
enabletimer(2);
goto s;

CREATE_TIMER(0, 200)
{
if (findimage(1, #ï[0][0], 0, #x1, #y1, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)goto a;
goto b;
}

CREATE_TIMER(1, 200)
{
if (findimage(1, #ï[0][0], 0, #x2, #y2, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)goto a;
goto b;
}

CREATE_TIMER(2, 200)
{
if (findimage(1, #ï[0][0], 0, #x3, #y3, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)goto a;
goto b;
}
13. Wolf_Quest - 31 Марта, 2016 - 13:44:58 - перейти к сообщению
Вот что нужно от таймеров опишу.

Таймер 1. Если нашел то переходим в начало цикла виуалки, если нет юзаем букву А
Таймер 2. Если нашел то переходим в начало цикла виуалки, если нет юзаем букву B
Таймер 3. Если нашел то переходим в начало цикла виуалки, если нет юзаем букву C

Надо что бы они независимо работали.... Оба 3 таймера, goto они все свои будут ве время находить.

А можно описать где что в коде выше, пожалуйста, а то я не пойму)
14. Kibor - 31 Марта, 2016 - 13:47:45 - перейти к сообщению
что значит юзаем букву..
они и работают независимо.. до такой степени что могут перебивать друг друга при совпадение. но потом дорабатывать код прерванный
15. Wolf_Quest - 31 Марта, 2016 - 13:52:55 - перейти к сообщению
 Kibor пишет:
что значит юзаем букву..


Ок:
Таймер 1. нашли что у тебя мало хп, юзаем колбу на хп, если хп достаточно идем дальше по циклу.
Таймер 2. нашли что мало манны, юзаем колбу на манну, если манны достаточно идем дальше по циклу.
Таймер 3. нашли что мало энергии, юзаем колбу на энергию, если энергии достаточно идем дальше по циклу.

Таймер 1н он все время будет выполнять, так как хп либо есть либо нету, и варианты действий и на есть и на нету присутствуют, и по идее до таймера 2 он просто не дойдет, так как он либо пойдет дальше по циклу, либо юзнет колбу а после колбы так же дальше по циклу.

Щас картинку выложу в граф редакторе, что бы понятнее было)



(Добавление)
Вот:

(Добавление)
Просто сюда нужно колбы таймером прикрутить Улыбка выше скрин как хочу...

(Добавление)
И еще моно как то паузу пандомную поставить?
К примеру от 1 минуты до 5 ти, что бы рандомно выбиралось из этого диапазона)
16. Kibor - 31 Марта, 2016 - 14:49:26 - перейти к сообщению
 Wolf_Quest пишет:
Таймер 1. нашли что у тебя мало хп, юзаем колбу на хп, если хп достаточно идем дальше по циклу.
Таймер 2. нашли что мало манны, юзаем колбу на манну, если манны достаточно идем дальше по циклу.
Таймер 3. нашли что мало энергии, юзаем колбу на энергию, если энергии достаточно идем дальше по циклу.


а че не так
CODE:
CREATE_TIMER(0, 200)
{
if (findimage(1, #хп[0][0], 0, #x, #y, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)mouse(LEFT, );//нажать хп
if (findimage(1, #мана[0][0], 0, #x, #y, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)mouse(LEFT, );//нажать мана
if (findimage(1, #энергия[0][0], 0, #x, #y, 0, 0, w_KIB.widthclient, w_KIB.heightclient, w_KIB)==1)mouse(LEFT, );//нажать энергия
}
17. Wolf_Quest - 31 Марта, 2016 - 14:56:20 - перейти к сообщению
 Kibor пишет:
а че не так



Мне через скан пиксель нужно, так как ищу хп по цветовой полоске, по индикитору....
И колбу я привел как пример, там нужно тык колбы, и подтвердить кнопкой да, это я сделаю через визуальным как в скрине выше.... Просто нужно что бы таймер искал как надо и работал, в скрине выше написал как... Возможно ли сделать так?
18. Kibor - 31 Марта, 2016 - 15:04:05 - перейти к сообщению
можно все.
19. Wolf_Quest - 31 Марта, 2016 - 15:08:42 - перейти к сообщению
 Kibor пишет:
можно все.


А как?) что бы он не работал по 0 вому таймеру все время, так как по виду будет все время после таймера 0 переходить в метку A или B не доходя до таймера 1.....

Вот так мжно тоже, но это сложнее реализовать в визуальном редакторе....
Code (Отобразить)

Но тут тоже возникает вопрос в таймерах....

Так как в визуальном на сколько я понимаю идет 1н цикл все время, и таймер 0 будет его направлять в метку A или метку B не доходя до таймера 1......
(Добавление)
То есть как то так..... Если я правильно понимаю.....

Он будет крутится все время по таймеру 1 как на этой картинке если я правильно понимаю....
А как сделать что бы все 3 таймера работали?)
20. Kibor - 31 Марта, 2016 - 15:56:48 - перейти к сообщению
 Wolf_Quest пишет:
его направлять в метку A или метку B не доходя до таймера 1......

что значит не доходя.
таймер на то и таймер что б дошло с любой строки.

а зачем вообще идти с таймера на метку а?????
если нет пикселя...

CODE:
CREATE_TIMER(0, 500)
{
if (scanpixel(100, 120, 2397, 5, 5, 5, 5, 5, 5, w)==1)
{
{
if (findimage(1, #Áàíêà_ÕÏ[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
if (findimage(1, #Îê[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
}
}
}

CREATE_TIMER(1, 500)
{
if (scanpixel(100, 120, 2397, 5, 5, 5, 5, 5, 5, w)==1)
{
{
if (findimage(1, #Áàíêà_Ìàííû[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
if (findimage(1, #Îê[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
}
}
}

CREATE_TIMER(2, 500)
{
if (scanpixel(100, 120, 2397, 5, 5, 5, 5, 5, 5, w)==1)
{
{
if (findimage(1, #Áàíêà_Ýíåðãèè[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
if (findimage(1, #Îê[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
pause (100);
}
}
}
}


так может? только PosX, PosY для таймеров свои делать и разные..

Powered by ExBB FM 1.0 Final