# BehaviourTree

Switch to Manual Switch to Inspector Reference

Class in Arbor.BehaviourTree / Inherits from: BehaviourTreeInternal

## Description

Core part of BehaviourTree.
Is used by attaching to GameObject.

## Remarks

Click on the Open Editor button to open the Arbor Editor Window.

## Inherited Members

### Fields

Field Name | Description
--- | ---
debugInfiniteLoopSettings | Debug setting of infinite loop
executionSettings | Settings related to execution.
graphName | The Graph name. It is used for identification and retrieval when there is more than one Graph in one GameObject.
playOnStart | Flag to be played at the start.
restartOnFinish | Flag to restart at finish.
updateSettings | Settings related to updating.

### Properties

Property Name | Description
--- | ---
actionNodes | Get ActionNode List
calculatorBranchCount | Get a count of DataBranch.
calculatorBranchies | Gets all ofDataBranch.
calculatorBranchRerouteNodes | DataBranchRerouteNode list
calculatorCount | Get a count of CalculatorNode.
calculators | Gets all ofCalculatorNode.
commentCount | Get a count of CommentNode.
comments | Gets all ofCommentNode.
compositeNodes | Get CompositeNode List
currentDebugInfiniteLoopSettings | Current infinite loop debug setting.
currentNode | Current active node
dataBranchCount | Get a count of DataBranch.
dataBranchRerouteNodes | DataBranchRerouteNode list
displayGraphName | Display name of the node graph. If graphName is empty or null, it returns “(No Name)".
external | Flag used as an external graph
groupCount | Get a count of GroupNode.
isDeserialized | Returns whether or not deserialization has been done.
isStarted | Returns true if Start has been called.
nodeBranchies | Get NodeBranch List
nodeCount | Get a count of Node.
ownerBehaviour | NodeBehaviour is the owner of this graph
ownerBehaviourObject | Object of NodeBehaviour own this graph
parameterContainer | The ParameterContainer assigned in this graph
parentGraph | Parent graph
playState | Play state
rootGraph | Root graph
rootNode | Get RootNode

### Events

Event Name | Description
--- | ---
destroyCallback | Call back when being destroyed
onAfterDeserialize | Callback after deserialization
onChangedGraphTree | Callback called when the graph tree changes
stateChangedCallback | Call back when the state changes

### Methods

Method Name | Description
--- | ---
CalculatePriority | Calculate priority of nodes.
CheckLoop | Check whether the connection of the node is looping.
CheckLoopCalculatorBranch | Check if DataBranch is looping.
CheckLoopDataBranch | Check if DataBranch is looping.
ConnectBranch | Connect NodeBranch.
ConnectCalculatorBranch | Connect DataSlot.
ConnectDataBranch | Connect DataSlot.
CreateAction | Create ActionNode.
CreateCalculator | Create calculator.
CreateCalculatorBranchRerouteNode | Create DataBranchRerouteNode.
CreateComment | Create comment.
CreateComposite | Create Composite.
CreateDataBranchRerouteNode | Create DataBranchRerouteNode.
CreateGroup | Create group.
DeleteCalculator | Delete calculator.
DeleteCalculatorBranch | Delete DataBranch.
DeleteCalculatorBranchRerouteNode | Delete DataBranchRerouteNode.
DeleteComment | Delete comment.
DeleteDataBranch | Delete DataBranch.
DeleteDataBranchRerouteNode | Delete DataBranchRerouteNode.
DeleteGroup | Delete group.
DeleteNode | Delete node.
DestroySubComponents | Method to be used internally. In particular there is no need to call.
DisconnectBranch | Disconnect NodeBranch
DisconnectDataBranch | Method to be used internally. In particular there is no need to call.
Execute | Execute manually. Please call this method at any timing when UpdateSettings.type is Manual.
ExecuteLateUpdate | Perform an LateUpdate. Please call this method at any timing when UpdateSettings.type is Manual.
ExecuteUpdate | Perform an update. Please call this method at any timing when UpdateSettings.type is Manual.
FindCalculator | Acquisition of CalculatorNodes Calculator belongs.
FindNodeContainsBehaviour | Acquisition of nodes NodeBehaviour belongs.
GetCalculatorBranchFromID | GetsDataBranchfrom the calculator branch identifier.
GetCalculatorBranchFromIndex | Get DataBranch from index.
GetCalculatorBranchIndex | Get DataBranch index.
GetCalculatorFromID | GetsCalculatorNodefrom the calculator identifier.
GetCalculatorFromIndex | Get CalculatorNode from index.
GetCalculatorIndex | Get CalculatorNode index.
GetCommentFromID | GetsCommentNodefrom the comment identifier.
GetCommentFromIndex | Get CommentNode from index.
GetCommentIndex | Get CommentNode index.
GetDataBranchFromID | GetsDataBranchfrom the calculator branch identifier.
GetDataBranchFromIndex | Get DataBranch from index.
GetDataBranchIndex | Get DataBranch index.
GetGroupFromID | GetsGroupNodefrom the group identifier.
GetGroupFromIndex | Get GroupNode from index.
GetNodeFromID | GetsNodefrom the node identifier.
GetNodeFromIndex | Get Node from index.
GetUniqueNodeID | Get a unique node ID.
IsRevaluation | It returns the reevaluation node.
IsUniqueNodeID | Check if it is a unique node ID.
OnDeleteNode | Delete node.
OnDestroy | This function is called when MonoBehaivour will be destroyed.
OnFixedUpdate | Called when FixedUpdate.
OnLateUpdate | Called when LateUpdate.
OnPause | Called when you pause.
OnPlay | Called when you start playing.
OnPlayOnStart | Called when playing is started with the Start method.
OnPoolResume | Called when resuming.
OnPoolSleep | Called when stored in the pool.
OnRegisterNodes | Register nodes
OnReset | Reset or create callback.
OnResume | Called when resuming
OnResumeOnEnable | Called when resumed with the OnEnable method.
OnStop | Called when play is stopped.
OnUpdate | Called when updating.
OnValidate | See MonoBehaviour.OnValidate.
OnValidateNodes | Called when the node is changed.
Pause | Pause playback.
Play | Start playing.
RefreshDataBranchies | Update the connection status of Data Branch.
RegisterNode | Register the node in the list
RemoveNode | Remove the node from the list.
Resume | Resume playing.
SetExternal | Set this graph as an external graph.
StateChanged | Notifies that the status of the graph has been updated.
Stop | Stopping playback.
ToString | Convert graph to string (for debugging).

### Static Methods

Method Name | Description
--- | ---
Create | Create NodeGraph
Destroy | Destroy NodeGraph
FindGraph | Get the NodeGraph that in the scene with the name.
FindGraphs | Get the NodeGraph of the same name that is in the scene.
Instantiate | Instantiate NodeGraph