実装する機能

長押しを実装

Untitled

InputActionのショットキーのトリガーにReleasedを登録することでキーを離したときにキーイベントが発火するようにする。

Untitled

またキーを押したときのイベント発火についてはStartedで取得できるので通常のショットも変更せずに実装できる。

長押しの時間によってショットを変更

Untitled

IAからElapsedSeconds(押下時間)を取得しPartialChargeTime(チャージ攻撃かを判定する閾値)、 FullChargeTime(チャージショットにする時間)それぞれを超えているかをGreaterで判別。 閾値を超えない程度に押している場合はCompletedイベントが発火せず、Startedイベントが発火するだけなので通常のショットが打たれるだけになる。

ショットを変更

Untitled

Untitled

それぞれの分岐によってショットを変更できるように関数を作成し、InputでBP_PlayerProjectile_BASEを継承したクラスを選択できるようにし、ショットクラスを事前に選択できるようにする。

ショットの種類によって減算するショットエネルギーを変更

Untitled