Beispiel #1
0
 public void ClickInspireHandler()
 {
     if (!FunctionOpen.Model.FunctionOpenProxy.instance.IsFunctionOpen(Logic.Enums.FunctionOpenType.WorldBoss_inspireBtn, false))
     {
         FunctionOpen.Model.FunctionData worldBossInspireFunctionOpenData = FunctionOpen.Model.FunctionData.GetFunctionDataByID((int)FunctionOpenType.WorldBoss_inspireBtn);
         Logic.VIP.Model.VIPData         vipData = Logic.VIP.Model.VIPData.GetVIPData(worldBossInspireFunctionOpenData.vip);
         string tipString = Localization.Format("ui.world_boss_view.tips.inspire_locked_tips", vipData.ShortName);
         Logic.UI.Tips.View.ConfirmTipsView.Open(tipString, GoToBuyDiamond);
         return;
     }
     if (WorldBossProxy.instance.InspireTimes >= GlobalData.GetGlobalData().inspireMax)
     {
         Logic.UI.Tips.View.CommonAutoDestroyTipsView.Open(Localization.Get("ui.world_boss_view.tips.reach_inspire_text"));
         return;
     }
     if (GameProxy.instance.BaseResourceDictionary[Logic.Enums.BaseResType.Diamond] < GlobalData.GetGlobalData().inspireCost.count)
     {
         Logic.UI.Tips.View.ConfirmTipsView.Open(Localization.Get("ui.world_boss_view.tips.diamond_not_enough"), ClickGoShopBuyDiamondButtonHandler);
         return;
     }
     //是否弹提示框
     if (ConsumeTipProxy.instance.GetConsumeTipEnable(ConsumeTipType.DiamondBuyWorldBossInspire))
     {
         Logic.UI.Tips.View.ConfirmTipsView.Open(string.Format(Localization.Get("ui.world_boss_view.tips.confirm_inspire_tips"), GlobalData.GetGlobalData().inspireCost.count), ClickConfirmInspireHandler, ConsumeTipType.DiamondBuyWorldBossInspire);
     }
     else
     {
         ClickConfirmInspireHandler();
     }
 }
        public bool CheckSweep(bool isTen)
        {
            lastCheckSweepType = isTen ? SweepType.Ten : SweepType.Single;
            if (isTen)
            {
                if (!Logic.FunctionOpen.Model.FunctionOpenProxy.instance.IsFunctionOpen(FunctionOpenType.TenSweep, false))
                {
                    FunctionOpen.Model.FunctionData sweepTenOpenData = FunctionOpen.Model.FunctionData.GetFunctionDataByID((int)FunctionOpenType.TenSweep);
                    Logic.VIP.Model.VIPData         vipData          = Logic.VIP.Model.VIPData.GetVIPData(sweepTenOpenData.vip);
                    if (VIPProxy.instance.VIPLevel < sweepTenOpenData.vip)
                    {
                        string tipsString = Localization.Format("ui.dungeon_detail_view.sweep_ten_times_locked_tips", vipData.ShortName);
                        ConfirmTipsView.Open(tipsString, GoToBuyDiamond);
                        return(false);
                    }
                }
            }
            else
            {
                if (!Logic.FunctionOpen.Model.FunctionOpenProxy.instance.IsFunctionOpen(FunctionOpenType.SingleSweep, true))
                {
                    return(false);
                }
            }



            if (DungeonDetailProxy.instance.DungeonInfo.star < 3)
            {
                CommonAutoDestroyTipsView.Open(Localization.Get("ui.dungeon_detail_view.text_sweep_not_enough_star"));
                return(false);
            }
            if (GameProxy.instance.CheckPackFull())
            {
                return(false);
            }

            DungeonInfo info          = DungeonDetailProxy.instance.DungeonInfo;
            int         count         = 1;//默认等于10改为1下面判断是扫荡10次才变值
            int         countByAction = (int)(GameProxy.instance.PveAction / info.dungeonData.actionNeed);

            if (countByAction == 0)
            {
                string tipString = Localization.Get("ui.common_tips.not_enough_pve_action_and_go_to_buy");
                ConfirmTipsView.Open(tipString, GoToBuyAction);
                return(false);
            }
            int countByLimit = info.GetRemindChallengeTimes();

            if (countByLimit == 0)
            {
                CommonAutoDestroyTipsView.Open(Localization.Get("ui.dungeon_detail_view.challengeTimesNotEnoughTip"));
                return(false);
            }
            count = Mathf.Min(count, countByAction);
            count = Mathf.Min(count, countByLimit);
            if (isTen)
            {
                count = count <= 1 ? 10: count;
            }

            GameResData ticket        = GlobalData.GetGlobalData().sweepTicket;
            GameResData buyTicketCost = GlobalData.GetGlobalData().buy_sweep_cost;
            int         num           = ItemProxy.instance.GetItemCountByItemID(ticket.id);
            int         buyCount      = count;
            int         needCost      = buyTicketCost.count * buyCount;
            int         cost          = buyCount - num;

            if (cost > 0)
            {
                string tip = string.Format(Localization.Get("ui.dungeon_detail_view.text_sweep_not_enough_tip"), buyCount);
                ConfirmCostTipsView.Open(new GameResData(BaseResType.Diamond, 0, needCost, 0), tip, null, () => {
                    ItemController.instance.CLIENT2LOBBY_BuySweepCouponsReq(buyCount);
                });
                return(false);
            }
            return(true);
        }