Попытка работать с углами станет немного сложнее, чем нужно. Для этого вида анимации вы обычно хотите использовать плавающие объекты для хранения координат x и y ваших объектов и перемещать их, применяя дельты x и y (плавающие элементы сохранят детализацию положения, которое теряется при округлении при рисовании на экране). Дельты представляют скорость вашего объекта в каждой оси и могут быть отрицательными или положительными.
Для каждой итерации анимации добавьте xdelta к вашей координате x и добавьте ydelta к вашей координате y. Округлите их, чтобы расположить на экране.
Когда вы нажимаете верхнюю или нижнюю границу, вы меняете знак на компоненте ydelta и аналогичным образом для боковых границ.
Вы не хотели бы постоянно сохранять одну и ту же дельту x и y, поэтому, когда объекты попадают на весло, немного измените дельту x или y, чтобы изменить угол.