Example #1
0
    private IEnumerator LoadRace(string raceSceneName, RaceManager.RaceMode raceMode)
    {
        m_raceSceneLoadedName = raceSceneName;

        yield return(StartCoroutine(Fade(FadeMode.FadeIn)));

        yield return(SceneManager.UnloadSceneAsync(m_titleSceneName));

        yield return(SceneManager.LoadSceneAsync(m_loadingSceneName, LoadSceneMode.Additive));

        yield return(SceneManager.SetActiveScene(SceneManager.GetSceneAt(SceneManager.sceneCount - 1)));

        yield return(StartCoroutine(Fade(FadeMode.FadeOut)));

        yield return(SceneManager.LoadSceneAsync(raceSceneName, LoadSceneMode.Additive));

        FindObjectOfType <RaceManager>().SetUpRaceManager(raceMode);

        yield return(StartCoroutine(Fade(FadeMode.FadeIn)));

        yield return(SceneManager.UnloadSceneAsync(m_loadingSceneName));

        yield return(SceneManager.SetActiveScene(SceneManager.GetSceneAt(SceneManager.sceneCount - 1)));

        FindObjectOfType <RaceManager>().ChangeState(RaceManager.RaceState.BeforeStartAnimation);
        yield return(StartCoroutine(Fade(FadeMode.FadeOut)));
    }
    private void SetUpRaceMode()
    {
        RaceManager.RaceMode raceMode = m_raceManager.GetRaceMode();
        switch (raceMode)
        {
        case RaceManager.RaceMode.Solo:
            m_raceModeText.text = "SOLO";
            break;

        case RaceManager.RaceMode.SoloIA:
            m_raceModeText.text = "SOLO IA";
            break;

        case RaceManager.RaceMode.TimeAttack:
            m_raceModeText.text = "TIME ATTACK";
            break;

        case RaceManager.RaceMode.VS1:
            m_raceModeText.text = "1 VS 1";
            break;

        case RaceManager.RaceMode.VSN:
            m_raceModeText.text = m_raceManager.GetCarCount() + " CARS RACE";
            break;
        }
    }
Example #3
0
    private void RaceModeButtonPressed(Button button)
    {
        if (!m_isActive)
        {
            return;
        }

        for (int i = 0; i < m_raceModesButtons.Length; ++i)
        {
            if (m_raceModesButtons[i] == button)
            {
                m_raceModeSelected = m_raceModes[i];
                StartRace();
                return;
            }
        }
    }
    private void SetUpMainCarResult()
    {
        RaceManager.RaceMode raceMode = m_raceManager.GetRaceMode();
        switch (raceMode)
        {
        case RaceManager.RaceMode.Solo:
        case RaceManager.RaceMode.TimeAttack:
        case RaceManager.RaceMode.SoloIA:
            float raceTime = m_raceManager.GetMainCarTime();
            Utils.TimeToString(raceTime, ref m_mainCarResultText, 0.6f);
            break;

        case RaceManager.RaceMode.VS1:
        case RaceManager.RaceMode.VSN:
            int position = m_raceManager.GetMainCarPosition();
            m_mainCarResultText.text = "Nº " + position;
            if (position == 1)
            {
                m_mainCarResultText.text += "!";
            }
            break;
        }
    }
Example #5
0
 public void LoadRaceFromTitleScreen(string raceSceneName, RaceManager.RaceMode raceMode)
 {
     Debug.Log("LoadRaceFromTitleScreen " + raceSceneName + ", " + raceMode.ToString());
     StartCoroutine(LoadRace(raceSceneName, raceMode));
 }