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

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

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

> Без описания
Kostick
Отправлено: 28 Октября, 2022 - 12:39:54
Post Id



Пользователь
Мастер


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




Добрый день.
Подскажите, есть два монитора: с разрешением 1920х1080 и 2560х1440. Есть программа, которая распознаёт изображение в нижней правой четверти экрана. Например, для экрана 1920х1080 - это область от 1440х810 до 1920х1080, а для 2560х1440 - это от 1920х1080 до 2560х1440.
Как можно оптимизировать код, чтобы при получении программой информации о разрешении экрана, например с помощью команд getmouse и getwindow, область поиска была для разных разрешений экрана соответствующая?
И можно ли как-то визуализировать эту область поиска, например, с помощью выделения рамкой?
 
 Top
Zireael
Отправлено: 28 Октября, 2022 - 13:32:23
Post Id



Пользователь
Эксперт


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




При разных разрешениях изображение будет отличаться и не найдётся.
От идеи использования скрипта на разных разрешениях лучше сразу отказаться. Запускать игру в оконном режиме и делать скрипт под определённое разрешение.

 Цитата:
можно ли как-то визуализировать эту область поиска, например, с помощью выделения рамкой?

CODE:
int array[1920][1080];
initialarray(#array[0][0], 255);

visual(200, 100, 700, 500, 3); // координаты рамки и толщина линии
loop()sleep(10);


function visual(int sx, int sy, int ex, int ey, int width)
{
visualwindow(0, 0, 0, ex-sx, width, sx, sy, 100, #array[0][0]);
visualwindow(1, 0, 0, width, ey-sy, sx, sy, 100, #array[0][0]);
visualwindow(2, 0, 0, ex-sx+width, width, sx, ey, 100, #array[0][0]);
visualwindow(3, 0, 0, width, ey-sy, ex, sy, 100, #array[0][0]);
}
 
 Top
Kostick
Отправлено: 28 Октября, 2022 - 15:50:45
Post Id



Пользователь
Мастер


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




 Zireael пишет:

CODE:
int array[1920][1080];
initialarray(#array[0][0], 255);

visual(200, 100, 700, 500, 3); // координаты рамки и толщина линии
loop()sleep(10);


function visual(int sx, int sy, int ex, int ey, int width)
{
visualwindow(0, 0, 0, ex-sx, width, sx, sy, 100, #array[0][0]);
visualwindow(1, 0, 0, width, ey-sy, sx, sy, 100, #array[0][0]);
visualwindow(2, 0, 0, ex-sx+width, width, sx, ey, 100, #array[0][0]);
visualwindow(3, 0, 0, width, ey-sy, ex, sy, 100, #array[0][0]);
}


В вашем коде рамка будет красной, а как поменять цвет рамки, например, на зеленый? Понимаю, что это надо делать в функции initialarray, а как, не могу понять.

(Отредактировано автором: 28 Октября, 2022 - 15:51:21)

 
 Top
Zireael
Отправлено: 29 Октября, 2022 - 01:47:26
Post Id



Пользователь
Эксперт


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




 Цитата:
а как поменять цвет рамки, например, на зеленый?

CODE:
initialarray(#array[0][0], rgb(0, 255, 0));
 
 Top
Kostick
Отправлено: 29 Октября, 2022 - 17:11:05
Post Id



Пользователь
Мастер


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




 Zireael пишет:
 Цитата:
а как поменять цвет рамки, например, на зеленый?

CODE:
initialarray(#array[0][0], rgb(0, 255, 0));

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


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




Powered by