//public Queue<AudioSource> aSQueue1 = new Queue <AudioSource> (); public Queue <AudioSource> CreateTempAudioSourcePoolQueue(AudioReferanceType aRT, string nameOfGOAS, int amount) { AudioSource tempASInstance = null; GameObject tempParent = new GameObject(); tempParent.name = "QueueAudioSources"; //tempParent.transform.SetParent (tempASInstance.transform); //tempParent.transform.SetAsLastSibling (); Queue <AudioSource> aSQueue = new Queue <AudioSource> (); switch (aRT) { case AudioReferanceType._MUSIC: for (int i = 0; i < amount; i++) { tempASInstance = Instantiate(_MusicAudioSourceDictionary[nameOfGOAS]).GetComponent <AudioSource>(); tempASInstance.transform.parent = tempParent.transform; aSQueue.Enqueue(tempASInstance); } break; case AudioReferanceType._AMBIENT: for (int i = 0; i < amount; i++) { tempASInstance = Instantiate(_AmbientAudioSourceDictionary [nameOfGOAS]).GetComponent <AudioSource>(); tempASInstance.transform.parent = tempParent.transform; aSQueue.Enqueue(tempASInstance); } break; case AudioReferanceType._DIRECT: for (int i = 0; i < amount; i++) { tempASInstance = Instantiate(_DirectAudioSourceDictionary[nameOfGOAS]).GetComponent <AudioSource>(); tempASInstance.transform.parent = tempParent.transform; aSQueue.Enqueue(tempASInstance); } break; case AudioReferanceType._INTERFACE: for (int i = 0; i < amount; i++) { tempASInstance = Instantiate(_InterfaceAudioSourceDictionary[nameOfGOAS]).GetComponent <AudioSource>(); tempASInstance.transform.parent = tempParent.transform; aSQueue.Enqueue(tempASInstance); } break; } return(aSQueue); }
public bool CheckIfAudioPlaying(AudioReferanceType audioType, string nameOfASGO) { switch (audioType) { case AudioReferanceType._MUSIC: if (_MusicAudioSourceDictionary [nameOfASGO].isPlaying) { return(true); } else { return(false); } case AudioReferanceType._AMBIENT: if (_AmbientAudioSourceDictionary [nameOfASGO].isPlaying) { return(true); } else { return(false); } case AudioReferanceType._DIRECT: if (_DirectAudioSourceDictionary [nameOfASGO].isPlaying) { return(true); } else { return(false); } case AudioReferanceType._INTERFACE: if (_InterfaceAudioSourceDictionary [nameOfASGO].isPlaying) { return(true); } else { return(false); } } return(false); }
public AudioSource GetAudioSourceReferance(AudioReferanceType audioType, string nameOfASGO) { switch (audioType) { case AudioReferanceType._MUSIC: return(_MusicAudioSourceDictionary [nameOfASGO]); // break; case AudioReferanceType._AMBIENT: return(_AmbientAudioSourceDictionary [nameOfASGO]); // break; case AudioReferanceType._DIRECT: return(_DirectAudioSourceDictionary [nameOfASGO]); // break; case AudioReferanceType._INTERFACE: return(_InterfaceAudioSourceDictionary [nameOfASGO]); // break; } return(null); }
/// <summary> /// Stop specific AudioSources from playing or leave nameOfAS empty to stop all AS under specific AudioReferenceType /// </summary> /// <returns><c>true</c>,not working yet, <c>false</c> otherwise.</returns> /// <param name="audioType">Audio type.</param> /// <param name="nameOfASGO">Name of specifit AudioSource or leave empty to turn of all under ReferenceType</param> public bool StopAudioPlaying(AudioReferanceType audioType, string nameOfASGO = "") { AudioSource tempAS; switch (audioType) { case AudioReferanceType._MUSIC: if (nameOfASGO == "") { foreach (AudioSource aS in _MusicAudioSourceDictionary.Values) { aS.Stop(); } return(true); } tempAS = _MusicAudioSourceDictionary [nameOfASGO];; tempAS.Stop(); break; case AudioReferanceType._AMBIENT: if (nameOfASGO == "") { foreach (AudioSource aS in _AmbientAudioSourceDictionary.Values) { aS.Stop(); } return(true); } tempAS = _AmbientAudioSourceDictionary [nameOfASGO];; tempAS.Stop(); break; case AudioReferanceType._DIRECT: if (nameOfASGO == "") { foreach (AudioSource aS in _DirectAudioSourceDictionary.Values) { aS.Stop(); } return(true); } tempAS = _DirectAudioSourceDictionary [nameOfASGO]; tempAS.Stop(); break; case AudioReferanceType._INTERFACE: if (nameOfASGO == "") { foreach (AudioSource aS in _InterfaceAudioSourceDictionary.Values) { aS.Stop(); } return(true); } tempAS = _InterfaceAudioSourceDictionary [nameOfASGO];; tempAS.Stop(); break; } return(false); }
public GameObject MakeCopyOfAudioSourceGO(AudioReferanceType aRT, string nameOfGOAS, Transform parent = null) { GameObject tempGOASInstance = null; GameObject temp; int count = 0; switch (aRT) { case AudioReferanceType._MUSIC: // if(_MusicAudioSourceDictionary[nameOfGOAS].transform.IsChildOf(transform)){ // tempGOASInstance = _MusicAudioSourceDictionary [nameOfGOAS].gameObject; // break; // } temp = _MusicAudioSourceDictionary [nameOfGOAS].gameObject; tempGOASInstance = Instantiate(temp, temp.transform.parent).gameObject; foreach (Transform aSD in _MusicAudioSourceParent) { if (aSD.name.Contains(nameOfGOAS)) { ++count; } } _MusicAudioSourceDictionary.Add(nameOfGOAS + count, tempGOASInstance.GetComponent <AudioSource> ()); break; case AudioReferanceType._AMBIENT: // if(_AmbientAudioSourceDictionary[nameOfGOAS].transform.IsChildOf(transform)){ // tempGOASInstance = _AmbientAudioSourceDictionary [nameOfGOAS].gameObject; // break; // } temp = _AmbientAudioSourceDictionary[nameOfGOAS].gameObject; tempGOASInstance = Instantiate(temp, temp.transform.parent).gameObject; foreach (Transform aSD in _AmbientAudioSourceParent) { if (aSD.name.Contains(nameOfGOAS)) { ++count; } } _AmbientAudioSourceDictionary.Add(nameOfGOAS + count, tempGOASInstance.GetComponent <AudioSource> ()); // _AmbientAudioSourceDictionary.Add (nameOfGOAS, tempGOASInstance.GetComponent<AudioSource> ()); // tempGOASInstance = Instantiate(_AmbientAudioSourceDictionary[nameOfGOAS],).gameObject; break; case AudioReferanceType._DIRECT: // if(_DirectAudioSourceDictionary[nameOfGOAS].transform.IsChildOf(transform)){ // tempGOASInstance = _DirectAudioSourceDictionary [nameOfGOAS].gameObject; // break; // } temp = _DirectAudioSourceDictionary[nameOfGOAS].gameObject; tempGOASInstance = Instantiate(temp, temp.transform.parent).gameObject; foreach (Transform aSD in _DirectAudioSourceParent) { if (aSD.name.Contains(nameOfGOAS)) { ++count; } } _DirectAudioSourceDictionary.Add(nameOfGOAS + count, tempGOASInstance.GetComponent <AudioSource> ()); // _DirectAudioSourceDictionary.Add (nameOfGOAS, tempGOASInstance.GetComponent<AudioSource> ()); //tempGOASInstance = Instantiate(_DirectAudioSourceDictionary[nameOfGOAS]).gameObject; break; case AudioReferanceType._INTERFACE: // if(_InterfaceAudioSourceDictionary[nameOfGOAS].transform.IsChildOf(transform)){ // tempGOASInstance = _InterfaceAudioSourceDictionary [nameOfGOAS].gameObject; // break; // } temp = _InterfaceAudioSourceDictionary[nameOfGOAS].gameObject; tempGOASInstance = Instantiate(temp, temp.transform.parent).gameObject; // _InterfaceAudioSourceDictionary.Add (nameOfGOAS, tempGOASInstance.GetComponent<AudioSource> ()); foreach (Transform aSD in _InterfaceAudioSourceParent) { if (aSD.name.Contains(nameOfGOAS)) { ++count; } } _InterfaceAudioSourceDictionary.Add(nameOfGOAS + count, tempGOASInstance.GetComponent <AudioSource> ()); // tempGOASInstance = Instantiate(_InterfaceAudioSourceDictionary[nameOfGOAS]).gameObject; break; } return(tempGOASInstance); }