private void UpdateComposeData()
    {
        long num = 0L;

        foreach (long current in this.mCheckList)
        {
            NkSoldierInfo soldierInfo = SolComposeMainDlg.GetSoldierInfo(current);
            num += SolComposeMainDlg.GetComposeCost(soldierInfo);
        }
        this.lbSubNum.SetText(string.Format("{0}/{1}", this.mCheckList.Count, 50));
        this.lbCostMoney.SetText(string.Format("{0:###,###,###,##0}", num));
    }
    protected virtual void BtnClickListBox(IUIObject obj)
    {
        UIListItemContainer selectedItem = this.ComposeNewListBox.SelectedItem;

        if (null == selectedItem)
        {
            return;
        }
        NkSoldierInfo nkSoldierInfo = (NkSoldierInfo)selectedItem.data;

        if (nkSoldierInfo == null)
        {
            return;
        }
        if (this.IsContainSelect(nkSoldierInfo.GetSolID()))
        {
            this.mCheckList.Remove(nkSoldierInfo.GetSolID());
        }
        else
        {
            if (!this.m_bMainSelect && nkSoldierInfo.IsAtbCommonFlag(1L))
            {
                Main_UI_SystemMessage.ADDMessage(NrTSingleton <NrTextMgr> .Instance.GetTextFromNotify("724"), SYSTEM_MESSAGE_TYPE.IMPORTANT_MESSAGE);
                return;
            }
            if (this.m_eShowType == SOLCOMPOSE_TYPE.EXTRACT)
            {
                if (nkSoldierInfo.GetGrade() < 5 || nkSoldierInfo.GetGrade() >= 6)
                {
                    return;
                }
                if (this.mCheckList.Count >= 10)
                {
                    return;
                }
            }
            else if (this.m_eShowType == SOLCOMPOSE_TYPE.TRANSCENDENCE)
            {
                foreach (long current in this.mCheckList)
                {
                    NkSoldierInfo soldierInfo = SolComposeMainDlg.GetSoldierInfo(current);
                    if (soldierInfo != null)
                    {
                        this.UpdateSolListCheck(soldierInfo, false);
                    }
                }
                this.mCheckList.Clear();
            }
            else if (this.m_eShowType == SOLCOMPOSE_TYPE.MYTHEVOLUTION)
            {
                if (nkSoldierInfo.GetGrade() < 5 || nkSoldierInfo.GetGrade() >= 10)
                {
                    return;
                }
            }
            else if (this.mCheckList.Count >= 50)
            {
                return;
            }
            this.mCheckList.Add(nkSoldierInfo.GetSolID());
        }
        if (this.m_bMainSelect)
        {
            this.SelectFinish();
            return;
        }
        if (this.IsContainSelect(nkSoldierInfo.GetSolID()))
        {
            this.UpdateSolListCheck(nkSoldierInfo, true);
        }
        else
        {
            this.UpdateSolListCheck(nkSoldierInfo, false);
        }
        switch (this.m_eShowType)
        {
        case SOLCOMPOSE_TYPE.COMPOSE:
            this.UpdateComposeData();
            break;

        case SOLCOMPOSE_TYPE.SELL:
            this.UpdateSellData();
            break;

        case SOLCOMPOSE_TYPE.EXTRACT:
            this.UpdateExtractData();
            break;

        case SOLCOMPOSE_TYPE.MYTHEVOLUTION:
            this.UpdateMythEvolution();
            break;
        }
    }
示例#3
0
    public virtual void SetData(NkSoldierInfo kBase, List <long> kSubList, SOLCOMPOSE_TYPE _Type = SOLCOMPOSE_TYPE.COMPOSE)
    {
        if (SolComposeMainDlg.Instance == null)
        {
            base.CloseNow();
            return;
        }
        string text  = string.Empty;
        string text2 = string.Empty;
        int    kind  = 0;

        this.mBaseSolInfo = kBase;
        this.mSubSolList  = kSubList;
        this.m_SolType    = _Type;
        NkSoldierInfo nkSoldierInfo = null;

        if (this.mSubSolList != null || this.mSubSolList.Count != 0)
        {
            foreach (long current in this.mSubSolList)
            {
                NkSoldierInfo soldierInfo = SolComposeMainDlg.GetSoldierInfo(current);
                if (nkSoldierInfo == null)
                {
                    nkSoldierInfo = soldierInfo;
                }
                else if (nkSoldierInfo.GetCombatPower() < soldierInfo.GetCombatPower())
                {
                    nkSoldierInfo = soldierInfo;
                }
            }
            if (nkSoldierInfo != null)
            {
                kind  = nkSoldierInfo.GetCharKind();
                text  = nkSoldierInfo.GetName();
                text2 = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1031");

                NrTSingleton <CTextParser> .Instance.ReplaceParam(ref text2, new object[]
                {
                    text2,
                    "count",
                    nkSoldierInfo.GetLevel()
                });
            }
            int    num   = this.mSubSolList.Count - 1;
            string text3 = string.Empty;
            text3 = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("2034");

            NrTSingleton <CTextParser> .Instance.ReplaceParam(ref text3, new object[]
            {
                text3,
                "count",
                num
            });

            this.lbName.SetText(text);
            this.lbLevel.SetText(text2);
            this.dtSoldier.SetTexture(eCharImageType.SMALL, kind, (int)nkSoldierInfo.GetGrade(), string.Empty);
            this.lbSubNum.SetText(text3);
            this.lbSubNum.Visible = (0 < num);
            this.lbGold.SetText(string.Format("{0:###,###,###,##0}", SolComposeMainDlg.Instance.COST));
            SOLCOMPOSE_TYPE solType = this.m_SolType;
            if (solType != SOLCOMPOSE_TYPE.COMPOSE)
            {
                if (solType == SOLCOMPOSE_TYPE.SELL)
                {
                    this.lbTitle.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("57"));
                    this.lbExplain.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("58"));
                    this.lbMoneyName.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("34"));
                    this.btnOk.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("35"));
                }
            }
            else
            {
                this.lbTitle.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("2033"));
                this.lbExplain.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1717"));
                this.lbMoneyName.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1728"));
                this.btnOk.SetText(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1729"));
            }
            return;
        }
        this.Close();
    }