private static void CreateResourceMonitor() { var spath = (Selection.activeGameObject != null) ? AssetDatabase.GetAssetPath(Selection.activeObject) : "Assets/"; if (!spath.StartsWith("Assets")) { return; } if (Path.HasExtension(spath)) { spath = Path.GetDirectoryName(spath); } if (!spath.EndsWith("/")) { spath += "/"; } spath += "AssetBundlePackage.asset"; ScriptableObjectHelper.CreateAsset <AssetBundlePackage>(spath); }
private void OnGUI() { Rect rect; //var labelWidthCache = EditorGUIUtility.labelWidth; //EditorGUIUtility.labelWidth = Mathf.Min(this.position.width - 20f, 300f); EditorGUI.BeginChangeCheck(); bool useSPEditor = EditorGUILayout.ToggleLeft("Use SPEditor as default editor for MonoBehaviour", EditorProjectPrefs.Local.GetBool(BaseSettings.SETTING_SPEDITOR_ISDEFAULT_ACTIVE, true)); if (EditorGUI.EndChangeCheck()) { EditorProjectPrefs.Local.SetBool(BaseSettings.SETTING_SPEDITOR_ISDEFAULT_ACTIVE, useSPEditor); } EditorGUI.BeginChangeCheck(); bool useAdvancedAnimInspector = EditorGUILayout.ToggleLeft("Use Advanced Animation Inspector", EditorProjectPrefs.Local.GetBool(BaseSettings.SETTING_ADVANCEDANIMINSPECTOR_ACTIVE, true)); if (EditorGUI.EndChangeCheck()) { EditorProjectPrefs.Local.SetBool(BaseSettings.SETTING_ADVANCEDANIMINSPECTOR_ACTIVE, useAdvancedAnimInspector); } EditorGUI.BeginChangeCheck(); bool hierarchyDrawerActive = EditorGUILayout.ToggleLeft("Use Hierarchy Drawers", EditorProjectPrefs.Local.GetBool(BaseSettings.SETTING_HIERARCHYDRAWER_ACTIVE, true)); if (EditorGUI.EndChangeCheck()) { EditorProjectPrefs.Local.SetBool(BaseSettings.SETTING_HIERARCHYDRAWER_ACTIVE, hierarchyDrawerActive); EditorHierarchyDrawerEvents.SetActive(hierarchyDrawerActive); } EditorGUI.BeginChangeCheck(); bool hierarchCustomContextMenu = EditorGUILayout.ToggleLeft("Use Alternate Hierarchy Context Menu", EditorProjectPrefs.Local.GetBool(BaseSettings.SETTING_HIEARCHYALTERNATECONTEXTMENU_ACTIVE, true)); if (EditorGUI.EndChangeCheck()) { EditorProjectPrefs.Local.SetBool(BaseSettings.SETTING_HIEARCHYALTERNATECONTEXTMENU_ACTIVE, hierarchCustomContextMenu); EditorHierarchyAlternateContextMenuEvents.SetActive(hierarchCustomContextMenu); } if (_gameSettings == null) { rect = EditorGUILayout.GetControlRect(); rect.width = Mathf.Min(rect.width, BTN_WIDTH); if (GUI.Button(rect, "Create Default GameSettings Data Resource")) { var tps = (from t in TypeUtil.GetTypesAssignableFrom(typeof(GameSettingsBase)) where !t.IsAbstract && !t.IsInterface select t).ToArray(); var menu = new GenericMenu(); foreach (var tp in tps) { menu.AddItem(EditorHelper.TempContent(tp.Name), false, () => { _gameSettings = ScriptableObjectHelper.CreateAsset(tp, GameSettingsBase.PATH_DEFAULTSETTINGS_FULL) as GameSettingsBase; }); } menu.ShowAsContext(); } } else { EditorGUILayout.ObjectField("Game Settings", _gameSettings, typeof(GameSettingsBase), false); } if (_timeLayersData == null) { rect = EditorGUILayout.GetControlRect(); rect.width = Mathf.Min(rect.width, BTN_WIDTH); if (GUI.Button(rect, "Create Custom Time Layers Data Resource")) { _timeLayersData = ScriptableObjectHelper.CreateAsset <CustomTimeLayersData>(CustomTimeLayersData.PATH_DEFAULTSETTINGS_FULL); } } else { EditorGUILayout.ObjectField("Custom Time Layers Data", _timeLayersData, typeof(CustomTimeLayersData), false); } EditorGUILayout.Space(); EditorGUILayout.Space(); this.DrawScenes(); //EditorGUIUtility.labelWidth = labelWidthCache; }
public static ShotTypeProbabilities GetProbabilities(NAME name) { return(ScriptableObjectHelper.GetShotTypeProbabilitiesWithId(name.ToString())); }
private void OnGUI() { Rect rect; var boxStyle = new GUIStyle(GUI.skin.box); boxStyle.stretchHeight = false; EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); bool storeLocal = EditorGUILayout.ToggleLeft("Store Settings Local", SpacepuppySettings.StoreSettingsLocal); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.StoreSettingsLocal = storeLocal; } /* * Editor Use */ EditorGUILayout.Space(); GUILayout.BeginVertical("Editor Settings", boxStyle); EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); bool useSPEditor = EditorGUILayout.ToggleLeft("Use SPEditor as default editor for MonoBehaviour", SpacepuppySettings.UseSPEditorAsDefaultEditor); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.UseSPEditorAsDefaultEditor = useSPEditor; } EditorGUI.BeginChangeCheck(); bool useAdvancedAnimInspector = EditorGUILayout.ToggleLeft("Use Advanced Animation Inspector", SpacepuppySettings.UseAdvancedAnimationInspector); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.UseAdvancedAnimationInspector = useAdvancedAnimInspector; } EditorGUI.BeginChangeCheck(); bool hierarchyDrawerActive = EditorGUILayout.ToggleLeft("Use Hierarchy Drawers", SpacepuppySettings.UseHierarchDrawer); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.UseHierarchDrawer = hierarchyDrawerActive; EditorHierarchyDrawerEvents.SetActive(hierarchyDrawerActive); } EditorGUI.BeginChangeCheck(); bool hierarchCustomContextMenu = EditorGUILayout.ToggleLeft("Use Alternate Hierarchy Context Menu", SpacepuppySettings.UseHierarchyAlternateContextMenu); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.UseHierarchyAlternateContextMenu = hierarchCustomContextMenu; EditorHierarchyAlternateContextMenuEvents.SetActive(hierarchCustomContextMenu); } EditorGUI.BeginChangeCheck(); bool signalValidateReceiver = EditorGUILayout.ToggleLeft("Signal IValidateReceiver OnValidate Event", SpacepuppySettings.SignalValidateReceiver); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.SignalValidateReceiver = signalValidateReceiver; } GUILayout.EndVertical(); /* * Material Search Settings */ GUILayout.BeginVertical("Material Settings", boxStyle); EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); bool setMaterialSearch = EditorGUILayout.ToggleLeft("Configure Material Settings On Import", SpacepuppySettings.SetMaterialSearchOnImport); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.SetMaterialSearchOnImport = setMaterialSearch; } EditorGUI.BeginChangeCheck(); var materialSearch = (ModelImporterMaterialSearch)EditorGUILayout.EnumPopup("Material Search", SpacepuppySettings.MaterialSearch); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.MaterialSearch = materialSearch; } GUILayout.EndVertical(); /* * Animation Settings */ GUILayout.BeginVertical("Animation Settings", boxStyle); EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); bool setAnimSettings = EditorGUILayout.ToggleLeft("Configure Animation Settings On Import", SpacepuppySettings.SetAnimationSettingsOnImport); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.SetAnimationSettingsOnImport = setAnimSettings; } EditorGUI.BeginChangeCheck(); var animRigType = (ModelImporterAnimationType)EditorGUILayout.EnumPopup("Aimation Rig Type", SpacepuppySettings.ImportAnimRigType); if (EditorGUI.EndChangeCheck()) { SpacepuppySettings.ImportAnimRigType = animRigType; } GUILayout.EndVertical(); /* * Game Settings */ GUILayout.BeginVertical("Game Settings", boxStyle); EditorGUILayout.Space(); EditorGUILayout.Space(); if (_gameSettings == null) { rect = EditorGUILayout.GetControlRect(); rect.width = Mathf.Min(rect.width, BTN_WIDTH); if (GUI.Button(rect, "Create Default GameSettings Data Resource")) { var tps = (from t in TypeUtil.GetTypesAssignableFrom(typeof(GameSettings)) where !t.IsAbstract && !t.IsInterface select t).ToArray(); var menu = new GenericMenu(); foreach (var tp in tps) { menu.AddItem(EditorHelper.TempContent(tp.Name), false, () => { _gameSettings = ScriptableObjectHelper.CreateAsset(tp, GameSettings.PATH_DEFAULTSETTINGS_FULL) as GameSettings; }); } menu.ShowAsContext(); } } else { EditorGUILayout.ObjectField("Game Settings", _gameSettings, typeof(GameSettings), false); } EditorGUILayout.Space(); if (_timeLayersData == null) { rect = EditorGUILayout.GetControlRect(); rect.width = Mathf.Min(rect.width, BTN_WIDTH); if (GUI.Button(rect, "Create Custom Time Layers Data Resource")) { _timeLayersData = ScriptableObjectHelper.CreateAsset <CustomTimeLayersData>(CustomTimeLayersData.PATH_DEFAULTSETTINGS_FULL); } } else { EditorGUILayout.ObjectField("Custom Time Layers Data", _timeLayersData, typeof(CustomTimeLayersData), false); } GUILayout.EndVertical(); EditorGUILayout.Space(); EditorGUILayout.Space(); this.DrawScenes(); }
public override void OnInspectorGUI() { #region Original if (SavedFoldoutShared("OriginalGUI")) { EditorGUI.indentLevel++; base.OnInspectorGUI(); EditorGUI.indentLevel--; EditorGUILayout.Space(); } #endregion //Prep ControlScheme ct = (ControlScheme)target; EditorGUILayout.Space(); #region Action selection and setting // Set & select a new action list EditorGUILayout.BeginHorizontal(); selectedIndex = EditorGUILayout.Popup(selectedIndex, AllEnumsNames); if (GUILayout.Button("ResetActions")) { ct.SetActionsFromEnum(AllEnums[selectedIndex]); } EditorGUILayout.EndHorizontal(); #endregion #region PlayerID & Xbox ID // PlayerID EditorGUILayout.BeginHorizontal(); { EditorGUILayout.LabelField("PlayerID", GUILayout.Width(60.0f)); ct.playerID = EditorGUILayout.IntField(ct.playerID, GUILayout.Width(20.0f)); EditorGUILayout.LabelField("XboxSupport: " + ct.XboxSupport.ToString()); } EditorGUILayout.EndHorizontal(); if (xboxSupport) { EditorGUILayout.BeginHorizontal(); { EditorGUILayout.LabelField("ControllerID", GUILayout.Width(80.0f)); ct.controllerID = EditorGUILayout.IntField(ct.controllerID, GUILayout.Width(20.0f)); EditorGUILayout.LabelField("LastInput: " + ct.InputType.ToString()); } EditorGUILayout.EndHorizontal(); } #endregion #region Horizontal if (SavedFoldoutShared("Horizontal Axis")) { int delete = -1; bool add = false; for (int i = 0; i < ct.Horizontal.AxisKeys.Count; i++) { GUILayout.BeginHorizontal(); if (i == 0 && GUILayout.Button("+", GUILayout.Width(20.0f))) { add = true; } else if (i != 0 && GUILayout.Button("x", GUILayout.Width(20.0f))) { delete = i; } ct.Horizontal.AxisKeys[i].OnGui(); GUILayout.EndHorizontal(); } if (delete >= 0) { ct.Horizontal.AxisKeys.RemoveAt(delete); } if (add) { ct.Horizontal.AxisKeys.Add(AxisKey.PC(KeyCode.LeftArrow, KeyCode.RightArrow)); } } #endregion #region Vertical if (SavedFoldoutShared("Vertical Axis")) { int delete = -1; bool add = false; for (int i = 0; i < ct.Vertical.AxisKeys.Count; i++) { GUILayout.BeginHorizontal(); if (i == 0 && GUILayout.Button("+", GUILayout.Width(20.0f))) { add = true; } else if (i != 0 && GUILayout.Button("x", GUILayout.Width(20.0f))) { delete = i; } ct.Vertical.AxisKeys[i].OnGui(); GUILayout.EndHorizontal(); } if (delete >= 0) { ct.Vertical.AxisKeys.RemoveAt(delete); } if (add) { ct.Vertical.AxisKeys.Add(AxisKey.PC(KeyCode.DownArrow, KeyCode.UpArrow)); } } #endregion #region Actions if (SavedFoldoutShared("Actions")) { for (int i = 0; i < ct.Actions.Count; i++) { EditorGUI.indentLevel++; // For each action - Show a foldout if (SavedFoldoutShared(ct.Actions[i].Name)) { int delete = -1; bool add = false; EditorGUI.indentLevel++; if (ct.Actions[i].Keys.Count == 0 && GUILayout.Button("Add a key")) { add = true; } for (int j = 0; j < ct.Actions[i].Keys.Count; j++) { GUILayout.BeginHorizontal(); if (j == 0 && GUILayout.Button("+", GUILayout.Width(20.0f))) { add = true; } else if (j != 0 && GUILayout.Button("x", GUILayout.Width(20.0f))) { delete = j; } ct.Actions[i].Keys[j].OnGui(); GUILayout.EndHorizontal(); } EditorGUI.indentLevel--; if (delete >= 0) { ct.Actions[i].Keys.RemoveAt(delete); } if (add) { ct.Actions[i].Keys.Add(ControlKey.PCKey(KeyCode.KeypadEnter)); } } EditorGUI.indentLevel--; } } #endregion if (GUI.changed) { xboxSupport = ((ControlScheme)(target)).XboxSupport; ScriptableObjectHelper.RefreshAsset(ct); } }