//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Thursday, May 24, 2018 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; using TableConfig; namespace Snxxz.UI { public class DailyQuestHangTimeBehaviour : MonoBehaviour { [SerializeField] Text m_HangingTime; [SerializeField] Button m_HangingTimeSource; PlayerPackModel 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.PlayerDataRefreshInfoEvent -= OnPlayerDataRefresh; PlayerDatas.Instance.PlayerDataRefreshInfoEvent += OnPlayerDataRefresh; m_HangingTimeSource.RemoveAllListeners(); m_HangingTimeSource.AddListener(ShowHangTimeSource); } public void Dispose() { m_HangingTimeSource.RemoveAllListeners(); PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnPlayerDataRefresh; } private void OnPlayerDataRefresh(PlayerDataRefresh _refreshType) { if (_refreshType == PlayerDataRefresh.HappyPoint) { UpdateHangingTime(); } } private void UpdateHangingTime() { var hangingHour = (int)(PlayerDatas.Instance.baseData.HappyPoint / 3600); var hangingMinute = (int)(PlayerDatas.Instance.baseData.HappyPoint % 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.rptItem, 952); if (own > 0) { var guid = playerPackModel.GetItemGUIDByID(952); var itemModel = playerPackModel.GetItemModelByGUID(guid); itemTipsModel.SetItemTipsModel(PackType.rptItem, itemModel.itemInfo.ItemGUID, false, true); itemTipsModel.SetBagTipsBtn(itemTipsModel.curAttrData); itemTipsModel.ShowUICtrl(); } else { var config = Config.Instance.Get(152); storeModel.OnClickShopCell(config); } } } }