敵ユニットを作成

そろそろ敵ユニット(タレット)を作成し、プレイヤーを攻撃させてみようと思う。
攻撃によるダメージ判定処理は過去記事の通り実装済み
弾でダメージを与える
この処理をプレイヤーにも追加すればお互い攻撃でHPが減るようになる。

なので今回は
・タレットの動作制御(砲塔回転,射撃命令)
・タレットの射撃処理(弾丸の発射)
のスクリプトを作成する。

タレットの動作制御
タレットの動作制御として以下を実現する。
・目標角度まで一定速度以下で旋回を行う。
・目標角度はプレイヤーの偏差射撃位置とする。
・プレイヤーが一定角度以内かつ射程距離内に入った場合は射撃命令(武器クラスに)。

一定速度以下で目標角度まで旋回する処理はVector3.RotateTowards関数を用いて実現した。詳細は以下。

でオブジェクトを回転させる方法まとめ

タレットの射撃処理
タレットの射撃処理として以下を実現する。
・射撃命令により弾丸の発射。
・発射後、次弾発射までクールタイムを設ける。
・タレットの動作制御に必要な射撃情報を渡す。
過去に実装したプレイヤー用の武器スクリプトを流用しながら作成。

あとはプレイヤーとロックオン対象のHPをUIに追加するなど細々とした部分を作成しました。
そんで以下のようになりました。

以上です。

コメント

タイトルとURLをコピーしました