From 893f645dafa46b818a2edb9fa40337af0c3598d6 Mon Sep 17 00:00:00 2001
From: chenxin <chenxin6991@163.com>
Date: Fri, 06 Nov 2020 19:57:10 +0800
Subject: [PATCH] 修改买塔规则 爱心破碎特效 基地血条不掉问题

---
 Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs |   64 +++++++++++++++-----------------
 1 files changed, 30 insertions(+), 34 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs b/Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs
index 8f442a6..26e0f0e 100644
--- a/Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs
+++ b/Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs
@@ -51,51 +51,47 @@
             var damager = GetComponent<Damager>();
             if (damager != null)
             {
-                m_FinalDestinationDamageableBehaviour.TakeDamage(damager.finalDamage, transform.position, agent.configuration.alignmentProvider);
-
-                PlayerHomeBase homebase = m_FinalDestinationDamageableBehaviour.GetComponent<PlayerHomeBase>();
-                if (homebase && (!homebase.isDead))
+                if (!EndlessLevelManager.instanceExists)
                 {
-                    // 显示塔位血条
-                    float hscale = homebase.healthVal / homebase.configuration.maxHealth;
-                    if (hscale < 1.0)
+                    m_FinalDestinationDamageableBehaviour.TakeDamage(damager.finalDamage, transform.position, agent.configuration.alignmentProvider);
+                    PlayerHomeBase homebase = m_FinalDestinationDamageableBehaviour.GetComponent<PlayerHomeBase>();
+                    if (homebase && (!homebase.isDead))
                     {
-                        if (homebase.opponent)
-                            OpponentMgr.instance.m_CurrentArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
-                        else
+                        // 显示塔位血条
+                        float hscale = homebase.healthVal / homebase.configuration.maxHealth;
+                        if (hscale < 1.0)
                         {
-                            if (GameUI.instanceExists)
+                            if (homebase.opponent)
+                                OpponentMgr.instance.m_CurrentArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
+                            else
                             {
                                 if (null != GameUI.instance.selfTowerPlaceArea)
                                     GameUI.instance.selfTowerPlaceArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                             }
-                            else if (EndlessGameUI.instanceExists)
-                            {
-                                if (EndlessGameUI.instance.selfTowerPlaceArea != null)
-                                {
-                                    if (GameConfig.IsNewbie)
-                                    {
-                                        if (GameConfig.TowerFirstTakeDamage)
-                                        {
-                                            GameConfig.TowerFirstTakeDamage = false;
-                                            EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
-                                            EndlessLevelManager.instance.StopSecondWave();
-                                        }
-                                        else
-                                        {
-                                            if (GameConfig.TowerCanTakeDamage)
-                                                EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
-                                        }
-                                    }
-                                    else
-                                        EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
-                                }
-                            }
                         }
-
                     }
                 }
+                else
+                {
+                    if (GameConfig.IsNewbie)
+                    {
+                        if (GameConfig.TowerFirstTakeDamage)
+                        {
+                            GameConfig.TowerFirstTakeDamage = false;
+                            EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
+                            EndlessLevelManager.instance.StopSecondWave();
+                        }
+                        else
+                        {
+                            if (GameConfig.TowerCanTakeDamage)
+                                EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
+                        }
+                    }
+                    else
+                        EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLoseHeart, 1);
+                }
             }
+
             agent.Remove();
         }
 

--
Gitblit v1.9.1