61. VladosS - 11 Марта, 2015 - 13:38:23 - перейти к сообщению
Хмм, при запуске "Кибор" просто не отвечает, вроде все верно, и окошка о неправильном окне не выходит
62. dembel312 - 12 Марта, 2015 - 00:11:18 - перейти к сообщению
yo1 пишет:
А так?
dembel312 пишет:
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
{
cikl1: key(F3);
key(mob[k_mob]);//Нажать на макрос выбора моба по нику
k_mob++;//Увеличить номер макроса в котором /target ник-моба находится
if (k_mob==3)k_mob=0;//Если это третий номер макроса ника моба - перейти к первому
pause(rand(1000, 2000)); //Пауза которую выдержать (раном от секунды до двух)
}
{
cikl1: key(F3);
key(mob[k_mob]);//Нажать на макрос выбора моба по нику
k_mob++;//Увеличить номер макроса в котором /target ник-моба находится
if (k_mob==3)k_mob=0;//Если это третий номер макроса ника моба - перейти к первому
pause(rand(1000, 2000)); //Пауза которую выдержать (раном от секунды до двух)
}
тоже не работает. Бот не понимает, что моб мертв. Нужно наверное весь скрипт переделать...
(Добавление)
VladosS пишет:
Хмм, при запуске "Кибор" просто не отвечает, вроде все верно, и окошка о неправильном окне не выходит
У меня так дома на Win7 происходит. Причем на работе на ноуте WinXP, все прекрасно работает.
63. yo1 - 12 Марта, 2015 - 00:24:24 - перейти к сообщению
dembel312 пишет:
тоже не работает. Бот не понимает, что моб мертв.
При убийстве одного моба он начинает искать следующего?
64. dembel312 - 12 Марта, 2015 - 02:28:18 - перейти к сообщению
yo1 пишет:
dembel312 пишет:
тоже не работает. Бот не понимает, что моб мертв.
При убийстве одного моба он начинает искать следующего?
После убийства моба он стоит и тупит, не свипает. Потом нажимается кнопка "некст таргет" и бот бьет следующего моба.
(Добавление)
В общем начал писать новый скрипт. Не могу сделать так, чтобы бот понимал, что моб мертв. Полоска ХП динамическая, с картинками не получится ее искать.
65. yo1 - 12 Марта, 2015 - 04:06:07 - перейти к сообщению
dembel312 пишет:
После убийства моба он стоит и тупит, не свипает.
В чате пишется что? Может спойл не прошел?
Попробуйте проверить так:
CODE:
cikl: malo_xp();//Проверить или хп мало и банки пить
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
{
cikl1:;
key(F3); // скилл sweep
pause(rand(700, 900));
key(F4); //Ближенего моба в таргет взять
pause(rand(500, 800)); //Пауза которую выдержать (раном от пол секунды до сек)
}
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
{
cikl1:;
key(F3); // скилл sweep
pause(rand(700, 900));
key(F4); //Ближенего моба в таргет взять
pause(rand(500, 800)); //Пауза которую выдержать (раном от пол секунды до сек)
}
66. dembel312 - 12 Марта, 2015 - 05:12:06 - перейти к сообщению
Пока вот что получается. Хотел бы попросить проверить правильность моих действий. Логическая цепочка такая: 1.Проверка своего ХП; 2.Берем ближнего моба в таргет; 3.Если моб в таргете, то атакуем моба, ищем на экране картинку с пустым ХП моба, если не найдена, то продолжаем бить; если найдена, то нажимаем Esc и идем на пункт №1; 4.Если моб не в таргете, то ищем его с помощью трех макросов. Если моб в таргете то идем на пункт №3.
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
(Добавление)
Или не искать картинку пустого ХП, а сравнивать цвет пикселя начала полного ХП моба с цветом пикселя пустого ХП моба?
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
Цитата:
cikl:
malo_xp();//Проверить или хп мало и банки пить
key(F4); //Ближенего моба в таргет взять
pause(rand(500, 1000)); //Пауза которую выдержать (раном от пол секунды до сек)
if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
goto cikl1;
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
goto cikl2;
cikl1:
{
key(F1); // атака моба
pause(rand(500, 1500));
key(F2); // атака моба скилом 1
pause(rand(5000, 6000));
if findimage(1, #NoHP[14][14], -1, #P_X[1], #P_Y[1], x, y, xe, ye, -1);
sleep(50);
{
key(ESCAPE);//Нажать Es (таргет снять)
goto cikl;
}
else goto cikl1;//если не найдена картинка то идем бить дальше этого же моба
}
cikl2:
{
key(mob[k_mob]);//Нажать на макрос выбора моба по нику
k_mob++;//Увеличить номер макроса в котором /target ник-моба находится
if (k_mob==3)k_mob=0;//Если это третий номер макроса ника моба - перейти к первому
pause(rand(1000, 2000)); //Пауза которую выдержать (раном от секунды до двух)
if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
goto cikl1;
}
malo_xp();//Проверить или хп мало и банки пить
key(F4); //Ближенего моба в таргет взять
pause(rand(500, 1000)); //Пауза которую выдержать (раном от пол секунды до сек)
if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
goto cikl1;
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
goto cikl2;
cikl1:
{
key(F1); // атака моба
pause(rand(500, 1500));
key(F2); // атака моба скилом 1
pause(rand(5000, 6000));
if findimage(1, #NoHP[14][14], -1, #P_X[1], #P_Y[1], x, y, xe, ye, -1);
sleep(50);
{
key(ESCAPE);//Нажать Es (таргет снять)
goto cikl;
}
else goto cikl1;//если не найдена картинка то идем бить дальше этого же моба
}
cikl2:
{
key(mob[k_mob]);//Нажать на макрос выбора моба по нику
k_mob++;//Увеличить номер макроса в котором /target ник-моба находится
if (k_mob==3)k_mob=0;//Если это третий номер макроса ника моба - перейти к первому
pause(rand(1000, 2000)); //Пауза которую выдержать (раном от секунды до двух)
if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
goto cikl1;
}
(Добавление)
Или не искать картинку пустого ХП, а сравнивать цвет пикселя начала полного ХП моба с цветом пикселя пустого ХП моба?
67. yo1 - 12 Марта, 2015 - 05:36:06 - перейти к сообщению
То же самое, только стало запутаннее.
Вы же сами кидали отличный вариант. Убрать в нем лишние циклы, привести в более стройный вид и будет то, чего вы добиваетесь.
Вы же сами кидали отличный вариант. Убрать в нем лишние циклы, привести в более стройный вид и будет то, чего вы добиваетесь.
68. dembel312 - 12 Марта, 2015 - 05:58:36 - перейти к сообщению
yo1 пишет:
То же самое, только стало запутаннее.
Вы же сами кидали отличный вариант. Убрать в нем лишние циклы, привести в более стройный вид и будет то, чего вы добиваетесь.
Вы же сами кидали отличный вариант. Убрать в нем лишние циклы, привести в более стройный вид и будет то, чего вы добиваетесь.
да со спойлом решил пока повременить. Строчка кода
Цитата:
if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
как я понимаю дословно говорит: Если полученный цвет пикселя по координатам X,Y не равен цвету пикселя из col_pix...И еще вопрос есть ли в Киборе оператор "иначе"?
69. yo1 - 12 Марта, 2015 - 06:05:46 - перейти к сообщению
dembel312 пишет:
И еще вопрос есть ли в Киборе оператор "иначе"?
else
Что именно вы хотите сделать с вполне работоспособным кодом? То, что вы говорили ранее?
dembel312 пишет:
Пока вот что получается. Хотел бы попросить проверить правильность моих действий. Логическая цепочка такая: 1.Проверка своего ХП; 2.Берем ближнего моба в таргет; 3.Если моб в таргете, то атакуем моба, ищем на экране картинку с пустым ХП моба, если не найдена, то продолжаем бить; если найдена, то нажимаем Esc и идем на пункт №1; 4.Если моб не в таргете, то ищем его с помощью трех макросов. Если моб в таргете то идем на пункт №3.
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
Так это всё есть уже
70. dembel312 - 12 Марта, 2015 - 06:22:46 - перейти к сообщению
yo1 пишет:
dembel312 пишет:
И еще вопрос есть ли в Киборе оператор "иначе"?
else
Что именно вы хотите сделать с вполне работоспособным кодом? То, что вы говорили ранее?
dembel312 пишет:
Пока вот что получается. Хотел бы попросить проверить правильность моих действий. Логическая цепочка такая: 1.Проверка своего ХП; 2.Берем ближнего моба в таргет; 3.Если моб в таргете, то атакуем моба, ищем на экране картинку с пустым ХП моба, если не найдена, то продолжаем бить; если найдена, то нажимаем Esc и идем на пункт №1; 4.Если моб не в таргете, то ищем его с помощью трех макросов. Если моб в таргете то идем на пункт №3.
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
На мой взгляд мутить с таймерами атаки мобов - это тупиковый вариант. Нужно 100% условие, чтобы бот видел жив моб или нет.
Так это всё есть уже
все, разобрался смотреть мне внимательнее нужно было.
Цитата:
if (getcolor(X_pix, Y_pix)!=col_pix)
работает верно.