| Asimut |
Отправлено: 01 Августа, 2025 - 22:34:39
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
sedoi пишет: тогда будет всё равно сколько удочек, хоть 100
Оно так и сделано, скрин в предыдущем сообщении это функция лова, она одна на всех.
sedoi пишет: если она поймана, то следующий блок должен быть if(getcontrol(CHECK_1)==1) goto отпустить и переход с блока на продать
Там же на скрине после поймал стоит блок кода if(его свойства в окне) и от него истина и ложь. Суть в том если смотреть скрин по истине(зеленая полоска) выдает ошибку по goto, если идти по ложь (красная полоска) то все работает. Может в блоке if в свойствах (getcontrol(CHECK_1)==1) дописать goto и указать метку? А переход убрать и поставить маркер на отпустить?
(Добавление)
Либо как вариант, попробовать убрать отпускание и продажу из функции лова и вынести их отдельно...но пока не понятно как это реализовать, пока только мысли. |
| |
|
| sedoi |
Отправлено: 01 Августа, 2025 - 23:13:07
|


Участник

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

|
Asimut пишет: sedoi пишет: тогда будет всё равно сколько удочек, хоть 100
Оно так и сделано, скрин в предыдущем сообщении это функция лова, она одна на всех.
sedoi пишет: если она поймана, то следующий блок должен быть if(getcontrol(CHECK_1)==1) goto отпустить и переход с блока на продать
Там же на скрине после поймал стоит блок кода if(его свойства в окне) и от него истина и ложь. Суть в том если смотреть скрин по истине(зеленая полоска) выдает ошибку по goto, если идти по ложь (красная полоска) то все работает. Может в блоке if в свойствах (getcontrol(CHECK_1)==1) дописать goto и указать метку? А переход убрать и поставить маркер на отпустить?
(Добавление)
Либо как вариант, попробовать убрать отпускание и продажу из функции лова и вынести их отдельно...но пока не понятно как это реализовать, пока только мысли.
Сам блок if содержит в себе структуру переходы они же полоски они же и есть goto. только тёмная полоска это с истины а красная goto лож, вам лучше конечно было бы, получить код и включить в киборе отладку запустить код с самого кибора и глянуть в каком месте выдаёт ошибку и какая ошибка. |
| |
|
| Asimut |
Отправлено: 03 Августа, 2025 - 14:42:30
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
Asimut пишет: Процесс:
1. Заброс
2. Ожидание поклевки
3. Подсекание
4. Вываживание
5. Продажа или энергия
6. повтор цикла Заброс
Изначальный план достигнут и сделан для всех 3-х удочек, а также присутствует перезаброс если рыба сорвалась, бывает и такое(Интернет, игра) лаги бывают. Можно считать 7 пункт.
Пункт 8 использование энергии при перегрузе работает. Так что программа минимум перевыполнена))
Опять таки в игре присутствуют донки и спиннинги. С донками еще можно подумать но и по старым чертежам ловит, по ка надо думать как это объединить в одном боте, спиннинг трогать не хочется, очень много нюансов по графике и отслеживанию т.к. подмотка не выставляется параметрами, а только регулируется временем нажатия мыши.
Запилить бы окно лога типа но не придумал что туда выводить, что поймал или получена нашивка с улова. План минимум перевыполнил и очень доволен  (Отредактировано автором: 03 Августа, 2025 - 14:46:27) |
| |
|
| Asimut |
Отправлено: 09 Августа, 2025 - 14:04:16
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
Возникла идея фикс)
Реализовал авто определение удочек и их заброс. Правда удочки нужно достать и настроить на дальность заброса(это реализовано в игре) далее бот смотрит сколько достал удочек и забрасывает их, отсчет идет от левого края там самая первая удочка, есть нюансы типа если первую не забросил а третья в воде уже, но с этим можно жить))
Вторая идея, хочу сделать логирование, сколько рыб выловил и на сколько продал. По возможности и вывести время работы самого скрипта, если вдруг закроется скрипт посмотреть сколько он отработал. То по сути лог отдельно что ли, или запись в файл txt. Сейчас обучаю и проверяю базу для распознавания цифр и знаков. Ну а потом буду искать информацию по теме логирования.
(Добавление)
[img](для просмотра ссылки Вам необходимо авторизоваться) /img]
CODE:DIALOG, "Диалог", 278, 208;
STATIC, "Время работы", 92, 12, 76, 20;
EDIT_WRITE_RETURN, 80, 40, 100, 20, unknown ИМЯ_Переменной;
STATIC, "Поймал", 36, 88, 44, 20;
STATIC, "Продал на", 152, 88, 56, 20;
EDIT_WRITE_RETURN, 20, 116, 68, 20, int ИМЯ_Переменной;
STATIC, "шт.", 96, 116, 16, 20;
EDIT_WRITE_RETURN, 132, 116, 100, 20, int ИМЯ_Переменной;
STATIC, "руб.", 236, 116, 20, 20;
Что то в этом духе хотелось бы чтобы оставалось на экране |
| |
|
| sedoi |
Отправлено: 09 Августа, 2025 - 20:12:29
|


Участник

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

|
Asimut пишет: Возникла идея фикс)
Реализовал авто определение удочек и их заброс. Правда удочки нужно достать и настроить на дальность заброса(это реализовано в игре) далее бот смотрит сколько достал удочек и забрасывает их, отсчет идет от левого края там самая первая удочка, есть нюансы типа если первую не забросил а третья в воде уже, но с этим можно жить))
Вторая идея, хочу сделать логирование, сколько рыб выловил и на сколько продал. По возможности и вывести время работы самого скрипта, если вдруг закроется скрипт посмотреть сколько он отработал. То по сути лог отдельно что ли, или запись в файл txt. Сейчас обучаю и проверяю базу для распознавания цифр и знаков. Ну а потом буду искать информацию по теме логирования.
(Добавление)
[img] (для просмотра ссылки Вам необходимо авторизоваться) /img]
CODE:DIALOG, "Диалог", 278, 208;
STATIC, "Время работы", 92, 12, 76, 20;
EDIT_WRITE_RETURN, 80, 40, 100, 20, unknown ИМЯ_Переменной;
STATIC, "Поймал", 36, 88, 44, 20;
STATIC, "Продал на", 152, 88, 56, 20;
EDIT_WRITE_RETURN, 20, 116, 68, 20, int ИМЯ_Переменной;
STATIC, "шт.", 96, 116, 16, 20;
EDIT_WRITE_RETURN, 132, 116, 100, 20, int ИМЯ_Переменной;
STATIC, "руб.", 236, 116, 20, 20;
Что то в этом духе хотелось бы чтобы оставалось на экране
Я у себя в скриптах всегда использую для вывода информации вот такой код, где угодно можно вставить и выводить.CODE:int tim = 10;//В эту переменную получаем время работы скрипта
int countfish = 0; // В эту переменную передаём сколько поймал штук
int counteroffishsold = 0;// В эту передаём на сколько продали рыбы
a:;
textbkcolor (255,0);
textout(0,0,0," Время работы: " + format(tim)+" ", 1);
textout(1,0,16," Поймано : " + format(countfish)+" штук. ", 1);
textout(2,0,32," Породано : " + format(counteroffishsold)+" руб. ", 1);
sleep(2000);
goto a; |
| |
|
| Asimut |
Отправлено: 09 Августа, 2025 - 20:22:00
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
sedoi пишет: где угодно можно вставить и выводить.
Как я понял информация на экране, а если скрипт вылетит то и данные пропадут с экрана. Хотелось бы их сохранить, ну и знать сколько отработал скрипт с момента запуска и сколько продал. Пока изучаю информацию по распознаванию и сохранению, чет не выходит. Цикл отрабатывается, а файл не появляется.
CODE:if (fopen ("d:\logTR.txt", "a")!=0)
{
fwrite(Text_S);
fwrite(ENDL);
fclose();
}
Хочу сначала сделать рабочий цикл, а потом уже интерфейсом займусь. Если с окном не выйдет то буду расширять стартовое и добавлять поля, но это позже.(Отредактировано автором: 09 Августа, 2025 - 20:26:17) |
| |
|
| sedoi |
Отправлено: 09 Августа, 2025 - 20:36:57
|


Участник

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

|
Asimut пишет: sedoi пишет: где угодно можно вставить и выводить.
Как я понял информация на экране, а если скрипт вылетит то и данные пропадут с экрана. Хотелось бы их сохранить, ну и знать сколько отработал скрипт с момента запуска и сколько продал. Пока изучаю информацию по распознаванию и сохранению, чет не выходит. Цикл отрабатывается, а файл не появляется.
CODE:if (fopen ("d:\logTR.txt", "a")!=0)
{
fwrite(Text_S);
fwrite(ENDL);
fclose();
}
Хочу сначала сделать рабочий цикл, а потом уже интерфейсом займусь. Если с окном не выйдет то буду расширять стартовое и добавлять поля, но это позже.
Я запустил, на диске "D" появился текстовый файл "logTR.txt" и в файле прописана строка "Text_S" |
| |
|
| Asimut |
Отправлено: 10 Августа, 2025 - 12:25:36
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
sedoi пишет: Я у себя в скриптах всегда использую для вывода информации вот такой код, где угодно можно вставить и выводить.
CODE:
int tim = 10;//В эту переменную получаем время работы скрипта
int countfish = 0; // В эту переменную передаём сколько поймал штук
int counteroffishsold = 0;// В эту передаём на сколько продали рыбы
a:;
textbkcolor (255,0);
textout(0,0,0," Время работы: " + format(tim)+" ", 1);
textout(1,0,16," Поймано : " + format(countfish)+" штук. ", 1);
textout(2,0,32," Породано : " + format(counteroffishsold)+" руб. ", 1);
sleep(2000);
goto a;
Можно по подробнее об этом? А именно решил пока выводить на экран расчеты чтобы не лазить в файл лога. Сделал переменную int CR (цена рыбы, изначально 0, т.к допустим ничего не поймал в начале) после вылова появляется число из распознанного Text_S, вопрос как их сложить чтобы в дальнейшем выводилась сумма всех пойманных рыб?
CODE:textout(0,0,0," Продал на : "+Text_S+" руб. ", 1);
Взял за основу но выводит только последний улов, ну оно и понятно. По логике понимаю что CR=0 потом оно должно поменяться на CR=Text_S(0+15 но как присвоить новое значение?), и при следующем вылове CR+Text_S(15+10)
То есть поймал первую рыбу продал на 15р. (отображается на экране 15), поймал вторую на 10 должно по итогу отображаться их сумма 25р, и так далее по нарастающей |
| |
|
|