public void OnEnable() { BTAsset btAsset = (BTAsset) serializedObject.targetObject; BehaviorTree bt = btAsset.Deserialize(); manager = BTEditorManager.CreateInstance(bt, btAsset); manager.btInspector = this; }
public void OnEnable() { BehaviorTreeAgent btAgent = target as BehaviorTreeAgent; BehaviorTree bt = null; if (btAgent.behaviorTree == null) { btAgent.Awake(); } bt = btAgent.behaviorTree; if (bt != null) { _manager = BTEditorManager.Manager; if (!_manager) { _manager = BTEditorManager.CreateInstance(bt, btAgent.btAsset); } else { _manager.behaviorTree = bt; } _manager.btInspector = this; _manager.inspectedAgent = btAgent; } }
public void OnEnable() { BTAsset btAsset = (BTAsset)serializedObject.targetObject; BehaviorTree bt = btAsset.Deserialize(); manager = BTEditorManager.CreateInstance(bt, btAsset); manager.btInspector = this; }
public static BTEditorManager CreateInstance(BehaviorTree bt, BTAsset asset) { if (Manager == null) { Manager = (BTEditorManager)ScriptableObject.CreateInstance(typeof(BTEditorManager)); Manager.behaviorTree = bt; Manager.btAsset = asset; } return(Manager); }
public static BTEditorManager CreateInstance(BehaviorTree bt, BTAsset asset) { if (Manager == null) { Manager = (BTEditorManager)ScriptableObject.CreateInstance(typeof(BTEditorManager)); Manager.behaviorTree = bt; Manager.btAsset = asset; // When the user clicks on a node to select it, while viewing the behavior tree associated with a GO with a BehaviorTreeAgent component // we store the selection then switch the Unity Editor selection over to the appropriate BTAsset. Once the Manager for the BTAsset is // created (here!) we perform the original selection. if (QueuedSelectionFor == asset) { Manager.SelectNode(bt.GetNodeByGUID(QueuedSelectionGUID)); QueuedSelectionFor = null; QueuedSelectionGUID = null; } } return(Manager); }
public void OnDestroy() { Manager = null; DestroyImmediate(behaviorTree); }