private void OnDoubleClicked() { if (m_node is RunBehaviour) { RunBehaviour rb = (RunBehaviour)m_node; if (rb.BehaviourTreeAsset != null) { if (BTEditorCanvas.Current.IsDebuging && rb.BehaviourTree != null) { BehaviourTreeEditor.OpenSubtreeDebug(rb.BehaviourTreeAsset, rb.BehaviourTree); } else { BehaviourTreeEditor.OpenSubtree(rb.BehaviourTreeAsset); } } } else if (m_node is NodeGroup) { if (IsRoot) { m_graph.OnPopNodeGroup(); } else { m_graph.OnPushNodeGroup(this); } } }
protected override void DrawProperties() { RunBehaviour target = (RunBehaviour)Target; bool prevGUIState = GUI.enabled; target.BehaviourTreeAsset = EditorGUILayout.ObjectField("Behaviour Tree", target.BehaviourTreeAsset, typeof(BTAsset), false) as BTAsset; EditorGUILayout.Space(); if (BTEditorCanvas.Current.IsDebuging && target.BehaviourTreeAsset != null && target.BehaviourTree != null) { GUI.enabled = true; if (GUILayout.Button("Preview", GUILayout.Height(24.0f))) { BehaviourTreeEditor.OpenSubtreeDebug(target.BehaviourTreeAsset, target.BehaviourTree); } } else { GUI.enabled = target.BehaviourTreeAsset != null; if (GUILayout.Button("Open", GUILayout.Height(24.0f))) { BehaviourTreeEditor.OpenSubtree(target.BehaviourTreeAsset); } } GUI.enabled = prevGUIState; }