public override void OnInspectorGUI() { ScriptableAudioEvent scriptableAudioEvent = (ScriptableAudioEvent)target; serializedObject.Update(); EditorGUILayout.PropertyField(_clipsProperty, true); EditorGUILayout.PropertyField(_randomizeVolumeProperty); if (scriptableAudioEvent.RandomizeVolume) { EditorGUILayout.PropertyField(minMaxVolumeProperty); } else { EditorGUILayout.PropertyField(_volumeProperty); } EditorGUILayout.PropertyField(_randomizePitchProperty); if (scriptableAudioEvent.RandomizePitch) { EditorGUILayout.PropertyField(minMaxPitchProperty); } else { EditorGUILayout.PropertyField(_pitchProperty); } serializedObject.ApplyModifiedProperties(); if (GUILayout.Button("Preview SFX")) { scriptableAudioEvent.Play(_previewAudioSource); } }
// Called as an animation event private void PlayAudioEvent(AnimationEvent animEvent) { ScriptableAudioEvent audioEvent = animEvent.objectReferenceParameter as ScriptableAudioEvent; if (audioEvent != null) { audioEvent.Play(_audioSource); } }
//animation event. void PlaySound(ScriptableAudioEvent sound) { sound.Play(_audioSource); }