少年修仙传客户端代码仓库
client_linchunjie
2018-11-01 998f906a90e73dba04df2176c23d78365d34735b
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);
        }
    }