protected virtual void PlaySoundForScene(string current_scene) { if (_instance == null || _instance != this) { return; } if (idList.HasID(current_scene)) { if (currentClip == null || idList.GetItem(current_scene) != currentClip) { currentClip = idList.GetItem(current_scene); GetSource().clip = currentClip; } if (!GetSource().isPlaying) { GetSource().Play(); } } else { GetSource().Stop(); } }