Beispiel #1
0
    private void Awake()
    {
        if (sharedInstance == null)
        {
            sharedInstance = this;
        }
        else
        {
            Destroy(gameObject);
        }
        //Debug.Log("Counter: "  + counterTime);

        selectMusic = FindObjectOfType <SelectMusic>();
    }
Beispiel #2
0
    /// <summary>
    /// 设置状态
    /// </summary>
    /// <param name="nextPhase"></param>
    public void SetPhase(string nextPhase)
    {
        switch (nextPhase)
        {
        case "StartupMenu"://开始菜单
            DeactiveateAllGUI();
            ActivateGUI("StartupMenu");
            break;


        case "SelectMusic":
            DeactiveateAllGUI();
            ActivateGUI("SelectMusic");
            break;

        case "Play":        //主游戏
            Play(false);
            break;

        case "DevelopmentMode":
            Play(true);
            break;

        case "GameOver":
        {
            DeactiveateAllGUI();
            ActivateGUI("Settlement");
            Settlement showResult = GameObject.Find("Settlement").GetComponent <Settlement>();

            //-显示结算结果
            Debug.Log(m_scoringManager.scoreRate);
            Debug.Log(ScoringManager.failureScoreRate);
            if (m_scoringManager.scoreRate <= ScoringManager.failureScoreRate)                //-如果是失败的得分率,乐队成员发出失败的声音
            {
                showResult.SetResult(eResult.eBad, m_scoringManager.score);
                GameObject.Find("Vocalist").GetComponent <BandMember>().BadFeedback();
            }
            else if (m_scoringManager.scoreRate >= ScoringManager.excellentScoreRate)                //-如果是Excellent乐队成员和观众一起欢呼
            {
                showResult.SetResult(eResult.eBest, m_scoringManager.score);
                GameObject.Find("Vocalist").GetComponent <BandMember>().GoodFeedback();
                GameObject.Find("AudienceVoice").GetComponent <AudioSource>().Play();
            }
            else                //-如果是Good,乐队成员欢呼
            {
                showResult.SetResult(eResult.eGood, m_scoringManager.score);
                GameObject.Find("Vocalist").GetComponent <BandMember>().GoodFeedback();
            }
        }
        break;

        case "Restart":        //-重新开始,直接重新加载Main场景
        {
            UnityEngine.SceneManagement.SceneManager.LoadScene("Main");
        }
        break;

        case "Reset"://-重新开始,直接重新加载Main场景
        {
            //-UnityEngine.SceneManagement.SceneManager.LoadScene("Main");
            SelectMusic.Select2(SelectMusic.Index);
            Play(false);
        }
        break;

        case "Pause":    //-
        {
            //-DeactiveateAllGUI();
            ActivateGUI("PauseGUI");
        }
        break;

        case "Continue"://-
        {
            DeActivateGUI("PauseGUI");
        }
        break;

        default:
            Debug.LogError("unknown phase: " + nextPhase);
            break;
        }

        m_currentPhase = nextPhase;
    }