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

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

Inheritance diagram for ArborFSMInternal:
NodeGraph 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)
 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...
 
CalculatorBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
 CalculatorBranchRerouteNodeを生成。 More...
 
CalculatorBranchRerouteNode CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type)
 CalculatorBranchRerouteNodeを生成。 More...
 
void DeleteCalculatorBranchRerouteNode (CalculatorBranchRerouteNode rerouteNode)
 CalculatorBranchRerouteNodeの削除。 More...
 
virtual void OnValidateNodes ()
 ノードが変更された際に呼ばれる。 More...
 
bool DeleteNode (Node node)
 ノードの削除。 More...
 
Node FindNodeContainsBehaviour (NodeBehaviour behaviour)
 NodeBehaviourが属しているノードの取得。 More...
 
CalculatorBranch GetCalculatorBranchFromIndex (int index)
 CalculatorBranchをインデックスから取得 More...
 
int GetCalculatorBranchIndex (CalculatorBranch branch)
 CalculatorBranchのインデックスを取得 More...
 
CalculatorBranch GetCalculatorBranchFromID (int branchID)
 演算ブランチIDを指定してArbor.CalculatorBranchを取得する。 More...
 
CalculatorBranch ConnectCalculatorBranch (int branchID, int inputNodeID, Object inputObj, CalculatorSlot inputSlot, int outputNodeID, Object outputObj, CalculatorSlot outputSlot)
 CalculatorSlotの接続 More...
 
CalculatorBranch ConnectCalculatorBranch (int inputNodeID, Object inputObj, CalculatorSlot inputSlot, int outputNodeID, Object outputObj, CalculatorSlot outputSlot)
 CalculatorSlotの接続 More...
 
void DisconnectCalculatorBranch (Object obj)
 内部的に使用するメソッド。特に呼び出す必要はありません。 More...
 
void DeleteCalculatorBranch (CalculatorBranch branch)
 演算ブランチの削除。 More...
 
bool CheckLoopCalculatorBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
 CalculatorBranchがループしているかをチェックする。 More...
 
delegate void NodeGraphCallback (NodeGraph nodeGraph)
 NodeGraphのコールバック用デリゲート More...
 
void DestroySubComponents ()
 内部的に使用するメソッド。特に呼び出す必要はありません。 More...
 
override string ToString ()
 グラフを文字列に変換(デバッグ用)。 More...
 

Public Attributes

bool playOnStart = true
 開始時に再生するフラグ。 More...
 
UpdateSettings updateSettings = new UpdateSettings()
 更新に関する設定。 More...
 
- Public Attributes inherited from NodeGraph
string graphName
 グラフの名前。
一つのGameObjectに複数のグラフがある場合の識別や検索に使用する。 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 nextState [get]
 遷移先のArbor.Stateを取得する。 More...
 
int stateCount [get]
 Stateの数を取得。 More...
 
StateLinkRerouteNodeList stateLinkRerouteNodes [get]
 StateLinkRerouteNodeリスト More...
 
State[] states [get]
 全てのArbor.Stateを取得する。 More...
 
- Properties inherited from NodeGraph
string displayGraphName [get]
 ノードグラフの表示名。graphNameが空かnullの場合は"(No Name)"を返す。 More...
 
NodeGraph parentGraph [get]
 親グラフ More...
 
NodeGraph rootGraph [get]
 ルートグラフ More...
 
Object ownerBehaviourObject [get, set]
 このグラフの所有者であるNodeBehaviourのObject More...
 
NodeBehaviour ownerBehaviour [get, set]
 このグラフの所有者であるNodeBehaviour 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...
 
CalculatorBranchRerouteNodeList calculatorBranchRerouteNodes [get]
 CalculatorBranchRerouteNodeリスト More...
 
int calculatorBranchCount [get]
 CalculatorBranchの数を取得。 More...
 
CalculatorBranch[] calculatorBranchies [get]
 全てのArbor.CalculatorBranchを取得する。 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)
 NodeGraphを生成 More...
 
static GraphType Instantiate< GraphType > (GraphType sourceGraph, NodeBehaviour ownerBehaviour)
 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 
)

StateLinkRerouteNodeを作成する。

Parameters
positionノードの位置
nodeIDノードID
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

PlayState playState
get

再生状態

int startStateID
get

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

開始ステートID。

int stateCount
get

Stateの数を取得。

StateLinkRerouteNodeList stateLinkRerouteNodes
get

StateLinkRerouteNodeリスト

State [] states
get

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

Arbor.Stateの配列。