コード例 #1
0
    public bool Play(AudioPostFinished handler)
    {
        if (audioClips.Count == 0)
        {
            return(false);
        }

        return(Play(audioClips [0].name, handler));
    }
コード例 #2
0
    IEnumerator AudioFinishedListener(AudioPostFinished handler)
    {
        while (GetComponent <AudioSource> ().isPlaying)
        {
            yield return(new WaitForSeconds(0.5f));
        }

        GetComponent <AudioSource> ().clip = null;

        handler(this, 1);
    }
コード例 #3
0
    public bool Play(string audioClipKey, AudioPostFinished handler)
    {
        AudioClip audioClip = audioClips.Where((ac) => {
            return(ac.name == audioClipKey);
        }).First();

        if (audioClip == null)
        {
            return(false);
        }

        GetComponent <AudioSource> ().clip = audioClip;
        GetComponent <AudioSource> ().Play();

        StartCoroutine(AudioFinishedListener(handler));

        return(true);
    }