using System; using UnityEngine; using UnityEngine.UI; using System.Collections.Generic; namespace Snxxz.UI { public class NPracticePointWin : Window { [SerializeField] Text remainTimeText; [SerializeField] Button gotoBtn; [SerializeField] Image multipleRealmImg; [SerializeField] Image multipleRealmImg2; [SerializeField] Text activeRuleText; OperationBase operation; MultipleRealmPointModel multipleRealm { get { return ModelCenter.Instance.GetModel(); } } protected override void BindController() { } protected override void AddListeners() { gotoBtn.AddListener(ClickGotoBtn); } protected override void OnPreOpen() { multipleRealm.CheckShowRed(true); GlobalTimeEvent.Instance.secondEvent += RefreshSecond; InitUI(); } protected override void OnAfterOpen() { this.transform.SetAsLastSibling(); } protected override void OnPreClose() { GlobalTimeEvent.Instance.secondEvent -= RefreshSecond; } protected override void OnAfterClose() { } private void InitUI() { RefreshSecond(); operation = null; OperationTimeHepler.Instance.TryGetOperationTime(Operation.MultipRealmPoint, out operation); if(operation != null) { int multipleRealm = (operation as OperationMultipleRealmPoint).multiplePractice; if (GeneralConfig.Instance.multipleRealmImgDict.ContainsKey(multipleRealm)) { multipleRealmImg.SetSprite(GeneralConfig.Instance.multipleRealmImgDict[multipleRealm]); multipleRealmImg2.SetSprite(GeneralConfig.Instance.multipleRealmImgDict[multipleRealm]); } activeRuleText.text = Language.Get("MultipleXXDRemind", Language.Get(StringUtility.Contact("Num_CHS_",multipleRealm))); } } private void ClickGotoBtn() { WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.DailyQuestFunc1); } private void RefreshSecond() { OperationBase operation; OperationTimeHepler.Instance.TryGetOperationTime(Operation.MultipRealmPoint, out operation); if(operation != null) { int seconds = (operation as OperationMultipleRealmPoint).GetRemainTime(TimeUtility.ServerNow); if (seconds > 0) { remainTimeText.text = StringUtility.Contact("", TimeUtility.SecondsToDHMSCHS(seconds), ""); } else { remainTimeText.text = UIHelper.GetTextColorByItemColor(TextColType.Red, Language.Get("XMZZ110")); } } } } }