void FixedUpdate()
    {
        rigi.MovePosition(Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime));
        if (Vector3.Distance(transform.position, target) < 0.1f)
        {
            if (target == startPos)
            {
                target = endPos;
            }
            else
            {
                target = startPos;
            }
        }

        velocity = transform.position - lastPos;

        lastPos = transform.position;

        if (child != null)
        {
            child.GiveParentVelocity(velocity);
        }
    }