Beispiel #1
0
    public IEnumerator MoveToStationAnimate(IRoad road)
    {
        _setLeftRightSpriteDircection(road.GetPosition(1).x - road.GetPosition(0).x);
        float duration  = road.GetTotalDistance() * 0.3f;
        var   startTime = Time.time;
        var   endTime   = startTime + duration;

        while (Time.time < endTime)
        {
            var t = Mathf.InverseLerp(startTime, endTime, Time.time);
            _busPrefab.transform.position = road.GetPosition(t);
            yield return(null);
        }

        _busPrefab.transform.position = road.GetPosition(1);
    }