Limbaugh |
Отправлено: 08 Мая, 2019 - 16:47:35
|
Участник
Покинул форум
Сообщений всего: 86
Дата рег-ции: Май 2019
Репутация: 0
|
Можно ли сделать так, что бы он искал шарик и если шарик попадет в определенные координаты, то нажимается кнопка пробел, а то искать такое маленькое изображение ему тяжело, 1 на 23 пикселя, Я перепробовал разбежность от 10 до 100 и более менее это, 40 и 80
(Добавление)
Zireael пишет: Цитата: как уменьшить расстояния от шарика до полоски
вместо 10 , 28
Надо уменьшать, а не увеличивать.
К тому же надо быть уверенным что картинки точно находятся там где нужно. Для этого и нужны были тесты.
Ну Я точно уверен в том, что она находится там где нужно, поскольку другой нет просто, остальное это динамический свет в стороны от неё
(Добавление)
Zireael пишет: Цитата: как уменьшить расстояния от шарика до полоски
вместо 10 , 28
Надо уменьшать, а не увеличивать.
К тому же надо быть уверенным что картинки точно находятся там где нужно. Для этого и нужны были тесты.
Я и уменьшал с 10 до 1 , не помогает |
|
|
Zireael |
Отправлено: 08 Мая, 2019 - 19:21:57
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: а то искать такое маленькое изображение ему тяжело
Искать можно хоть 1 пиксель.
Там где нажатие на нужную клавишу, добавьте вывод координаты X полоски и шарика.
CODE:messagebox("Координаты полоски: "+format(PosX1)+formatic(13)+formatic(10)+
"Координаты шарика: "+format(PosX2));
И посмотрите где, что находится и в каких координатах. У полоски координаты должны меняться максимум +- несколько пикселей. |
|
|
Limbaugh |
Отправлено: 08 Мая, 2019 - 20:15:16
|
Участник
Покинул форум
Сообщений всего: 86
Дата рег-ции: Май 2019
Репутация: 0
|
Zireael пишет: Цитата: а то искать такое маленькое изображение ему тяжело
Искать можно хоть 1 пиксель.
Там где нажатие на нужную клавишу, добавьте вывод координаты X полоски и шарика.
CODE:messagebox("Координаты полоски: "+format(PosX1)+formatic(13)+formatic(10)+
"Координаты шарика: "+format(PosX2));
И посмотрите где, что находится и в каких координатах. У полоски координаты должны меняться максимум +- несколько пикселей.
Они с 130 до 150 прыгают, ну это наверное из за разбежности - 80 Я поставил, потому что , если поставить очень маленькую, то он не находит её |
|
|
Limbaugh |
Отправлено: 08 Мая, 2019 - 20:23:49
|
Участник
Покинул форум
Сообщений всего: 86
Дата рег-ции: Май 2019
Репутация: 0
|
Zireael пишет: Я тестил на видео с ютуба, полоска находилась стабильно при разбежности 70.
Я сейчас ставил if(PosX1+1>PosX2) с 10 до 1 , такое ощущение как будто ничего не меняется, он все равно в одном месте нажимает, причем за полоской , а не перед
(Добавление)
Zireael пишет: Я тестил на видео с ютуба, полоска находилась стабильно при разбежности 70.
(для просмотра ссылки Вам необходимо авторизоваться) |
|
|
Limbaugh |
Отправлено: 08 Мая, 2019 - 20:51:25
|
Участник
Покинул форум
Сообщений всего: 86
Дата рег-ции: Май 2019
Репутация: 0
|
Zireael пишет: Во вкладке графика есть фильтр динамики, там подобрать разбежность и сохранить картинку полоски. Только фильтр выключать когда шарик проходит через полоску.
Зачем добавлять не работающее в основной скрипт? Пока не заработает стабильно скрипт, который выводит ++++ когда шарик около полоски, нет смысла редактировать основной скрипт.
В фильтре динамики попробовал с 1 до 100, Динамика всегда полностью заполняет полоску красным
(Добавление)
Limbaugh пишет: Zireael пишет: Во вкладке графика есть фильтр динамики, там подобрать разбежность и сохранить картинку полоски. Только фильтр выключать когда шарик проходит через полоску.
Зачем добавлять не работающее в основной скрипт? Пока не заработает стабильно скрипт, который выводит ++++ когда шарик около полоски, нет смысла редактировать основной скрипт.
В фильтре динамики попробовал с 1 до 100, Динамика всегда полностью заполняет полоску красным
Ой , выключать когда шар проходит по полоске, заново проверять )
(Добавление)
Хотя все равно, шариком не закрывал, перед ним выключал, но снова включал и динамика закрывала полоску, протестил с 1 до 170 , бывало по 4 раза включал выключал и держалась полоска, но в итоге закрывалась динамикой, или так и должно быть?
(Добавление)
Хм, это оказывается шар так закрывал, то есть даже если он не рядом динамика все равно дальше распространяется, вышло 40 и она не заполняется
(Добавление)
Решил еще раз протестить и стало перекрывать, да что за
(Добавление)
Крч с 10 до 100 попробовал, по разному, динамика в любом случае закрывает её |
|
|
Zireael |
Отправлено: 08 Мая, 2019 - 21:35:26
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
В архиве видео https://drive.google.com/open?id...ZqtG1aCtzo2ZJlQp. Когда шарик у полоски вместо ---- показываются ++++.
Скрипт из видео (Отобразить)CODE:int Image_0[9][8];
loadimage (#Image_0[0][0], "D:\Kibor2\Image_0.bmp");
int coord2[4]={1152, 737, 1319, 758} // область поиска
int r1=40; // разбежность для шарика
int Image_1[1][14];
loadimage (#Image_1[0][0], "D:\Kibor2\Image_1.bmp");
int r2=70; // разбежность для полоски
int PosX1, PosX2, PosY;
loop()
{
if(findimage(1, #Image_1[0][0], -1, #PosX1, #PosY, coord2[0], coord2[1], coord2[2], coord2[3], r2,r2,r2,r2,r2,r2,100,1, -1))
{
//mousemove();
if(findimage(1, #Image_0[0][0], -1, #PosX2, #PosY, coord2[0], coord2[1], coord2[2], coord2[3], r1,r1,r1,r1,r1,r1,100,1, -1))
{
if(PosX2+15>PosX1)
{
textbkcolor(255, 65280);
textout(1, coord2[0]+PosX1, coord2[1]-15, "++++", 1);
}
else
{
textbkcolor(65280, 255);
textout(1, coord2[0]+PosX1, coord2[1]-15, "----", 1);
}
}
}
}
Картинка полоски сохранена при разбежности 130 в фильтре динамики. |
|
|
Limbaugh |
Отправлено: 08 Мая, 2019 - 21:44:56
|
Участник
Покинул форум
Сообщений всего: 86
Дата рег-ции: Май 2019
Репутация: 0
|
Zireael пишет: В архиве видео https://drive.google.com/open?id...ZqtG1aCtzo2ZJlQp. Когда шарик у полоски вместо ---- показываются ++++.
Скрипт из видео (Отобразить)CODE:int Image_0[9][8];
loadimage (#Image_0[0][0], "D:\Kibor2\Image_0.bmp");
int coord2[4]={1152, 737, 1319, 758} // область поиска
int r1=40; // разбежность для шарика
int Image_1[1][14];
loadimage (#Image_1[0][0], "D:\Kibor2\Image_1.bmp");
int r2=70; // разбежность для полоски
int PosX1, PosX2, PosY;
loop()
{
if(findimage(1, #Image_1[0][0], -1, #PosX1, #PosY, coord2[0], coord2[1], coord2[2], coord2[3], r2,r2,r2,r2,r2,r2,100,1, -1))
{
//mousemove();
if(findimage(1, #Image_0[0][0], -1, #PosX2, #PosY, coord2[0], coord2[1], coord2[2], coord2[3], r1,r1,r1,r1,r1,r1,100,1, -1))
{
if(PosX2+15>PosX1)
{
textbkcolor(255, 65280);
textout(1, coord2[0]+PosX1, coord2[1]-15, "++++", 1);
}
else
{
textbkcolor(65280, 255);
textout(1, coord2[0]+PosX1, coord2[1]-15, "----", 1);
}
}
}
}
Картинка полоски сохранена при разбежности 130 в фильтре динамики.
Вот моя полоска -(для просмотра ссылки Вам необходимо авторизоваться) (Добавление)
Просто белая полоска в 1x23 пикселей
(Добавление)
Поставил разбежность 130 , он жмет, но за полоской , а не перед и бывает на оценку плохо , либо круто иногда мажет
(Добавление)
Поставил шару - 130 и полоске 130 , он жмет круто и плохо, но иногда выбивает ХОРОШО и ИДЕАЛЬНО, мне как раз Идеально нужно(Отредактировано автором: 08 Мая, 2019 - 21:48:34) |
|
|
|