ActionBehaviour

You can create an ActionBehaviour script and add the original action by describing what you want to do.

Create an ActionBehaviour script file

  • Right click at the place you want to create from the Project window.
  • From the right-click menu, select “Create > Arbor > Behavior tree > ActionBehaviour C# Script”.
  • Enter the file name and confirm

Function to be called

If you add the ActionBehavior you created to the Behavior Tree graph, each function of the script will be called.

  • OnAwake
    It is called the first time the action node becomes active.
  • OnStart
    Called when the action node becomes active.
  • OnExecute
    It is called when the action node is executed.
    For the execution timing, see UpdateSettings and ExecutionSettings in BehaviourTree.
    Arbor Reference : BehaviourTree
  • OnAbort
    Called when the node is interrupted by the Decorator.
  • OnEnd
    Called when the action node exits.

Important point

  • For enabled of MonoBehaviour are used internally already for execution control, please use the behaviourEnabled to be a substitute.

Call order

  • You can also use the callback method of MonoBehaviour other than OnEnable and OnDisable, but please be aware that Start () will be called after OnExecute().

Declaring variables

You can edit it in Arbor Editor by declaring a field with public or SerializedField attribute added to the created script.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using Arbor;
using Arbor.BehaviourTree;

[AddComponentMenu("")]
public class TestActionBehaviour : ActionBehaviour
{
	public string myName;
	// The rest is omitted.
}

Finish Execute

It can be terminated by calling FinishExecute(bool result) in the OnExecute method.

1
2
3
4
	if (Input.GetKey(KeyCode.Space) )
	{
		FinishExecute(true);
	}

Data flow

It is possible to input / output values by data flow.

For details, see “Scripting: Data flow”.

Scripting : Data flow