void DisplayChildBuildDirectories(string label, List <PlatformStringSetting> settings, FMODPlatform platform) { string[] buildDirectories = EditorUtils.GetBankPlatforms(); bool overriden = Settings.HasSetting(settings, platform); string current = Settings.GetSetting(settings, platform, "Desktop"); string inherit = Settings.GetSetting(settings, Settings.GetParent(platform), "Desktop"); int index = Array.IndexOf(buildDirectories, current); if (index < 0) { index = 0; } string[] valuesChild = new string[buildDirectories.Length + 1]; Array.Copy(buildDirectories, 0, valuesChild, 1, buildDirectories.Length); valuesChild[0] = string.Format("Inherit ({0})", inherit); int next = EditorGUILayout.Popup(label, overriden ? index + 1 : 0, valuesChild); if (next == 0) { Settings.RemoveSetting(settings, platform); Settings.RemoveSetting(((Settings)target).SpeakerModeSettings, platform); } else { Settings.SetSetting(settings, platform, buildDirectories[next - 1]); } }
void DisplayPIESpeakerMode(string label, List <PlatformIntSetting> settings, FMODPlatform platform) { int buildTargetSetting = Settings.GetSetting(settings, RuntimeUtils.GetEditorFMODPlatform(), (int)FMOD.SPEAKERMODE.STEREO); int buildTargetIndex = Array.IndexOf(SpeakerModeValues, buildTargetSetting); string[] speakerModes = new string[SpeakerModeDisplay.Length + 1]; Array.Copy(SpeakerModeDisplay, 0, speakerModes, 1, SpeakerModeDisplay.Length); speakerModes[0] = string.Format("Current Unity Platform ({0})", SpeakerModeDisplay[buildTargetIndex]); bool useCurrentUnity = !Settings.HasSetting(settings, platform); int current = Settings.GetSetting(settings, platform, (int)FMOD.SPEAKERMODE.STEREO); int index = Array.IndexOf(SpeakerModeValues, current) + 1; if (useCurrentUnity || index < 0) { index = 0; } int next = EditorGUILayout.Popup(label, index, speakerModes); if (next != 0) { Settings.SetSetting(settings, platform, SpeakerModeValues[next - 1]); } else { Settings.RemoveSetting(settings, platform); } }
void DisplayPIEBuildDirectory(string label, List <PlatformStringSetting> settings, FMODPlatform platform) { string buildTargetSetting = Settings.GetSetting(settings, RuntimeUtils.GetEditorFMODPlatform(), "Desktop"); string[] buildDirectories = new string[EditorUtils.GetBankPlatforms().Length + 1]; Array.Copy(EditorUtils.GetBankPlatforms(), 0, buildDirectories, 1, EditorUtils.GetBankPlatforms().Length); buildDirectories[0] = String.Format("Current Unity Platform ({0})", buildTargetSetting); bool useCurrentUnity = !Settings.HasSetting(settings, platform); string current = Settings.GetSetting(settings, platform, "Desktop"); int index = Array.IndexOf(buildDirectories, current); if (useCurrentUnity || index < 0) { index = 0; } int next = EditorGUILayout.Popup(label, index, buildDirectories); if (next != 0) { Settings.SetSetting(settings, platform, buildDirectories[next]); } else { Settings.RemoveSetting(settings, platform); } }
void DisplayChildSpeakerMode(string label, List <PlatformIntSetting> settings, FMODPlatform platform) { bool overriden = Settings.HasSetting(settings, platform); int current = Settings.GetSetting(settings, platform, 0); int index = Array.IndexOf(SpeakerModeValues, current); string[] valuesChild = new string[SpeakerModeDisplay.Length + 1]; Array.Copy(SpeakerModeDisplay, 0, valuesChild, 1, SpeakerModeDisplay.Length); valuesChild[0] = String.Format("Inherit ({0})", SpeakerModeDisplay[index]); int next = EditorGUILayout.Popup(label, overriden ? index + 1 : 0, valuesChild); if (next == 0) { Settings.RemoveSetting(settings, platform); } else { Settings.SetSetting(settings, platform, SpeakerModeValues[next - 1]); } }
void DisplayChildInt(string label, List <PlatformIntSetting> settings, FMODPlatform platform, int min, int max) { bool overriden = Settings.HasSetting(settings, platform); int current = Settings.GetSetting(settings, platform, 0); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel(label); overriden = !GUILayout.Toggle(!overriden, "Inherit"); int next = EditorGUILayout.IntSlider(current, min, max); EditorGUILayout.EndHorizontal(); if (overriden) { Settings.SetSetting(settings, platform, next); } else { Settings.RemoveSetting(settings, platform); } }
void DisplayChildFreq(string label, List <PlatformIntSetting> settings, FMODPlatform platform) { bool overriden = Settings.HasSetting(settings, platform); int current = Settings.GetSetting(settings, platform, 0); int inherit = Settings.GetSetting(settings, Settings.GetParent(platform), 0); int currentIndex = Array.IndexOf(FrequencyValues, current); int inheritIndex = Array.IndexOf(FrequencyValues, inherit); string[] valuesChild = new string[FrequencyDisplay.Length + 1]; Array.Copy(FrequencyDisplay, 0, valuesChild, 1, FrequencyDisplay.Length); valuesChild[0] = string.Format("Inherit ({0})", FrequencyDisplay[inheritIndex]); int next = EditorGUILayout.Popup(label, overriden ? currentIndex + 1 : 0, valuesChild); if (next == 0) { Settings.RemoveSetting(settings, platform); } else { Settings.SetSetting(settings, platform, FrequencyValues[next - 1]); } }
void DisplayChildBool(string label, List <PlatformBoolSetting> settings, FMODPlatform platform) { bool overriden = Settings.HasSetting(settings, platform); bool current = Settings.GetSetting(settings, platform, false); string[] toggleChild = new string[ToggleParent.Length + 1]; Array.Copy(ToggleParent, 0, toggleChild, 1, ToggleParent.Length); toggleChild[0] = String.Format("Inherit ({0})", ToggleParent[current ? 1 : 0]); int next = EditorGUILayout.Popup(label, overriden ? (current ? 2 : 1) : 0, toggleChild); if (next == 0) { if (overriden) { Settings.RemoveSetting(settings, platform); } } else { Settings.SetSetting(settings, platform, next == 2); } }
void DisplayChildBool(string label, List <PlatformBoolSetting> settings, FMODPlatform platform) { bool overriden = Settings.HasSetting(settings, platform); TriStateBool parent = Settings.GetSetting(settings, Settings.GetParent(platform), TriStateBool.Disabled); TriStateBool current = Settings.GetSetting(settings, platform, TriStateBool.Disabled); string[] toggleChild = new string[ToggleParent.Length + 1]; Array.Copy(ToggleParent, 0, toggleChild, 1, ToggleParent.Length); toggleChild[0] = string.Format("Inherit ({0})", ToggleParent[(int)parent]); int next = EditorGUILayout.Popup(label, overriden ? (int)current + 1: 0, toggleChild); if (next == 0) { if (overriden) { Settings.RemoveSetting(settings, platform); } } else { Settings.SetSetting(settings, platform, (TriStateBool)(next - 1)); } }