Arbor 3: FSM & BT Graph Editor  3.3.0
ArborFSMInternal Class Reference

Arbor.ArborFSMの内部クラス。 実際にGameObjectにアタッチするにはArbor.ArborFSMを使用する。 More...

Inheritance diagram for ArborFSMInternal:
NodeGraph IPoolCallbackReceiver ArborFSM

Public Member Functions

int IndexOfStateLinkHistory (StateLink stateLink)
 指定したStateLinkによって遷移したヒストリーでのインデックスを取得。 More...
 
State GetStateFromIndex (int index)
 Stateをインデックスから取得 More...
 
int GetStateIndex (State state)
 Stateのインデックスを取得 More...
 
State GetStateFromID (int stateID)
 ステートIDを指定してArbor.Stateを取得する。 More...
 
State GetState (StateLink stateLink)
 StateLinkを指定してArbor.Stateを取得する。 More...
 
State CreateState (int nodeID, bool resident)
 ステートを生成。 More...
 
State CreateState (bool resident)
 ステートを生成。 More...
 
State CreateState ()
 ステートを生成。 More...
 
State FindState (string stateName)
 ステートを名前で検索。 More...
 
State[] FindStates (string stateName)
 ステートを名前で検索。 More...
 
State FindStateContainsBehaviour (StateBehaviour behaviour)
 StateBehaviourが属しているステートの取得。 More...
 
bool DeleteState (State state)
 ステートの削除。 More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID, Color lineColor)
 StateLinkRerouteNodeを作成する。 More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID)
 StateLinkRerouteNodeを作成する。 More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, Color lineColor)
 StateLinkRerouteNodeを作成する。 More...
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position)
 StateLinkRerouteNodeを作成する。 More...
 
void Play ()
 ステートマシンの再生を開始。 More...
 
void Stop ()
 ステートマシンの再生を停止。 More...
 
void Pause ()
 ステートマシンの再生を一時停止。 More...
 
void Resume ()
 ステートマシンの再生を再開。 More...
 
void ExecuteUpdate (bool autoExecuteLateUpdate=false)
 Updateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。 More...
 
void ExecuteLateUpdate ()
 LateUpdateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。 More...
 
bool Transition (State nextState, TransitionTiming transitionTiming)
 状態遷移 More...
 
bool Transition (State nextState, bool immediateTransition)
 状態遷移 More...
 
bool Transition (State nextState)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 More...
 
bool Transition (int nextStateID, TransitionTiming transitionTiming)
 状態遷移 More...
 
bool Transition (int nextStateID, bool immediateTransition)
 状態遷移 More...
 
bool Transition (int nextStateID)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 More...
 
bool Transition (StateLink nextStateLink, TransitionTiming transitionTiming)
 状態遷移 More...
 
bool Transition (StateLink nextStateLink, bool immediateTransition)
 状態遷移 More...
 
bool Transition (StateLink nextStateLink)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 More...
 
void SendTrigger (string message)
 トリガーの送信 More...
 
- Public Member Functions inherited from NodeGraph
Node GetNodeFromIndex (int index)
 Nodeをインデックスから取得 More...
 
Node GetNodeFromID (int nodeID)
 ノードIDを指定してArbor.Nodeを取得する。 More...
 
CalculatorNode GetCalculatorFromIndex (int index)
 CalculatorNodeをインデックスから取得 More...
 
int GetCalculatorIndex (CalculatorNode calculator)
 CalculatorNodeのインデックスを取得 More...
 
CalculatorNode GetCalculatorFromID (int calculatorID)
 演算ノードIDを指定してArbor.CalculatorNodeを取得する。 More...
 
CalculatorNode CreateCalculator (int nodeID, System.Type calculatorType)
 演算ノードを生成。 More...
 
CalculatorNode CreateCalculator (System.Type calculatorType)
 演算ノードを生成。 More...
 
CalculatorNode FindCalculator (Calculator calculator)
 Calculatorが属しているCalculatorNodeの取得。 More...
 
bool DeleteCalculator (CalculatorNode calculatorNode)
 演算ノードの削除。 More...
 
CommentNode GetCommentFromIndex (int index)
 CommentNodeをインデックスから取得 More...
 
int GetCommentIndex (CommentNode comment)
 CommentNodeのインデックスを取得 More...
 
CommentNode GetCommentFromID (int commentID)
 コメントIDを指定してArbor.CommentNodeを取得する。 More...
 
CommentNode CreateComment (int nodeID)
 コメントを生成。 More...
 
CommentNode CreateComment ()
 コメントを生成。 More...
 
void DeleteComment (CommentNode comment)
 コメントの削除。 More...
 
GroupNode GetGroupFromIndex (int index)
 GroupNodeをインデックスから取得 More...
 
GroupNode CreateGroup (int nodeID)
 グループを生成。 More...
 
GroupNode CreateGroup ()
 グループを生成。 More...
 
void DeleteGroup (GroupNode group)
 グループの削除。 More...
 
GroupNode GetGroupFromID (int groupID)
 グループIDを指定してArbor.GroupNodeを取得する。 More...
 
DataBranchRerouteNode CreateDataBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
 DataBranchRerouteNodeを生成。 More...
 
DataBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
 DataBranchRerouteNodeを生成。 More...
 
DataBranchRerouteNode CreateDataBranchRerouteNode (Vector2 position, System.Type type)
 DataBranchRerouteNodeを生成。 More...
 
DataBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type)
 DataBranchRerouteNodeを生成。 More...
 
void DeleteDataBranchRerouteNode (DataBranchRerouteNode rerouteNode)
 DataBranchRerouteNodeの削除。 More...
 
void DeleteCalculatorBranchRerouteNode (DataBranchRerouteNode rerouteNode)
 DataBranchRerouteNodeの削除。 More...
 
virtual void OnValidateNodes ()
 ノードが変更された際に呼ばれる。 More...
 
bool DeleteNode (Node node)
 ノードの削除。 More...
 
Node FindNodeContainsBehaviour (NodeBehaviour behaviour)
 NodeBehaviourが属しているノードの取得。 More...
 
DataBranch GetDataBranchFromIndex (int index)
 DataBranchをインデックスから取得 More...
 
DataBranch GetCalculatorBranchFromIndex (int index)
 DataBranchをインデックスから取得 More...
 
int GetDataBranchIndex (DataBranch branch)
 DataBranchのインデックスを取得 More...
 
int GetCalculatorBranchIndex (DataBranch branch)
 DataBranchのインデックスを取得 More...
 
DataBranch GetDataBranchFromID (int branchID)
 演算ブランチIDを指定してArbor.DataBranchを取得する。 More...
 
DataBranch GetCalculatorBranchFromID (int branchID)
 演算ブランチIDを指定してArbor.DataBranchを取得する。 More...
 
DataBranch ConnectDataBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 DataSlotの接続 More...
 
DataBranch ConnectCalculatorBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 DataSlotの接続 More...
 
DataBranch ConnectDataBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 DataSlotの接続 More...
 
DataBranch ConnectCalculatorBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
 DataSlotの接続 More...
 
void DisconnectDataBranch (Object obj)
 内部的に使用するメソッド。特に呼び出す必要はありません。 More...
 
void DeleteDataBranch (DataBranch branch)
 DataBranchの削除。 More...
 
void DeleteCalculatorBranch (DataBranch branch)
 DataBranchの削除。 More...
 
bool CheckLoopDataBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
 DataBranchがループしているかをチェックする。 More...
 
bool CheckLoopCalculatorBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
 DataBranchがループしているかをチェックする。 More...
 
delegate void NodeGraphCallback (NodeGraph nodeGraph)
 NodeGraphのコールバック用デリゲート More...
 
void DestroySubComponents ()
 内部的に使用するメソッド。特に呼び出す必要はありません。 More...
 
override string ToString ()
 グラフを文字列に変換(デバッグ用)。 More...
 
void OnPoolResume ()
 再開する際に呼ばれる。 More...
 
void OnPoolSleep ()
 プールに格納された際に呼ばれる。 More...
 

Public Attributes

bool playOnStart = true
 開始時に再生するフラグ。 More...
 
UpdateSettings updateSettings = new UpdateSettings()
 更新に関する設定。 More...
 
- Public Attributes inherited from NodeGraph
string graphName
 グラフの名前。
一つのGameObjectに複数のグラフがある場合の識別や検索に使用する。 More...
 
DebugInfiniteLoopSettings debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
 無限ループのデバッグ設定 More...
 

Protected Member Functions

override bool OnDeleteNode (Node node)
 ノードの削除。 More...
 
override void OnValidate ()
 MonoBehaviour.OnValidate を参照してください More...
 
sealed override void OnReset ()
 Resetもしくは生成時のコールバック。 More...
 

Properties

PlayState playState [get]
 再生状態 More...
 
string fsmName [get, set]
 FSMの名前。
一つのGameObjectに複数のFSMがある場合の識別や検索に使用する。 More...
 
int startStateID [get]
 開始ステートのIDを取得する。 More...
 
State currentState [get]
 現在のArbor.Stateを取得する。 More...
 
State prevTransitionState [get]
 前のステート More...
 
State nextTransitionState [get]
 次のステート More...
 
State nextState [get]
 遷移予約されたArbor.Stateを取得する。 More...
 
State reservedState [get]
 遷移予約されたArbor.Stateを取得する。 More...
 
int stateCount [get]
 Stateの数を取得。 More...
 
StateLinkRerouteNodeList stateLinkRerouteNodes [get]
 StateLinkRerouteNodeリスト More...
 
State[] states [get]
 全てのArbor.Stateを取得する。 More...
 
- Properties inherited from NodeGraph
NodeGraph parentGraph [get]
 親グラフ More...
 
NodeGraph rootGraph [get]
 ルートグラフ More...
 
Object ownerBehaviourObject [get, set]
 このグラフの所有者であるNodeBehaviourのObject More...
 
NodeBehaviour ownerBehaviour [get, set]
 このグラフの所有者であるNodeBehaviour More...
 
string displayGraphName [get]
 ノードグラフの表示名。graphNameが空かnullの場合は"(No Name)"を返す。 More...
 
DebugInfiniteLoopSettings currentDebugInfiniteLoopSettings [get]
 現在の無限ループデバッグ設定。 More...
 
bool external [get]
 外部グラフから生成されたフラグ More...
 
int nodeCount [get]
 Nodeの数を取得。 More...
 
int calculatorCount [get]
 CalculatorNodeの数を取得。 More...
 
CalculatorNode[] calculators [get]
 全てのArbor.CalculatorNodeを取得する。 More...
 
int commentCount [get]
 CommentNodeの数を取得。 More...
 
CommentNode[] comments [get]
 全てのArbor.CommentNodeを取得する。 More...
 
int groupCount [get]
 GroupNodeの数を取得。 More...
 
DataBranchRerouteNodeList dataBranchRerouteNodes [get]
 DataBranchRerouteNodeリスト More...
 
DataBranchRerouteNodeList calculatorBranchRerouteNodes [get]
 DataBranchRerouteNodeリスト More...
 
int dataBranchCount [get]
 DataBranchの数を取得。 More...
 
int calculatorBranchCount [get]
 DataBranchの数を取得。 More...
 
DataBranch[] calculatorBranchies [get]
 全てのArbor.DataBranchを取得する。 More...
 

Additional Inherited Members

- Static Public Member Functions inherited from NodeGraph
static NodeGraph FindGraph (string name)
 シーン内にあるNodeGraphを名前で取得する。 More...
 
static NodeGraph FindGraph (string name, System.Type type)
 シーン内にあるNodeGraphを名前で取得する。 More...
 
static T FindGraph< T > (string name)
 シーン内にあるNodeGraphを名前で取得する。 More...
 
static NodeGraph[] FindGraphs (string name)
 シーン内にある同一名のNodeGraphを取得する。 More...
 
static NodeGraph[] FindGraphs (string name, System.Type type)
 シーン内にある同一名のNodeGraphを取得する。 More...
 
static T[] FindGraphs< T > (string name)
 シーン内にある同一名のNodeGraphを取得する。 More...
 
static NodeGraph FindGraph (GameObject gameObject, string name)
 GameObjectにアタッチされているNodeGraphを名前で取得する。 More...
 
static NodeGraph FindGraph (GameObject gameObject, string name, System.Type type)
 GameObjectにアタッチされているNodeGraphを名前で取得する。 More...
 
static T FindGraph< T > (GameObject gameObject, string name)
 GameObjectにアタッチされているNodeGraphを名前で取得する。 More...
 
static NodeGraph[] FindGraphs (GameObject gameObject, string name)
 GameObjectにアタッチされている同一名のNodeGraphを取得する。 More...
 
static NodeGraph[] FindGraphs (GameObject gameObject, string name, System.Type type)
 GameObjectにアタッチされている同一名のNodeGraphを取得する。 More...
 
static T[] FindGraphs< T > (GameObject gameObject, string name)
 GameObjectにアタッチされている同一名のNodeGraphを取得する。 More...
 
static NodeGraph Create (GameObject gameObject, System.Type classType)
 NodeGraphの作成 More...
 
static GraphType Create< GraphType > (GameObject gameObject)
 NodeGraphの作成 More...
 
static NodeGraph Instantiate (NodeGraph sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
 NodeGraphを生成 More...
 
static GraphType Instantiate< GraphType > (GraphType sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
 NodeGraphを生成 More...
 
static void Destroy (NodeGraph nodeGraph)
 NodeGraphの破棄 More...
 
- Events inherited from NodeGraph
NodeGraphCallback destroyCallback
 破棄される際のコールバック More...
 
NodeGraphCallback stateChangedCallback
 状態が変わった際のコールバック More...
 

Detailed Description

Arbor.ArborFSMの内部クラス。 実際にGameObjectにアタッチするにはArbor.ArborFSMを使用する。

Member Function Documentation

State CreateState ( int  nodeID,
bool  resident 
)

ステートを生成。

Parameters
nodeIDノードID
resident常駐するかどうかのフラグ。
Returns
生成したステート。ノードIDが重複している場合は生成せずにnullを返す。
State CreateState ( bool  resident)

ステートを生成。

Parameters
resident常駐するかどうかのフラグ。
Returns
生成したステート。
State CreateState ( )

ステートを生成。

Returns
生成したステート。
StateLinkRerouteNode CreateStateLinkRerouteNode ( Vector2  position,
int  nodeID,
Color  lineColor 
)

StateLinkRerouteNodeを作成する。

Parameters
positionノードの位置
nodeIDノードID
lineColorライン色
Returns
作成したStateLinkRerouteNode
StateLinkRerouteNode CreateStateLinkRerouteNode ( Vector2  position,
int  nodeID 
)

StateLinkRerouteNodeを作成する。

Parameters
positionノードの位置
nodeIDノードID
Returns
作成したStateLinkRerouteNode
StateLinkRerouteNode CreateStateLinkRerouteNode ( Vector2  position,
Color  lineColor 
)

StateLinkRerouteNodeを作成する。

Parameters
positionノードの位置
lineColorライン色
Returns
作成したStateLinkRerouteNode
StateLinkRerouteNode CreateStateLinkRerouteNode ( Vector2  position)

StateLinkRerouteNodeを作成する。

Parameters
positionノードの位置
Returns
作成したStateLinkRerouteNode
bool DeleteState ( State  state)

ステートの削除。

Parameters
state削除するステート。
Returns
削除した場合にtrue
void ExecuteLateUpdate ( )

LateUpdateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。

void ExecuteUpdate ( bool  autoExecuteLateUpdate = false)

Updateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。

Parameters
autoExecuteLateUpdate自動的にExecuteLateUpdateを行うフラグ
State FindState ( string  stateName)

ステートを名前で検索。

Parameters
stateName検索するステートの名前。
Returns
見つかったステート。ない場合はnullを返す。
State FindStateContainsBehaviour ( StateBehaviour  behaviour)

StateBehaviourが属しているステートの取得。

Parameters
behaviourStateBehaviour
Returns
StateBehaviourが属しているステート。ない場合はnullを返す。
State [] FindStates ( string  stateName)

ステートを名前で検索。

Parameters
stateName検索するステートの名前。
Returns
見つかったステートの配列。
State GetState ( StateLink  stateLink)

StateLinkを指定してArbor.Stateを取得する。

Parameters
stateLinkStateLink
Returns
見つかったArbor.State。見つからなかった場合はnullを返す。
State GetStateFromID ( int  stateID)

ステートIDを指定してArbor.Stateを取得する。

Parameters
stateIDステートID
Returns
見つかったArbor.State。見つからなかった場合はnullを返す。
State GetStateFromIndex ( int  index)

Stateをインデックスから取得

Parameters
indexインデックス
Returns
State
int GetStateIndex ( State  state)

Stateのインデックスを取得

Parameters
stateState
Returns
インデックス。ない場合は-1を返す。
int IndexOfStateLinkHistory ( StateLink  stateLink)

指定したStateLinkによって遷移したヒストリーでのインデックスを取得。

Parameters
stateLink取得するStateLink
Returns
ヒストリーのインデックス。-1だと対象外。値が大きいほど古い遷移を指す。
override bool OnDeleteNode ( Node  node)
protectedvirtual

ノードの削除。

Parameters
node削除するノード
Returns
削除した場合はtrue、していなければfalseを返す。

Implements NodeGraph.

sealed override void OnReset ( )
protectedvirtual

Resetもしくは生成時のコールバック。

Reimplemented from NodeGraph.

override void OnValidate ( )
protectedvirtual

MonoBehaviour.OnValidate を参照してください

Reimplemented from NodeGraph.

void Pause ( )

ステートマシンの再生を一時停止。

void Play ( )

ステートマシンの再生を開始。

void Resume ( )

ステートマシンの再生を再開。

void SendTrigger ( string  message)

トリガーの送信

Parameters
message送信するメッセージ
void Stop ( )

ステートマシンの再生を停止。

bool Transition ( State  nextState,
TransitionTiming  transitionTiming 
)

状態遷移

Parameters
nextState遷移先のステート。
transitionTiming遷移するタイミング。
Returns
遷移できたかどうか
bool Transition ( State  nextState,
bool  immediateTransition 
)

状態遷移

Parameters
nextState遷移先のステート。
immediateTransitionすぐに遷移するかどうか。falseの場合は現在フレームの最後(LateUpdate時)に遷移する。
Returns
遷移できたかどうか
bool Transition ( State  nextState)

状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。

Parameters
nextState遷移先のステート。
Returns
遷移できたかどうか
bool Transition ( int  nextStateID,
TransitionTiming  transitionTiming 
)

状態遷移

Parameters
nextStateID遷移先のステートID。
transitionTiming遷移するタイミング。
Returns
遷移できたかどうか
bool Transition ( int  nextStateID,
bool  immediateTransition 
)

状態遷移

Parameters
nextStateID遷移先のステートID。
immediateTransitionすぐに遷移するかどうか。falseの場合は現在フレームの最後(LateUpdate時)に遷移する。
Returns
遷移できたかどうか
bool Transition ( int  nextStateID)

状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。

Parameters
nextStateID遷移先のステートID。
Returns
遷移できたかどうか
bool Transition ( StateLink  nextStateLink,
TransitionTiming  transitionTiming 
)

状態遷移

Parameters
nextStateLink遷移の接続先。
transitionTiming遷移するタイミング。
Returns
遷移できたかどうか
bool Transition ( StateLink  nextStateLink,
bool  immediateTransition 
)

状態遷移

Parameters
nextStateLink遷移の接続先。
immediateTransitionすぐに遷移するかどうか。falseの場合は現在フレームの最後(LateUpdate時)に遷移する。
Returns
遷移できたかどうか
bool Transition ( StateLink  nextStateLink)

状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。

Parameters
nextStateLink遷移の接続先。
Returns
遷移できたかどうか

Member Data Documentation

bool playOnStart = true

開始時に再生するフラグ。

UpdateSettings updateSettings = new UpdateSettings()

更新に関する設定。

Property Documentation

State currentState
get

現在のArbor.Stateを取得する。

現在のArbor.State

string fsmName
getset

FSMの名前。
一つのGameObjectに複数のFSMがある場合の識別や検索に使用する。

State nextState
get

遷移予約されたArbor.Stateを取得する。

遷移予約されたArbor.State

State nextTransitionState
get

次のステート

PlayState playState
get

再生状態

State prevTransitionState
get

前のステート

State reservedState
get

遷移予約されたArbor.Stateを取得する。

遷移予約されたArbor.State

int startStateID
get

開始ステートのIDを取得する。

開始ステートID。

int stateCount
get

Stateの数を取得。

StateLinkRerouteNodeList stateLinkRerouteNodes
get

StateLinkRerouteNodeリスト

State [] states
get

全てのArbor.Stateを取得する。

Arbor.Stateの配列。