//-------------------------------------------------------- 
 | 
//    [Author]:           第二世界 
 | 
//    [  Date ]:           Wednesday, September 13, 2017 
 | 
//-------------------------------------------------------- 
 | 
  
 | 
using System; 
 | 
using System.Collections; 
 | 
using System.Collections.Generic; 
 | 
using UnityEngine; 
 | 
using UnityEngine.UI; 
 | 
  
 | 
namespace vnxbqy.UI 
 | 
{ 
 | 
  
 | 
    public class CrossServerOneVsOneWaitPlayerCoolDownWin : Window 
 | 
    { 
 | 
        [SerializeField] 
 | 
        Transform m_CoolDownContainer; 
 | 
  
 | 
        [SerializeField] 
 | 
        Text m_CoolDown; 
 | 
        DateTime beginTime = DateTime.Now; 
 | 
  
 | 
        DungeonModel m_Model; 
 | 
        DungeonModel model { 
 | 
            get { 
 | 
                return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DungeonModel>()); 
 | 
            } 
 | 
        } 
 | 
        bool isEndWait = false; 
 | 
        #region Built-in 
 | 
        protected override void BindController() 
 | 
        { 
 | 
        } 
 | 
  
 | 
        protected override void AddListeners() 
 | 
        { 
 | 
        } 
 | 
  
 | 
        protected override void OnPreOpen() 
 | 
        { 
 | 
            isEndWait = false; 
 | 
            beginTime = model.GetCoolDownEndTime(DungeonCoolDownType.WaitPlayer); 
 | 
            model.dungeonCoolDownEvent += OnBeginTimeEvent; 
 | 
        } 
 | 
  
 | 
        protected override void OnAfterOpen() 
 | 
        { 
 | 
        } 
 | 
  
 | 
        protected override void OnPreClose() 
 | 
        { 
 | 
            model.dungeonCoolDownEvent -= OnBeginTimeEvent; 
 | 
        } 
 | 
  
 | 
        protected override void OnAfterClose() 
 | 
        { 
 | 
        } 
 | 
        #endregion 
 | 
  
 | 
  
 | 
        private void OnBeginTimeEvent(DungeonCoolDownType _type) 
 | 
        { 
 | 
            if (_type != DungeonCoolDownType.WaitPlayer) 
 | 
            { 
 | 
                isEndWait = true; 
 | 
                return; 
 | 
            } 
 | 
  
 | 
            beginTime = model.GetCoolDownEndTime(_type); 
 | 
        } 
 | 
  
 | 
        protected override void LateUpdate() 
 | 
        { 
 | 
            base.LateUpdate(); 
 | 
  
 | 
            if (beginTime > TimeUtility.ServerNow && !isEndWait) 
 | 
            { 
 | 
                var surplusTime = Mathf.Clamp((int)(beginTime - TimeUtility.ServerNow).TotalSeconds,0,int.MaxValue); 
 | 
                m_CoolDown.text = Language.Get("CrossServer120", surplusTime); 
 | 
                if (!m_CoolDownContainer.gameObject.activeInHierarchy) 
 | 
                { 
 | 
                    m_CoolDownContainer.SetActive(true); 
 | 
                } 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                if (m_CoolDownContainer.gameObject.activeInHierarchy) 
 | 
                { 
 | 
                    m_CoolDownContainer.SetActive(false); 
 | 
                } 
 | 
            } 
 | 
  
 | 
        } 
 | 
  
 | 
    } 
 | 
  
 | 
} 
 |