private void OnEnable() { if (audioEvent != null) { audioEvent.AddListener(this); } }
/// <summary> /// Add audio listener function. /// </summary> /// <param name="listener"></param> public static void AddAudioListener(UnityAction <AudioClip> listener) { AudioEvent thisEvent = null; if (instance.audioEventDictionary.TryGetValue(AUDIOEVENT, out thisEvent)) { thisEvent.AddListener(listener); } else { thisEvent = new AudioEvent(); thisEvent.AddListener(listener); instance.audioEventDictionary.Add(AUDIOEVENT, thisEvent); } }
void Start() { #if UNITY_STANDALONE Cursor.visible = false; #endif server = CreateServer("Channel18", port); packets = new List <OSCPacket>(); foreach (var go in GameObject.FindObjectsOfType <GameObject>()) { var kontrollables = go.GetComponents <INanoKontrollable>(); if (kontrollables.Length > 0) { foreach (var kontrollable in kontrollables) { onNoteOn.AddListener(kontrollable.NoteOn); onNoteOff.AddListener(kontrollable.NoteOff); onKnob.AddListener(kontrollable.Knob); } } var oscReactables = go.GetComponents <IOSCReactable>(); if (oscReactables.Length > 0) { foreach (var oscReactable in oscReactables) { onOsc.AddListener(oscReactable.OnOSC); } } var audioReactables = go.GetComponents <IAudioReactable>(); if (audioReactables.Length > 0) { foreach (var audioReactable in audioReactables) { onAudio.AddListener(audioReactable.OnReact); } } } }