/*===============================================界面显示与关闭===============================================*/
        private void OnOpenView(IEvent evt)
        {
            if (evt == null || evt.data == null)
            {
                return;
            }

            this.currentView = (TopViewHelper.ETopView)evt.data;
            //Debug.LogFormat("<><MainSceneMediator.OnOpenView>{0}", this.currentView);
            this.crossContextAction.Enqueue((System.Action)(() =>
            {
                switch (this.currentView)
                {
                case TopViewHelper.ETopView.eAchievement:
                    if (!this.ViewOpened(this.currentView))
                    {
                        this.ShowCommingSoon();
                        this.CloseMainMenuModule(TopViewHelper.ETopView.eCommingSoon);
                    }
                    break;

                case TopViewHelper.ETopView.eFriend:
                    if (!this.ViewOpened(this.currentView))
                    {
                        this.ShowCommingSoon();
                        this.CloseMainMenuModule(TopViewHelper.ETopView.eCommingSoon);
                    }
                    break;

                case TopViewHelper.ETopView.ePetDress:
                    RoleInfo roleInfo = this.RoleConfig.GetRoleInfo(this.dataManager.CurrentPet);
                    if (roleInfo != null && !roleInfo.IsLocal && !this.mLocalPetInfoAgent.ModelExists(roleInfo.Name))
                    {    //当前选中的小宠物的资源不存在,不进入换装页,显示下载页或提示请联网下载资源
                        if (NativeWifiManager.Instance.IsConnected())
                        {
                            this.ShowDownloadPage2View();
                        }
                        else
                        {
                            SoundPlayer.GetInstance().PlaySoundType("download_popup_no_network");
                        }
                        return;
                    }
                    else if (RoleManager.Instance.CurrentRole.PetName != this.dataManager.CurrentPet)
                    {    //当前选中的小宠物的资源已存在,但可能还没加载出来
                        //Debug.LogFormat("<><MainSceneMediator.OnOpenView>PetDress, CurrentName: {0}, Actual Name: {1}", RoleManager.Instance.CurrentRole.PetName, this.dataManager.CurrentPet);
                        return;
                    }

                    if (!this.ViewOpened(this.currentView))
                    {
                        this.ShowPetDress();
                        this.CloseMainMenuModule(TopViewHelper.ETopView.ePetDress);
                    }
                    break;
                }
            }));
        }
 protected override void OnTopViewChanged(string operate, TopViewHelper.ETopView topView)
 {
     base.OnTopViewChanged(operate, topView);
     if (operate == TopViewHelper.REMOVE_VIEW || operate == TopViewHelper.RESET_VIEW)
     {
         this.CancelInvoke();
         this.Invoke("UnloadAllUnusedAssets", 0.5f);
     }
 }
Esempio n. 3
0
    public static void LogEvent(TopViewHelper.ETopView view, MainKeys key)
    {
        if (mFlurryUtils == null)
        {
            mFlurryUtils = new Cup.Utils.android.FlurryUtils();
        }

        mFlurryUtils.onEvent(string.Format("{0}_{1}", view, key));
    }
Esempio n. 4
0
    public static void EndTimedEvent(TopViewHelper.ETopView view)
    {
        if (mFlurryUtils == null)
        {
            mFlurryUtils = new Cup.Utils.android.FlurryUtils();
        }

        mFlurryUtils.endTimedEvent(view.ToString());
    }
Esempio n. 5
0
 /// <summary>
 /// 当TopView发生改变时(暂停和回复对输入信号的接收)
 /// </summary>
 /// <param name="topView"></param>
 protected virtual void OnTopViewChanged(string operate, TopViewHelper.ETopView topView)
 {
     UnityEngine.Debug.LogFormat("<><BaseMediator.OnTopViewChanged>View: {0}, Operate: {1}, TopView: {2}", this.View, operate, topView);
     if (this.View == TopViewHelper.ETopView.eMainMenu || (topView == this.View && !TopViewHelper.Instance.IsOpenedView(TopViewHelper.ETopView.eMainMenu)))
     {
         this.RegisterInput();
     }
     else if (this.View != topView || TopViewHelper.Instance.IsOpenedView(TopViewHelper.ETopView.eMainMenu))
     {
         this.UnregisterInput();
     }
 }
        /*--------------------------------------------------功能介绍--------------------------------------------------*/
        private void ShowGuideTip(IEvent evt)
        {
            if (evt != null && evt.data != null)
            {//切换星球
                object viewObject = Enum.Parse(typeof(TopViewHelper.ETopView), evt.data.ToString());
                if (viewObject == null)
                {
                    return;
                }
                TopViewHelper.ETopView view = (TopViewHelper.ETopView)viewObject;
                bool viewValid = false;
                switch (view)
                {//只当这些页面关闭时,才按几率播放功能介绍提示音
                case TopViewHelper.ETopView.eSystemMenu:
                case TopViewHelper.ETopView.eCommingSoon:
                case TopViewHelper.ETopView.eCollection:
                case TopViewHelper.ETopView.ePetPage:
                case TopViewHelper.ETopView.ePetFeed:
                case TopViewHelper.ETopView.eWorldMap:
                    viewValid = true;
                    break;
                }
                if (!viewValid)
                {
                    return;
                }
            }

            int seed = UnityEngine.Random.Range(1, 100);

            if (seed <= 30 && SoundPlayer.GetInstance() != null)
            {//30%的几率播放功能介绍提示音
                TopViewHelper.Instance.AddTopView(TopViewHelper.ETopView.eGuideTip);
                this.viewMainScene.GuideTipSpine.AnimationState.SetAnimation(0, "tips_ani01", false).Complete += delegate
                {
                    this.viewMainScene.GuideTipSpine.AnimationState.SetAnimation(0, "tips_ani02", true);
                };
                SoundPlayer.GetInstance().PlaySoundType("guide_homepage");
            }
        }
Esempio n. 7
0
        //发送消息
        private void Dispatch(TopViewHelper.ETopView selectedView)
        {
            if (this.lastNavigatorItem != null && TopViewHelper.Instance.IsOpenedView(this.lastNavigatorItem.View))
            {
                this.CloseLastViewSignal.Dispatch(this.lastNavigatorItem.View);//关闭上一个功能页面
            }
            this.ResetPet();

            if (this.ViewSelectedAction != null)
            {
                this.ViewSelectedAction(selectedView);//打开新的功能页或关闭所有功能页(目前仅指喂食页和换装页)
            }
            if (this.items[this.selectedIndex].View != TopViewHelper.ETopView.eHome)
            {
                this.lastNavigatorItem = this.items[this.selectedIndex];
            }
            else
            {
                this.lastNavigatorItem = null;
            }
            Debug.LogFormat("<><NavigatorView.Dispatch>SelectedView: {0}", selectedView);
        }
 private void OnCloseLastView(TopViewHelper.ETopView view)
 {
     this.dispatcher.Dispatch(MainEvent.CloseView, view);
 }