Kostick |
Отправлено: 21 Мая, 2023 - 20:08:49
|
Мастер
Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020
Репутация: 1
|
Здравствуйте. Пользуюсь визуальным редактором. Возникла проблема.
Есть область, в которой идет поиск слова "трофеи" с помощью функции readtext. Бот запоминает все найденные буквы, у которых корректность выше 0.6, после этого ищет в этом результате слово "трофеи". Задача в том, чтобы если оно было найдено, нужно найти относительно координат первого символа в этом слове иконку рыбы и навести на нее курсор.
Проблема как раз в том, как узнать координаты первого символа в этом слове, чтобы отсчитывать от него новую область (область с иконкой рыбы)?
Область достаточно большая, потому что окно с трофеями, а вместе с ним и слово "Трофеи" перемещается.
Прикрепляю скриншот области поиска:
https://vk.com/doc96236743_665847068?hash=lRHJSD5Hb4Nvr6SxyE4UGZ9WdSnFHfUyf9Tz7DFZs9L&dl=0K5mhJoI2zgewpqviEeCXcl0zE4F5mFt3OYnSxxC8jH(Отредактировано автором: 21 Мая, 2023 - 20:10:26) |
|
|
Kostick |
Отправлено: 21 Мая, 2023 - 20:29:07
|
Мастер
Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020
Репутация: 1
|
У меня получилось в визуальном редакторе найти все корректные символы и прокликать по ним, но я не могу придумать, как найти именно первый символ в слове "трофеи".
Прикрепляю файл визуального редактора и код в Kibor.
Визуальный редактор:(для просмотра ссылки Вам необходимо авторизоваться) Код в Kibor:(для просмотра ссылки Вам необходимо авторизоваться) (Добавление)
Zireael пишет: Цитата: область с иконкой рыбы
Проще искать зелёную рамку вокруг рыбы.
Либо искать крестик, которым закрывается окно с трофеями.
Я рассматривал вариант с крестиком, но хотел сначала попробовать через слово "трофеи", и только сейчас понял, что не все так просто.
(Добавление)
Zireael пишет: Цитата: область с иконкой рыбы
Проще искать зелёную рамку вокруг рыбы.
Либо искать крестик, которым закрывается окно с трофеями.
Разрешите, я тогда по другой тебе тут сразу спрошу.
Когда ищу текст в области и вывожу его с помощью textout, то там есть буквы "Н", как на скрине:(для просмотра ссылки Вам необходимо авторизоваться) Я так понимаю, это новые строки. Как их вырезать? Я понимаю, с помощью регулярного выражения, но какого именно?(Отредактировано автором: 21 Мая, 2023 - 20:41:23) |
|
|
Zireael |
Отправлено: 21 Мая, 2023 - 21:02:48
|
Эксперт
Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Когда ищу текст в области и вывожу его с помощью textout, то там есть буквы "Н"
Это пустые элементы массива char.
CODE:char Text[10];
Text[0] = '1';
Text[1] = '2';
Text[2] = '3';
Text[3] = '4';
textout(0, 200, 200, format(#Text[0], 10), 1);
loop()sleep(10); |
|
|
Kostick |
Отправлено: 21 Мая, 2023 - 22:17:18
|
Мастер
Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020
Репутация: 1
|
Zireael пишет: Цитата: Когда ищу текст в области и вывожу его с помощью textout, то там есть буквы "Н"
Это пустые элементы массива char.
CODE:char Text[10];
Text[0] = '1';
Text[1] = '2';
Text[2] = '3';
Text[3] = '4';
textout(0, 200, 200, format(#Text[0], 10), 1);
loop()sleep(10);
Во, да, да, а как от них избавиться? Или они нигде не участвуют? |
|
|
Zireael |
Отправлено: 21 Мая, 2023 - 22:20:24
|
Эксперт
Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: а как от них избавиться?
Заполнить массив нулями.
CODE:char Text[10];
initialarray(#Text[0], 0);
Text[0] = '1';
Text[1] = '2';
Text[2] = '3';
Text[3] = '4';
textout(0, 200, 200, format(#Text[0]), 1);
loop()sleep(10); |
|
|
Kostick |
Отправлено: 21 Мая, 2023 - 22:42:12
|
Мастер
Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020
Репутация: 1
|
Zireael пишет: Цитата: а как от них избавиться?
Заполнить массив нулями.
CODE:char Text[10];
initialarray(#Text[0], 0);
Text[0] = '1';
Text[1] = '2';
Text[2] = '3';
Text[3] = '4';
textout(0, 200, 200, format(#Text[0]), 1);
loop()sleep(10);
Спасибо большое, а то я уже думал, вот так делать, но это фигня:
CODE:regexreplace(-1, #Text_Cut_Wait, Text_Wait, "(Н+)", ""); |
|
|
|