поэтому transform.position = Vector2.MoveTowards(transform.position, new Vector2(target.position.x, transform.position.y), speed*Time.deltaTime)
Где target.position.x -это берёт позицию тарегта по x, а transform.position.y остается по Y у самого объекта. Верно ? ну и потом даем скорость и плавное движение