//void moveBall(Ball b)
    //{
    //    float pg = 0;
    //    Vector3 newPos = Path.GetArcParametrizedTime(b.Progress, ref pg);
    //   b.transform.position = Vector3.Lerp(b.transform.position, newPos+b.Offset, Time.deltaTime * LerpSpeed);

    //}
    void moveAlongSpline(List <Ball> balls)
    {
        if (balls.Count == 0 || balls[balls.Count - 1].Progress >= 2 * BallSizePercent)
        {
            addBallToChain();
        }
        EffectsPlayer.SetLost(balls[0].Progress);

        if (balls[0].Progress >= 1f)
        {
            CurrentSpeed = LostSpeed;
            lost         = true;
            //currentMoveMethod = () =>
            {
                //moveLost(balls);
                FindObjectOfType <GameDataSaver>().Lose(score);
                FindObjectOfType <LevelDataView>().ShowLostDialog();
            };
        }
    }