示例#1
0
        //填充cell skillInfo数据
        private void FillCatalogCell(EraBookCellDataModel data, EraBookSkillInfo info)
        {
            var eraInfo = EraManager.Instance.GetEraInfo(data.EraId);

            data.State         = (int)eraInfo.State;
            data.HaveTakeAward = eraInfo.TakeAward;
            data.ChapterName   = eraInfo.Order.ToString();

            var skilId = GetSkillIdByEraId(data.EraId);

            info.SkillId = skilId;

            info.State = (int)eraInfo.State;

            info.EraId = data.EraId;
            var strAtlas = GetAtlasBySkillId(skilId, data.EraId);

            if (string.IsNullOrEmpty(strAtlas))
            {
                Logger.Debug("Get Atlas is Null");
                return;
            }
            info.Atlas = strAtlas;
            if (eraInfo.State == EraState.NotStart || eraInfo.State == EraState.OnGoing || eraInfo.State == EraState.PlayAnim)
            {
                info.Atlas += "Grey";
            }
        }
示例#2
0
        private IEnumerator PlayAnimEnd(EraBookCellDataModel data, EraInfo info, float time)
        {
            yield return(new WaitForSeconds(time));

            info.State = EraState.PlayAnimEnd;
            info.State = EraState.Finish;
            data.State = (int)EraState.Finish;
            var skillId = GetSkillIdByEraId(info.Record.Id);

            var skillInfo = GetSkillInfoBySkillId(skillId);

            if (skillInfo != null)
            {
                FillCatalogCell(data, skillInfo);
            }
            if (tempEraId == info.Record.Id)
            {
                SetCurrEraCell(info.Record.Id);
            }
        }
示例#3
0
        public EraBookController()
        {
            CleanUp();

            EventDispatcher.Instance.AddEventListener(Event_UpdateEraPage.EVENT_TYPE, OnUpdateEraPage);
            EventDispatcher.Instance.AddEventListener(Event_EraCellClick.EVENT_TYPE, OnClick_EraCell);
            EventDispatcher.Instance.AddEventListener(Event_CalalogClick.EVENT_TYPE, OnClick_EraCatalog);
            EventDispatcher.Instance.AddEventListener(Event_EraBookOperate.EVENT_TYPE, OnClick_EraBookOperator);
            EventDispatcher.Instance.AddEventListener(Event_UpdateMissionData.EVENT_TYPE, OnMissionUpdate);
            EventDispatcher.Instance.AddEventListener(ExDataInitEvent.EVENT_TYPE, OnExDataInitEvent);
            EventDispatcher.Instance.AddEventListener(FlagInitEvent.EVENT_TYPE, OnFlagInit);
            EventDispatcher.Instance.AddEventListener(OnClick_EraGotoEvent.EVENT_TYPE, OnClick_EraGoto);
            EventDispatcher.Instance.AddEventListener(EraSelectCurrEra.EVENT_TYPE, EraSelectCurrEraCallBack);
            EventDispatcher.Instance.AddEventListener(GoToEraBookShiShiEvent.EVENT_TYPE, OnGoToEraBookShiShiEvent);
            EventDispatcher.Instance.AddEventListener(UpdateBranchMissionDataEvent.EVENT_TYPE, OnUpdateBranchMissionDataEvent);
            EventDispatcher.Instance.AddEventListener(EraBookFlyOverEvent.EVENT_TYPE, OnEraBookFly);
            EventDispatcher.Instance.AddEventListener(Event_EraBookNextPage.EVENT_TYPE, OnEvent_EraBookNextPage);

            //EventDispatcher.Instance.AddEventListener(FlagUpdateEvent.EVENT_TYPE, OnFlagUpgradeEvent);
            EventDispatcher.Instance.AddEventListener(Event_EraChangeCurrentPage.EVENT_TYPE, ievent =>
            {
                DataModel.SkillInfo.ShowTitleTips = false;
                var e = ievent as Event_EraChangeCurrentPage;
                if (e == null)
                {
                    return;
                }
                DataModel.CurrentPage = e.Page;

                var page = EraManager.Instance.UiPage2LogicPage(e.Page);
                var info = EraManager.Instance.GetPageInfo(page);
                if (info != null)
                {
                    DataModel.SelectBookMark = info.eraList[0].Record.Type;
                    if (info.Type == 0)
                    {
                        for (int i = 0; i < info.eraList.Count; i++)
                        {
                            var eraInfo = info.eraList[i];
                            EraBookCellDataModel animDataModel = DataModel.MayaList[i];
                            animDataModel.PlayAnim             = false;
                            if (eraInfo.State == EraState.PlayAnim)
                            {
                                animDataModel.PlayAnim = true;
                                NetManager.Instance.StartCoroutine(PlayAnimEnd(animDataModel, eraInfo, 0.8f));
                            }
                        }

                        //while (enumorator.MoveNext())
                        //{
                        //    var eraInfo = enumorator.Current;
                        //    if (eraInfo.State == EraState.PlayAnim)
                        //    {
                        //        EraBookCellDataModel animDataModel;
                        //        if (count >= 3)
                        //        {
                        //            animDataModel = DataModel.RightList[count - 3];
                        //        }
                        //        else
                        //        {
                        //            animDataModel = DataModel.LeftList[count];
                        //        }
                        //        animDataModel.PlayAnim = true;
                        //        NetManager.Instance.StartCoroutine(PlayAnimEnd(animDataModel, eraInfo, 1.5f));
                        //    }
                        //    ++count;
                        //}
                    }
                    else
                    {
                        var eraInfo = info.eraList[0];
                        if (eraInfo.State == EraState.PlayAnimEnd || eraInfo.State == EraState.PlayAnim)
                        {
                            EventDispatcher.Instance.DispatchEvent(new Event_EraPlayAnim(0));
                            EraManager.Instance.PlayAnimEraId = -1;
                            NetManager.Instance.StartCoroutine(PlayContentAnimEnd(eraInfo, 0.8f));
                        }
                    }
                }
            });
        }