Если бы я был вами и выполнял такие сложные анимации, я бы попытался изучить простой API canvas для рисования и анимации объектов.Для примера рассмотрим lunarLandar .
Было бы очень просто, если вы управляете фактическим размещением объекта, просто создать формулу, которая регулирует X & Y объекта.
Судо:
-If object is going right, and is left of center, decrease it's Y value.
-If object is going right, and is right of center, increase it's Y value.
-If the object is going left, and is right of center, decrease it's Y value.
-If the object is going left, and is left of center, increase it's Y value.