| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 | using System.Text.RegularExpressions;using ET;using FairyGUI;using Hutool;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_btnClose.onClick.Add(Hide);            _ui.m_btnRank.onClick.Add(OnBtnRankClick);            _ui.m_btnAnswer.onClick.Add(OnBtnAnswerClick);            _ui.m_btnTeaParty.onClick.Add(OnBtnTeaPartyClick);        }        protected override void AddEventListener()        {            base.AddEventListener();        }        protected override void OnShown()        {            base.OnShown();            if (this.viewData != null)            {                var index = (int)this.viewData;                _ui.m_c1.selectedIndex = index;                var openCfg = TeapartyOpenCfgArray.Instance.GetCfg(LeagueDataManager.Instance.TeaPartyId);                if (openCfg != null) {                     _ui.m_txtPlayRule.text =  TextDescCfgArray.Instance.GetCfg(300023).text + openCfg.preview;                }                _ui.m_btnTeaParty.visible = LeagueDataManager.Instance.TeaPartyStatus != 0;            }            else {                _ui.m_c1.selectedIndex = 0;                UpdateView();            }        }        protected override void OnHide()        {            base.OnHide();            Timers.inst.Remove(UpdateTime);        }        protected override void RemoveEventListener()        {            base.RemoveEventListener();        }        private void OnBtnRankClick()        {            ViewManager.Show<LeagueAnswerRankView>();        }        private void OnBtnAnswerClick()        {            Hide();            ViewManager.Show<LeagueAnsweringView>();        }        private void OnBtnTeaPartyClick()        {            var roleTeapartyInfo = LeagueDataManager.Instance.RoleTeapartyInfo;            if (LeagueDataManager.Instance.TeaPartyStatus == LeagueTeaPartyStatus.YesGo && roleTeapartyInfo.IsNoActDayEnterLeague)            {                PromptController.Instance.ShowFloatTextPrompt("该活动暂未开启");                return;            }            Hide();            if (roleTeapartyInfo.IsQuitTeaParty && roleTeapartyInfo.LastOpenCfgId != 0 && roleTeapartyInfo.LastOpenCfgId == LeagueDataManager.Instance.TeaPartyId) {                PromptController.Instance.ShowFloatTextPrompt("该玩法不可以重复参加哦");                return;            }            if (LeagueDataManager.Instance.TeaPartyStatus == LeagueTeaPartyStatus.YesGo && !LeagueDataManager.Instance.RoleTeapartyInfo.IsComplete && LeagueDataManager.Instance.RoleTeapartyInfo.Status)                ViewManager.Show<LeagueTeaPartyShowView>();            else                 ViewManager.Show<LeagueTeaPartyView>();        }                private void UpdateView()        {            OtherRoleInfoData lastNO1 =                LeagueDataManager.Instance.GetMemberRoleInfo(LeagueDataManager.Instance.LeagueData.LastWeekAnswerNO1Id);            _ui.m_comHead.target.visible = false;            if (lastNO1 != null)            {                ItemCfg headCfg =                    ItemCfgArray.Instance.GetCfg(lastNO1.headId == 0 ? ConstItemID.HEADID : lastNO1.headId);                _ui.m_comHead.m_loaIcon.url = ResPathUtil.GetHeadPath(headCfg.res);                _ui.m_comHead.target.visible = true;            }            _ui.m_txtName.text = lastNO1 == null ? "虚位以待" : lastNO1.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)        {            int curIndex = DateUtil.GetNearestStartTimeIndex(GlobalCfgArray.globalCfg.leagueQuestionCloseTimeArr);            long curTime = TimeHelper.ServerNow();            var questionStartTimeStr = GlobalCfgArray.globalCfg.leagueQuestionStartTimeArr[curIndex];            long endTime =TimeHelper.ServerNow() > TimeUtil.GetCurDayTime(questionStartTimeStr)                ? TimeUtil.GetNextTime(questionStartTimeStr)                : TimeUtil.GetCurDayTime(questionStartTimeStr);            if (LeagueDataManager.Instance.GetNumeriValue(LeagueNumericType.LeagueQuestionStatus) >                LeagueQuestionStatus.End                || endTime - curTime < 0)            {                Timers.inst.Remove(UpdateTime);                return;            }            _ui.m_txtTime.text = string.Format("{0}后开启", TimeUtil.FormattingTimeTo_HHmmss((endTime - curTime)));        }    }}
 |