Exemple #1
0
    // Update is called once per frame
    void Update()
    {
        if (!lateInitialized)
        {
            if (transform.Find("Kart") != null)
            {
                LateInitialize();
            }
            else
            {
                return;
            }
        }
        if (networkState != null)
        {
            state        = networkState;
            networkState = null;
        }

        //state
        KartState tempState = state.UpdateState();

        if (tempState != null)
        {
            state = tempState;
        }

        //speedometer
        trueSpeedTimer += Time.deltaTime;
        if (trueSpeedTimer > 0.25f)
        {
            trueSpeed      = Vector3.Distance(transform.position, oldPosition) / trueSpeedTimer;
            trueSpeedTimer = 0;
            oldPosition    = transform.position;
        }
        Vector3 cameraPos = transform.Find("Main Camera").localPosition;

        if (!GetComponent <Placement>().gameFinished)
        {
            transform.Find("Main Camera").localPosition = Vector3.Lerp(cameraPos, targetCameraPos, Time.deltaTime);
        }
        if (transform.position.y <= -200)
        {
            Reset(0, true);
        }

        turnWheels();
    }