Example #1
0
    private void UpdateSweepInfo()
    {
        CounterPartInfo info    = StageDC.GetCounterPartInfo();
        int             times   = StageDC.GetPassStageTimes(m_type, m_stageid);
        bool            passed  = times > 0;
        bool            hasBoss = info.isboss > 0;
        bool            isPVE   = StageDC.GetPveMode() == PVEMode.Attack;
        // 是否需要显示扫荡UI
        bool activeSweepInfo = passed && hasBoss && isPVE;

        MyHead.SweepGroup.SetActive(activeSweepInfo);
        if (!activeSweepInfo)
        {
            return;
        }

        ItemTypeInfo sweepTicketInfo  = ItemDC.GetSweepTickets();
        int          sweepTicketCount = sweepTicketInfo == null ? 0 : sweepTicketInfo.Num;

        MyHead.LblSweepTicket.text = string.Format("x{0}", sweepTicketCount);

        int sweepOnce            = 1;
        int currentSweepMultiple = 0;

        if (info.type == (int)StageType.Normal)
        {
            currentSweepMultiple = 10;
        }
        else if (info.type == (int)StageType.Hard)
        {
            currentSweepMultiple = 3;
        }
        MyHead.LblSweepMultiple.text = string.Format(NGUIUtil.GetStringByKey(70000255), currentSweepMultiple);
        MyHead.LblSweepOnce.text     = string.Format(NGUIUtil.GetStringByKey(70000256), sweepOnce);
    }
Example #2
0
    void ClickCombat(UIButton sender)
    {
        CounterPartInfo Info = StageDC.GetCounterPartInfo();

        if (Info == null)
        {
            return;
        }
        if (m_type != StageType.Normal)
        {
            int Times = StageDC.GetPassStageTimes(m_type, m_stageid);
            if (Times >= Info.times)
            {
                NGUIUtil.ShowTipWndByKey("88800031", 2);
                return;
            }
        }
        if (StageDC.GetPveMode() == PVEMode.Defense)
        {
            SoundPlay.PlayBackGroundSound("bgm_battle_loop", true, false);
            ShipCanvasInfo     Canvas   = new ShipCanvasInfo();
            List <SoldierInfo> lSoldier = new List <SoldierInfo>();
            List <ShipPutInfo> lBuild   = new List <ShipPutInfo>();
            ShipPlanDC.SetCurShipPlan(PlanType.Default);
            ShipPlan Plan = ShipPlanDC.GetCurShipPlan();
            Plan.GetShipCansInfoPlan(ref Canvas, ref lSoldier, ref lBuild);
            CmCarbon.SetDefenseMap(Canvas);
            CmCarbon.SetDefenseBuild(lBuild);
            CmCarbon.SetDefenseSoldier(lSoldier);
            CmCarbon.SetDefenseFloor(UserDC.GetDeckLevel());
            CmCarbon.SetDefenseUserInfo(Info, null);
            List <int> l = new List <int>();
            foreach (SoldierInfo s in lSoldier)
            {
                l.Add(s.ID);
            }
            sender.enabled = false;
            //DataCenter.RegisterHooks((int)gate.Command.CMD.CMD_702, CanCombat);
            //StageDC.SendStageAttackRequest(m_stageid, l, 0);
            SceneM.Load(CombatScene.GetSceneName(), false, false);
        }
        else
        {
            sender.enabled = false;
            //SoldierDC.Send_SoldierBattleListRequest(0);
            //DataCenter.RegisterHooks((int)gate.Command.CMD.CMD_214, LoadStage);
            SceneM.Load(CombatScene.GetSceneName(), false, false);
        }
    }
Example #3
0
    void CheckShowCombatResult()
    {
        CounterPartInfo info  = StageDC.GetCounterPartInfo();
        int             Times = StageDC.GetPassStageTimes(StageDC.GetCompaignStageType(), StageDC.GetCompaignStageID());

        if (Times == 0 && info.drop != null && info.drop.Length > 0)
        {
            StageDC.SendStageScriptDropRequest(StageDC.GetCompaignStageID());
            DataCenter.RegisterHooks((int)gate.Command.CMD.CMD_716, ShowScriptCombatResult);
        }
        else
        {
            ShowCombatResult();
        }
    }
Example #4
0
    public void UpdateStageInfo()
    {
        CounterPartInfo Info = StageDC.GetCounterPartInfo();

        if (Info != null)
        {
            if (MyHead.stagename != null)
            {
                int Stage = Info.id % 1000;
                MyHead.stagename.text = "[ffffff]" + Info.chapters + "-" + Stage + " " + Info.chaptersname + "·" + Info.counterpartname + "[-]";
            }

            if (MyHead.ManualLabel != null)
            {
                MyHead.ManualLabel.text = "[ffff00]" + NGUIUtil.GetStringByKey("88800096") + "[-]" + "[ffffff]" + Info.win_physical + "[-]";
            }
            if (MyHead.RewardLabel != null)
            {
                MyHead.RewardLabel.text = "[ffff00]" + NGUIUtil.GetStringByKey("88800097") + "[-]";
            }
            if (MyHead.DescLabel != null)
            {
                MyHead.DescLabel.text = "[ffffff]" + Info.description + "[-]";
            }
            if (MyHead.TimesLabel != null)
            {
                if (m_type == StageType.Normal)
                {
                    MyHead.TimesLabel.text   = "";
                    m_AvailableMultipleSweep = 10;
                }
                else
                {
                    int Times = StageDC.GetPassStageTimes(m_type, m_stageid);
                    m_AvailableMultipleSweep = Info.times - Times;
                    MyHead.TimesLabel.text   = "[ffff00]" + NGUIUtil.GetStringByKey("88800098") + "[-]" + "[ffffff]" + m_AvailableMultipleSweep + "/" + Info.times + "[-]";
                }
            }
            SetStageStar(StageDC.GetPassStageStar(m_type, m_stageid));
        }
    }
Example #5
0
    // 添加剧情掉落物品
    private void AddScriptDropItems()
    {
        CounterPartInfo info  = StageDC.GetCounterPartInfo();
        int             Times = StageDC.GetPassStageTimes(m_type, m_stageid);

        if (Times == 0 && info.drop != null)
        {
            JsonData jd = JsonMapper.ToObject(info.drop);
            if (jd.Keys.Contains("item"))
            {
                int count = jd["item"].Count;

                for (int i = 0; i < count; i++)
                {
                    if (jd["item"][i].Keys.Contains("id"))
                    {
                        int id = (int)jd["item"][i]["id"];
                        SetStageItemReward(0, id, 0);
                    }
                }
            }
            if (jd.Keys.Contains("captain"))
            {
                int count = jd["captain"].Count;
                for (int i = 0; i < count; i++)
                {
                    int id = (int)jd["captain"][i];
                    SetStageItemReward(4, id, 0);
                }
            }
            if (jd.Keys.Contains("soldier"))
            {
                int count = jd["soldier"].Count;
                for (int i = 0; i < count; i++)
                {
                    int id = (int)jd["soldier"][i];
                    SetStageItemReward(1, id, 0);
                }
            }
        }
    }