unity Behavior Designer使い方スクリプト編

どうもききです。

今回はunity Behavior Designer使い方について解説したいと思います。

今回はタスクの中身のスクリプトについて解説していきたいと思います。

タスク用のスクリプトの書き方ですがまず最初に名前空間にこの3つを宣言します。

using UnityEngine;
using BehaviorDesigner.Runtime;
using BehaviorDesigner.Runtime.Tasks;

次にクラスを宣言しクラス名の後に:Conditional、Actionなど条件タスクなのか行動タスクなのか宣言します。

public class currenthpGet : Conditional

次に変数を宣言します。

public SharedGameObject target;

public SharedFloat moveDistance = 2;

Behavior DesignerにはShared型の変数がありますがSharedは共有変数でありpublicは外部のGameObjectと関連付けます。

外部のGameObjectの値が変われば自動的にtargetの値も変わります。

次に

public override void OnStart()
public override TaskStatus OnUpdate()

を継承します。

OnStart()は最初に実行されそれ以降はOnUpdate()の中身が実行されます。

通常のUpdate()メソッドは永続実行ですがBehavior DesignerのOnUpdate()は再評価時に再び実行されるので基本的に一回だけ中身が実行されて止まります。

次に値の代入などについて

Shared変数の中身を取得したい場合は.valueを宣言する必要があります。

var targetPosition = target.Value.transform.position;

Float value = moveDistance.Value + 1など

OnUpdate()の中身を永続的に繰り返したい場合
return TaskStatus.Runningを記述します。

最後にタスクスクリプトにはかならず

return TaskStatus.Failureとreturn TaskStatus.Successを記述しないといけませんFailure(失敗)もしくはSuccess(成功)を返すと終了します。

 

 

 

 

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)