//-------------------------------------------------------- 
 | 
//    [Author]:           第二世界 
 | 
//    [  Date ]:           Saturday, August 18, 2018 
 | 
//-------------------------------------------------------- 
 | 
using UnityEngine; 
 | 
using System.Collections; 
 | 
using UnityEngine.UI; 
 | 
  
 | 
  
 | 
namespace Snxxz.UI 
 | 
{ 
 | 
     
 | 
    public class CrossServerBossBoxBehaviour : MonoBehaviour 
 | 
    { 
 | 
        [SerializeField] Text m_BigBoxCount; 
 | 
        [SerializeField] Text m_SmallBoxCount; 
 | 
        [SerializeField] RawImage m_RawImage; 
 | 
  
 | 
        CrossServerBossModel model { get { return ModelCenter.Instance.GetModel<CrossServerBossModel>(); } } 
 | 
  
 | 
        public void Display() 
 | 
        { 
 | 
            timer = 0f; 
 | 
            var config = NPCConfig.Get(model.bigBoxNpcId); 
 | 
            UI3DModelExhibition.Instance.ShowNPC(model.bigBoxNpcId, config.UIModeLOffset, config.UIModelRotation, m_RawImage); 
 | 
            DisplayBoxSurplusInfo(); 
 | 
            model.boxSurplusChangeEvent += OnBoxInfoUpdate; 
 | 
        } 
 | 
  
 | 
        public void Dispose() 
 | 
        { 
 | 
            model.boxSurplusChangeEvent -= OnBoxInfoUpdate; 
 | 
            UI3DModelExhibition.Instance.StopShow(); 
 | 
        } 
 | 
  
 | 
        private void OnBoxInfoUpdate() 
 | 
        { 
 | 
            DisplayBoxSurplusInfo(); 
 | 
        } 
 | 
  
 | 
        private void DisplayBoxSurplusInfo() 
 | 
        { 
 | 
            var boxInfo = model.boxInfo; 
 | 
            m_BigBoxCount.text = boxInfo.bigBoxSurplus.ToString(); 
 | 
            m_BigBoxCount.color = UIHelper.GetUIColor(boxInfo.bigBoxSurplus > 0 ? TextColType.White : TextColType.Red); 
 | 
            m_SmallBoxCount.text = boxInfo.smallBoxSurplus.ToString(); 
 | 
            m_SmallBoxCount.color = UIHelper.GetUIColor(boxInfo.smallBoxSurplus > 0 ? TextColType.White : TextColType.Red); 
 | 
        } 
 | 
  
 | 
        float timer = 0f; 
 | 
        private void LateUpdate() 
 | 
        { 
 | 
            timer += Time.deltaTime; 
 | 
            if (timer > 30) 
 | 
            { 
 | 
                timer = 0f; 
 | 
                model.RequestBoxSurplusInfo(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
    } 
 | 
  
 | 
} 
 |