| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527 | using FairyGUI;using UI.Main;using UnityEngine;using System.Collections.Generic;using ET;using System.Linq;using Assets.Game.HotUpdate.Data;using System.Collections;using System;using GFGGame.Launcher;namespace GFGGame{    public class MainUIView : BaseView    {        private UI_MainUI _ui;        private GameObject _sceneObject;        private ValueBarController _valueBarController;        private SwipeGesture swipeGesture;        private const int swipeDistance = 100;        private bool isOpen = false;        DateTime dateTime;        DateTime unixStartTime;        private List<AdCfg> _adIds = new List<AdCfg>();        private Vector2 _startPos;        private Vector2 _endPos;        private GButton _btnGongGao;        private GButton _btnHaoYou;        private GButton _btnYouJian;        private GButton _btnRenWu;        private GButton _btnLeague;        private GButton _btnStore;        private GButton _btnTuJian;        private GButton _btnStudio;        private GButton _btnField;        private GButton _btnBag;        private GButton _btnActivityDay7;        private GButton _btnGallery;        private List<EffectUI> _effectUIList = new List<EffectUI>();        private UI_ButtonModle1[] _btns;        private bool firstIn;                //用于分帧更新红点        private int redPointUpdateFrame = -1;        public override void Dispose()        {            if (_valueBarController != null)            {                _valueBarController.Dispose();                _valueBarController = null;            }            // Clear Effect            for (int i = 0; i < _effectUIList.Count; i++)            {                EffectUIPool.Recycle(_effectUIList[i]);            }            _effectUIList.Clear();            if (_sceneObject != null)            {                PrefabManager.Instance.Restore(_sceneObject);                _sceneObject = null;            }            if (_ui != null)            {                _ui.Dispose();                _ui = null;            }            base.Dispose();        }        protected override void OnInit()        {            base.OnInit();            packageName = UI_MainUI.PACKAGE_NAME;            _ui = UI_MainUI.Create();            viewCom = _ui.target;            isfullScreen = true;            isReturnView = true;            _valueBarController = new ValueBarController(_ui.m_valueBar);            _btnYouJian = _ui.m_btnYouJian;            _btnGongGao = _ui.m_btnGongGao;            _btnHaoYou = _ui.m_list.GetChild("btnHaoYou").asButton;            _btnRenWu = _ui.m_list.GetChild("btnRenWu").asButton;            _btnLeague = _ui.m_list.GetChild("btnLeague").asButton;            _btnStore = _ui.m_list.GetChild("btnStore").asButton;            _btnTuJian = _ui.m_list.GetChild("btnTuJian").asButton;            _btnBag = _ui.m_list.GetChild("btnBag").asButton;            _btnGallery = _ui.m_list.GetChild("btnGallery").asButton;            _btnActivityDay7 = _ui.m_btnActivityDay7.target;            _btns = new UI_ButtonModle1[] { _ui.m_btnHuanZhuang, _ui.m_btnZhaiXing, _ui.m_btnXiuFang, _ui.m_btnCiPai };            _ui.m_btnMain.target.onClick.Add(OnClickBtnMain);            _ui.m_btnHuanZhuang.target.onClick.Add(OnClickBtnHuanZhuang);            _ui.m_btnZhaiXing.target.onClick.Add(OnClickBtnZhaiXing);            _ui.m_btnXiuFang.target.onClick.Add(OnClickBtnXiuFang);            _ui.m_btnCiPai.target.onClick.Add(OnClickBtnCiPai);            _ui.m_headBar.target.onClick.Add(OnClickHeadBar);            _ui.m_guideBtn.onClick.Add(OnClickHeadBar);            _ui.m_btnDailyWelfare.target.onClick.Add(OnClickBtnDailyWelfare);            _ui.m_btnNewYearRedEnvelope.target.onClick.Add(OnClickBtnNewYearRedEnvelope);            _ui.m_btnActivityLuckyBox.target.onClick.Add(OnClickBtnActivityLuckyBox);            _ui.m_btnOpenServerActivity.target.onClick.Add(OnClickBtnOpenServerActivity);            _ui.m_btnWanShiLi.target.onClick.Add(OnClickBtnWanShiLi);            _ui.m_btnTea.target.onClick.Add(OnClickBtnTea);            _ui.m_btnActivityZCJB.target.onClick.Add(OnClickBtnZCJB);            _ui.m_btnGetYuanXiao.target.onClick.Add(OnClickBtnGetYuanXiao);            _ui.m_btnActivityFYJY.target.visible = false;            _ui.m_btnActivityFYJY.target.onClick.Add(OnClickBtnFYJY);            _btnLeague.onClick.Add(OnClickBtnLeague);            _btnStore.onClick.Add(OnClickBtnStore);            _btnTuJian.onClick.Add(OnClickBtnTuJian);            _btnYouJian.onClick.Add(OnClickBtnYouJian);            _btnHaoYou.onClick.Add(OnClickBtnHaoYou);            _btnGongGao.onClick.Add(OnClickBtnGongGao);            _btnRenWu.onClick.Add(OnClickBtnRenWu);            _ui.m_btnActivityAfuGift.target.onClick.Add(OnClickBtnAfuGift);            _btnActivityDay7.onClick.Add(OnClickBtnDay7);            _ui.m_btnFirstRecharge.target.onClick.Add(OnClickBtnFirstRecharge);            _btnBag.onClick.Add(OnClickBtnBag);            _ui.m_btnGiftBag1.target.onClick.Add(OnClickBtnGiftBag2);            _ui.m_btnGiftBag2.target.onClick.Add(OnClickBtnGiftBag1);            _ui.m_btnHaiZhiShi.target.onClick.Add(OnClickBtnInstanceZones);            _ui.m_touchMask.onClick.Add(ShowMainUI);            _ui.m_btnShow.target.onClick.Add(HideMainUI);            _ui.m_btnNewPlayerReward.target.onClick.Add(OnClickNewPlayerReward);            _ui.m_btnSevenReward.target.onClick.Add(OnClickSevenReward);            _ui.m_btnPearRebate.target.onClick.Add(OnClickPearRabate);            _btnGallery.onClick.Add(OnClickGallery);            _ui.m_comListAd.m_listAd.itemRenderer = RenderListAdItem;            _ui.m_comListAd.m_listAd.SetVirtualAndLoop();            _ui.m_comListAd.m_listAd.scrollPane.onScrollEnd.Add(OnListAdScrollEnd);            _ui.m_comListAd.m_listAd.scrollPane.decelerationRate = 0.8f;            _ui.m_list.ResizeToFit();            _ui.m_btnChange.target.onClick.Add(OnBtnChangClick);            _ui.m_btnChange.m_c1.selectedIndex = 1;            _ui.m_btnChange.target.selected = true;            _ui.m_storageBtn.target.onClick.Add(OnBtnStorageClick);            firstIn = true;            //这个是东8时区的0时间戳            unixStartTime = new DateTime(1970, 1, 1, 8, 0, 0);        }        protected override void AddEventListener()        {            base.AddEventListener();            EventAgent.AddEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);            EventAgent.AddEventListener(ConstMessage.STORY_LEVEL_CHANGE, CheckFunOpen);            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, OnRedDotChanged);            EventAgent.AddEventListener(ConstMessage.CHANGE_ROLE_HEAD, UpdateHead);            EventAgent.AddEventListener(ConstMessage.RESET_DAILY_DATA, ResetDailyData);            EventAgent.AddEventListener(ConstMessage.AFU_GIFT_CHANGED, ChangeAfuActivityState);            EventAgent.AddEventListener(ConstMessage.VIEW_CLOSED, CheckAutoShowViews);            EventAgent.AddEventListener(ConstMessage.AFTER_DATA_INITED, OnAfterDataInited);            EventAgent.AddEventListener(ConstMessage.NEW_YEAR_RED_ENVELOPE_INFO, RefreshBtnNewYearRedEnvelope);            EventAgent.AddEventListener(ConstMessage.ACTIVITY_RED_CHANGE, UpdateActivityRedDot);        }        protected override void RemoveEventListener()        {            base.RemoveEventListener();            EventAgent.RemoveEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);            EventAgent.RemoveEventListener(ConstMessage.STORY_LEVEL_CHANGE, CheckFunOpen);            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, OnRedDotChanged);            EventAgent.RemoveEventListener(ConstMessage.CHANGE_ROLE_HEAD, UpdateHead);            EventAgent.RemoveEventListener(ConstMessage.AFU_GIFT_CHANGED, ChangeAfuActivityState);            EventAgent.RemoveEventListener(ConstMessage.VIEW_CLOSED, CheckAutoShowViews);            EventAgent.RemoveEventListener(ConstMessage.AFTER_DATA_INITED, OnAfterDataInited);            EventAgent.RemoveEventListener(ConstMessage.NEW_YEAR_RED_ENVELOPE_INFO, RefreshBtnNewYearRedEnvelope);            EventAgent.RemoveEventListener(ConstMessage.ACTIVITY_RED_CHANGE, UpdateActivityRedDot);        }        protected override void OnShown()        {            base.OnShown();            MainDataManager.Instance.CanSwipe = false;            //防止引导检测之前触发点击事件            GRoot.inst.touchable = false;            _ui.m_loaGuidestudio.visible = true;            _ui.m_headBar.m_txtName.text = RoleDataManager.roleName;            if (_sceneObject == null)            {                _sceneObject = PrefabManager.Instance.InstantiateSync(ResPathUtil.GetPrefabPath("SceneMain"));            }            _ui.m_btnNewYearRedEnvelope.target.visible = false;            _ui.m_btnNewPlayerReward.target.visible = false;            SceneController.UpdateMainScene(_sceneObject);            UpdateRoleLvl();            UpdateHead();            _valueBarController.OnShown();            CheckFunOpen();            UpdateBtnFirstRecharge();            Timers.inst.Remove(Update);            Timers.inst.Remove(CheckGuide);            Timers.inst.AddUpdate(CheckGuide);            Timers.inst.AddUpdate(Update);            Update(null);            //让主界面先显示出来,其他逐步处理            Timers.inst.Remove(OnShowLater);            Timers.inst.Add(0.1f, 1, OnShowLater);            // 先隐藏茶会提示            _ui.m_grpLeagueTips.visible = false;            // 刚进游戏不播放主界面入场动画            if (firstIn)            {                firstIn = false;                MainUIAnimFinished();                AddEffect();            }            else            {                _ui.m_openViewAction.Play(MainUIAnimFinished);            }            //StorageSProxy.ReqSetClientValue(1012, 4).Coroutine();            // 临时设置内网显示时间            _ui.m_serverTime.visible = false;            Timers.inst.AddUpdate(ServerTimeUpdate);        }        protected override void OnHide()        {            base.OnHide();            GRoot.inst.touchable = true;            if (_sceneObject != null)            {                PrefabManager.Instance.Restore(_sceneObject);                _sceneObject = null;            }            _valueBarController.OnHide();            Timers.inst.Remove(Update);            Timers.inst.Remove(CheckGuide);            Timers.inst.Remove(UpdateAdListTime);            Timers.inst.Remove(OnShowLater);            Timers.inst.Remove(ServerTimeUpdate);        }        private void OnShowLater(object param)        {            CheckProbabilityUp();            if(!GameGlobal.AfterDataInited)            {                GameController.AfterShowMainUI();            }            else            {                OnAfterDataInited();            }        }        private void OnAfterDataInited()        {            GetAdIds();            UpdateButtons();            OnRedDotChanged();            CheckAutoShowViews();        }        private async void UpdateButtons()        {            // 刚进游戏请求数据            if (MainDataManager.Instance.needUpdateProxyData)            {                MainDataManager.Instance.needUpdateProxyData = false;                var result = await NewYearRedEnvelopeSProxy.ReqGetRedPacketInfo();                if (result)                {                    RefreshBtnNewYearRedEnvelope();                }                result = await ActivityGetYuanXiaoProxy.ReqGetActivityGameInfos();                if (result)                {                    RefreshBtnYuanXiaoActivity();                }                result = await ActivityFYJYProxy.ReqGetActivityGameInfos();                if (result)                {                    RefreshBtnActivityFYJY();                    if (_ui.m_btnActivityFYJY.target.visible)                    {                        RedDotController.Instance.SetComRedDot(_ui.m_btnActivityFYJY.target    , RedDotDataManager.Instance.GetActivityFYJYRed(), "", -15, -1);                    }                }            }            // 后续活动按钮的刷新检测            else            {                RefreshBtnNewYearRedEnvelope();                RefreshBtnYuanXiaoActivity();                RefreshBtnActivityFYJY();            }        }        private void RefreshBtnNewYearRedEnvelope()        {            int actRedPacketId = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.NewYearRedPacket);            _ui.m_btnNewYearRedEnvelope.target.visible = (actRedPacketId > 0 && NewYearRedEnvelopeDataManager.Status > 0 && NewYearRedEnvelopeDataManager.Status != RedPacketStatus.Double);        }        private void RefreshBtnYuanXiaoActivity()        {            _ui.m_btnGetYuanXiao.target.visible = ActivityGetYuanXiaoDataManager.Instance.CheckOpen();        }        private void RefreshBtnActivityFYJY()        {            _ui.m_btnActivityFYJY.target.visible                 = (ActivityGlobalDataManager.Instance.IsActivityOpen(5016));        }        private void AddEffect()        {            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_btnMain.m_holder, "ui_zjm", "ZJM_szl_down_3"));            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_btnMain.m_holder1, "ui_zjm", "ZJM_szl_top_1"));            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_btnHaiZhiShi.m_holder, "ui_zjm", "ZJM_hzs_down_3"));            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_btnHaiZhiShi.m_holder1, "ui_zjm", "ZJM_hzs_top_1"));            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_BottomEffectHolder, "ui_zjm", "ZJM_DiBan"));            _effectUIList.Add(EffectUIPool.CreateEffectUI(_ui.m_btnZhaiXing.m_holder1, "ui_zjm", "ZJM_ZX"));        }        private void OnClickBtnInstanceZones()        {            TryCompleteGuide();            ViewManager.Show<InstanceZonesView>();        }        private void OnBtnChangClick()        {            int count = 0;            for (int i = 0; i < _ui.m_list.numItems; i++)            {                if (_ui.m_list.GetChildAt(i).visible == true) count++;            }            int oneItemHeight = 97 + _ui.m_list.lineGap;            float height = count * oneItemHeight;            if (_ui.m_btnChange.target.selected == true)            {                _ui.m_btnChange.m_c1.selectedIndex = 1;                GTween.To(_ui.m_list.height, height, 0.4f).SetTarget(_ui.m_list)                    .OnUpdate((GTweener t) => { _ui.m_list.height = t.value.x; }).SetEase(EaseType.QuintInOut);            }            else            {                _ui.m_btnChange.m_c1.selectedIndex = 0;                GTween.To(_ui.m_list.height, oneItemHeight, 0.4f).SetTarget(_ui.m_list)                    .OnUpdate((GTweener t) => { _ui.m_list.height = t.value.x; }).SetEase(EaseType.QuintInOut);            }        }        private void OnBtnStorageClick()        {            if(MainDataManager.Instance.StorageStatus == 0)            {                MainDataManager.Instance.StorageStatus = 1;                _ui.m_listGroud.visible = false;            }            else            {                MainDataManager.Instance.StorageStatus = 0;                _ui.m_listGroud.visible = true;            }            _ui.m_storageBtn.m_c1.selectedIndex = MainDataManager.Instance.StorageStatus;        }        private void OnClickBtnMain()        {            MainStoryDataManager.currentChapterType = 0;            isOpen = MainControllerr.GotoStoryChapter(isOpen);        }        private void OnClickBtnHuanZhuang()        {            if (isOpen) return;            isOpen = true;            _ui.m_btnHuanZhuang.m_holder1.visible = true;            _ui.m_btnHuanZhuang.m_holder1.visible = false;            ViewManager.Show<DressUpView>();            isOpen = false;        }        private void OnClickBtnZhaiXing()        {            LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.ZAI_XING, 1);            if (isOpen) return;            isOpen = true;            _ui.m_btnZhaiXing.m_holder1.visible = false;            ViewManager.Show<LuckyBoxView>(null, false);            isOpen = false;        }        private void OnClickBtnXiuFang()        {            if (isOpen) return;            isOpen = true;            _ui.m_btnXiuFang.m_holder1.visible = true;            _ui.m_btnXiuFang.m_holder1.visible = false;            ViewManager.Show<XiuFangView>();            isOpen = false;        }        private void OnClickBtnDailyLogin()        {            LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.MEI_RI_DNEG_LU, 1);            ViewManager.Show<SevenDayLoginView>();        }        private void OnClickBtnDailyWelfare()        {            ViewManager.Show<DailyWelfareView>();        }        private void OnClickBtnNewYearRedEnvelope()        {            ViewManager.Show<NewYearRedEnvelopeView>();        }        private void OnClickBtnActivityLuckyBox()        {            ViewManager.Show<ActivityThemeLuckyBoxView>(null, true);        }        private void OnClickBtnOpenServerActivity()        {            var titleIndex = PlayerPrefs.GetString("seeOpenServerActivityStory" + GameGlobal.userId);            if (titleIndex == null || titleIndex == "")            {                ViewManager.Show<StoryDialogView>(new object[] { "10151", false, new OnCompleteStoryDialogCall(OnCompletePriorStoryDialog), null, false }, true);            }            else                ViewManager.Show<OpenServerActivityView>();        }        private static void OnCompletePriorStoryDialog(bool done, object param)        {            if (done) {                 PlayerPrefs.SetString("seeOpenServerActivityStory" + GameGlobal.userId, "1");                ViewManager.DeleteViewStackCountDown(null, 1);                ViewManager.Show<OpenServerActivityView>();            }        }        private void OnClickBtnWanShiLi()        {            ViewManager.Show<ActivityWanShiLiView>();        }        private void  OnClickBtnTea()        {            ViewManager.Show<ActivityTeaMainView>();        }        private void OnClickBtnZCJB()        {            ViewManager.Show<ActivityZCJBView>();        }        private void OnClickBtnCiPai()        {            LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.CI_PAI, 1);            if (isOpen) return;            isOpen = true;            _ui.m_btnCiPai.m_holder1.visible = true;            _ui.m_btnCiPai.m_holder1.visible = false;            CardDataManager.isFilter = false;            ViewManager.Show<CardDetailView>();            isOpen = false;        }        private void OnClickBtnBag()        {            ViewManager.Show<BagView>();        }        private void OnClickGallery()        {            ViewManager.Show<PoemGalleryView>();        }        private void OnClickBtnLeague()        {            // LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.SHANG_CHENG, 1);            if (!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(LeagueView).Name)) return;            // if (LeagueDataManager.Instance.Type == 0)            // {            //     PromptController.Instance.ShowFloatTextPrompt("数据来的有点慢,稍后再试下吧");            //     return;            // }            if (LeagueDataManager.Instance.Type == LeagueJoinType.Join) //已加入联盟            {                ViewManager.Show<LeagueView>();            }            else //未加入联盟            {                ViewManager.Show<LeagueJoinView>();            }        }        private void OnClickBtnStore()        {            LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.SHANG_CHENG, 1);            GuideSimulationDataManager.Instance.GuideMonthlyJumpType = 1;            ViewManager.Show<StoreView>();        }        private void OnClickBtnTuJian()        {            LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.TU_JIAN, 1);            ViewManager.Show<FieldGuideView>();        }        private void OnClickPearRabate()        {            ViewManager.Show<PearRebateTipsView>();        }        private void OnClickBtnYouJian()        {            ViewManager.Show<MailView>();        }        private void OnClickBtnHaoYou()        {            ViewManager.Show<FriendView>();        }        private void OnClickBtnGongGao()        {            ViewManager.Show<NoticeView>();        }        private void OnClickBtnRenWu()        {            ViewManager.Show<TaskView>();        }        private void OnClickBtnAfuGift()        {            if (!ActivityAfuGiftDataManager.Instance.IsOpen)            {                return;            }            ViewManager.Show<ActivityAfuGiftView>();        }        private void OnClickBtnDay7()        {            ViewManager.Show<ActivityDay7View>();        }        private void OnClickBtnFirstRecharge()        {            ViewManager.Show<FirstChargeBonusView>();        }        private void OnClickHeadBar()        {            ViewManager.Show<RoleInfoView>();        }        private void OnClickNewPlayerReward()        {            ViewManager.Show<NewPlayersTipsView>();        }        private void OnClickSevenReward()        {            ViewManager.Show<SevenDayLoginView>();        }        //列表        private void OnClickBtnGiftBag1()        {            var activityInfoByTypeList =              ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB1);            var list = activityInfoByTypeList                .Where(a => a.EndTime > TimeInfo.Instance.ServerNow()).ToList();            if (list.Count == 0)            {                PromptController.Instance.ShowFloatTextPrompt("活动已结束");            }            else            {                ViewManager.Show<SpecialOfferGiftBoxView>();            }        }        //圆形        private void OnClickBtnGiftBag2()        {            //var activityInfoByTypeList =            //    ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB2);            //var list = activityInfoByTypeList            //    .Where(a => a.EndTime > TimeInfo.Instance.ServerNow()).ToList();            //if (list.Count == 0)            //{            //    PromptController.Instance.ShowFloatTextPrompt("活动已结束");            //}            //else            //{            //    ViewManager.Show<RushSaleGiftBoxView>(new object[] { ActivityType.XSLB2, this.viewData });            //}            ViewManager.Show<ZGTHgiftTipsView>();        }        //列表样式        private void UpGiftBox1()        {            _ui.m_btnGiftBag2.target.visible = LimitedTimeGiftBoxDataManager.Instance.SpecialOfferGiftBoxCanBuy();            if (_ui.m_btnGiftBag2.target.visible) {                var activityInfoByTypeList =               ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB1);                var list = activityInfoByTypeList                    .Where(a => a.EndTime > TimeInfo.Instance.ServerNow()).ToList();                _ui.m_btnGiftBag2.m_txtTime.text = TimeUtil.GetTimeLeft(TimeInfo.Instance.ServerNow(), list[0].EndTime);            }        }        //圆形样式        private void UpGiftBox2()        {            var activityInfoByTypeList =                ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB2);            var list = activityInfoByTypeList                .Where(a => a.EndTime > TimeInfo.Instance.ServerNow()).ToList();            if (list.Count == 0)            {                _ui.m_btnGiftBag1.target.visible = false;            }            else            {                bool isSoldOut = true;                foreach (var activityInfo in list)                {                    ActivityOpenCfg activityOpenCfg = ActivityOpenCfgArray.Instance.GetCfg(activityInfo.ActivityId);                    var paramsArr = activityOpenCfg.paramsArr;                    foreach (var shopCfgId in paramsArr)                    {                        var shopCfg = ShopCfgArray.Instance.GetCfg(shopCfgId);                        var remainBuyNum = shopCfg.maxBuyNum - ShopDataManager.Instance.GetGoodsBuyNumById(shopCfgId);                        //只要有一个商品还能购买,就不是售罄                        if (remainBuyNum > 0)                        {                            isSoldOut = false;                            break;                        }                    }                }                if (isSoldOut)                {                    _ui.m_btnGiftBag1.target.visible = false;                }                else                {                    _ui.m_btnGiftBag1.m_txtTime.text =                        TimeUtil.GetTimeLeft(TimeInfo.Instance.ServerNow(), list[0].EndTime);                    _ui.m_btnGiftBag1.target.visible = true;                }            }        }        private void Update(object param)        {            UpdateActLuckyBox();            UpdateOpenServerActivity();            UpdateLimitedActvityState();            //UpdateTime();            //特惠礼包/限时礼包窗口内的倒计时            UpGiftBox1();            //UpGiftBox2();            EventAgent.DispatchEvent(ConstMessage.LUCKY_BOX_TIME);            UpdateRedDot();        }        private void UpdateActLuckyBox()        {            int actLuckyBoxId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitLuckyBox);            _ui.m_btnActivityLuckyBox.target.visible = actLuckyBoxId > 0;            if (actLuckyBoxId > 0)            {                if (actLuckyBoxId != ActivityDataManager.Instance.lastActLuckyBoxId)                {                    ActivitySProxy.ReqGetTimeLimitLuckyBoxInfo(actLuckyBoxId).Coroutine();                    ActivityDataManager.Instance.lastActLuckyBoxId = actLuckyBoxId;                }                ActivityOpenCfg activityOpenCfg = ActivityOpenCfgArray.Instance.GetCfg(actLuckyBoxId);                _ui.m_btnActivityLuckyBox.target.title = activityOpenCfg.themeName;                _ui.m_btnActivityLuckyBox.target.icon = "ui://Main/zjm_icon_" + activityOpenCfg.res.Split('_')[1];                //long time = TimeUtil.DateTimeToTimestamp(activityOpenCfg.endTime) - TimeHelper.ServerNow();                //_ui.m_btnActivityLuckyBox.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);            }        }        private void UpdateOpenServerActivity()        {            int actLimitId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitStlyc);            if (actLimitId > 0) {                ActivityOpenCfg activityOpenCfg = ActivityOpenCfgArray.Instance.GetCfg(actLimitId);                long time = TimeUtil.DateTimeToTimestamp(activityOpenCfg.endTime) - TimeHelper.ServerNow();                _ui.m_btnOpenServerActivity.m_txtTime.text = TimeUtil.FormattingTimeTo_DDHHmm(time);            }        }        private void UpdateLimitedActvityState()        {            _ui.m_btnNewPlayerReward.target.visible = false;            int actLimitTsyId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitTsy);            if (actLimitTsyId > 0)            {                if (actLimitTsyId != ActivityDataManager.Instance.lastActLimitTsyId)                {                    ActivitySProxy.ReqGetTimeLimitLuckyBoxInfo(actLimitTsyId).Coroutine();                    ActivityDataManager.Instance.lastActLimitTsyId = actLimitTsyId;                }            }            int actLimitStlycId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitStlyc);            if (actLimitStlycId > 0)            {                if (actLimitStlycId != ActivityDataManager.Instance.lastActLimitStlycId)                {                    ActivitySProxy.ReqGetTimeLimitLuckyBoxInfo(actLimitStlycId).Coroutine();                    ActivityDataManager.Instance.lastActLimitStlycId = actLimitStlycId;                }            }            List<int> actListChargeIds = ActivityGlobalDataManager.Instance.GetActivityInfoIdsByType(ConstLimitTimeActivityType.ActLimitChargeId);            int actLimitChargeId = actListChargeIds.Count > 0 ? actListChargeIds[0] : 0;            if (ActivityDataManager.Instance.lastActLimitChargeId != actLimitChargeId)            {                ActivityDataManager.Instance.actLimitChargeId = actLimitChargeId;                //_ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||                //!(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||                //ActivityDataManager.Instance.AllSevenDayBonusGot()));                _ui.m_btnDailyWelfare.target.visible = false;            }            int activeNewYearRedPacketId = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.NewYearRedPacket);            _ui.m_btnNewYearRedEnvelope.target.visible = (activeNewYearRedPacketId > 0 && NewYearRedEnvelopeDataManager.Status >=0 && NewYearRedEnvelopeDataManager.Status != RedPacketStatus.Double);            _ui.m_btnActivityDay7.target.visible = ActivityDay7DataManager.Instance.CheckOpen();            _ui.m_btnWanShiLi.target.visible = ActivityWanShiLiDataManager.Instance.CheckOpen();            _ui.m_btnTea.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(12) == 0 ? false : true;            _ui.m_btnActivityZCJB.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(17) == 0 ? false: true;            _ui.m_btnNewPlayerReward.target.visible = (!ActivityDataManager.Instance.IsGetNewPlayerReward&& GameGlobal.AutoNewPlayersTips);            _ui.m_btnSevenReward.target.visible = !ActivityDataManager.Instance.AllSevenDayBonusGot();            _ui.m_btnPearRebate.target.visible = ActivityDataManager.Instance.CheckPearRebateTips(6000);            _ui.m_btnGiftBag1.target.visible = ActivityDataManager.Instance.CheckPearRebateTips(6002);            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);            long endTime = 0;            if (activityInfo != null)            {                endTime = activityInfo.EndTime;            }            var leftTime = endTime - TimeHelper.ServerNow();            _ui.m_btnGiftBag1.m_txtTime.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);            UpdateSevenIcon();            if (!ActivityDataManager.Instance.IsGetNewPlayerReward)            {                RedDotController.Instance.SetComRedDot(_ui.m_btnNewPlayerReward.target, true, "", -8);            }        }        private void UpdateSevenIcon()        {            if(ActivityDataManager.Instance.CanGetSevenDayBonus())            {                //显示今日可领取                int id = DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(true)].rewardsArr[0][0];                if (DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(true)]                        .type == 2)                {                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath("tz_kongquednf","png");                }                else                {                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(id).res,"png");                }                _ui.m_btnSevenReward.m_textIcon.url = "ui://Main/zjm_hdjrkl";                RedDotController.Instance.SetComRedDot(_ui.m_btnSevenReward.target, true, "", -8);            }            else if(ActivityDataManager.Instance.HaveGetSevenDayBonus() && ActivityDataManager.Instance.NowSevenDayBonusDay(false)<6)            {                //显示明日可领取                int id = DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(false)+1].rewardsArr[0][0];                if (DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(false)+1]                        .type == 2)                {                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath("tz_kongquednf","png");                }                else                {                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(id).res,"png");                }                _ui.m_btnSevenReward.m_textIcon.url = "ui://Main/zjm_hdmrkl";                RedDotController.Instance.SetComRedDot(_ui.m_btnSevenReward.target, false, "", -8);            }        }        private void UpdateTime()        {            //if (_ui.m_btnTea.target.visible)            //{            //    long time = ActivityTeaDataManager.Instance.GetEndTime(ActivityType.TEA) - TimeHelper.ServerNow();            //    _ui.m_btnTea.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);            //}            //if (_ui.m_btnActivityDay7.target.visible)            //{            //    long time = ActivityDay7DataManager.Instance.GetEndTime() - TimeHelper.ServerNow();            //    _ui.m_btnActivityDay7.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);            //}            //if (_ui.m_btnWanShiLi.target.visible)            //{            //    long time = ActivityWanShiLiDataManager.Instance.GetEndTime() - TimeHelper.ServerNow();            //    _ui.m_btnWanShiLi.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);            //}            //if (_ui.m_btnActivityAfuGift.target.visible)            //{            //    var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.AFZL);            //    if (activityInfo == null)            //    {            //        _ui.m_btnActivityAfuGift.target.visible = false;            //    }            //    else            //    {            //        long time = activityInfo.EndTime - TimeHelper.ServerNow();            //        _ui.m_btnActivityAfuGift.m_txtTime.text = time > TimeUtil.SECOND_PER_DAY * 1000 ? TimeUtil.FormattingTimeTo_DDHHmm(time) : TimeUtil.FormattingTimeTo_HHmmss(time);            //    }            //}        }        private void OnNumericChange(EventContext context)        {            var numericType = (int)context.data;            if (numericType == NumericType.Lvl)            {                UpdateRoleLvl();                CheckFunOpen();            }            if (numericType == NumericType.FirstRechargeBonusStatus || numericType == NumericType.FirstRechargeTotal)            {                UpdateBtnFirstRecharge();            }        }        private void UpdateBtnFirstRecharge()        {            _ui.m_btnFirstRecharge.target.visible = ActivityDataManager.Instance.firstChargeBonusStatus != ConstBonusStatus.GOT;            if (_ui.m_btnFirstRecharge.target.visible)            {                bool canget = ActivityDataManager.Instance.firstChargeBonusStatus == ConstBonusStatus.CAN_GET;                RedDotController.Instance.SetComRedDot(_ui.m_btnFirstRecharge.target, canget, "", -50, 3);            }        }        private void UpdateRoleLvl()        {            _ui.m_headBar.m_txtLvl.text = "" + GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl);        }        private void UpdateHead()        {            RoleInfoManager.Instance.UpdateHead(_ui.m_headBar.m_comHead, RoleDataManager.headId,                RoleDataManager.headBorderId);        }        /// <summary>        /// 获取当前开启的滚动广告列表        /// </summary>        private void GetAdIds()        {            _adIds.Clear();            for (int i = 0; i < AdCfgArray.Instance.dataArray.Length; i++)            {                AdCfg adCfg = AdCfgArray.Instance.dataArray[i];                if (adCfg.res == "" || adCfg.res == null) continue;                if (adCfg.activityId > 0)                {                    if (ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId) == null) continue;                    ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId);                    if (TimeHelper.ServerNow() < activityInfo.StartTime || TimeHelper.ServerNow() > activityInfo.EndTime) continue;                }                if (!string.IsNullOrEmpty(adCfg.startTime) && !string.IsNullOrEmpty(adCfg.endTime))                {                    long startTime = TimeUtil.DateTimeToTimestamp(adCfg.startTime);                    long endTime = TimeUtil.DateTimeToTimestamp(adCfg.endTime);                    if (TimeHelper.ServerNow() < startTime || TimeHelper.ServerNow() > endTime) continue;                }                _adIds.Add(adCfg);            }            _ui.m_comListAd.m_listAd.numItems = _adIds.Count;            _ui.m_comListAd.m_listAdSelect.numItems = _adIds.Count;            if (_ui.m_comListAd.m_listAd.numItems > 0)            {                _ui.m_comListAd.m_listAd.ScrollToView(0);                _ui.m_comListAd.m_listAdSelect.selectedIndex = 0;            }            _ui.m_comListAd.target.visible = _ui.m_comListAd.m_listAd.numItems > 0;            if (_ui.m_comListAd.target.visible)            {                Timers.inst.Remove(UpdateAdListTime);                Timers.inst.Add(3, 0, UpdateAdListTime);            }        }        private void UpdateAdListTime(object param)        {            int itemIndex = _ui.m_comListAd.m_listAd.ChildIndexToItemIndex(0) + 1;            itemIndex = itemIndex == _ui.m_comListAd.m_listAd.numItems ? 0 : itemIndex;            _ui.m_comListAd.m_listAdSelect.selectedIndex = itemIndex;            _ui.m_comListAd.m_listAd.scrollPane.ScrollRight(0.8f, true);            CheckProbabilityUp();        }        private void RenderListAdItem(int index, GObject obj)        {            UI_ListAdItem item = UI_ListAdItem.Proxy(obj);            item.m_loaRes.url = ResPathUtil.GetActivityPath(_adIds[index].res,"png");            if (item.m_loaRes.data == null)            {                item.m_loaRes.onClick.Add(OnBtnAdJump);            }            item.m_loaRes.data = _adIds[index];            UI_ListAdItem.ProxyEnd();        }        private void OnBtnAdJump(EventContext context)        {            GObject obj = context.sender as GObject;            AdCfg adCfg = obj.data as AdCfg;            object[] param = null;            int jumpIndex = 0;            //if (adCfg.jumpId == nameof(LimitChargeView))            //{            //    param = new object[] { adCfg.activityId };            //}            //if (adCfg.jumpId == nameof(NewLimitChargeView))            //{            //    param = new object[] { adCfg.activityId };            //}            //if (adCfg.jumpId == nameof(LuckyBoxView))            //{            //    jumpIndex = adCfg.jumpParamArr[0];            //}            //if (jumpIndex != 0)            //    ViewManager.Show($"GFGGame.{adCfg.jumpId}", jumpIndex);            //else            //    ViewManager.Show($"GFGGame.{adCfg.jumpId}", param);            ViewManager.Show<DailyWelfareView>();        }        private void OnListAdScrollEnd()        {            int itemIndex = _ui.m_comListAd.m_listAd.ChildIndexToItemIndex(0);            _ui.m_comListAd.m_listAdSelect.selectedIndex = itemIndex;        }        private void CheckFunOpen()        {            _ui.m_btnGiftBag1.target.visible = false;            _ui.m_btnGiftBag2.target.visible = false;            _ui.m_btnNewPlayerReward.target.visible = false;            _ui.m_btnHaiZhiShi.m_loaLockIcons.visible = false;            _ui.m_btnXiuFang.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(XiuFangView).Name, false);            _ui.m_btnHuanZhuang.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DressUpView).Name, false);            _ui.m_btnCiPai.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(CardDetailView).Name, false);            _ui.m_btnZhaiXing.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(LuckyBoxView).Name, false);            _ui.m_btnMain.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(StoryChapterListView).Name, false);            _ui.m_btnActivityLuckyBox.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitLuckyBox) > 0;            _ui.m_btnOpenServerActivity.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitStlyc) > 0;            List<int> actListChargeIds = ActivityGlobalDataManager.Instance.GetActivityInfoIdsByType(ConstLimitTimeActivityType.ActLimitChargeId);            int actLimitChargeId = actListChargeIds.Count > 0 ? actListChargeIds[0] : 0;            //_ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||            //!(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||            //ActivityDataManager.Instance.AllSevenDayBonusGot()));            _ui.m_btnDailyWelfare.target.visible = false;            _ui.m_btnNewPlayerReward.target.visible = (!ActivityDataManager.Instance.IsGetNewPlayerReward&& GameGlobal.AutoNewPlayersTips);            if(!ActivityDataManager.Instance.IsGetNewPlayerReward)            {                RedDotController.Instance.SetComRedDot(_ui.m_btnNewPlayerReward.target, true, "", -8);            }            _ui.m_btnSevenReward.target.visible = !ActivityDataManager.Instance.AllSevenDayBonusGot();            UpdateSevenIcon();            _btnGongGao.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(NoticeView).Name, false);            _btnHaoYou.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(FriendView).Name, false);            _btnYouJian.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(MailView).Name, false);            _btnLeague.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(LeagueView).Name, false);            _btnStore.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(StoreView).Name, false);            _btnTuJian.visible =                FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(FieldGuideView).Name, false);            _btnActivityDay7.visible = ActivityDay7DataManager.Instance.CheckOpen();            _ui.m_btnActivityAfuGift.target.visible = ActivityAfuGiftDataManager.Instance.CheckIconShow();            _ui.m_list.ResizeToFit();        }        private void OnRedDotChanged()        {            //LogUtil.LogEditor($"MainUIView OnRedDotChanged GameGlobal.AfterDataInited {GameGlobal.AfterDataInited} AutoShowCompleted {GameGlobal.AutoShowCompleted}");            //暂时用这种方法优化下,红点的实现要重构!!!            //LogUtil.LogEditor("MainUIView UpdateRedDot OnRedDotChanged");                        redPointUpdateFrame = 0;        }        private void UpdateRedDot()        {            if (redPointUpdateFrame < 0) return;            if (!GameGlobal.AfterDataInited) return;            if (!ViewManager.CheckIsTopView(this.viewCom)) return;            LogUtil.LogEditor($"MainUIView UpdateRedDot redPointUpdateFrame {redPointUpdateFrame}");            if (redPointUpdateFrame == 0)                _valueBarController.UpdateRedPoint();            if (redPointUpdateFrame == 1)                RedDotController.Instance.SetComRedDot(_btnGongGao, RedDotDataManager.Instance.GetNoticeRed(), "", -9, 12);            if (redPointUpdateFrame == 2)                RedDotController.Instance.SetComRedDot(_btnRenWu, RedDotDataManager.Instance.GetTaskRed(), "", -8);            if (redPointUpdateFrame == 3)                RedDotController.Instance.SetComRedDot(_btnYouJian, RedDotDataManager.Instance.GetMailRed(), "", -9, 12);            if (redPointUpdateFrame == 4)                RedDotController.Instance.SetComRedDot(_btnTuJian, RedDotDataManager.Instance.GetFieldGuideRed() || RedDotDataManager.Instance.GetTravelGuideRed(), "", -8);            if (redPointUpdateFrame == 5)                RedDotController.Instance.SetComRedDot(_btnHaoYou, RedDotDataManager.Instance.GetFriendRed(), "", -8);            if (redPointUpdateFrame == 6)                RedDotController.Instance.SetComRedDot(_btnStore, RedDotDataManager.Instance.GetShopRed(), "", -8);            if (redPointUpdateFrame == 7)                RedDotController.Instance.SetComRedDot(_ui.m_headBar.m_comHead, RedDotDataManager.Instance.GetHeadRed() || RedDotDataManager.Instance.GetHeadBorderRed(), "", -26, 42);            if (redPointUpdateFrame == 8)                RedDotController.Instance.SetComRedDot(_btnLeague, RedDotDataManager.Instance.GetLeagueRed(), "", -8);            if (redPointUpdateFrame == 9)                 RedDotController.Instance.SetComRedDot(_ui.m_comListAd.target, RedDotDataManager.Instance.GetDailyWelfareRed(), "", 0, 5);            if (redPointUpdateFrame == 10)                RedDotController.Instance.SetComRedDot(_ui.m_btnActivityLuckyBox.target, RedDotDataManager.Instance.GetMeiRiTeHuiRed()                || RedDotDataManager.Instance.GetActLuckyBoxRewardRed(ConstLimitTimeActivityType.ActLimitLuckyBox)                || RedDotDataManager.Instance.GetActLuckyBoxTaskdRed() || RedDotDataManager.Instance.GetActLuckyBoxStudioFilingRed() || RedDotDataManager.Instance.GetGiftBagRewardRed(), "", -21, 2);            if (redPointUpdateFrame == 11)                RedDotController.Instance.SetComRedDot(_btnBag, RedDotDataManager.Instance.GetMainBagGiftRed(), "", -8);            if (redPointUpdateFrame == 12)                RedDotController.Instance.SetComRedDot(_ui.m_btnActivityDay7.target, RedDotDataManager.Instance.GetActivityDay7Red(), "", -10, 17);            RedDotController.Instance.SetComRedDot(_ui.m_btnWanShiLi.target, RedDotDataManager.Instance.GetActivityWanShiLiRed(), "", -24, -9);            if (redPointUpdateFrame == 13)                RedDotController.Instance.SetComRedDot(_ui.m_btnXiuFang.target, RedDotDataManager.Instance.GetClothingFosterRed() || RedDotDataManager.Instance.GetClothingSyntheticRed() || CollectPartDataManager.Instance.CheckAllOpenPartCanUP() , "icon_tanhao", -17, 24);            if (redPointUpdateFrame == 14)            {                RedDotController.Instance.SetComRedDot(_ui.m_btnCiPai.target, RedDotDataManager.Instance.GetCardRed(), "icon_tanhao", -44, 33);            }            if (redPointUpdateFrame == 15)            {                int activityId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitTsy);                Vector2 pos = new Vector2(-30, 20);                if (activityId > 0)                {                    pos = Vector2.zero;                }                RedDotController.Instance.SetComRedDot(_ui.m_btnZhaiXing.target,                    RedDotDataManager.Instance.GetActLuckyBoxRewardRed(ConstLimitTimeActivityType.ActLimitTsy) || RedDotDataManager.Instance.GetLuckyBoxFreeTimes(), "icon_tanhao",                    (int)pos.x, (int)pos.y);            }            //神都宸游            if (redPointUpdateFrame == 16)                RedDotController.Instance.SetComRedDot(_ui.m_btnOpenServerActivity.target, RedDotDataManager.Instance.GetOpenServerRed(), "", -21, 2);            // 阿福赠礼            if (_ui.m_btnActivityAfuGift.target.visible)            {                if (redPointUpdateFrame == 17)                    RedDotController.Instance.SetComRedDot(_ui.m_btnActivityAfuGift.target, ActivityAfuGiftDataManager.Instance.HaveCanGetReward(), "", -39, -6);            }            //海之市            if (redPointUpdateFrame == 18)            {                RedDotController.Instance.SetComRedDot(_ui.m_btnHaiZhiShi.target, RedDotDataManager.Instance.GetTravelRed()                     ||RedDotDataManager.Instance.GetFieldRed(), "icon_tanhao", -39, 15);            }            // 新春活动            if (_ui.m_btnTea.target.visible)            {                if (redPointUpdateFrame == 19)                    RedDotController.Instance.SetComRedDot(_ui.m_btnTea.target, ActivityTeaDataManager.Instance.GetRewardRed() || ActivityTeaDataManager.Instance.CheckHRDRed() || ActivityTeaDataManager.Instance.GetActivitySyntheticRed() || ActivityTeaDataManager.Instance.CheckVisitTaskRed(), "", -24, -3);            }            // 招财进宝活动            if (_ui.m_btnActivityZCJB.target.visible)            {                if (redPointUpdateFrame == 20)                    RedDotController.Instance.SetComRedDot(_ui.m_btnActivityZCJB.target, ActivityDataManager.Instance.CheckZCJBRed(), "", -12, 5);            }            // 新年红包活动            if (_ui.m_btnNewYearRedEnvelope.target.visible)            {                if (redPointUpdateFrame == 21)                    RedDotController.Instance.SetComRedDot(_ui.m_btnNewYearRedEnvelope.target, NewYearRedEnvelopeDataManager.Instance.CheckNewYearRedEnvelopeRed(), "", -19, 5);            }            // 元宵活动            if (_ui.m_btnGetYuanXiao.target.visible)            {                if (redPointUpdateFrame == 22)                {                    RedDotController.Instance.SetComRedDot(_ui.m_btnGetYuanXiao.target                        , RedDotDataManager.Instance.GetActivityYuanXiaoRed(), "", 0, 0);                }            }            // 逢缘解语活动(华容道小游戏)            if (_ui.m_btnActivityFYJY.target.visible)            {                if (redPointUpdateFrame == 23)                {                    RedDotController.Instance.SetComRedDot(_ui.m_btnActivityFYJY.target                        , RedDotDataManager.Instance.GetActivityFYJYRed(), "", -15, -1);                }            }            if (redPointUpdateFrame == 24)                {                    RedDotController.Instance.SetComRedDot(_ui.m_btnMain.target                        , MainStoryDataManager.GetChapterRewardStatus(), "icon_tanhao", -40,40);                }            redPointUpdateFrame++;            if(redPointUpdateFrame > 25)            {                redPointUpdateFrame = -1;            }        }        /// <summary>        /// 刷新指定活动的红点        /// </summary>        /// <param name="context"></param>        private void UpdateActivityRedDot(EventContext context)        {            int activityType = (int)context.data;            switch (activityType)            {                case ActivityType.AfternoonLeisure:                    if (_ui.m_btnActivityFYJY.target.visible)                    {                        RedDotController.Instance.SetComRedDot(_ui.m_btnActivityFYJY.target, RedDotDataManager.Instance.GetActivityFYJYRed(), "", -15, -1, false);                    }                    break;            }        }        private void CheckProbabilityUp()        {            //long curTime = TimeHelper.ServerNow();            //long endTime = TimeUtil.DateTimeToTimestamp("[2024][2][2][00:00]");            //int activityId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitTsy);            //if (activityId > 0)            //if (endTime >= curTime)            //    _ui.m_btnZhaiXing.m_ProbabilityUpType.selectedIndex = 1;            //else            //    _ui.m_btnZhaiXing.m_ProbabilityUpType.selectedIndex = 0;        }        private void CheckGuide(object param)        {            MainDataManager.Instance.CanSwipe = true;            GRoot.inst.touchable = true;            if (GuideDataManager.IsGuideFinish(ConstGuideId.FREEDOM_DRESS) <= 0                //|| GuideDataManager.IsGuideFinish(ConstGuideId.CLOTHING_DECOMPOSE) <= 0                //|| GuideDataManager.IsGuideFinish(ConstGuideId.CLOTHING_SYNTHETIC) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.UP_CARD_LV) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_FILING) <= 0                //|| GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_PORCELAIN) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER_1) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER_2) <= 0                //|| GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER_3) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER_4) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.UP_CARD_STAR) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ENTER_CHAPTER_5) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_PROPERTY) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.ARENA_OPEN) <= 0                || GuideDataManager.IsGuideFinish(ConstGuideId.SUIT_LIST_VIEW) <= 0                || GuideDataManager.IsGuideFinish("ClothingSelectView") <= 0)            {                UpdateToCheckGuide(null);            }            else            {                _ui.m_loaGuidestudio.visible = false;                Timers.inst.Remove(CheckGuide);            }        }        protected override void UpdateToCheckGuide(object param)        {            if (!ViewManager.CheckIsTopView(this.viewCom)) return;            GuideController.TryGuide(_ui.m_btnHuanZhuang.target, ConstGuideId.FREEDOM_DRESS, 2, "在这里,自由搭配服饰和分享哦~", -1, false);            GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER, 3, "海市蜃楼,镜花水月,是所有故事开始的地方。", -1, false);            //GuideController.TryGuide(_ui.m_btnXiuFang.target, ConstGuideId.CLOTHING_DECOMPOSE, 2, "绣坊里增添了新功能。", -1, false);            //GuideController.TryGuide(_ui.m_btnXiuFang.target, ConstGuideId.CLOTHING_SYNTHETIC, 1, "进入绣坊界面。", -1, false);            //GuideController.TryCompleteGuide(ConstGuideId.CLOTHING_SYNTHETIC, 7);            GuideController.TryGuide(_ui.m_btnCiPai.target, ConstGuideId.UP_CARD_LV, 2, "“词牌”可进行升级和管理。", -1, false);            GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER_1, 2, "", -1, false);            GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER_2, 2, "", -1, false);            //GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER_3, 1, "", -1, false);            GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER_4, 1, "", -1, false);            GuideController.TryGuide(_ui.m_btnCiPai.target, ConstGuideId.UP_CARD_STAR, 2, "“词牌”可进行升星。", -1, false);            GuideController.TryGuide(_ui.m_btnMain.target, ConstGuideId.ENTER_CHAPTER_5, 2, "", -1, false);            GuideController.TryGuide(_ui.m_btnXiuFang.target, ConstGuideId.SUIT_LIST_VIEW, 1,                "获得套装“国色”或“天衣”服饰后,可进行养护和焕新,到绣坊看看。", -1, false);            GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, ConstGuideId.ARENA_OPEN, 2, "新玩法-飞花令开启了哦", -1, false);            bool isStudioMetalGuide = GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, ConstGuideId.STUDIO_PORCELAIN, 2, "进入副本", -1,                false, _ui.target.height - 700);            bool isStudioFilingGuide = GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, ConstGuideId.STUDIO_FILING, 2, "进入副本", -1,                false, _ui.target.height - 700);            //bool isFieldGuide = GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, ConstGuideId.FIELD, 1, "进入副本", -1, false, _ui.target.height - 700);            bool isStudioPropertyGuide = GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, ConstGuideId.STUDIO_PROPERTY, 1, "进入副本", -1, false, _ui.target.height - 700);            bool isGuide13 = GuideController.TryGuide(_ui.m_btnXiuFang.target, "ClothingSelectView", 2, "进入绣纺。");            bool isGuide14 = GuideController.TryGuide(_ui.m_btnHaiZhiShi.target, "TimeTracingShowView", 2, "进入副本。");            if (GuideSimulationDataManager.Instance.GuideMonthlyJumpType == 1)            {                GuideController.TryGuide(_ui.m_guideBtn, ConstGuideId.SHEZHI_ZHUJIEMBG, 2, "开启背景更换特权");            }            _ui.m_loaGuidestudio.visible = false;            // if (isStudioMetalGuide || isStudioFilingGuide || isFieldGuide || isStudioPropertyGuide)            // {            //     _ui.m_loaGuidestudio.visible = true;            //     MainDataManager.Instance.CanSwipe = true;            // }            // else            // {            //     _ui.m_loaGuidestudio.visible = false;            // }        }        private void MainUIAnimFinished()        {            // 摘星特效 在未解锁的时候不显示            _ui.m_btnZhaiXing.m_holder1.visible = !_ui.m_btnZhaiXing.m_loaLockIcons.visible;            _ui.m_grpLeagueTips.visible = _btnLeague.visible && LeagueDataManager.Instance.CheckLeagueMainTips() != "";            if (_ui.m_grpLeagueTips.visible)            {                _ui.m_grpLeaguetext.text = LeagueDataManager.Instance.CheckLeagueMainTips();                Vector2 pos = _ui.m_list.TransformPoint(_btnLeague.position, _ui.target);                _ui.m_grpLeagueTips.SetPosition(pos.x - _ui.m_grpLeagueTips.width + 20, pos.y + 20, 0);            }        }        private void ChangeAfuActivityState()        {            _ui.m_btnActivityAfuGift.target.visible = ActivityAfuGiftDataManager.Instance.IsOpen;        }        private void ResetDailyData()        {            CheckFunOpen();            OnRedDotChanged();            UpdateHead();            UpdateBtnFirstRecharge();            CheckAutoShowViews();            RefreshBtnNewYearRedEnvelope();            RefreshBtnYuanXiaoActivity();            RefreshBtnActivityFYJY();        }        private void CheckAutoShowViews()        {            if (GameConfig.tsStatus > 0) return; //提审时不显示弹窗            if (RoleDataManager.lvl < 5) return;            if (GuideDataManager.currentGuideId > 0) return;            if (GameGlobal.AutoShowCompleted) return;            if (!GameGlobal.AfterDataInited) return;            if (!ViewManager.CheckIsTopView(this.viewCom)) return;            //if (!TimeUtil.CheckIsSameTime(lastTime * 1000, TimeHelper.ClientNow()))            if (GameGlobal.AutoNewPlayersTips)            {                if (GameGlobal.NewPlayerOnceTips)                {                    ViewManager.Show<NewPlayersTipsView>();                    return;                }            }            if (GameGlobal.AutoSevenDayLoginView)            {                if (ActivityDataManager.Instance.CanGetSevenDayBonus())                {                    ViewManager.Show<SevenDailyTipsView>();                    return;                }                //GameGlobal.lastLoginTime = GameGlobal.myNumericComponent.GetAsInt(NumericType.OnlineTimeSecs);            }            if (GameGlobal.AutoDailySignView)            {                if (RedDotDataManager.Instance.DailySignGot())                {                    ViewManager.Show<DailySignView>(new object[] { 1 });                    return;                }            }            //月卡弹窗 暂时屏蔽该两个弹窗            //if (GameGlobal.AutoMonthlyCardView)            //{            //    GameGlobal.AutoMonthlyCardView = false;            //    if (GameGlobal.myNumericComponent.GetAsInt(NumericType.IsPropCzykActivity) == 0)            //    {            //        long endTime1 = GameGlobal.myNumericComponent.GetAsLong(NumericType.MonthCardGoldEndTime);            //        long endTime2 = GameGlobal.myNumericComponent.GetAsLong(NumericType.MonthCardBlackGoldEndTime);            //        if (endTime1 < TimeHelper.ServerNow())            //        {            //            if (endTime2 < TimeHelper.ServerNow())            //            {            //                ViewManager.Show<MonthlyCardTipsView>();            //                return;            //            }            //        }             //    }            //}            //活动公告弹窗            if (GameGlobal.AutoAcitivtyTipsLoginView)            {                GameGlobal.AutoAcitivtyTipsLoginView = false;                if (GameGlobal.myNumericComponent.GetAsInt(NumericType.IsPropYchmActivity) == 0)                {                    ViewManager.Show<ActivityMainTipsView>();                    return;                }            }            //直购648弹窗            if (GameGlobal.AutoZGTHTips)            {                GameGlobal.AutoZGTHTips = false;                long tips;                if(!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6002, out tips))                {                    if (ActivityDataManager.Instance.CheckPearRebateTips(6002))                    {                        ViewManager.Show<ZGTHgiftTipsView>();                        return;                    }                }                //判断弹窗时间                if (ActivityDataManager.Instance.CheckPearRebateTips(6002) && tips == 0)                {                    ViewManager.Show<ZGTHgiftTipsView>();                    return;                }            }            //直购特惠弹窗            if (GameGlobal.AutoZGTHDCTips)            {                GameGlobal.AutoZGTHDCTips = false;                long tips;                if (!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6001, out tips))                {                    if (ActivityDataManager.Instance.CheckPearRebateTips(6001))                    {                        ViewManager.Show<ZGTHgiftDCTipsView>();                        return;                    }                }                //判断弹窗时间                if (ActivityDataManager.Instance.CheckPearRebateTips(6001) && tips == 0)                {                    ViewManager.Show<ZGTHgiftDCTipsView>();                    return;                }            }            //珍珠赠礼弹窗            if (GameGlobal.AutoPearRebateTips)            {                GameGlobal.AutoPearRebateTips = false;                long tips;                if (!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6000, out tips))                {                    if (ActivityDataManager.Instance.CheckPearRebateTips(6000))                    {                        ViewManager.Show<PearRebateTipsView>();                        return;                    }                }                //判断弹窗时间                if (ActivityDataManager.Instance.CheckPearRebateTips(6000) && tips == 0)                {                    ViewManager.Show<PearRebateTipsView>();                    return;                }            }            //if (GameGlobal.AutoSpecialOfferGiftBoxView)            //{            //    //List<int> shopListId = new List<int>() { 40012, 40013 };            //    //if (ShopDataManager.Instance.GetShopIdCanBuyInShop(ConstStoreSubId.STORE_GIFT_BAG_ACTIVITY, shopListId))            //    //{            //    //    ViewManager.Show<StoreView>(new object[] { ConstStoreTabId.STORE_GIFT_BAG, ConstStoreSubId.STORE_GIFT_BAG_ACTIVITY });            //    //    return;            //    //}            //    if (LimitedTimeGiftBoxDataManager.Instance.SpecialOfferGiftBoxCanBuy())            //    {            //        ViewManager.Show<SpecialOfferGiftBoxView>();            //        return;            //    }            //}            if (FieldDataManager.Instance.waitToShowFieldFightEndView)            {                ViewManager.Show<FieldFightEndView>();                return;            }            GameGlobal.AutoShowCompleted = true;        }        private void ServerTimeUpdate(object param = null)        {            long timestamp = (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds;            if (Math.Abs(TimeHelper.ServerNow() - timestamp) >= 60000)            {                dateTime = unixStartTime.AddMilliseconds(TimeHelper.ServerNow());                _ui.m_serverTime.text = dateTime.ToString();                _ui.m_serverTime.visible = true;            }            else            {                _ui.m_serverTime.visible = false;            }        }        private void HideMainUI()        {            _ui.m_hide.Play();        }        private void ShowMainUI()        {            _ui.m_show.Play();        }        private void OnClickBtnGetYuanXiao()        {            ViewManager.Show<ActivityGetYuanXiaoEntryView>();        }        private void OnClickBtnFYJY()        {            ViewManager.Show<ActivityHuaRongDaoEntryView>(5016);        }    }}
 |