敵AI 7:NavLinkProxyで敵にジャンプさせる

プレイヤーを追う敵にNavLinkProxyを使ってジャンプさせます。

Ali Elzoheiry氏のチュートリアルから学ぶ敵AIの第7回になります。過去記事で作成したものが必須になります。
敵AI:敵がルートを巡回しプレイヤーや音に気付くと反応
敵AI 2:敵が間合いを取りながら攻撃してくる
敵AI 3:敵が逃げて隠れて再び攻撃してくる
敵AI 4:近距離タイプと遠距離タイプの敵を分ける
汎用性と拡張性の高いダメージシステム
敵AI 5:敵の攻撃とブロック
敵AI 6:プレイヤーを見失った敵が捜索を始める

記事は自分でやり直す時のために簡単にまとめており、独自の仕様にもなっていますから、学習するなら参考元のAli Elzoheiry氏のSmart Enemy AI Tutorial Seriesの動画を視聴してください。

BPインターフェース: BPI_EnemyAI

関数: JumpToDestination

インプット
Destination – Vector

敵BP: BP_EnemyBase

イベントグラフ
ノードを組む

NavLinkProxy: NavLink_EnemyAI

BP: ブループリント クラス
親クラス: NavLinkProxy
名前: NavLink_EnemyAI
新規作成。
Smart Link Is Relevantにチェックを入れる

詳細のスマートリンク > Smart Link Is Relevantにチェックを入れる。

イベントグラフ
ノードを組む

AIコントローラー: AIC_EnemyBase

変数を作成

TimeToSeekAfterLosingSight – Float ※デフォルト値3.0
SeekAttackTargetTimer – Timer Handle

イベントグラフ
ノードを組む
関数: HandleLostSight
ノードを組む
関数: HandleSensedSight
ノードを組む

レベルにNavLink_EnemyAIを配置

まずNavLink_EnemyAIをレベルにドロップして配置。

Pキーを入力してスマートリンクを可視化する。

シンプルリンクは使わないので詳細のゴミ箱アイコンをクリックして消す。

詳細のスマートリンクのLink Relative StartとLink Relative Endを使用してスマートリンクの位置を調整する。

ジャンプさせたいので段差があるところに配置します。

テストプレイしてみると、段差の上にいるプレイヤーに気付いた敵はNavLink_EnemyAIのスマートリンクを認識し、ジャンプして上ってきます。

コメント

タイトルとURLをコピーしました