From 1fe72e022dad01d87d64ba90d22db110029b8136 Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Sat, 26 Dec 2020 15:37:51 +0800
Subject: [PATCH] 召唤分身UI出现会把技能特效遮盖

---
 Assets/Scripts/TowerDefense/UI/EndlessBossSkill/EndlessBossSkillManager.cs |   44 ++++++++++++++++++++++++++------------------
 1 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/UI/EndlessBossSkill/EndlessBossSkillManager.cs b/Assets/Scripts/TowerDefense/UI/EndlessBossSkill/EndlessBossSkillManager.cs
index 37b9e53..56090e5 100644
--- a/Assets/Scripts/TowerDefense/UI/EndlessBossSkill/EndlessBossSkillManager.cs
+++ b/Assets/Scripts/TowerDefense/UI/EndlessBossSkill/EndlessBossSkillManager.cs
@@ -1,4 +1,3 @@
-using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using Core.Utilities;
@@ -69,7 +68,18 @@
         // Update is called once per frame
         private void Update()
         {
-            if (isPaused || EndlessGameUI.instance.state == EndlessGameUI.State.GameOver) return;
+            if (isPaused || EndlessGameUI.instance.state == EndlessGameUI.State.GameOver || !EndlessUIStart.instance.IsGameRunning) return;
+
+            for (int i = 0; i < skillList.Count; ++i)
+            {
+                skillList[i].Update(Time.deltaTime);
+            }
+
+            for (int i = 0; i < waitList.Count; ++i)
+            {
+                if (waitList[i].IsCDCompleted)
+                    AddSkill(waitList[i]);
+            }
 
             switch (skillState)
             {
@@ -114,21 +124,13 @@
 
         private void HandleWait(float deltaTime)
         {
-            for (int i = 0; i < skillList.Count; ++i)
-            {
-                skillList[i].Update(Time.deltaTime);
-
-                if (skillList[i].IsCDCompleted)
-                    AddSkill(skillList[i]);
-            }
-
             for (int i = 0; i < cdList.Count; ++i)
             {
                 if (cdList[i].IsConditionOK)
                 {
                     currentSkill = cdList[i];
                     EventCenter.Ins.Add((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitleCompleted, OnGlintTitleCompleted);
-                    EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitle);
+                    EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitle, (int)cdList[i].SkillType);
                     isFloatWordCompleted = false;
                     ChangeState(EndlessBossSkillState.FloatWord);
                     break;
@@ -136,6 +138,9 @@
             }
         }
 
+        /// <summary>
+        /// 飘字闪烁完成
+        /// </summary>
         private void OnGlintTitleCompleted()
         {
             EventCenter.Ins.Remove((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitleCompleted, OnGlintTitleCompleted);
@@ -155,7 +160,6 @@
         /// <param name="idList"></param>
         public void Init(List<int> idList)
         {
-            Debug.Log("--------------------- 初始化boss技能列表 ---------------------");
             skillIdList = idList;
 
             for (int i = 0; i < idList.Count; ++i)
@@ -166,6 +170,7 @@
                 {
                     skillList.Add(skill);
                     skill.Init();
+                    waitList.Add(skill);
                 }
             }
 
@@ -178,7 +183,6 @@
         /// </summary>
         public void ClearSkillList()
         {
-            Debug.Log("--------------------- 关卡结束,清空技能列表 ---------------------");
             for (int i = 0; i < skillList.Count; ++i)
             {
                 skillList[i].Clear();
@@ -198,14 +202,16 @@
         public void Reset()
         {
             if (isPaused) return;
-            
-            for (int i = 0; i < skillList.Count; ++i)
-            {
-                skillList[i].Reset();
-            }
 
             cdList.Clear();
             waitList.Clear();
+
+            for (int i = 0; i < skillList.Count; ++i)
+            {
+                skillList[i].Reset();
+                waitList.Add(skillList[i]);
+            }
+
             isPaused = true;
             ChangeState(EndlessBossSkillState.Init);
             ClearEvent();
@@ -255,6 +261,8 @@
                     return new BossSkillBubbleBomb(data);
                 case EndlessBossSkillType.WoodPile:
                     return new BossSkillWoodPile(data);
+                case EndlessBossSkillType.BondageBubble:
+                    return new BossSkillBondageBubble(data);
             }
 
             return null;

--
Gitblit v1.9.1