public void playVoice(string voiceName, float delay = 0f) { AudioClip audioClip = ResFactory.loadVoiceClip(voiceName); GameObject go = ResFactory.loadPrefab("audio"); go = ResFactory.createObject <GameObject>(go); go.name = voiceName; AudioSource audioSource = go.GetComponent <AudioSource>(); audioSource.clip = audioClip; audioSource.PlayDelayed(delay); ResFactory.Destroy(go, audioClip.length + delay); go.transform.SetParent(this.audioController.transform); }