internal static bool Show(Rect rect, AnimatorController controller, int layerIndex, UnityEngine.Object[] targets) { UnityEngine.Object[] objArray = UnityEngine.Resources.FindObjectsOfTypeAll(typeof(AddStateMachineBehaviourComponentWindow)); if (objArray.Length > 0) { ((EditorWindow)objArray[0]).Close(); return(false); } long num = DateTime.Now.Ticks / 0x2710L; if (num >= (s_LastClosedTime + 50L)) { Event.current.Use(); if (s_AddComponentWindow == null) { s_AddComponentWindow = ScriptableObject.CreateInstance <AddStateMachineBehaviourComponentWindow>(); } s_AddComponentWindow.m_Controller = controller; s_AddComponentWindow.m_LayerIndex = layerIndex; s_AddComponentWindow.m_Targets = targets; s_AddComponentWindow.Init(rect); return(true); } return(false); }
protected void AddBehaviourButton() { bool flag2; EditorGUILayout.Space(); Rect position = GUILayoutUtility.GetRect(styles.addBehaviourLabel, styles.addBehaviourButtonStyle, null); position.x += (position.width - 230f) / 2f; position.width = 230f; bool flag = UnityEditor.Animations.AnimatorController.CanAddStateMachineBehaviours(); using (new EditorGUI.DisabledScope(!flag)) { flag2 = EditorGUI.ButtonMouseDown(position, styles.addBehaviourLabel, FocusType.Passive, styles.addBehaviourButtonStyle); } if (flag2) { UnityEngine.Object[] targets = new UnityEngine.Object[] { this.m_Target }; if (AddStateMachineBehaviourComponentWindow.Show(position, this.m_ControllerContext, this.m_LayerIndexContext, targets)) { GUIUtility.ExitGUI(); } } EditorGUILayout.Space(); if (!flag) { EditorGUILayout.HelpBox("Please fix compile errors before creating new state machine behaviours", MessageType.Error, true); } }
private void OnEnable() { s_AddComponentWindow = this; this.m_SelectedIndex = 0; this.m_Search = EditorPrefs.GetString("StateMachineBehaviourSearchString", ""); this.m_Tree = null; this.m_SearchTree = null; }
private void OnDisable() { s_LastClosedTime = DateTime.Now.Ticks / 0x2710L; s_AddComponentWindow = null; }
private void OnDisable() { AddStateMachineBehaviourComponentWindow.s_LastClosedTime = DateTime.Now.Ticks / 10000L; AddStateMachineBehaviourComponentWindow.s_AddComponentWindow = null; }