攻撃を受けた時の敵との位置関係によって前後左右のヒットリアクションを出しわける方法について。
1. コリジョンを設定する
ProjectSettingsでコリジョンのチャンネルを作成する。
武器のコリジョンを以下のように設定する。
[Generate Overlap Events] にチェックを入れ、[Collision Enable] をNo Collision
にし、[Pawn] のみOverlap
にする。
プレイヤーキャラクターBPを開き、Meshのコリジョンを設定する。
[Generate Overlap Events] にチェックを入れ、[EnemyWeapon] をOverlap
にする。
敵の武器とMeshのコリジョンも同様に設定する。
3. アニメーション通知で武器コリジョンを制御
[AnimNotifyState]を継承したBP「ANS_WeaponCollision」を作成し、開く。
ReceivedNotifyBeginをオーバーライドした関数を作成し、下記のようにBPを組む。
ReceivedNotifyEndをオーバーライドした関数を作成し、下記のようにBPを組む。
キャラクター(もしくはそのベースクラス)にコリジョンをオンオフする以下のイベントを追加。
攻撃の全てのモンタージュに「ANS_WeaponCollision」を設定する。
4. ヒットリアクションの出しわけを行う
キャラクターのベースクラスに以下のようにBPを組む。