Unityでゲーム作成②_バイパー
今回はバイパー(変化弾)の作成に着手しました。
前回の アステロイドを流用し、わかりやすいように色だけ変えます。
そして曲がる用のスクリプトをアタッチ
Rigidbody rb; void Start() { rb = GetComponent<Rigidbody>(); } void Update() { if (Input.GetMouseButtonDown(0)) { rb.velocity = Vector3.zero; rb.AddForce(-transform.right * 100, ForceMode.Impulse); } if (Input.GetMouseButtonDown(1)) { rb.velocity = Vector3.zero; rb.AddForce(transform.right * 100, ForceMode.Impulse); } }
バイパーを発射後、右クリックで右に、左クリックで左に進むようになっています。
さらに前回使用した発射スクリプトを
右クリック→バイパーを発射
左クリック→アステロイドを発射
と書き換えました。
そしてバイパーに上記のスクリプトをアタッチすることで準備完了。
ゲームを実行し右クリックと左クリックを繰り返すことで、画面内でバイパーが右と左を行き来する様子が見えます。
しかし弾の寿命を設定していないので、左クリック時のアステロイドや前に撃ったバイパーも見えています。
課題としては
・Destroy()で寿命を設定し、弾が消えるまで次弾を撃てないようにする。
・クリックやキーで曲げるのではなく、作中のようにいくつか軌道を設定したものを実装する
でしょうか。1番目はともかく2番目は時間もかかって非常に難しそうです。
次はハウンドに挑戦したいと思います。