chenxin
2020-10-27 38136a34de9aa36bf15ec7471abd56e2cba6c26f
Assets/Scripts/TowerDefense/Level/EndlessWave.cs
@@ -46,6 +46,11 @@
        public event Action WaveCompleted;
        /// <summary>
        /// 有新的敌人生成
        /// </summary>
        public event Action SpawnNewAgent;
        /// <summary>
        /// 波次发生改变
        /// </summary>
        public event Action WaveChanged;
@@ -86,7 +91,7 @@
            spawnedEnemies = 0;
            SpawnCurrent();
            spawnTimer = new RepeatingTimer(data.Config.interval / 3000f, SpawnCurrent);
            spawnTimer = new RepeatingTimer(data.Config.interval / 1000f, SpawnCurrent);
            StartTimer(spawnTimer);
        }
@@ -99,14 +104,25 @@
            isWaveStoped = true;
        }
        public void PauseWave()
        {
            PauseTimer(spawnTimer);
            isWaveStoped = true;
        }
        public void RestartWave()
        {
            StartTimer(spawnTimer);
            isWaveStoped = false;
        }
        /// <summary>
        /// Handles spawning the current agent and sets up the next agent for spawning
        /// 在场景内孵化出来一个Boss,这个核心函数最后被规则性的数据接管
        /// </summary>
        protected virtual void SpawnCurrent()
        {
            if (isWaveStoped)
                return;
            if (isWaveStoped) return;
            if (!TrySetupNextSpawn())
            {
@@ -115,7 +131,11 @@
                SafelyBroadcastWaveCompletedEvent();
            }
            else
            {
                ++spawnedEnemies;
                if (SpawnNewAgent != null)
                    SpawnNewAgent();
            }
        }
        /// <summary>