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

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

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

> Без описания
Error404
Отправлено: 27 Апреля, 2015 - 12:44:26
Post Id



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


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




Пишу скрипт на управление вторым окном из первого.
Столкнулся с проблемой. Скрипт отказывается нажимать на игровые макросы. Нажимает без сбоев на все! Скилы, действия (некст таргет, ассист и другие), социальные действия (похлопать в ладоши, станцевать и т.д.) - всё это срабатывает без проблем, стоит создать игровой макрос и поместить его на панель (к примеру на F12), то из основного окна во второе не происходит нажатие (порой проскальзывает, если макрос из 1 строки *например /target "ник" *, но оооочень редко. Так можно раз 20 нажимать и только 1 раз получить желаемое. Если же в макросе 2 и более строки, весь макрос не отрабатывает вообще никогда). Переключаясь на второе окно (делая его активным) и нажимая туже самую комбинацию, макрос нажимается сразу же, без проблем. Полагаю срабатывает защита, т.к. использование игрового макроса - само по себе мини бот))) А без этого макроса по сути вся реализации бессмысленна. Только через макрос можно взять таргет на основного персонажа ( /target "ник" ). Пробовал сделать это мышкой, но к сожалению в неактивное окно sendmouse не срабатывает вообще никак. ВОЗМОЖНО, оно сработает через анти-антикликер, но увы протестировать не могу (У меня мышь USB).
Если кто-то может, протестируйте пожалуйста, чтоб я знал - покупать переходник PS/2 или нет Радость

CODE:
win w1, w2;
int x, y, col, xDis ,yDis;

getdisplay(col, xDis, yDis);
textbkcolor (255,0);
textout(0, xDis/2 - 130, yDis/2 - 30, "наведите мышь на окно 1 и нажмите Ё.", 0);
e: if (getkeystate(192)==0) {sleep(10); goto e;}
getmouse(x, y);
w1=getwindow(1, x, y);
s: if (getkeystate(192)==1) {sleep(10); goto s;}

textout(0, xDis/2 - 130, yDis/2 - 30, "наведите мышь на окно 2 и нажмите Ё.", 0);
e5: if (getkeystate(192)==0) {sleep(10); goto e5;}
getmouse(x, y);
w2=getwindow(1, x, y);
s5: if (getkeystate(192)==1) {sleep(10); goto s5;}
resettextout( 1 );

cikl:

if (getkeystate(192)==1) {sleep(50); sendkey(F12, w2);} // Основной тест. Сделал без сочетаний клавиш, для удобства тестирования. При нажатии " Ё ", нажимать F12 (на F12 какой-нибудь макрос *например /target "Ник" *).


if (getkeystate(16)==1 && getkeystate(112)==1) {sleep(50); sendkey(F1, w2);}
if (getkeystate(16)==1 && getkeystate(113)==1) {sleep(50); sendkey(F2, w2);}
if (getkeystate(16)==1 && getkeystate(114)==1) {sleep(50); sendkey(F3, w2);}
if (getkeystate(16)==1 && getkeystate(115)==1) {sleep(50); sendkey(F4, w2);}
if (getkeystate(16)==1 && getkeystate(116)==1) {sleep(50); sendkey(F5, w2);}
if (getkeystate(16)==1 && getkeystate(117)==1) {sleep(50); sendkey(F6, w2);}
if (getkeystate(16)==1 && getkeystate(118)==1) {sleep(50); sendkey(F7, w2);}
if (getkeystate(16)==1 && getkeystate(119)==1) {sleep(50); sendkey(F8, w2);}
if (getkeystate(16)==1 && getkeystate(120)==1) {sleep(50); sendkey(F9, w2);}
if (getkeystate(16)==1 && getkeystate(121)==1) {sleep(50); sendkey(F10, w2);}
if (getkeystate(16)==1 && getkeystate(122)==1) {sleep(50); sendkey(F11, w2);}
if (getkeystate(16)==1 && getkeystate(123)==1) {sleep(50); sendkey(F12, w2);} //Все F'ки от 1 до 12 нажимаются сочетанием клавиш Shift + F1-12
goto cikl;

(Отредактировано автором: 27 Апреля, 2015 - 12:45:12)

 
 Top
Kibor
Отправлено: 27 Апреля, 2015 - 14:35:57
Post Id



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


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




sendmouse не работает с антиантикликером
 
 Top
Error404
Отправлено: 27 Апреля, 2015 - 15:23:44
Post Id



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


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




 Kibor пишет:
sendmouse не работает с антиантикликером

Спасибо, учту.. А клавиатура (sendkey)? Ведь по сути всё работает и без антиантикликера, но именно на макросы не жмет.. странно
 
 Top
Error404
Отправлено: 27 Апреля, 2015 - 21:34:10
Post Id



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


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




Нашёл список доступных команд для антиантикликера. Вижу, что работать не будет. Буду экспериментировать дальше в обычном режиме...
 
 Top
Error404
Отправлено: 28 Апреля, 2015 - 08:22:45
Post Id



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


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




Всё)) Проблему решил.. Проблема крылась в малом времени слипа. Увеличил до 100-200 - работает, Макросы тоже нажимает)
 
 Top
Lomag
Отправлено: 03 Августа, 2016 - 17:30:38
Post Id



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


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




по моему тут чего то не хватает? ... по всему коду у Вас фигурные скобки заканчивающие код а где открывающие?

Я пока ещё плохо разбираюсь в программировании поэтому ... поясните пожалуйста вот такую детальку, код расчитан на два окна так? ... привязка управления нужным окном происходит посредством его выделения и нажатием ё? ... но меня смущает вот этот параметр ... sendkey(F1, w2);} который привязывает клавиши непосредствено к окну w2 судя по коду:
textout(0, xDis/2 - 130, yDis/2 - 30, "наведите мышь на окно 2 и нажмите Ё.", 0);
e5: if (getkeystate(192)==0) {sleep(10); goto e5;}
getmouse(x, y);
w2=getwindow(1, x, y);
s5: if (getkeystate(192)==1) {sleep(10); goto s5;}
resettextout( 1 );
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


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




Powered by