ゲーム制作勉強中!あこがれだったプログラマーに今からなろう!

昔、あこがれていたプログラマー。今からでも勉強してみようと思い立ち、チャレンジ開始! 勉強メモや、悪戦苦闘な日々の記録です。

サイドビューアクションゲームを作ろう(4):防御実装

今日は防御姿勢の実装。

プレイヤーとして導入したアセットに、盾を構えている状態のアニメーションがあるので、それを実装しよう。

次に防御に成功する条件を考える。条件は簡単に以下の3点にした。

 

① 盾を構えた状態になっている。

② 盾を構えている方向から攻撃を受ける。

③ 敵の攻撃力が盾で防げる防御力以下。

 

厳密にいえば、盾の範囲に攻撃が当たった時とすべきなんだろうけど、これは今後の課題にした。

 

実際の導入について、①の条件「盾を構えた状態になっている。」は、防御姿勢のアニメーションへの遷移条件になっている、アニメーションパラメーターを取得してくれば良い。

これは、GetBoolで簡単に取得できる。

 

②の条件「盾を構えている方向から攻撃を受ける。」を判定するために、まず、敵から攻撃を受ける時に、敵のpositionをプレイヤーのメソッドに引数で渡してやる。

次に、プレイヤーのメソッドで、プレイヤーの向いている向き・プレイヤーのposition・敵のpositionを判定させる事にした。

もっと上手い計算式があるのかもしれないけど、今の僕にはこんなものしか思いつかなかった。😅

 

③ 「敵の攻撃力が盾で防げる防御力以下。」については、今日のところは残課題とした。

ダメージを数字で表示する機能を実装したいと思っているので、それと同時に実装できればいいなぁ・・・・😁

 

今日のところはこんな感じ。

防御姿勢が取れるようになっただけでも、それなりに戦闘にバリエーションがついてくれるので、作っていて面白い😄

youtu.be