动作游戏小demo

来源:互联网 发布:vue.js blog 编辑:程序博客网 时间:2024/06/08 06:50
using System.Collections;
using System.Collections.Generic;
using UnityEngine;


public class SpawnManager : MonoBehaviour {
    public EnemySpawn[] monsterSpawnArray;
    public EnemySpawn[] bossSpawnArray;
    public List<GameObject> enemyList = new List<GameObject>();
// Use this for initialization
void Start () {
        StartCoroutine(Spawn());
}
IEnumerator Spawn()
    {//控制第一波敌人的生成
        foreach (EnemySpawn s in monsterSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }


        while (enemyList.Count > 0)
        {
            yield return new WaitForSeconds(0.2f);
        }
        //控制第二波敌人的生成
        foreach (EnemySpawn s in monsterSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }
        yield return new WaitForSeconds(0.5f);//第二波敌人先生成一波后等待0.5秒在执行下一波生成
        foreach (EnemySpawn s in monsterSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }


        while (enemyList.Count > 0)
        {
            yield return new WaitForSeconds(0.2f);
        }
        //控制第三波敌人的生成
        foreach (EnemySpawn s in monsterSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }
        yield return new WaitForSeconds(0.5f);
        foreach (EnemySpawn s in monsterSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }
        yield return new WaitForSeconds(0.5f);
        foreach (EnemySpawn s in bossSpawnArray)
        {
            enemyList.Add(s.Spawn());
        }
    }

}
原创粉丝点击