//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Thursday, May 24, 2018 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; namespace Snxxz.UI { public class DailyQuestHangTimeBehaviour : MonoBehaviour { [SerializeField] Text m_HangingTime; [SerializeField] Button m_HangingTimeSource; PackModel playerPackModel { get { return ModelCenter.Instance.GetModel(); } } StoreModel storeModel { get { return ModelCenter.Instance.GetModel(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel(); } } public void Display() { UpdateHangingTime(); PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefresh; PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataRefresh; m_HangingTimeSource.RemoveAllListeners(); m_HangingTimeSource.AddListener(ShowHangTimeSource); } public void Dispose() { m_HangingTimeSource.RemoveAllListeners(); PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefresh; } private void OnPlayerDataRefresh(PlayerDataType _refreshType) { if (_refreshType == PlayerDataType.HappyPoint) { UpdateHangingTime(); } } private void UpdateHangingTime() { var hangingHour = (int)(PlayerDatas.Instance.baseData.hangTime / 3600); var hangingMinute = (int)(PlayerDatas.Instance.baseData.hangTime % 3600 / 60); if (hangingMinute > 0) { m_HangingTime.text = StringUtility.Contact(hangingHour, Language.Get("Hour"), hangingMinute, Language.Get("Minute")); } else { m_HangingTime.text = StringUtility.Contact(hangingHour, Language.Get("Hour")); } } private void ShowHangTimeSource() { var own = playerPackModel.GetItemCountByID(PackType.Item, 952); if (own > 0) { var guid = playerPackModel.GetItemGUIDByID(952); var itemModel = playerPackModel.GetItemByGuid(guid); itemTipsModel.SetItemTipsModel(PackType.Item, itemModel.guid, false, true); itemTipsModel.SetBagTipsBtn(itemTipsModel.curAttrData); itemTipsModel.ShowTip(); } else { var config = StoreConfig.Get(152); storeModel.OnClickShopCell(config); } } } }