ACTION GAME MAKERでは無敵という機能があります、こちらについて説明をします。
なぜ無敵が必要?
ACTION GAME MAKERでは攻撃の判定とダメージの処理が高速で行われます。
仮に、無敵時間を設定しない場合、一つの攻撃が高速で連続命中し、一瞬でHPが0になってしまいます。
無敵時間の設定方法
設定している攻撃の時間よりも長い時間設定することがオススメです。
攻撃判定が1秒発生する場合、無敵時間は1秒以上にしなければ複数回攻撃が命中してしまいます。
無敵を設定できるノード
Base Settings(基本設定)
ごく基本的な無敵の設定が可能です。
- 無敵時間の秒数
- 無敵中にオブジェクトが点滅するか?とその点滅間隔
の設定のみが可能です。
Invincible Settings(無敵設定)
無敵についてより細かい設定をするためのノードです。
- 無敵時間中、点滅に加えて、フィルターをかける。
- 無敵の終了時に別の種類の点滅を追加する。(無敵中はゆっくり点滅し、無敵終了時に高速で点滅する等が設定できます。)
- 当たり判定を攻撃判定に一時的に変更する。
- 無敵の開始時にサウンドを再生する。
- この無敵設定のオン/オフをスイッチで制御する。
といったことが可能です。
無敵のデータはスイッチで制御できますので、通常のダメージの無敵時間は0.3秒だけどこの種類のダメージを受けたらダウンするから無敵時間は1秒!といった制御ができます。
無敵とHitCollisionの無効化
無敵と似た処理として、プロパティを変更アクションやAnimationPlayerで一時的にHitCollisionを無効化することもできます。
こちらの処理でも攻撃は命中しなくなるため、無敵と同様の「ダメージを受けない」効果を得られますが、動作遅れ等で正常に処理されない可能性もありますので、基本的には短時間でも無敵を設定することをおすすめします。
一方で、この処理を使うことでより柔軟な「ダメージを受けない処理」ができますので、合わせて利用することで面白い設定をすることができるかもしれません。