//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, September 26, 2018 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class UpgradeWin : Window { [SerializeField] ScaleTween m_ScaleTween; [SerializeField] UIAlphaTween m_UIAlphaTween; [SerializeField] Text m_TextLV; [SerializeField] UIEffect m_UIEffect; public float Delay = 0.5f; #region Built-in protected override void BindController() { } protected override void AddListeners() { } protected override void OnPreOpen() { m_UIAlphaTween.SetStartState(); m_TextLV.text = PlayerDatas.Instance.baseData.LV.ToString(); } protected override void OnActived() { m_UIEffect.Play(); m_UIEffect.OnComplete = () => { StopCoroutine(DelayIEnumerator()); Close(); }; m_ScaleTween.Play(false, () => { StartCoroutine(DelayIEnumerator()); }); } protected override void OnAfterOpen() { WindowCenter.Instance.windowBeforeCloseEvent += windowBeforeClose; PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;//数据的刷新(h0418) } protected override void OnPreClose() { if (m_UIEffect.IsPlaying) { m_UIEffect.Stop(); } WindowCenter.Instance.windowBeforeCloseEvent -= windowBeforeClose; PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;//数据的刷新(h0418) } protected override void OnAfterClose() { } IEnumerator DelayIEnumerator() { yield return new WaitForSeconds(Delay); m_UIAlphaTween.Play(); } #endregion private void windowBeforeClose(Window _window) { if (_window is MainInterfaceWin) { StopCoroutine(DelayIEnumerator()); Close(); } } private void Updatefighting(PlayerDataRefresh obj) { if (obj == PlayerDataRefresh.LV) { m_TextLV.text = PlayerDatas.Instance.baseData.LV.ToString(); } } } }