【Unity公式チュートリアル】 サバイバルシューター part.11 敵の自動生成機能を作る!
こんにちは!ヤギです!
Unity公式チュートリアルのサバイバルシューターをやってみるpart.11になります。
記事概要
今回の記事では、敵の自動生成機能の作り方についてご説明していきます。時間経過で自動で敵が作成されるようにしていきます。
※part.11に対応する公式チュートリアルは、
Spawning Enemies - Unityとなります。
※公式チュートリアルでは、複数の敵を生成していますが、簡略化のため1種類の敵でご説明いたします。
※前回の記事はこちら
www.yagigame.com
敵を自動生成するスクリプトの作成
1. Hierarchy > Create > Create Emptyを選択し、名前をEnemyManagerとします。2. Project > Assets > Scripts > Manager > EnemyManager.csをEnemt Managerにドラッグし適用します。
3. EnemyManager.csに敵を自動生成する処理を書いていきます。
※ソース内の解説をご確認ください。
using UnityEngine; public class EnemyManager : MonoBehaviour { public PlayerHealth playerHealth; //プレイヤーのHP public GameObject enemy; //敵のオブジェクト public float spawnTime = 3f; //敵の生成間隔 public Transform[] spawnPoints; //敵を生成する場所 void Start () { //敵を生成する間隔で、敵を生成する処理を呼ぶ InvokeRepeating ("Spawn", spawnTime, spawnTime); } //敵を生成する処理 void Spawn () { //プレイヤーのHPが0以下の場合 if(playerHealth.currentHealth <= 0f) { return; } //敵を生成する場所をランダムに決める int spawnPointIndex = Random.Range (0, spawnPoints.Length); //敵を生成する Instantiate (enemy, spawnPoints[spawnPointIndex].position, spawnPoints[spawnPointIndex].rotation); } }
敵を生成する場所(SpawnPoints)の設定
1. Hierarchy > Create > Create Emptyを選択し、名前をZombunnySpawnPointとします。2. ZombunnySpawnPoint > Inspector > 四角マークを押し、青丸を選択します。
※これでZombunnySpawnPointが、Scene viewに表示されます。
3. ZombunnySpawnPoint > Inspector を以下の内容に修正します。
・Position > (-20.5,0,12.5)
・Rotation > (0,130,0)
4. Hierarchy > EnemyManager > Inspectorを以下の内容修正します。
・Player Health > Player ※Hierarchy > Playerをドラッグ
・Enemy > Zomunny ※Hierarchy > Zombunnyは削除し、Prefabs > Zomnunnyをドラッグ
・Spawn Points > ZombunnySpawnPoint ※Hierarchy > ZombunnySpawnPointをドラッグ
5. ZombunnySpawnPointと同様のオブジェクトを作成し、Spawn Pointsに追加します
※これで、ランダムな場所から敵が作成されるようになります。
実行してみましょう!
ランダムな場所に敵が自動生成されていれば、大大成功です!!次回予告
次回は、ゲームオーバーの機能を作成していきます!次回に対応する公式チュートリアルは、「Game Over」です!
読んでいただきありがとうございました!