public void PlayMusic(string strMusic, float fDelay = 0.0f) { if (m_strMusic == strMusic) { return; } CheckAduioListener(); GameObject cam = FindMainCamera(); if (cam == null) { return; } if (m_musicSource != null) { m_musicSource.Release(); m_musicSource = null; } m_musicSource = AssetManager.Instance().CreateAudio(strMusic, cam.transform, null); if (m_musicSource == null) { return; } AudioSource source = m_musicSource.GetSource(); if (source != null) { source.priority = 10; // 背景音乐优先级较高 source.loop = true; source.volume = m_fMusicVolume; source.playOnAwake = false; //source.mute = m_bMute; source.mute = mm_bMute; source.PlayDelayed(fDelay); } }
public void StopEffect(uint uid) { Dictionary <uint, IAudioSource> .Enumerator iter = m_fxAudio.GetEnumerator(); IAudioSource ae = null; if (m_fxAudio.TryGetValue(uid, out ae)) { if (ae.isPlaying) { ae.Stop(); ae.Release(); m_fxAudio.Remove(uid); } } }