Помогите, бьюсь с проблемой пару дней...
Написал в визуальном редакторе простенький бот, ищет часть картинки и кликает по ней.
Суть проблемы в том что первый запуск кода все работает отлично, а когда запускаю второй и следующие разы, ничего не происходит. Кибор производит запуск кода, но такое чувство что он чего то не видит.
Пробовал в 3 разных эмуляторах, проблема аналогичная.
1. Derax - 25 Июля, 2022 - 10:36:29 - перейти к сообщению
2. Zireael - 25 Июля, 2022 - 12:03:37 - перейти к сообщению
Добавьте от блока findimage 2 перехода к блокам messagebox, в одном напишите что картинка найдена, в другом не найдена. Тогда после поиска картинки будет сообщение и станет понятно нашлась картинка или нет.
Если нашлась и не кликает, то один вопрос, если не нашлась, то другой.
Картинки могут отличаться, тогда в параметрах findimage нужно уменьшить точность поиска и/или увеличить разбежность в цвете.
Если нашлась и не кликает, то один вопрос, если не нашлась, то другой.
Картинки могут отличаться, тогда в параметрах findimage нужно уменьшить точность поиска и/или увеличить разбежность в цвете.
3. Derax - 25 Июля, 2022 - 14:12:03 - перейти к сообщению
Zireael пишет:
Добавьте от блока findimage 2 перехода к блокам messagebox, в одном напишите что картинка найдена, в другом не найдена. Тогда после поиска картинки будет сообщение и станет понятно нашлась картинка или нет.
Если нашлась и не кликает, то один вопрос, если не нашлась, то другой.
Картинки могут отличаться, тогда в параметрах findimage нужно уменьшить точность поиска и/или увеличить разбежность в цвете.
Если нашлась и не кликает, то один вопрос, если не нашлась, то другой.
Картинки могут отличаться, тогда в параметрах findimage нужно уменьшить точность поиска и/или увеличить разбежность в цвете.
Вообщем проблема была в поиске картинки, изменил "процент совпадения" со 100 на 50 и поставил галочку на "быстрый поиск", и все огонь.
(Добавление)
Zireael , подскажите пожалуйста еще вот в чем, так как данным софтом пользуюсь недавно. Можно ли с картинки на которой указано 0:17 секунд (допустим), что бы считалось это время и сделать паузу на это время, на 0:17 сек.
4. Zireael - 25 Июля, 2022 - 15:05:57 - перейти к сообщению
Цитата:
Можно ли с картинки на которой указано 0:17 секунд (допустим), что бы считалось это время и сделать паузу на это время, на 0:17 сек.
Используйте функцию readtext. Распознать числа, перевести время в секунды и сделать паузу через функцию pause.
Принцип такой:
CODE:
string s = "2:17"; // допустим это распознанный текст
string num[2];
int Pause;
if(regexsearch(2, #num[0], s, "\d+")==2) // найти 2 числа
{
Pause = formatsn(num[0]) * 60 + formatsn(num[1]); // перевести время в секунды
messagebox("Pause = "+format(Pause)+" секунд");
pause(Pause*1000); // пауза
}
else messagebox("Не найдено 2 числа");
string num[2];
int Pause;
if(regexsearch(2, #num[0], s, "\d+")==2) // найти 2 числа
{
Pause = formatsn(num[0]) * 60 + formatsn(num[1]); // перевести время в секунды
messagebox("Pause = "+format(Pause)+" секунд");
pause(Pause*1000); // пауза
}
else messagebox("Не найдено 2 числа");
В виз. редакторе можно после блока Readtext добавить блок Code, в нём:
CODE:
string num[2];
int Pause;
if(regexsearch(2, #num[0], Text_S, "\d+")==2) // найти 2 числа
{
Pause = formatsn(num[0]) * 60 + formatsn(num[1]); // перевести время в секунды
messagebox("Pause = "+format(Pause)+" секунд");
pause(Pause*1000); // пауза
}
else messagebox("Не найдено 2 числа");
int Pause;
if(regexsearch(2, #num[0], Text_S, "\d+")==2) // найти 2 числа
{
Pause = formatsn(num[0]) * 60 + formatsn(num[1]); // перевести время в секунды
messagebox("Pause = "+format(Pause)+" секунд");
pause(Pause*1000); // пауза
}
else messagebox("Не найдено 2 числа");
5. Derax - 26 Июля, 2022 - 07:18:59 - перейти к сообщению
Zireael , не понял, вот я сделал в визуальном редакторе блок ReadText, настроил его. Откуда тогда мне взять время, что бы запихнуть его в блок Pause или таймер?
Насколько я понимаю мое время будет храниться в Text_S , как его запихнуть в Pause.
я в программировании 0, по этому делаю в визуал редакторе.
Насколько я понимаю мое время будет храниться в Text_S , как его запихнуть в Pause.
я в программировании 0, по этому делаю в визуал редакторе.
6. Martin - 26 Июля, 2022 - 15:07:37 - перейти к сообщению
Цитата:
Откуда тогда мне взять время, что бы запихнуть его в блок Pause
С помощь ReadText занести данные в Text_S
Derax пишет:
Насколько я понимаю мое время будет храниться в Text_S , как его запихнуть в Pause.
вот эта строчка
Цитата:
if(regexsearch(2, #num[0], Text_S, "\d+"==2) // найти 2 числа
вытаскивает время из Text_S и добавляет в num[0] , num[1]
и далее в коде выше заносит эти данные в Pause
Цитата:
Pause = formatsn(num[0]) * 60 + formatsn(num[1]);
7. Derax - 28 Июля, 2022 - 12:06:13 - перейти к сообщению
Всем спасибо, разобрался.