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

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

 Страниц (13): В начало « 2 3 4 5 [6] 7 8 9 10 » В конец    

> Описание: Не могу понять как высчитывать координаты точек
Kibor
Отправлено: 12 Октября, 2013 - 00:38:19
Post Id



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


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




 Kote_UA пишет:
ну первый вопрос то понятно, а вот 2 и 3 интересуют

 Kote_UA пишет:
что значит ошибка: debug error, какой то там код ошибки, выкидует из кибора

Правила создания темы

Отправка сообщений мыши в неактивные и свернутые окна. Работа мыши в фоновом режиме
список функций в меню
Получение помощи непосредственно в программе Кибор
................
................
 
 Top
Kote_UA
Отправлено: 12 Октября, 2013 - 00:43:11
Post Id



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


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




 Kote_UA пишет:
[/quote]
Боюсь мне не хватит ума и телепатических способностей ответить.
ну первый вопрос то понятно, а вот 2 и 3 интересуют[/quote]


подскажите пожалуйста что не правильно в коде?
CODE:
function a
{int HPmoba[18][12];
loadimage (#HPmoba[0][0], "D:\L2\HPmoba.bmp");
win w=window ("Opera 12.16 (1860): avatar .: Lineage II :.", "OperaWindowClass", -1)
activate (w);
int hp[5];int hp[5];
findimage(5, #HPmoba[0][0], 0, #hp[0], #hp[0], 0, 0, 1366, 643, w);
mousedbl(LEFT,#hp[0], #hp[0]);}
goto (a);


скрипт должен найти картинку и нажать на неё, но в итоге меня выкидуют из кибора
 
 Top
Kibor
Отправлено: 12 Октября, 2013 - 01:08:32
Post Id



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


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




 Kote_UA пишет:
что не правильно в коде?
CODE:
function a
{int HPmoba[18][12];
loadimage (#HPmoba[0][0], "D:\L2\HPmoba.bmp");
win w=window ("Opera 12.16 (1860): avatar .: Lineage II :.", "OperaWindowClass", -1)
activate (w);
int hp[5];int hp[5];
findimage(5, #HPmoba[0][0], 0, #hp[0], #hp[0], 0, 0, 1366, 643, w);
mousedbl(LEFT,#hp[0], #hp[0]);}
goto (a);


С чего начать?
Синтаксис придуман с головы? Я понимаю конечно что справка не идеальна, но все же если ее прочитать то не было бы таких ошибок.

function a() - Функции. Скобки обязательны. Примера без скобок нет ни в одном учебном скрипте. Их тут тьма.

win w=window ("Opera 12.16 (1860): avatar .: Lineage II :.", "OperaWindowClass", -1);
activate (w);

Без ; получается строка:
win w=window ("Opera 12.16 (1860): avatar .: Lineage II :.", "OperaWindowClass", -1)activate (w);

mousedbl(LEFT,#hp[0], #hp[0]);
Что означает # в Кибор? - указатели на переменные
Что в параметрах mousedbl? Работа с мышью в "Кибор"

goto (a);
Куда направляет goto? На функцию? Где написано про скобки в goto? Это с какого языка?
Синтаксис Кибор как и C - логика и переходы в "кибор"

Всю инфу по нужной функции опять повторюсь легко получить - Получение помощи непосредственно в программе Кибор
Будет найдена как справка так же примеры реализации.
 
 Top
Barabachka
Отправлено: 12 Октября, 2013 - 01:37:49
Post Id



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


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




 Kibor пишет:
Получение указателя на окно на руоф блокируется.

Если так то можно получить указатель на рабочий стол
CODE:
win w=window ("Program Manager", "Progman", -1);

Это ведь не должно каким либо образом контролироваться защитой?
после делать клик в общем поле рабочего стола на определенных координатах активируя при этом окно л2. После чего делаем слип 1000 и вуаля даем команды окну по определенным координатам уже в приделах самого окна.
Так получитьсо управлять 3 окнами?
(Добавление)
Если все получитсо то как будут себя вести
CODE:
if (Load_Image()==-1){messagebox("Не найдены рисунки в C:\L2 online."); goto error;}
if (Pozicion_Image()==-1) goto error;//Расчет координат используемых объектов

или при активации нового окна координаты будут автоматически подгоняться?
 
 Top
Kibor
Отправлено: 12 Октября, 2013 - 01:57:28
Post Id



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


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




Можно так:

CODE:
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image1();//Узнать позиции рисунков на экране для обозначения координат окна 1 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image2();//Узнать позиции рисунков на экране для обозначения координат окна 2 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image3();//Узнать позиции рисунков на экране для обозначения координат окна 3 игры и необходимых элементов для работы бота

////////////////////////////////////

Для каждого окна своя Pozicion_Image в которой переменные:
poz1... в Pozicion_Image1();

poz2... в Pozicion_Image2();

poz3... в Pozicion_Image3();

Или можно так:
CODE:
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(1);//Узнать позиции рисунков на экране для обозначения координат окна 1 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(2);//Узнать позиции рисунков на экране для обозначения координат окна 2 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(3);//Узнать позиции рисунков на экране для обозначения координат окна 3 игры и необходимых элементов для работы бота

function Pozicion_Image(int a)
{
if (a==1)
{
poz1...
}
if (a==2)
{
poz2...
}
if (a==3)
{
poz3...
}
}


Можно и так:
Использовать не переменные разные для окна конкретного а масивы:
не
int poz1;
int poz2;
int poz2;
а
int poz[3];

CODE:
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(0);//Узнать позиции рисунков на экране для обозначения координат окна 1 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(1);//Узнать позиции рисунков на экране для обозначения координат окна 2 игры и необходимых элементов для работы бота
messagebox("сверните все окна с игрой кроме того расчет где проводим координат.");
sleep(1000);
Pozicion_Image(2);//Узнать позиции рисунков на экране для обозначения координат окна 3 игры и необходимых элементов для работы бота

function Pozicion_Image(int a)
{
poz[a]=,,,,.,,
}

(Добавление)
Для каждого окна нужны свои переменные.
Лучше всего как в примере 3.
(Добавление)
Заодно можно в Pozicion_Image узнавать координаты точки клика на окне для его активации. Только окна надо сразу расположить так что бы все окна имели открытую эту точку для клика.
Так примерно

Когда на экране будет 1 окно то по этому рисунку найдены будет только 1 координаты именно для этого окна где надо будет мышкой клик сделать для того что бы активировать его.
 
 Top
Barabachka
Отправлено: 12 Октября, 2013 - 02:46:13
Post Id



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


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




Чем больше я в это влажу тем больше вопросов возникает Не понял
Такое ощущение что мы разговариваем на разных языках, я как обычный игрок а Вы как програмист Подмигивание ))
Масивы для меня чтото пока не понятное) Вроде как все в общих чертах понятно, а вот написать это все хз как
Уважаемый Kibor если я вам в личку кину свой набросок вы сможите выделить чуть времени для правки и пояснений? а логику самих действий (зациклиную часть бота) я постараюсь сам сделать
(Добавление)
Пожалуй пойду посплю а завтра с новыми силами как начну тупить дальше Радость
 
 Top
Kote_UA
Отправлено: 12 Октября, 2013 - 03:56:27
Post Id



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


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




kibor извените что я плохо розбераюсь, все приходит с опытом) Понял я что создать скрипт пока не смогу, решил начат с начала, и потихоньку все розучивать.
Вот пробывл написат простейший клик по карте в косынке, не получилось, карту находит(вроде бы) но кликать не кликает, гляньте пожалуйста
CODE:
win w=window (-1, "Static", window ("Êîñûíêà", "Solitaire", -1));activate(w);
int 4bub[87][117];
loadimage (#4bub[0][0], "D:\L2\4bub.bmp");

int PosX_2{1],PosY_2[1];
st: if(findimage(1, #4bub[0][0], 0, #PosX_2[0], #PosY_2[0], 0, 0, 1366, 768 -1)<1)goto st;
mousedbl(LEFT,#PosX_2[0], #PosY_2[0], w);

(Отредактировано автором: 12 Октября, 2013 - 04:00:55)

 
 Top
Kibor
Отправлено: 12 Октября, 2013 - 04:21:54
Post Id



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


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




 Kote_UA пишет:
win w=window (-1, "Static", window ("Êîñûíêà", "Solitaire", -1));activate(w);
int 4bub[87][117];
loadimage (#4bub[0][0], "D:\L2\4bub.bmp");

int PosX_2{1],PosY_2[1];
st: if(findimage(1, #4bub[0][0], 0, #PosX_2[0], #PosY_2[0], 0, 0, 1366, 768 -1)<1)goto st;
mousedbl(LEFT,#PosX_2[0], #PosY_2[0], w);


Ошибка в скобке и опять же mousedbl(LEFT,#PosX_2[0], #PosY_2[0], w);.... Я уже писал об этом.
 
 Top
Kote_UA
Отправлено: 12 Октября, 2013 - 04:45:56
Post Id



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


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




win w=window (-1, "Static", window ("Косынка", "Solitaire", -1));
int tuz[66][92];
loadimage (#tuz[0][0], "D:\L2\tuz.bmp"Подмигивание;


int PosX_0[1];int PosY_0[1];

st: if(findimage(-1, #tuz[0][0], 0, #PosX_0[0], #PosY_0[0], 0, 0, 800, 496, -1)<1)goto st;
mousedbl(LEFT,#PosX_0[0], #PosY_0[0], w);


переделал, не работает
(Добавление)
я понял
 
 Top
Kibor
Отправлено: 12 Октября, 2013 - 05:27:46
Post Id



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


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




Barabachka ,
Посмотрите использование переменных в "кибор"
Вместо трех переменных
int a1;
int a2;
int a3;
можно одну создать
int a[3];

и обращаться

a[0]
a[1]
a[2]

завтра дам пример как использовать в Вашем случае.
 
 Top
Страниц (13): В начало « 2 3 4 5 [6] 7 8 9 10 » В конец
Сейчас эту тему просматривают: 5 (гостей: 5, зарегистрированных: 0)
« Вопросы и решение проблем »


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




Powered by