Имеется подобная фигня, красный бар катается туда/обратно по чёрному, а синяя фигня тоже рандомно дёргается по чёрному бару. Задача - удержать красный бар на синей метке. Управление простое, мышь отпущена - красный бар едет влево, мышь нажата - красный бар едет вправо.
Так вот, я беру скрин размером 777 на 1, то бишь просто полосу в 1 пиксель шириной в чёрный бар. Из за особенностей красного бара в моей ситуации(он имеет прозрачность и меняет цвет в процессе) пришлось городить огороды.
Первый цикл, начинает с левого края и идёт по пикселю в право. Как только цвет пикселя будет отличен от чёрного то позиция запоминается и цикл заканчивается
Второй цикл, начинает с запомненной позиции первого и идёт по пикселю вправо до тех пор пока цвет не станет чёрный, позиция запоминается и цикл заканчивается
После чего идёт условие, если расстояние от первой точки до второй слишком мало(определили синюю метку а не красный бар) то эти два цикла начинаются заново, но уже со второй запомненной позиции
После того как всё таки определили границы и положение красного бара идёт цикл который просто топает слева направо и ищет цвет, который соответствует синей метке
После чего простое условие
Если середина красного бара левее метки то нажимаем мышку, если же правее то отпускаем