You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.9 KiB
61 lines
1.9 KiB
9 years ago
|
using UnityEditor;
|
||
|
using UnityEditorInternal;
|
||
|
using UnityEngine;
|
||
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using Rotorz.ReorderableList;
|
||
|
|
||
|
namespace Fungus
|
||
|
{
|
||
|
|
||
|
[CustomEditor (typeof(WriterAudio))]
|
||
|
public class WriterAudioEditor : Editor
|
||
|
{
|
||
|
protected SerializedProperty volumeProp;
|
||
|
protected SerializedProperty loopProp;
|
||
|
protected SerializedProperty audioSourceProp;
|
||
|
protected SerializedProperty audioModeProp;
|
||
|
protected SerializedProperty beepSoundsProp;
|
||
|
protected SerializedProperty soundEffectProp;
|
||
|
protected SerializedProperty beepDelayProp;
|
||
|
protected SerializedProperty randomizeDelayProp;
|
||
|
|
||
|
protected virtual void OnEnable()
|
||
|
{
|
||
|
volumeProp = serializedObject.FindProperty("volume");
|
||
|
loopProp = serializedObject.FindProperty("loop");
|
||
|
audioSourceProp = serializedObject.FindProperty("audioSource");
|
||
|
audioModeProp = serializedObject.FindProperty("audioMode");
|
||
|
beepSoundsProp = serializedObject.FindProperty("beepSounds");
|
||
|
soundEffectProp = serializedObject.FindProperty("soundEffect");
|
||
|
beepDelayProp = serializedObject.FindProperty("beepDelay");
|
||
|
randomizeDelayProp = serializedObject.FindProperty("randomizeDelay");
|
||
|
}
|
||
|
|
||
|
public override void OnInspectorGUI()
|
||
|
{
|
||
|
serializedObject.Update();
|
||
|
|
||
|
EditorGUILayout.PropertyField(volumeProp);
|
||
|
EditorGUILayout.PropertyField(loopProp);
|
||
|
EditorGUILayout.PropertyField(audioSourceProp);
|
||
|
|
||
|
EditorGUILayout.PropertyField(audioModeProp);
|
||
|
if ((WriterAudio.AudioMode)audioModeProp.enumValueIndex == WriterAudio.AudioMode.Beeps)
|
||
|
{
|
||
|
ReorderableListGUI.Title(new GUIContent("Beep Sounds", "A list of beep sounds to play at random"));
|
||
|
ReorderableListGUI.ListField(beepSoundsProp);
|
||
|
|
||
|
EditorGUILayout.PropertyField(beepDelayProp);
|
||
|
EditorGUILayout.PropertyField(randomizeDelayProp);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
EditorGUILayout.PropertyField(soundEffectProp);
|
||
|
}
|
||
|
|
||
|
serializedObject.ApplyModifiedProperties();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|