changed motion api to Vector2D + scalar