From d7cc2eb4decd1cc4993b2d137ff3993f8201313f Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Wed, 25 Nov 2020 14:24:09 +0800
Subject: [PATCH] 推动BUG 增加金币获得特效

---
 Assets/Scripts/TowerDefense/UI/EndlessBossCtrl.cs |   31 +++++++++++++++++++++++++++----
 1 files changed, 27 insertions(+), 4 deletions(-)

diff --git a/Assets/Scripts/TowerDefense/UI/EndlessBossCtrl.cs b/Assets/Scripts/TowerDefense/UI/EndlessBossCtrl.cs
index 14bc0f4..d43990c 100644
--- a/Assets/Scripts/TowerDefense/UI/EndlessBossCtrl.cs
+++ b/Assets/Scripts/TowerDefense/UI/EndlessBossCtrl.cs
@@ -26,11 +26,15 @@
 
         public Image Title;
 
+        private string titlePath = "UI/Endless/SkillTitle/";
+
+        public ParticleSystem deadPS, deadMoney;
+
         // Start is called before the first frame update
         private void Start()
         {
             ColorVal = 0;
-            EventCenter.Ins.Add((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitle, Glint);
+            EventCenter.Ins.Add<int>((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitle, Glint);
         }
 
         // Update is called once per frame
@@ -39,8 +43,9 @@
 
         }
 
-        private void Glint()
+        private void Glint(int skillType)
         {
+            Title.sprite = Resources.Load<Sprite>($"{titlePath}{skillType}");
             //设置一个DOTween队列
             Sequence flashSeq = DOTween.Sequence();
             Color c = Title.color;
@@ -54,6 +59,7 @@
             flashSeq.Append(DOTween.To(() => ColorVal, (v) => ColorVal = v, 0, 0.15f));
             flashSeq.Append(DOTween.To(() => ColorVal, (v) => ColorVal = v, 1, 0.3f));
             flashSeq.Append(DOTween.To(() => ColorVal, (v) => ColorVal = v, 0, 0.15f));
+            flashSeq.AppendCallback(() => { EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessBossSkillGlintTitleCompleted); });
         }
 
         private float ColorVal
@@ -77,6 +83,13 @@
             if (frameName == "summonEnd")
             {
                 EventCenter.Ins.BroadCast((int)EventType.EndlessBossSummonEnd);
+                // 召唤动作结束后自动切换到站立状态
+                ChangeState(EndlessBossActionState.Standing);
+            }
+            else if (frameName == "death")
+            {
+                BossAnimator.speed = 0;
+                EventCenter.Ins.BroadCast((int)EventType.EndlessBossDeathActionEnd);
             }
         }
 
@@ -86,10 +99,20 @@
         /// <param name="newState"></param>
         public void ChangeState(EndlessBossActionState newState)
         {
-            if (newState == ActionState) return;
-
             ActionState = newState;
+
+            if (newState == EndlessBossActionState.Standing || newState == EndlessBossActionState.Summon)
+                BossAnimator.speed = 1;
+            else if (newState == EndlessBossActionState.Death)
+            {
+                //Debug.Log("BOSS死亡特效");
+                //播放特效
+                deadPS.Play();
+                deadMoney.Play();
+            }
             BossAnimator.SetInteger("State", (int)newState);
+
+
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1