То, что вы ищете, - это обнаружение столкновений. Способ обнаружения столкновений заключается в проверке перекрытия двух фигур. Для вашей игры достаточно представить границы столкновений в виде прямоугольников в той же позиции и с той же шириной и высотой, что и ширина и высота корзины и текстур яиц в пикселях.
Первый шаг создать прямоугольную структуру, вероятно, класс с именем Rectangle
или что-то подобное - для этого вам нужно будет сохранить вышеупомянутые значения - позиции x и y на экране, а также ширину и высоту в качестве переменных в вышеупомянутый Rectangle
class.
Далее, чтобы проверить, перекрываются ли два прямоугольника, можно создать функцию, которая возвращает Boolean
относительно того, перекрываются ли прямоугольники или нет. Это можно легко определить с помощью следующей логической функции:
...
function overlaps(rect) {
return x < rect.x + rect.width
&& x + width > rect.x
&& y < rect.y + rect.height
&& y + height > rect.y
}
...
Наконец, чтобы определить, перекрывает ли корзина какие-либо яйца, просто выполните итерации по прямоугольникам для яиц и проверьте, перекрывают ли они корзину, если так - собрать яйцо.