using System.Text.RegularExpressions; using ET; using FairyGUI; using UI.League; using UnityEngine; namespace GFGGame { //联盟答题 public class LeagueAnswerView : BaseWindow { private UI_LeagueAnswerUI _ui; public override void Dispose() { if (_ui != null) { _ui.Dispose(); _ui = null; } base.Dispose(); } protected override void OnInit() { base.OnInit(); packageName = UI_LeagueAnswerUI.PACKAGE_NAME; _ui = UI_LeagueAnswerUI.Create(); this.viewCom = _ui.target; this.viewCom.Center(); this.modal = true; viewAnimationType = EnumViewAnimationType.ZOOM_CENTER; _ui.m_btnRank.onClick.Add(OnBtnRankClick); _ui.m_btnAnswer.onClick.Add(OnBtnAnswerClick); } protected override void AddEventListener() { base.AddEventListener(); } protected override void OnShown() { base.OnShown(); UpdateView(); } protected override void OnHide() { base.OnHide(); Timers.inst.Remove(UpdateTime); } protected override void RemoveEventListener() { base.RemoveEventListener(); } private void OnBtnRankClick() { ViewManager.Show(); } private void OnBtnAnswerClick() { ViewManager.Show(null, new object[] { typeof(LeagueAnsweringView).FullName }); } private void UpdateView() { OtherRoleInfoData roleInfo = LeagueDataManager.Instance.LeagueData.LeagueMemberDatas[LeagueDataManager.Instance.LeagueData.LastWeekAnswerNO1Id].RoleInfo; // RoleInfoManager.Instance.UpdateHead(_ui.m_comHead, roleInfo.headId, roleInfo.headBorderId); _ui.m_txtName.text = roleInfo.roleName; _ui.m_txtRule.text = TextDescCfgArray.Instance.GetCfg(300008).text; if (LeagueDataManager.Instance.GetNumeriValue(LeagueNumericType.LeagueQuestionStatus) == LeagueQuestionStatus.End) { _ui.m_btnAnswer.visible = false; _ui.m_txtTime.visible = true; Timers.inst.Add(1, 0, UpdateTime); } else { _ui.m_btnAnswer.visible = true; _ui.m_txtTime.visible = false; } } private void UpdateTime(object param) { long curTime = TimeHelper.ServerNow(); long endTime = TimeUtil.GetNextTime(GlobalCfgArray.globalCfg.leagueQuestionStartTime); if (LeagueDataManager.Instance.GetNumeriValue(LeagueNumericType.LeagueQuestionStatus) > LeagueQuestionStatus.End || endTime - curTime < 0) { Timers.inst.Remove(UpdateTime); return; } _ui.m_txtTime.text = string.Format("{0}后开启", TimeUtil.FormattingTime5((int)(endTime - curTime))); } } }