void playBakeAudio()
    {
        if (NetworkServerScript.GetIsServer())
        {
            return;
        }

        if (bakeAudio.Length <= 0)
        {
            return;
        }

        int indexAudio = Random.Range(0, bakeAudio.Length);

        AudioSourceObj.clip   = bakeAudio[indexAudio];
        AudioSourceObj.volume = 0.5f;
        AudioSourceObj.Play();
    }
    IEnumerator checkBakeAudio()
    {
        if (NetworkServerScript.GetIsServer())
        {
            yield break;
        }

        if (bakeAudio.Length <= 0)
        {
            yield break;
        }

        if (!Go.IsStartGame)
        {
            yield return(new WaitForSeconds(1.0f));

            yield return(checkBakeAudio());
        }

        if (!AudioSourceObj.isPlaying && !MusicUiObj.activeSelf)
        {
            playBakeAudio();
            MusicUiObj.SetActive(true);
            yield return(new WaitForSeconds(2f));

            MusicUiObj.SetActive(false);
        }

        if (GlobalScript.GetInstance().player.IsPass)
        {
            //Debug.Log("stop background audio");
            AudioSourceObj.Stop();
            StopCoroutine("checkBakeAudio");
            yield break;
        }

        yield return(new WaitForSeconds(1));

        yield return(StartCoroutine("checkBakeAudio"));
    }