4方向のヒットリアクションの出し分け

攻撃を受けた時の敵との位置関係によって前後左右のヒットリアクションを出しわける方法について。

1. コリジョンを設定する

キャラクターの武器にコリジョンを付ける。

ProjectSettingsでコリジョンのチャンネルを作成する。

武器のコリジョンを以下のように設定する。
[Generate Overlap Events] にチェックを入れ、[Collision Enable] をNo Collisionにし、[Pawn] のみOverlapにする。

プレイヤーキャラクターBPを開き、Meshのコリジョンを設定する。
[Generate Overlap Events] にチェックを入れ、[EnemyWeapon] をOverlapにする。

敵の武器とMeshのコリジョンも同様に設定する。

2. ダメージの送信を設定

プレイヤーキャラクター(もしくはそのベースクラス)のBPを開き、武器コリジョンのイベントを作成する。


3. アニメーション通知で武器コリジョンを制御

[AnimNotifyState]を継承したBP「ANS_WeaponCollision」を作成し、開く。
ReceivedNotifyBeginをオーバーライドした関数を作成し、下記のようにBPを組む。

ReceivedNotifyEndをオーバーライドした関数を作成し、下記のようにBPを組む。

キャラクター(もしくはそのベースクラス)にコリジョンをオンオフする以下のイベントを追加。

攻撃の全てのモンタージュに「ANS_WeaponCollision」を設定する。


4. ヒットリアクションの出しわけを行う

キャラクターのベースクラスに以下のようにBPを組む。