public bool PopAudioClip() { AudioClip TargetClip = m_ClipList[m_ClipList.Count - 1]; if (AudioClipGroup.IsPlayingClip(TargetClip)) { return(false); } SoundManager.Instance.m_Storage.GiveupAudioClip(TargetClip); m_ClipList.Remove(TargetClip); PrintLog(); return(true); }
public void Collect() { if (m_ClipList.Count > m_nCacheCount) { if (m_ClipList.Count > 0) { for (int i = m_ClipList.Count - 1; i > 0; i--) { AudioClip TargetClip = m_ClipList[i]; if (!AudioClipGroup.IsPlayingClip(TargetClip)) { SoundManager.Instance.m_Storage.GiveupAudioClip(TargetClip); m_ClipList.Remove(TargetClip); TargetClip = null; } if (m_ClipList.Count <= m_nCacheCount) { break; } } } } }