override public void ShowGUI(List <ActionParameter> parameters) { if (AdvGame.GetReferences().settingsManager != null) { SettingsManager settingsManager = AdvGame.GetReferences().settingsManager; if (GUILayout.Button("Music Storage window")) { MusicStorageWindow.Init(); } if (settingsManager.musicStorages.Count == 0) { EditorGUILayout.HelpBox("Before a track can be selected, it must be added to the Music Storage window.", MessageType.Info); return; } musicAction = (MusicAction)EditorGUILayout.EnumPopup("Method:", (MusicAction)musicAction); string fadeLabel = "Transition time (s):"; if (musicAction == MusicAction.Play || musicAction == MusicAction.Crossfade) { GetTrackIndex(settingsManager.musicStorages.ToArray(), parameters); loop = EditorGUILayout.Toggle("Loop?", loop); isQueued = EditorGUILayout.Toggle("Queue?", isQueued); resumeIfPlayedBefore = EditorGUILayout.Toggle("Resume if played before?", resumeIfPlayedBefore); } else if (musicAction == MusicAction.Stop) { fadeLabel = "Fade-out time (s):"; } else if (musicAction == MusicAction.ResumeLastStopped) { resumeFromStart = EditorGUILayout.Toggle("Restart track?", resumeFromStart); } fadeTimeParameterID = Action.ChooseParameterGUI(fadeLabel, parameters, fadeTimeParameterID, ParameterType.Float); if (fadeTimeParameterID < 0) { fadeTime = EditorGUILayout.Slider(fadeLabel, fadeTime, 0f, 10f); } if (fadeTime > 0f && !isQueued) { willWait = EditorGUILayout.Toggle("Wait until transition ends?", willWait); } } else { EditorGUILayout.HelpBox("A Settings Manager must be defined for this Action to function correctly. Please go to your Game Window and assign one.", MessageType.Warning); } AfterRunningOption(); }
override public void ShowGUI() { if (AdvGame.GetReferences().settingsManager != null) { SettingsManager settingsManager = AdvGame.GetReferences().settingsManager; if (GUILayout.Button("Music Storage window")) { MusicStorageWindow.Init(); } if (settingsManager.musicStorages.Count == 0) { EditorGUILayout.HelpBox("Before a track can be selected, it must be added to the Music Storage window.", MessageType.Info); return; } musicAction = (MusicAction)EditorGUILayout.EnumPopup("Music action:", (MusicAction)musicAction); if (musicAction == MusicAction.Play || musicAction == MusicAction.Crossfade) { GetTrackIndex(settingsManager.musicStorages.ToArray()); loop = EditorGUILayout.Toggle("Loop?", loop); isQueued = EditorGUILayout.Toggle("Queue?", isQueued); fadeTime = EditorGUILayout.Slider("Transition time (s):", fadeTime, 0f, 10f); } else if (musicAction == MusicAction.Stop) { fadeTime = EditorGUILayout.Slider("Fade-out time (s):", fadeTime, 0f, 10f); } if (fadeTime > 0f && !isQueued) { willWait = EditorGUILayout.Toggle("Wait until transition ends?", willWait); } } else { EditorGUILayout.HelpBox("A Settings Manager must be defined for this Action to function correctly. Please go to your Game Window and assign one.", MessageType.Warning); } AfterRunningOption(); }