Arbor 3: FSM & BT Graph Editor  3.7.8
ArborFSM Class Reference

Core part of StateMachine. More...

Inheritance diagram for ArborFSM:
ArborFSMInternal NodeGraph IPoolCallbackReceiver

Static Public Member Functions

static ArborFSM FindFSM (string name)
 Get the ArborFSM that in the scene with the name. More...
 
static ArborFSM[] FindFSMs (string name)
 Get the ArborFSM of the same name that is in the scene. More...
 
static ArborFSM FindFSM (GameObject gameObject, string name)
 Get ArborFSM in the name that has been attached to the GameObject. More...
 
static ArborFSM[] FindFSMs (GameObject gameObject, string name)
 Get the ArborFSM of the same name that is attached to a GameObject. More...
 
- 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...
 

Additional Inherited Members

- Public Member Functions inherited from ArborFSMInternal
int IndexOfStateLinkHistory (StateLink stateLink)
 Retrieve the index in the history that transited by the specified StateLink. More...
 
State GetStateFromIndex (int index)
 Get State from index. More...
 
int GetStateIndex (State state)
 Get State index. More...
 
State GetStateFromID (int stateID)
 Gets Arbor.State from the state identifier. More...
 
State GetState (StateLink stateLink)
 Gets Arbor.State from the StateLink. More...
 
State CreateState (int nodeID, bool resident)
 Create state. More...
 
State CreateState (bool resident)
 Create state. More...
 
State CreateState ()
 Create state. More...
 
State FindState (string stateName)
 Search state by name. More...
 
State[] FindStates (string stateName)
 Search state by name. More...
 
State FindStateContainsBehaviour (StateBehaviour behaviour)
 Acquisition of states StateBehaviour belongs. More...
 
bool DeleteState (State state)
 Delete state. More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID, Color lineColor)
 Create StateLinkRerouteNode. More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID)
 Create StateLinkRerouteNode. More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, Color lineColor)
 Create StateLinkRerouteNode. More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position)
 Create StateLinkRerouteNode. More...
 
void Play ()
 Start playing the state machine. More...
 
void Stop ()
 Stopping playback of the state machine. More...
 
void Pause ()
 Pause playback of the state machine. More...
 
void Resume ()
 Resume playing state machine. More...
 
void ExecuteUpdate (bool autoExecuteLateUpdate=false)
 Perform an update. More...
 
void ExecuteLateUpdate ()
 Perform an LateUpdate. More...
 
bool Transition (State nextState, TransitionTiming transitionTiming)
 State transition More...
 
bool Transition (State nextState, bool immediateTransition)
 State transition More...
 
bool Transition (State nextState)
 State transition. More...
 
bool Transition (int nextStateID, TransitionTiming transitionTiming)
 State transition More...
 
bool Transition (int nextStateID, bool immediateTransition)
 State transition More...
 
bool Transition (int nextStateID)
 State transition. More...
 
bool Transition (StateLink nextStateLink, TransitionTiming transitionTiming)
 State transition More...
 
bool Transition (StateLink nextStateLink, bool immediateTransition)
 State transition More...
 
bool Transition (StateLink nextStateLink)
 State transition. More...
 
void SendTrigger (string message, SendTriggerFlags flags)
 Sending of trigger More...
 
void SendTrigger (string message)
 Sending of trigger 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...
 
virtual void OnValidateNodes ()
 Called when the node is changed. 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...
 
virtual void OnDestroy ()
 This function is called when MonoBehaivour will be destroyed. 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 inherited from ArborFSMInternal
bool playOnStart = true
 Flag to be played at the start. More...
 
UpdateSettings updateSettings = new UpdateSettings()
 Settings related to updating. More...
 
- Public Attributes inherited from NodeGraph
string graphName = ""
 The Graph name. More...
 
DebugInfiniteLoopSettings debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
 Debug setting of infinite loop More...
 
- Static Public Attributes inherited from ArborFSMInternal
const SendTriggerFlags allSendTrigger = (SendTriggerFlags)(-1)
 All flags in SendTriggerFlags are valid More...
 
- Protected Member Functions inherited from ArborFSMInternal
override bool OnDeleteNode (Node node)
 Delete node. More...
 
override void OnValidate ()
 See MonoBehaviour.OnValidate. More...
 
sealed override void OnReset ()
 Reset or create callback. More...
 
sealed override void OnRegisterNodes ()
 Register nodes More...
 
- Properties inherited from ArborFSMInternal
PlayState playState [get]
 Play state More...
 
string fsmName [get, set]
 The FSM name. More...
 
int startStateID [get]
 Gets the start state identifier. More...
 
State currentState [get]
 Gets Arbor.State of the current. More...
 
State prevTransitionState [get]
 Prev state More...
 
State nextTransitionState [get]
 Next state More...
 
State nextState [get]
 Gets the transition reserved Arbor.State. More...
 
State reservedState [get]
 Gets the transition reserved Arbor.State. More...
 
StateLink reservedStateLink [get]
 Gets the transition reserved Arbor.StateLink. More...
 
int stateCount [get]
 Get a count of State. More...
 
StateLinkRerouteNodeList stateLinkRerouteNodes [get]
 StateLinkRerouteNode List More...
 
State[] states [get]
 Gets all of Arbor.State. 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...
 
- 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

Core part of StateMachine.


Is used by attaching to GameObject.

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

Member Function Documentation

◆ FindFSM() [1/2]

static ArborFSM FindFSM ( GameObject  gameObject,
string  name 
)
static

Get ArborFSM in the name that has been attached to the GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search ArborFSM.
Returns
Found ArborFSM. Returns null if not found.

◆ FindFSM() [2/2]

static ArborFSM FindFSM ( string  name)
static

Get the ArborFSM that in the scene with the name.

Parameters
nameThe name of the search ArborFSM
Returns
Found ArborFSM. Returns null if not found.

◆ FindFSMs() [1/2]

static ArborFSM [] FindFSMs ( GameObject  gameObject,
string  name 
)
static

Get the ArborFSM of the same name that is attached to a GameObject.

Parameters
gameObjectWant to search GameObject.
nameThe name of the search ArborFSM.
Returns
Array of found ArborFSM.

◆ FindFSMs() [2/2]

static ArborFSM [] FindFSMs ( string  name)
static

Get the ArborFSM of the same name that is in the scene.

Parameters
nameThe name of the search ArborFSM.
Returns
Array of found ArborFSM.