レベルシステムの作成②(LVの順番に敵を生成する)

敵をデータベースの順番通りに生成する
using System.Collections;
using UnityEngine;
public class SpawnEnemy : MonoBehaviour
{
public LVDatabase database;
void Start()
{
StartCoroutine(SpawnRoutine());
}
private IEnumerator SpawnRoutine()
{
yield return new WaitForSeconds(2f);
for (int i = 0; i < database.lvList.Count; i++)
{
GameObject spawnedEnemy = Instantiate(database.lvList[i].enemy, new Vector3(0, 0, 7), Quaternion.identity);
// 生成した敵が null(破壊された状態)になるまでここで処理を一時停止する(テクニック)
// 「() =>」 この後に条件を書きます。という宣言
// 「spawnedEnemy == null」 今回の条件・・・>生成した敵が破壊された時
yield return new WaitUntil(() => spawnedEnemy == null);
// 敵が破壊されてからさらに数秒間待機
yield return new WaitForSeconds(1.5f);
}
}
}


【Unity6版】Danmaku(全20回)
他のコースを見る
敵をデータベースの順番通りに生成する
using System.Collections;
using UnityEngine;
public class SpawnEnemy : MonoBehaviour
{
public LVDatabase database;
void Start()
{
StartCoroutine(SpawnRoutine());
}
private IEnumerator SpawnRoutine()
{
yield return new WaitForSeconds(2f);
for (int i = 0; i < database.lvList.Count; i++)
{
GameObject spawnedEnemy = Instantiate(database.lvList[i].enemy, new Vector3(0, 0, 7), Quaternion.identity);
// 生成した敵が null(破壊された状態)になるまでここで処理を一時停止する(テクニック)
// 「() =>」 この後に条件を書きます。という宣言
// 「spawnedEnemy == null」 今回の条件・・・>生成した敵が破壊された時
yield return new WaitUntil(() => spawnedEnemy == null);
// 敵が破壊されてからさらに数秒間待機
yield return new WaitForSeconds(1.5f);
}
}
}


レベルシステムの作成②(LVの順番に敵を生成する)