From f2f4e1e45981bb294a5221ade7b4646cc3e29d35 Mon Sep 17 00:00:00 2001 From: chenxin <chenxin6991@163.com> Date: Wed, 11 Nov 2020 18:56:44 +0800 Subject: [PATCH] 无尽模式分数 --- Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs b/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs index 83dcced..d53e250 100644 --- a/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs +++ b/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs @@ -5,6 +5,7 @@ using UnityEngine; using TowerDefense.UI.HUD; using Core.Utilities; +using Core.Health; namespace TowerDefense.Level { @@ -104,6 +105,17 @@ private void Start() { HideTunel(); + EventCenter.Ins.Add<float>((int)KTGMGemClient.EventType.EndlessAgentTaskDamage, OnHit); + } + + /// <summary> + /// Agent掉血,不管是中毒还是乱七八糟的掉血,只要掉血就会接收到 + /// </summary> + /// <param name="value"></param> + private void OnHit(float value) + { + float nowHP = EndlessBossHPManager.instance.CurrentHP - value; + EndlessBossHPManager.instance.SetCurrentHP(nowHP); } /// <summary> @@ -168,7 +180,7 @@ LevelData = EndlessPortData.GetLevelWaveData(level); TotalWaves = LevelData.Count; CurrentWaveIndex = 0; - EndlessBossHPManager.instance.InitHP(); + EndlessBossHPManager.instance.Init(); EndlessLevelManager.instance.DecrementEnemies -= DecrementEnemies; EndlessLevelManager.instance.DecrementEnemies += DecrementEnemies; @@ -234,8 +246,6 @@ public void DecrementEnemies(int count) { RemainEnemies -= count; - // 改变血条的进度 - EndlessBossHPManager.instance.SetCurrentProgress(RemainEnemies * 1f / TotalEnemies); } /// <summary> @@ -252,10 +262,11 @@ { if (CurrentWaveIndex > 0 || TotalWaves == 1) EndlessBossHPManager.instance.SwitchHP(CurrentWaveIndex == TotalWaves - 1); - EndlessBossHPManager.instance.SetBossInfo($"{waveData[0].Config.boss_name} Lv.{Level}"); + EndlessBossHPManager.instance.InitHP(EndlessPortData.GetWaveEnemiesTotalHP(Level, CurrentWaveIndex)); + EndlessBossHPManager.instance.SetBossInfo($"第{Level}关 {waveData[0].Config.boss_name}"); EndlessBossHPManager.instance.UpdateWave(TotalWaves - CurrentWaveIndex); - EndlessBossHPManager.instance.SetBossImage(waveData[0].Config.resource); EndlessBossHPManager.instance.ShowHP(); + EndlessScoreManager.instance.ShowScore(); } /// <summary> -- Gitblit v1.9.1