From 998f906a90e73dba04df2176c23d78365d34735b Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 01 十一月 2018 14:52:55 +0800
Subject: [PATCH] 【1.2】【前端】VIP7特权加成状态提示修改

---
 System/Tip/StatusTipWin.cs |   47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 46 insertions(+), 1 deletions(-)

diff --git a/System/Tip/StatusTipWin.cs b/System/Tip/StatusTipWin.cs
index 1a08970..1bdbe1b 100644
--- a/System/Tip/StatusTipWin.cs
+++ b/System/Tip/StatusTipWin.cs
@@ -6,6 +6,7 @@
 using System;
 using System.Collections;
 using System.Collections.Generic;
+using TableConfig;
 using UnityEngine;
 using UnityEngine.UI;
 
@@ -35,6 +36,11 @@
         private float m_TopLimit;
 
         bool inited = false;
+
+        [SerializeField] RectTransform m_ContainerSpecialBuff;
+        [SerializeField] PositionTween m_SpeicalBuffTween;
+        [SerializeField] UIAlphaTween m_SpecialBuffAlplaTween;
+        [SerializeField] int m_SpecialBuffId;
         #region Built-in
         protected override void BindController()
         {
@@ -54,6 +60,7 @@
                 m_FreeList.Push(m_TipList[i]);
             }
             m_TipList.Clear();
+            m_ContainerSpecialBuff.gameObject.SetActive(false);
         }
 
         protected override void LateUpdate()
@@ -162,7 +169,23 @@
 
         #endregion
 
-        private void OnGainStatus(string buffName)
+        private void OnGainStatus(int skillId)
+        {
+            var skillConfig = Config.Instance.Get<SkillConfig>(skillId);
+            if (skillConfig != null)
+            {
+                if (skillConfig.SkillTypeID == m_SpecialBuffId)
+                {
+                    DisplaySpecialTip();
+                }
+                else
+                {
+                    DisplayLabelTip(skillConfig.SkillName);
+                }
+            }
+        }
+
+        void DisplayLabelTip(string buffName)
         {
             TipController _newController = null;
             if (m_FreeList.Count > 0)
@@ -192,6 +215,28 @@
             m_MoveTime += moveDuration;
         }
 
+        void DisplaySpecialTip()
+        {
+            transform.SetAsLastSibling();
+            m_SpeicalBuffTween.SetStartState();
+            m_SpecialBuffAlplaTween.SetStartState();
+            m_SpeicalBuffTween.enabled = false;
+            m_SpecialBuffAlplaTween.enabled = false;
+            m_ContainerSpecialBuff.gameObject.SetActive(true);
+            m_SpeicalBuffTween.enabled = true;
+            m_SpeicalBuffTween.Play(OnSpecialBuffComplete);
+        }
+
+        private void OnSpecialBuffComplete()
+        {
+            m_SpecialBuffAlplaTween.enabled = true;
+            m_SpecialBuffAlplaTween.Play(OnSpecialBuffAlphaComplete);
+        }
+
+        private void OnSpecialBuffAlphaComplete()
+        {
+            m_ContainerSpecialBuff.gameObject.SetActive(false);
+        }
     }
 
 

--
Gitblit v1.8.0