From b3597e5148e64a08abe5730396c4018ccfa76e22 Mon Sep 17 00:00:00 2001 From: chenxin <chenxin6991@163.com> Date: Thu, 26 Nov 2020 16:26:11 +0800 Subject: [PATCH] buff预览界面打开时停止出怪 --- Assets/Scripts/TowerDefense/Level/EndlessWave.cs | 24 +++++++++++++++++------- 1 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Assets/Scripts/TowerDefense/Level/EndlessWave.cs b/Assets/Scripts/TowerDefense/Level/EndlessWave.cs index ca35da6..19d9f1b 100644 --- a/Assets/Scripts/TowerDefense/Level/EndlessWave.cs +++ b/Assets/Scripts/TowerDefense/Level/EndlessWave.cs @@ -62,6 +62,11 @@ protected bool isWaveStoped = false; /// <summary> + /// 暂停兵线出怪 + /// </summary> + protected bool isWavePaused = false; + + /// <summary> /// 怪物刷新速度的缩放. /// </summary> protected float spawnTimeScale = 1.0f; @@ -86,9 +91,13 @@ isWaveStoped = false; spawnedEnemies = 0; - SpawnCurrent(); spawnTimer = new RepeatingTimer(data.Config.interval / 1000f, SpawnCurrent); - StartTimer(spawnTimer); + + if (!isWavePaused) + { + SpawnCurrent(); + StartTimer(spawnTimer); + } } /// <summary> @@ -98,25 +107,26 @@ { StopTimer(spawnTimer); isWaveStoped = true; - - //EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.WaveLineFinish,WaveLineId); } public void PauseWave() { PauseTimer(spawnTimer); - isWaveStoped = true; + isWavePaused = true; } public void RestartWave() { StartTimer(spawnTimer); - isWaveStoped = false; + isWavePaused = false; + + if (spawnedEnemies == 0) + SpawnCurrent(); } protected virtual void SpawnCurrent() { - if (isWaveStoped) return; + if (isWaveStoped || isWavePaused) return; if (!TrySetupNextSpawn()) { -- Gitblit v1.9.1