Arbor 3: FSM & BT Graph Editor 3.6.8

Public Member Functions | Public Attributes | Protected Member Functions | Properties | List of all members
BehaviourTreeInternal Class Reference

Internal class of Arbor.BehaviourTree. More...

Inheritance diagram for BehaviourTreeInternal:

## Public Member Functions
bool | IsRevaluation (TreeNodeBase node)
| It returns the reevaluation node. More...
void | Play ()
| Start playing the behaviour tree. More...
void | Stop ()
| Stopping playback of the behaviour tree. More...
void | Pause ()
| Pause playback of the behaviour tree. More...
void | Resume ()
| Resume playing behaviour tree. More...
CompositeNode | CreateComposite (Vector2 position, int nodeID, System.Type classType)
| Create Composite. More...
CompositeNode | CreateComposite (Vector2 position, System.Type classType)
| Create Composite. More...
ActionNode | CreateAction (Vector2 position, int nodeID, System.Type classType)
| Create ActionNode. More...
ActionNode | CreateAction (Vector2 position, System.Type classType)
| Create ActionNode. More...
void | CalculatePriority ()
| Calculate priority of nodes. More...
override void | OnValidateNodes ()
| Called when the node is changed. More...
bool | CheckLoop (TreeNodeBase parentNode, TreeNodeBase childNode)
| Check whether the connection of the node is looping. More...
NodeBranch | ConnectBranch (int branchID, TreeNodeBase parentNode, TreeNodeBase childNode)
| Connect NodeBranch. More...
NodeBranch | ConnectBranch (TreeNodeBase parentNode, TreeNodeBase childNode)
| Connect NodeBranch. More...
void | DisconnectBranch (NodeBranch branch)
| Disconnect NodeBranch More...
void | Execute ()
| Execute manually. More...
Public Member Functions inherited from NodeGraph
Node | GetNodeFromIndex (int index)
| Get Node from index. More...
Node | GetNodeFromID (int nodeID)
| Gets Arbor.Node from the node identifier. More...
CalculatorNode | GetCalculatorFromIndex (int index)
| Get CalculatorNode from index. More...
int | GetCalculatorIndex (CalculatorNode calculator)
| Get CalculatorNode index. More...
CalculatorNode | GetCalculatorFromID (int calculatorID)
| Gets Arbor.CalculatorNode from the calculator identifier. More...
CalculatorNode | CreateCalculator (int nodeID, System.Type calculatorType)
| Create calculator. More...
CalculatorNode | CreateCalculator (System.Type calculatorType)
| Create calculator. More...
CalculatorNode | FindCalculator (Calculator calculator)
| Acquisition of CalculatorNodes Calculator belongs. More...
bool | DeleteCalculator (CalculatorNode calculatorNode)
| Delete calculator. More...
CommentNode | GetCommentFromIndex (int index)
| Get CommentNode from index. More...
int | GetCommentIndex (CommentNode comment)
| Get CommentNode index. More...
CommentNode | GetCommentFromID (int commentID)
| Gets Arbor.CommentNode from the comment identifier. More...
CommentNode | CreateComment (int nodeID)
| Create comment. More...
CommentNode | CreateComment ()
| Create comment. More...
void | DeleteComment (CommentNode comment)
| Delete comment. More...
GroupNode | GetGroupFromIndex (int index)
| Get GroupNode from index. More...
GroupNode | CreateGroup (int nodeID)
| Create group. More...
GroupNode | CreateGroup ()
| Create group. More...
void | DeleteGroup (GroupNode group)
| Delete group. More...
GroupNode | GetGroupFromID (int groupID)
| Gets Arbor.GroupNode from the group identifier. More...
DataBranchRerouteNode | CreateDataBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
| Create DataBranchRerouteNode. More...
DataBranchRerouteNode | CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
| Create DataBranchRerouteNode. More...
DataBranchRerouteNode | CreateDataBranchRerouteNode (Vector2 position, System.Type type)
| Create DataBranchRerouteNode. More...
DataBranchRerouteNode | CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type)
| Create DataBranchRerouteNode. More...
void | DeleteDataBranchRerouteNode (DataBranchRerouteNode rerouteNode)
| Delete DataBranchRerouteNode. More...
void | DeleteCalculatorBranchRerouteNode (DataBranchRerouteNode rerouteNode)
| Delete DataBranchRerouteNode. More...
bool | DeleteNode (Node node)
| Delete node. More...
Node | FindNodeContainsBehaviour (NodeBehaviour behaviour)
| Acquisition of nodes NodeBehaviour belongs. More...
DataBranch | GetDataBranchFromIndex (int index)
| Get DataBranch from index. More...
DataBranch | GetCalculatorBranchFromIndex (int index)
| Get DataBranch from index. More...
int | GetDataBranchIndex (DataBranch branch)
| Get DataBranch index. More...
int | GetCalculatorBranchIndex (DataBranch branch)
| Get DataBranch index. More...
DataBranch | GetDataBranchFromID (int branchID)
| Gets Arbor.DataBranch from the calculator branch identifier. More...
DataBranch | GetCalculatorBranchFromID (int branchID)
| Gets Arbor.DataBranch from the calculator branch identifier. More...
DataBranch | ConnectDataBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| Connect DataSlot. More...
DataBranch | ConnectCalculatorBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| Connect DataSlot. More...
DataBranch | ConnectDataBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| Connect DataSlot. More...
DataBranch | ConnectCalculatorBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| Connect DataSlot. More...
void | DisconnectDataBranch (Object obj)
| Method to be used internally. More...
void | DeleteDataBranch (DataBranch branch)
| Delete DataBranch. More...
void | DeleteCalculatorBranch (DataBranch branch)
| Delete DataBranch. More...
bool | CheckLoopDataBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
| Check if DataBranch is looping. More...
bool | CheckLoopCalculatorBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
| Check if DataBranch is looping. More...
delegate void | NodeGraphCallback (NodeGraph nodeGraph)
| Delegate for NodeGraph callback More...
void | DestroySubComponents (bool callback=true)
| Method to be used internally. More...
override string | ToString ()
| Convert graph to string (for debugging). More...
void | OnPoolResume ()
| Called when resuming. More...
void | OnPoolSleep ()
| Called when stored in the pool. More...

## Public Attributes
bool | playOnStart = true
| Flag to be played at the start. More...
bool | restartOnFinish = true
| Flag to restart at finish. More...
UpdateSettings | updateSettings = new UpdateSettings()
| Settings related to updating. More...
ExecutionSettings | executionSettings = new ExecutionSettings()
| Settings related to execution. More...
Public Attributes inherited from NodeGraph
string | graphName = ""
| The Graph name. More...
DebugInfiniteLoopSettings | debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
| Debug setting of infinite loop More...

## Protected Member Functions
sealed override void | OnReset ()
| Reset or create callback. More...
override bool | OnDeleteNode (Node node)
| Delete node. More...
Protected Member Functions inherited from NodeGraph
virtual void | OnValidate ()
| See MonoBehaviour.OnValidate. More...

## Properties
PlayState | playState`[get]`
| Play state More...
NodeBranchies | nodeBranchies`[get]`
| Get NodeBranch List More...
CompositeNodeList | compositeNodes`[get]`
| Get CompositeNode List More...
ActionNodeList | actionNodes`[get]`
| Get ActionNode List More...
RootNode | rootNode`[get]`
| Get RootNode More...
TreeNodeBase | currentNode`[get]`
| Current active node More...
Properties inherited from NodeGraph
NodeGraph | parentGraph`[get]`
| Parent graph More...
NodeGraph | rootGraph`[get]`
| Root graph More...
Object | ownerBehaviourObject`[get, set]`
| Object of NodeBehaviour own this graph More...
NodeBehaviour | ownerBehaviour`[get, set]`
| NodeBehaviour is the owner of this graph More...
ParameterContainerInternal | parameterContainer`[get]`
| The ParameterContainer assigned in this graph More...
string | displayGraphName`[get]`
| Display name of the node graph. More...
DebugInfiniteLoopSettings | currentDebugInfiniteLoopSettings`[get]`
| Current infinite loop debug setting. More...
bool | external`[get]`
| Flag instantiated from external graph More...
int | nodeCount`[get]`
| Get a count of Node. More...
int | calculatorCount`[get]`
| Get a count of CalculatorNode. More...
CalculatorNode[] | calculators`[get]`
| Gets all of Arbor.CalculatorNode. More...
int | commentCount`[get]`
| Get a count of CommentNode. More...
CommentNode[] | comments`[get]`
| Gets all of Arbor.CommentNode. More...
int | groupCount`[get]`
| Get a count of GroupNode. More...
DataBranchRerouteNodeList | dataBranchRerouteNodes`[get]`
| DataBranchRerouteNode list More...
DataBranchRerouteNodeList | calculatorBranchRerouteNodes`[get]`
| DataBranchRerouteNode list More...
int | dataBranchCount`[get]`
| Get a count of DataBranch. More...
int | calculatorBranchCount`[get]`
| Get a count of DataBranch. More...
DataBranch[] | calculatorBranchies`[get]`
| Gets all of Arbor.DataBranch. More...
bool | isDeserialized`[get]`
| Returns whether or not deserialization has been done. More...

## Additional Inherited Members
Static Public Member Functions inherited from NodeGraph
static NodeGraph | FindGraph (string name)
| Get the NodeGraph that in the scene with the name. More...
static NodeGraph | FindGraph (string name, System.Type type)
| Get the NodeGraph that in the scene with the name. More...
static T | FindGraph< T > (string name)
| Get the NodeGraph that in the scene with the name. More...
static NodeGraph[] | FindGraphs (string name)
| Get the NodeGraph of the same name that is in the scene. More...
static NodeGraph[] | FindGraphs (string name, System.Type type)
| Get the NodeGraph of the same name that is in the scene. More...
static T[] | FindGraphs< T > (string name)
| Get the NodeGraph of the same name that is in the scene. More...
static NodeGraph | FindGraph (GameObject gameObject, string name)
| Get NodeGraph in the name that has been attached to the GameObject. More...
static NodeGraph | FindGraph (GameObject gameObject, string name, System.Type type)
| Get NodeGraph in the name that has been attached to the GameObject. More...
static T | FindGraph< T > (GameObject gameObject, string name)
| Get NodeGraph in the name that has been attached to the GameObject. More...
static NodeGraph[] | FindGraphs (GameObject gameObject, string name)
| Get the NodeGraph of the same name that is attached to a GameObject. More...
static NodeGraph[] | FindGraphs (GameObject gameObject, string name, System.Type type)
| Get the NodeGraph of the same name that is attached to a GameObject. More...
static T[] | FindGraphs< T > (GameObject gameObject, string name)
| Get the NodeGraph of the same name that is attached to a GameObject. More...
static NodeGraph | Create (GameObject gameObject, System.Type classType)
| Create NodeGraph More...
static GraphType | Create< GraphType > (GameObject gameObject)
| Create NodeGraph More...
static NodeGraph | Instantiate (NodeGraph sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
| Instantiate NodeGraph More...
static GraphType | Instantiate< GraphType > (GraphType sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
| Instantiate NodeGraph More...
static void | Destroy (NodeGraph nodeGraph)
| Destroy NodeGraph More...
Events inherited from NodeGraph
System.Action | onAfterDeserialize
| Callback after deserialization More...
NodeGraphCallback | destroyCallback
| Call back when being destroyed More...
NodeGraphCallback | stateChangedCallback
| Call back when the state changes More...

## Detailed Description

Internal class of Arbor.BehaviourTree.

To actually attach to GameObject is to use the Arbor.BehaviourTree.

## Member Function Documentation

## ◆ CalculatePriority()

void CalculatePriority | ( |  | ) |

Calculate priority of nodes.

## ◆ CheckLoop()

bool CheckLoop | ( | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

Check whether the connection of the node is looping.

Parameters

  parentNode | Parent node
  childNode | Child node

Returns
  Returns true if it is looping.

## ◆ ConnectBranch() [1/2]

NodeBranch ConnectBranch | ( | int | branchID,
|  | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

Connect NodeBranch.

Parameters

  branchID | ID of the NodeBranch to be created
  parentNode | Parent node.
  childNode | Child node.

Returns
  Connected NodeBranch

## ◆ ConnectBranch() [2/2]

NodeBranch ConnectBranch | ( | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

Connect NodeBranch.

Parameters

  parentNode | Parent node.
  childNode | Child node.

Returns
  Connected NodeBranch

## ◆ CreateAction() [1/2]

ActionNode CreateAction | ( | Vector2 | position,
|  | int | nodeID,
|  | System.Type | classType
| ) |  |

Create ActionNode.

Parameters

  position | Node position
  nodeID | Node ID
  classType | ActionBehaviour type

Returns
  The created action node.

## ◆ CreateAction() [2/2]

ActionNode CreateAction | ( | Vector2 | position,
|  | System.Type | classType
| ) |  |

Create ActionNode.

Parameters

  position | Node position
  classType | ActionBehaviour type

Returns
  The created action node.

## ◆ CreateComposite() [1/2]

CompositeNode CreateComposite | ( | Vector2 | position,
|  | int | nodeID,
|  | System.Type | classType
| ) |  |

Create Composite.

Parameters

  position | Node position
  nodeID | Node ID
  classType | CompositeBehaviour type

Returns
  The created coomposite node.

## ◆ CreateComposite() [2/2]

CompositeNode CreateComposite | ( | Vector2 | position,
|  | System.Type | classType
| ) |  |

Create Composite.

Parameters

  position | Node position
  classType | CompositeBehaviour type

Returns
  The created coomposite node.

## ◆ DisconnectBranch()

void DisconnectBranch | ( | NodeBranch | branch | ) |

Disconnect NodeBranch

Parameters

  branch | Disconnect NodeBranch

## ◆ Execute()

void Execute | ( |  | ) |

Execute manually.

Please call this method at any timing when UpdateSettings.type is Manual.

## ◆ IsRevaluation()

bool IsRevaluation | ( | TreeNodeBase | node | ) |

It returns the reevaluation node.

Parameters

  node | Node

Returns
  Returns true if it is a reevaluation node.

## ◆ OnDeleteNode()

override bool OnDeleteNode | ( | Node | node | ) |
| protected virtual

Delete node.

Parameters

  node | The node to delete

Returns
  Returns true if deleted, false otherwise.

Implements NodeGraph.

## ◆ OnReset()

sealed override void OnReset | ( |  | ) |
| protected virtual

Reset or create callback.

Reimplemented from NodeGraph.

## ◆ OnValidateNodes()

override void OnValidateNodes | ( |  | ) |
| virtual

Called when the node is changed.

Reimplemented from NodeGraph.

## ◆ Pause()

void Pause | ( |  | ) |

Pause playback of the behaviour tree.

## ◆ Play()

void Play | ( |  | ) |

Start playing the behaviour tree.

## ◆ Resume()

void Resume | ( |  | ) |

Resume playing behaviour tree.

## ◆ Stop()

void Stop | ( |  | ) |

Stopping playback of the behaviour tree.

## Member Data Documentation

## ◆ executionSettings

ExecutionSettings executionSettings = new ExecutionSettings()

Settings related to execution.

## ◆ playOnStart

bool playOnStart = true

Flag to be played at the start.

## ◆ restartOnFinish

bool restartOnFinish = true

Flag to restart at finish.

## ◆ updateSettings

UpdateSettings updateSettings = new UpdateSettings()

Settings related to updating.

## Property Documentation

## ◆ actionNodes

ActionNodeList actionNodes
| get

Get ActionNode List

## ◆ compositeNodes

CompositeNodeList compositeNodes
| get

Get CompositeNode List

## ◆ currentNode

TreeNodeBase currentNode
| get

Current active node

## ◆ nodeBranchies

NodeBranchies nodeBranchies
| get

Get NodeBranch List

## ◆ playState

PlayState playState
| get

Play state

## ◆ rootNode

RootNode rootNode
| get

Get RootNode