Esempio n. 1
0
        public void Step7()
        {
            gameObject.Show();
            Transform step7 = transform.Find("Step7");

            step7.gameObject.Show();
            step7.GetText("GuideView/DialogFrame/Text").text = I18NManager.Get("Guide_RecollectionGuideStep6");

            var propIcon = step7.Find("PhotoBg/CardContent/CardHint/PropIcon");

            GuideArrow.DoAnimation(propIcon);

            PointerClickListener.Get(propIcon.gameObject).onClick = go =>
            {
                GuideManager.SetRemoteGuideStep(GuideTypePB.CardMemoriesGuide, 1040);


                //防止网络异常先模拟数据
                UserGuidePB userGuide = new UserGuidePB()
                {
                    GuideId   = 1040,
                    GuideType = GuideTypePB.CardMemoriesGuide
                };
                GuideManager.UpdateRemoteGuide(userGuide);

                //发消息去点那个其他弹窗
                UserCardVo vo = GlobalData.CardModel.UserCardList[0];
                SendMessage(new Message(MessageConst.MODULE_RECOLLECTION_SHOW_CARD_DROP_PROP,
                                        Message.MessageReciverType.UnvarnishedTransmission, vo.CardVo.RecollectionDropItemId));
                step7.gameObject.Hide();
                gameObject.Hide();
            };
        }
Esempio n. 2
0
        public static void UpdateRemoteGuide(UserGuidePB userGuide)
        {
            if (_remoteGuideDict.ContainsKey(userGuide.GuideType))
            {
                int currentStep = _remoteGuideDict[userGuide.GuideType];
                if (currentStep >= userGuide.GuideId)
                {
                    return;
                }

                _remoteGuideDict[userGuide.GuideType] = userGuide.GuideId;
            }
            else
            {
                _remoteGuideDict.Add(userGuide.GuideType, userGuide.GuideId);
            }
        }
Esempio n. 3
0
        private void ShowFavprabilityMain()
        {
            Transform view = transform.Find("FavorabilityMain");

            view.gameObject.Show();

            var show = view.Find("Btn/Show").gameObject;
            var hint = view.Find("Hint");

            hint.GetText("DialogFrame/Text").text = I18NManager.Get("Guide_FavorabilityHint2");

            GuideArrow.DoAnimation(show.transform);

            PointerClickListener.Get(show.gameObject).onClick = go =>
            {
                //保存按钮事件
                SendMessage(new Message(MessageConst.MODULE_DISIPOSITION_SHOW_MAINVIEW, Message.MessageReciverType.UnvarnishedTransmission));
                GuideManager.SetRemoteGuideStep(GuideTypePB.MainGuide, GuideConst.MainLineStep_OnClick_FavorabilityShowMainViewBtn);

                //防止网络异常
                UserGuidePB guidePb = new UserGuidePB()
                {
                    GuideId   = GuideConst.MainLineStep_OnClick_FavorabilityShowMainViewBtn,
                    GuideType = GuideTypePB.MainGuide
                };
                GuideManager.UpdateRemoteGuide(guidePb);

                GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_FavorabilityShowMainViewBtn);
                view.Find("Btn").gameObject.SetActive(false);
                hint.GetText("DialogFrame/Text").text = I18NManager.Get("Guide_FavorabilityHint3");

                //此时给返回按钮绑定一个事件

                var returnBtn = transform.Find("FavorabilityMain/ReturnBtn").gameObject;
                returnBtn.gameObject.Show();

                GuideArrow.DoAnimation(returnBtn.transform);

                PointerClickListener.Get(returnBtn).onClick = o =>
                {
                    SendMessage(new Message(MessageConst.CMD_FACORABLILITY_BACKTOFAVORABILITY, Message.MessageReciverType.UnvarnishedTransmission));
                    view.gameObject.Hide();
                    ShowFavorabilityChangeRoleBack();
                };
            };
        }
Esempio n. 4
0
        public void Step6()
        {
            gameObject.Show();
            Transform step6 = transform.Find("Step6");

            step6.gameObject.Show();
            step6.GetText("GuideView/DialogFrame/Text").text = I18NManager.Get("Guide_RecollectionGuideStep5");

            var addBtn = step6.Find("PhotoBg/CardContent/Num/AddIcon/AddBtn");

            GuideArrow.DoAnimation(addBtn);

            PointerClickListener.Get(addBtn.gameObject).onClick = go =>
            {
                GuideManager.SetRemoteGuideStep(GuideTypePB.CardMemoriesGuide, 1030);
                //防止网络异常先模拟数据
                UserGuidePB userGuide = new UserGuidePB()
                {
                    GuideId   = 1030,
                    GuideType = GuideTypePB.CardMemoriesGuide
                };
                GuideManager.UpdateRemoteGuide(userGuide);


                //发消息去点那个增加的窗口
                UserCardVo vo = GlobalData.CardModel.UserCardList[0];
                SendMessage(new Message(MessageConst.CMD_RECOLLECTION_BUY_COUNT, Message.MessageReciverType.UnvarnishedTransmission, vo.CardId));

                step6.gameObject.Hide();
                gameObject.Hide();
            };
//
//			var arrowsRect = step5.GetRectTransform("WhiteBottomBg/Panel/Arrows");
//			var localPosition = arrowsRect.localPosition;
//			arrowsRect.DOLocalMove(new Vector2(localPosition.x + 30.0f, localPosition.y -30.0f), 0.5f).SetLoops(-1, LoopType.Yoyo);
//
//			var onClickArea = step5.Find("WhiteBottomBg/Panel/OnClickArea").gameObject;
//			PointerClickListener.Get(onClickArea).onClick = go =>
//			{
//				SendMessage(new Message(MessageConst.CMD_RECOLLECTION_SHOW_REWARD, Message.MessageReciverType.UnvarnishedTransmission));
//				gameObject.Hide();
//			};
        }
Esempio n. 5
0
        private void ShowSweep2_11_Step2()
        {
            _battleIntroductionPopup.gameObject.Show();

            var playTimesBtn = _battleIntroductionPopup.Find("BtnContainer/PlayTimesBtn");

            playTimesBtn.gameObject.Show();
            GuideArrow.DoAnimation(playTimesBtn);
            PointerClickListener.Get(playTimesBtn.gameObject)
            .onClick = go =>
            {
                playTimesBtn.gameObject.Hide();

                GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_Battle2_11_Sweep);
                LevelVo vo = GlobalData.LevelModel.FindLevel("2-11");
                EventDispatcher.TriggerEvent(EventConst.EnterBattle, 5, vo);
                PopupManager.CloseLastWindow();

                GuideManager.SetRemoteGuideStep(GuideTypePB.MainGuide, GuideConst.MainLineStep_OnClick_Battle2_11_Sweep);
                //防止网络异常先模拟数据
                UserGuidePB userGuide = new UserGuidePB()
                {
                    GuideId   = GuideConst.MainStep_MainStory2_4_Fail,
                    GuideType = GuideTypePB.MainGuide
                };
                GuideManager.UpdateRemoteGuide(userGuide);

                ClientTimer.Instance.DelayCall(() =>
                {
                    SetNpcHint(true, I18NManager.Get("Guide_MainLine_Sweep"));

                    PointerClickListener.Get(transform.gameObject).onClick = o =>
                    {
                        PopupManager.CloseAllWindow();
                        ModuleManager.Instance.DestroyAllModuleBackToCommon();
                    };
                }, 1.6f);
            };
        }
Esempio n. 6
0
        public void ShowFail2_4()
        {
            gameObject.Show();

            Transform view = transform.Find("FinalEstimateFail2_4");

            view.gameObject.Show();

            GuideManager.SetRemoteGuideStep(GuideTypePB.MainGuide, GuideConst.MainStep_MainStory2_4_Fail);

            //防止网络异常先模拟数据
            UserGuidePB userGuide = new UserGuidePB()
            {
                GuideId   = GuideConst.MainStep_MainStory2_4_Fail,
                GuideType = GuideTypePB.MainGuide
            };

            GuideManager.UpdateRemoteGuide(userGuide);

            PointerClickListener.Get(view.gameObject).onClick = go =>
            {
                ModuleManager.Instance.GoBack();
            };
        }
Esempio n. 7
0
        public override void OnMessage(Message message)
        {
            string name = message.Name;

            object[] body = message.Params;
            switch (name)
            {
            case MessageConst.MOUDLE_GUIDE_SUPPORTERACT_STARTSUCCESS:
                View.LoveSetp2((List <AppointmentRuleVo>)message.Body);
                break;

            case MessageConst.UIDE_LOVEAPPOINTMENT_ENDSUCCESS:
                Debug.LogError("UIDE_LOVEAPPOINTMENT_ENDSUCCESS");
                GuideManager.SetRemoteGuideStep(GuideTypePB.MainGuide, GuideConst.MainLineStep_OnClick_LoveStroy_1);

                UserGuidePB guidePb = new UserGuidePB()
                {
                    GuideId   = GuideConst.MainLineStep_OnClick_LoveStroy_1,
                    GuideType = GuideTypePB.MainGuide
                };
                GuideManager.UpdateRemoteGuide(guidePb);
                break;
            }
        }
Esempio n. 8
0
    public override void OnMessage(Message message)
    {
        string name = message.Name;

        switch (name)
        {
        case MessageConst.MODULE_DRAWCARD_SHOW_SHARE_CLICK:

            break;

        //服务器去扣费这里不用管
        //抽1次十次   需要发到主view中进行扣费  弹窗和付费窗口
        //生成动画的展示操作(view中的中间动画)
        case MessageConst.CMD_DRAWCARD_GET_CARD:
            //更新服务器的信息,然后显示卡牌
            DrawView.Hide();
            ShowCardView.Show();
            break;

        case MessageConst.CMD_DRAWCARD_GET_CARDLIST:
            //再这里发具体的消息
            //每次赋值后要更新list
            //这里后来要发送到服务器的 接收换到另一个地方   这边不用管在 服务端有这个信息const就行了
            //进行获取和扣费
            SendMessage(new Message(MessageConst.CMD_DRAWCARD_GET_CARDLIST + CardType + CardCount));

            DrawView.Hide();
            ShowCardView.Show();
            //每张卡之间的动画
            //在此处接到了list信息并显出来
            //showView.InitData(tempList);
            break;

        case MessageConst.CMD_DRAWCARD_DRAWCARD:
            DrawReq req = new DrawReq();
            req.DrawType = DrawType;
            //if (DrawType == DrawTypePB.ByGem)
            //{
            //    //req.UseItem = GetLeftDrawTime(DrawType) > 0 ? true : false;
            //    req.UseItem = true;
            //}
            //else if (DrawType == DrawTypePB.ByGem10)
            //{
            //    req.UseItem = true;
            //}
            //else
            //{
            //    req.UseItem = false;
            //}
            req.DrawPoolType = DrawPoolTypePB.DrawPoolCommon;

            byte[] buffer = NetWorkManager.GetByteData(req);
            NetWorkManager.Instance.Send <DrawRes>(CMD.DRAWC_DRAW, buffer, res =>
            {
                Debug.Log("CMD.DRAWC_DRAW---->" + res.ToString());
                UserItemPB pb = res.UserItem;
                if (res.UserDraw.DrawType == DrawTypePB.ByGem)
                {
                    if (GlobalData.LevelModel.FindLevel("1-7").IsPass&& GuideManager.GetRemoteGuideStep(GuideTypePB.MainGuide) < GuideConst.MainLineStep_OnClick_GlodDrawCard)
                    //if (GuideManager.IsMainGuidePass(GuideConst.MainStep_MainStory1_7_End))
                    {
                        //防止网络异常先模拟数据
                        UserGuidePB userGuide = new UserGuidePB()
                        {
                            GuideId   = GuideConst.MainLineStep_OnClick_GemDrawCard,
                            GuideType = GuideTypePB.MainGuide
                        };
                        GuideManager.UpdateRemoteGuide(userGuide);
                    }
                    GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_GemDrawCard);
                }
                else if (res.UserDraw.DrawType == DrawTypePB.ByGold)
                {
                    if (GuideManager.GetRemoteGuideStep(GuideTypePB.MainGuide) == GuideConst.MainLineStep_OnClick_GemDrawCard)
//                      //  if (GuideManager.IsMainGuidePass(GuideConst.MainStep_DrawCard_GetCard))
                    {
                        //防止网络异常先模拟数据
                        UserGuidePB userGuide = new UserGuidePB()
                        {
                            GuideId   = GuideConst.MainLineStep_OnClick_GlodDrawCard,
                            GuideType = GuideTypePB.MainGuide
                        };
                        GuideManager.UpdateRemoteGuide(userGuide);
                    }
                    GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_GlodDrawCard);
                }

                switch (res.UserDraw.DrawType)
                {
                //统计
                case DrawTypePB.ByGold:
                    SdkHelper.StatisticsAgent.OnEvent("抽卡金币消耗", GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DRAW_GOLD));
                    break;

                case DrawTypePB.ByGold10:
                    SdkHelper.StatisticsAgent.OnEvent("抽卡金币消耗", GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DRAW_GOLD_10));
                    break;
                }

                if (res.UserItem != null)
                {
                    GlobalData.PropModel.UpdateProps(new[] { res.UserItem });
                }
                if (res.UserMoney != null)
                {
                    GlobalData.PlayerModel.UpdateUserMoney(res.UserMoney);
                }

                GlobalData.RandomEventModel.AddDrawCardTimes(res.UserDraw.DrawType);

                List <DrawCardResultVo> VList = new List <DrawCardResultVo>();
                foreach (var v in res.Awards)
                {
                    DrawCardResultVo drawCardResultVo = new DrawCardResultVo(v);
                    VList.Add(drawCardResultVo);
                    // GetData<DrawData>().GetRandomDialogById(3307);
                    switch (v.Resource)
                    {
                    case ResourcePB.Card:
                        if (GlobalData.CardModel.GetUserCardById(v.ResourceId) == null)
                        {
                            drawCardResultVo.IsNew = true;
                        }
                        //如果是ssr卡,需要播放语音
                        if (drawCardResultVo.Credit == CreditPB.Ssr)
                        {
                            GlobalData.RandomEventModel.SsrGet = true;
                            drawCardResultVo.Dialog            = GetData <DrawData>().GetRandomDialogById(drawCardResultVo.CardId);
                        }
                        GlobalData.CardModel.UpdateUserCardsByIdAndNum(v.ResourceId, v.Num);
                        break;

                    case ResourcePB.Puzzle:
                        break;

                    case ResourcePB.Fans:
                        GlobalData.DepartmentData.UpdateFans(v.ResourceId, v.Num);
                        break;
                    }
                }
                SetData(VList);
            }, str =>
            {
                //todo 错误返回到抽卡主界面
                Debug.Log("DrawCard error :" + str);
                SendMessage(new Message(MessageConst.MODULE_VIEW_BACK_DRAWCARD));
            });
            break;
        }
    }
Esempio n. 9
0
        public static GuideStage CurStage()
        {
            int remoteGuideStep = GetRemoteGuideStep(GuideTypePB.MainGuide);

            if (remoteGuideStep == GuideConst.MainStep_Over)
            {
                return(GuideStage.Over);
            }
            else if (remoteGuideStep < GuideConst.MainLineStep_Stroy1_3_Over)//没通过1-3都是 1-1~1-3引导阶段
            {
                return(GuideStage.MainLine1_1Level_1_3Level_Stage);
            }
            else if (GlobalData.ActivityModel.GetActivityVo(ActivityType.ActivitySevenDaySignin) != null &&
                     !GlobalData.ActivityModel.GetActivityVo(ActivityType.ActivitySevenDaySignin).IsActivityPastDue &&
                     GlobalData.ActivityModel.GetUserSevenDaySigninInfo()?.SignDay == 0)
            {
                return(GuideStage.SevenDaySigninActivityStage);
            }
            // else if(GlobalData.ActivityModel.GetActivityVo(ActivityType.ActivitySevenDaySignin)!=null
            //         &&!GlobalData.ActivityModel.GetActivityVo(ActivityType.ActivitySevenDaySignin).IsActivityPastDue
            //         &&GlobalData.ActivityModel.GetUserSevenDaySigninInfo()?.SignDay==1)
            // {
            //     return GuideStage.MainLine1_4Level_2_3Level_Stage;
            // }
            // else if (GlobalData.ActivityModel.GetActivityVo(ActivityType.ActivitySevenDaySignin) == null &&
            //         !GlobalData.LevelModel.FindLevel("1-5").IsPass)
            // {
            //     return GuideStage.MainLine1_4Level_2_3Level_Stage;
            // }
            else if (GlobalData.LevelModel.FindLevel("1-9").IsPass&& GlobalData.LevelModel.FindLevel("2-1").IsPass == false)
            {
                var missionModel = GlobalData.MissionModel;
                var dailyMission = missionModel.GetMissionListByType(MissionTypePB.Daily);

                if (remoteGuideStep < GuideConst.MainLineStep_Stroy1_9_Over)
                {
                    UserGuidePB userGuide = new UserGuidePB()
                    {
                        GuideId   = GuideConst.MainLineStep_Stroy1_9_Over,
                        GuideType = GuideTypePB.MainGuide
                    };
                    UpdateRemoteGuide(userGuide);
                    SetRemoteGuideStep(GuideTypePB.MainGuide, GuideConst.MainLineStep_Stroy1_9_Over);
                }

                if (missionModel.HasDailyActivityAward(dailyMission) || TempState == TempState.Pass_Level1_9)
                {
                    //没有更新任务的时候用TempState确定引导点
                    return(GuideStage.MainLineStep_Stroy1_9_Over);
                }
                else
                {
                    return(GuideStage.MainLineStep_Stroy2_1_Start);
                }
            }
            else if (remoteGuideStep < GuideConst.MainStep_MainStory2_4_Fail)
            {
                return(GuideStage.MainLine1_4Level_2_3Level_Stage);
            }
            else if (remoteGuideStep == GuideConst.MainStep_MainStory2_4_Fail)
            {
                if (GlobalData.CardModel.UserCardList.Count > 1)
                {
                    return(GuideStage.LoveStoryStage);
                }
                return(GuideStage.MainStep_MainStory2_4_Fail);
            }
            // else if (GetRemoteGuideStep(GuideTypePB.MainGuide) < GuideConst.MainLineStep_OnClick_Npc_Sms
            //          && !GlobalData.LevelModel.FindLevel("1-7").IsPass
            //          && GlobalData.PhoneData.GetSelectsLocal(101).Count == 0)
            // {
            //     return GuideStage.PhoneSmsStage;
            // }
            // else if (!GlobalData.LevelModel.FindLevel("1-7").IsPass)
            // {
            //     return GuideStage.MainLine1_6Level_1_7Level_Stage;
            // }
            // else if (GetRemoteGuideStep(GuideTypePB.MainGuide) < GuideConst.MainLineStep_OnClick_GlodDrawCard)
            // {
            //     return GuideStage.DrawCardStage;
            // }
            else if (remoteGuideStep < GuideConst.MainLineStep_OnClick_LoveStroy_1)
            {
                //进入恋爱引导
                return(GuideStage.LoveStoryStage);
            }
            else if (remoteGuideStep == GuideConst.MainLineStep_OnClick_LoveStroy_1)
            {
                bool showCardLevelup = false;
                for (int i = 0; i < GlobalData.CardModel.UserCardList.Count; i++)
                {
                    var vo = GlobalData.CardModel.UserCardList[i];
                    if (vo.CardVo.Credit == CreditPB.Sr && vo.Level == 0)
                    {
                        showCardLevelup = true;
                        break;
                    }
                }

                if (showCardLevelup)
                {
                    return(GuideStage.CardLevelUpStage);
                }

                LevelModel levelModel = GlobalData.LevelModel;
                LevelVo    level2_9   = levelModel.FindLevel("2-9");
                if (level2_9.IsPass)
                {
                    return(GuideStage.FavorabilityShowRoleStage);
                }
                else
                {
                    //点击过恋爱引导 开始主线引导 2-4
                    return(GuideStage.MainStep_MainStory2_4_Start);
                }
            }
            else if (remoteGuideStep == GuideConst.MainLineStep_OnClick_FavorabilityShowMainViewBtn)
            {
                return(GuideStage.MainStep_MainStory2_10_Start);
            }
            // else if (!GlobalData.LevelModel.FindLevel("1-8").IsPass && CardLevel() == 0)
            // {
            //     return GuideStage.CardLevelUpStage;
            // }
            // else if (GlobalData.LevelModel.FindLevel("1-9").IsPass
            //          && remoteGuideStep <
            //          GuideConst.MainLineStep_OnClick_FavorabilityShowMainViewBtn
            //          && GlobalData.PlayerModel.PlayerVo.ExtInfo.DownloadReceive == 0)
            // {
            //     return GuideStage.FavorabilityShowRoleStage;
            // }

            else if (GlobalData.PlayerModel.PlayerVo.ExtInfo.DownloadReceive == 0)
            {
                return(GuideStage.ExtendDownloadStage);
            }
            // else if (!GlobalData.LevelModel.FindLevel("2-12").IsPass)
            // {
            //     return GuideStage.MainLine1_9Level_Over_Stage;
            // }
            // else if (GlobalData.LevelModel.FindLevel("2-12").IsPass &&
            //          GetRemoteGuideStep(GuideTypePB.MainGuide) < GuideConst.MainStep_Over)
            // {
            //     return GuideStage.LoveDiaryStage;
            // }
            else
            {
                return(GuideStage.Over);
            }
        }
Esempio n. 10
0
    public static void SendDraw(DrawTypePB DrawType, DrawPoolTypePB poolType, DrawData drawData, Action <List <DrawCardResultVo> > success, Action failure)
    {
        DrawReq req = new DrawReq();

        req.DrawType = DrawType;
        //if (DrawType == DrawTypePB.ByGem)
        //{
        //    //req.UseItem = GetLeftDrawTime(DrawType) > 0 ? true : false;
        //    req.UseItem = true;
        //}
        //else if (DrawType == DrawTypePB.ByGem10)
        //{
        //    req.UseItem = true;
        //}
        //else
        //{
        //    req.UseItem = false;
        //}
        req.DrawPoolType = poolType;

        byte[] buffer = NetWorkManager.GetByteData(req);
        NetWorkManager.Instance.Send <DrawRes>(CMD.DRAWC_DRAW, buffer, res =>
        {
            Debug.Log("CMD.DRAWC_DRAW---->" + res.ToString());
            UserItemPB pb = res.UserItem;

            if (res.UserDraw.DrawPoolType == DrawPoolTypePB.DrawPoolCommon)
            {
                if (res.UserDraw.DrawType == DrawTypePB.ByGem)
                {
                    if (GlobalData.LevelModel.FindLevel("1-7").IsPass&& GuideManager.GetRemoteGuideStep(GuideTypePB.MainGuide) < GuideConst.MainLineStep_OnClick_GemDrawCard)
                    //if (GuideManager.IsMainGuidePass(GuideConst.MainStep_MainStory1_7_End))
                    {
                        //防止网络异常先模拟数据
                        UserGuidePB userGuide = new UserGuidePB()
                        {
                            GuideId   = GuideConst.MainLineStep_OnClick_GemDrawCard,
                            GuideType = GuideTypePB.MainGuide
                        };
                        GuideManager.UpdateRemoteGuide(userGuide);
                    }
                    GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_GemDrawCard);
                }
                else if (res.UserDraw.DrawType == DrawTypePB.ByGold)
                {
                    if (GuideManager.GetRemoteGuideStep(GuideTypePB.MainGuide) == GuideConst.MainLineStep_OnClick_GemDrawCard)
                    //                      //  if (GuideManager.IsMainGuidePass(GuideConst.MainStep_DrawCard_GetCard))
                    {
                        //防止网络异常先模拟数据
                        UserGuidePB userGuide = new UserGuidePB()
                        {
                            GuideId   = GuideConst.MainLineStep_OnClick_GlodDrawCard,
                            GuideType = GuideTypePB.MainGuide
                        };
                        GuideManager.UpdateRemoteGuide(userGuide);
                    }
                    GuideManager.SetStatisticsRemoteGuideStep(GuideConst.MainLineStep_OnClick_GlodDrawCard);
                }
            }
            switch (res.UserDraw.DrawType)
            {
            //统计
            case DrawTypePB.ByGold:
                SdkHelper.StatisticsAgent.OnEvent("抽卡金币消耗", GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DRAW_GOLD));
                break;

            case DrawTypePB.ByGold10:
                SdkHelper.StatisticsAgent.OnEvent("抽卡金币消耗", GlobalData.ConfigModel.GetConfigByKey(GameConfigKey.DRAW_GOLD_10));
                break;
            }
            if (res.UserItem != null)
            {
                GlobalData.PropModel.UpdateProps(new[] { res.UserItem });
            }
            if (res.UserMoney != null)
            {
                GlobalData.PlayerModel.UpdateUserMoney(res.UserMoney);
            }
            GlobalData.RandomEventModel.AddDrawCardTimes(res.UserDraw.DrawType);
            List <DrawCardResultVo> VList = new List <DrawCardResultVo>();
            foreach (var v in res.Awards)
            {
                DrawCardResultVo drawCardResultVo = new DrawCardResultVo(v);
                VList.Add(drawCardResultVo);
                switch (v.Resource)
                {
                case ResourcePB.Card:
                    if (GlobalData.CardModel.GetUserCardById(v.ResourceId) == null)
                    {
                        drawCardResultVo.IsNew = true;
                    }
                    //如果是ssr卡,需要播放语音
                    if (drawCardResultVo.Credit == CreditPB.Ssr)
                    {
                        GlobalData.RandomEventModel.SsrGet = true;
                        drawCardResultVo.Dialog            = drawData.GetRandomDialogById(drawCardResultVo.CardId);
                    }
                    GlobalData.CardModel.UpdateUserCardsByIdAndNum(v.ResourceId, v.Num);
                    break;

                case ResourcePB.Puzzle:
                    break;

                case ResourcePB.Fans:
                    GlobalData.DepartmentData.UpdateFans(v.ResourceId, v.Num);
                    break;
                }
            }
            success?.Invoke(VList);
        }, str => {
            //todo 错误返回到抽卡主界面
            Debug.Log("DrawCard error :" + str);
            failure?.Invoke();
        });
    }