Exemplo n.º 1
0
    public void SetItemList()
    {
        if (this.m_SolID == 0L)
        {
            return;
        }
        NrPersonInfoUser charPersonInfo = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1);

        if (charPersonInfo == null)
        {
            return;
        }
        NkSoldierInfo soldierInfoFromSolID = charPersonInfo.GetSoldierInfoFromSolID(this.m_SolID);

        if (soldierInfoFromSolID == null)
        {
            return;
        }
        this.m_ItemList.Clear();
        SelectItemDlg selectItemDlg = (SelectItemDlg)NrTSingleton <FormsManager> .Instance.GetForm(G_ID.SELECTITEM_DLG);

        for (int i = 0; i < 6; i++)
        {
            ITEM item = soldierInfoFromSolID.GetEquipItemInfo().m_kItem[i].GetItem();
            if (item != null)
            {
                if (item.m_nItemUnique > 0)
                {
                    ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(item.m_nItemUnique);

                    if (itemInfo != null)
                    {
                        if (selectItemDlg.DlgType == SelectItemDlg.eType.Enhance && item.m_nRank >= 10)
                        {
                            if (itemInfo == null)
                            {
                                goto IL_12F;
                            }
                            if ((int)soldierInfoFromSolID.GetLevel() < itemInfo.GetUseMinLevel(item))
                            {
                                goto IL_12F;
                            }
                        }
                        if (selectItemDlg.DlgType != SelectItemDlg.eType.Repair || item.m_nDurability < 100)
                        {
                            if (selectItemDlg.DlgType == SelectItemDlg.eType.Dissemblie)
                            {
                            }
                            this.m_ItemList.Add(soldierInfoFromSolID.GetEquipItemInfo().m_kItem[i].GetItem());
                        }
                    }
                }
            }
            IL_12F :;
        }
        this.m_TotalPage   = Math.Abs(this.m_ItemList.Count - 1) / ItemListDlg.NUM_ITEMLIST + 1;
        this.m_CurrentPage = 1;
        this.m_UpdateCount = soldierInfoFromSolID.GetItemUpdateCount();
        this.ShowItemList();
    }
Exemplo n.º 2
0
    private int CompareItem(NkSoldierInfo a, NkSoldierInfo b)
    {
        long num  = 0L;
        long num2 = 0L;
        ITEM equipItemByUnique  = a.GetEquipItemByUnique(this.m_nSearch_ItemUnique);
        ITEM equipItemByUnique2 = b.GetEquipItemByUnique(this.m_nSearch_ItemUnique);

        if (equipItemByUnique != null)
        {
            ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(equipItemByUnique.m_nItemUnique);

            if (itemInfo != null)
            {
                num = (long)(itemInfo.GetUseMinLevel(equipItemByUnique) * 100 + equipItemByUnique.GetRank());
            }
        }
        if (equipItemByUnique2 != null)
        {
            ITEMINFO itemInfo2 = NrTSingleton <ItemManager> .Instance.GetItemInfo(equipItemByUnique2.m_nItemUnique);

            if (itemInfo2 != null)
            {
                num2 = (long)(itemInfo2.GetUseMinLevel(equipItemByUnique) * 100 + equipItemByUnique2.GetRank());
            }
        }
        if (num < num2)
        {
            return(1);
        }
        if (num > num2)
        {
            return(-1);
        }
        return(0);
    }
    private int CompareItemLevel(ITEM a, ITEM b)
    {
        ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(a.m_nItemUnique);

        ITEMINFO itemInfo2 = NrTSingleton <ItemManager> .Instance.GetItemInfo(b.m_nItemUnique);

        if (itemInfo.m_nQualityLevel != itemInfo2.m_nQualityLevel)
        {
            return(-itemInfo.m_nQualityLevel.CompareTo(itemInfo2.m_nQualityLevel));
        }
        if (a.GetRank() != b.GetRank())
        {
            return(-a.GetRank().CompareTo(b.GetRank()));
        }
        return(-itemInfo.GetUseMinLevel(a).CompareTo(itemInfo2.GetUseMinLevel(b)));
    }
Exemplo n.º 4
0
    public static Tooltip_Dlg.Tooltip_Text_Info[] Get_Item_Text_Info(ITEM pkItem, ITEM pkEquipedItem, G_ID eWidowID, bool bEquiped)
    {
        int level = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1).GetLevel(0L);

        int nItemUnique = pkItem.m_nItemUnique;
        int num;

        if (pkItem.m_nItemID > 0L)
        {
            num = pkItem.m_nDurability;
        }
        else
        {
            num = 100;
        }
        string strTextColorCode  = "1101";
        string strTextColorCode2 = "1101";
        string text = "1101";
        string strTextColorCode3 = "1101";
        string strTextColorCode4 = "1104";
        string text2             = "1401";
        string strTextColorCode5 = "1401";
        string strTextColorCode6 = "1304";
        string strTextColorCode7 = "1113";
        int    num2  = 21;
        int    num3  = 0;
        string text3 = "1101";
        string text4 = "1106";
        string text5 = "1401";
        List <Tooltip_Dlg.Tooltip_Text_Info> list = new List <Tooltip_Dlg.Tooltip_Text_Info>();

        Tooltip_Dlg.Tooltip_Text_Info item = default(Tooltip_Dlg.Tooltip_Text_Info);
        ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(nItemUnique);

        if (itemInfo != null)
        {
            item.m_strText = NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(pkItem);

            item.m_eAnchor          = SpriteText.Anchor_Pos.Middle_Center;
            item.m_fFontSize        = 22f;
            item.m_strTextColorCode = strTextColorCode;
            list.Add(item);
            item.m_fFontSize = 22f;
            string strText = string.Empty;
            if (bEquiped)
            {
                strText = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1479");

                item.m_strText          = strText;
                item.m_strTextColorCode = strTextColorCode7;
                list.Add(item);
            }
            item.m_eAnchor      = SpriteText.Anchor_Pos.Middle_Left;
            item.m_nTextureType = 1;
            list.Add(item);
            item.m_nTextureType = 0;
            int           count        = list.Count;
            ITEMTYPE_INFO itemTypeInfo = NrTSingleton <ItemManager> .Instance.GetItemTypeInfo(nItemUnique);

            int useMinLevel = itemInfo.GetUseMinLevel(pkItem);
            if (itemTypeInfo != null)
            {
                item.m_strText = NrTSingleton <UIDataManager> .Instance.GetString(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1257"), NrTSingleton <NrTextMgr> .Instance.GetTextFromItem(itemTypeInfo.TEXTKEY));

                item.m_strTextColorCode = ((useMinLevel <= level) ? text : text2);
                list.Add(item);
            }
            if (pkItem.m_nPosType == 5 || pkItem.m_nPosType == 6 || pkItem.m_nPosType == 7)
            {
                item.m_strText = NrTSingleton <UIDataManager> .Instance.GetString(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("265"), " ", pkItem.m_nItemNum.ToString());

                list.Add(item);
            }
            item.m_strText          = ((useMinLevel > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1258") + useMinLevel) : null);
            item.m_strTextColorCode = ((useMinLevel <= level) ? text : text2);
            list.Add(item);
            item.m_strText          = ((itemInfo.m_nUseMaxLevel > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1259") + itemInfo.m_nUseMaxLevel) : null);
            item.m_strTextColorCode = ((itemInfo.m_nUseMaxLevel >= level) ? text : text2);
            list.Add(item);
            if (!NrTSingleton <ItemManager> .Instance.IsItemATB(nItemUnique, 2L))
            {
                item.m_strText = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("159");

                item.m_strTextColorCode = text2;
                list.Add(item);
            }
            else
            {
                item.m_strText = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("158");

                item.m_strTextColorCode = strTextColorCode4;
                list.Add(item);
            }
            if (NrTSingleton <ItemManager> .Instance.IsItemATB(nItemUnique, 4L))
            {
                item.m_strText = NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("160");

                item.m_strTextColorCode = strTextColorCode4;
                list.Add(item);
            }
            for (int i = count; i < list.Count; i++)
            {
                if (list[i].m_strText != null)
                {
                    item.m_nTextureType = 1;
                    list.Add(item);
                    item.m_nTextureType = 0;
                    break;
                }
            }
            count = list.Count;
            int num4 = 0;
            int num5 = 0;
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_Min_Damage(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 1);
                int nValue2 = Protocol_Item.Get_Max_Damage(pkEquipedItem);
                num5 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue2, 1);
            }
            int  num6         = Protocol_Item.Get_Min_Damage(pkItem);
            int  optionValue  = Tooltip_Dlg.GetOptionValue(pkItem, num6, 1);
            int  nValue3      = Protocol_Item.Get_Max_Damage(pkItem);
            int  optionValue2 = Tooltip_Dlg.GetOptionValue(pkItem, nValue3, 1);
            bool flag         = false;
            int  num7         = optionValue - num4;
            int  num8         = optionValue2 - num5;
            if (num7 != 0 || num8 != 0)
            {
                flag = true;
            }
            if (!bEquiped && flag && pkEquipedItem != null)
            {
                string text6 = string.Empty;
                if (num8 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text6 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), " ~ ", num8.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text6 = string.Concat(new string[]
                    {
                        "(+",
                        num7.ToString(),
                        " ~ +",
                        num8.ToString(),
                        ")"
                    });
                }
                item.m_strText = ((itemInfo.m_nMinDamage > 0 && itemInfo.m_nMaxDamage > 0) ? string.Concat(new string[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1263"),
                    optionValue.ToString(),
                    " ~ ",
                    optionValue2.ToString(),
                    " ",
                    text6
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nMinDamage > 0 && itemInfo.m_nMaxDamage > 0) ? NrTSingleton <UIDataManager> .Instance.GetString(NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1263"), optionValue.ToString(), " ~ ", optionValue2.ToString()) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_Defense(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 2);
            }
            num6        = Protocol_Item.Get_Defense(pkItem);
            optionValue = Tooltip_Dlg.GetOptionValue(pkItem, num6, 2);
            num7        = optionValue - num4;
            if (!bEquiped && num7 != 0 && pkEquipedItem != null)
            {
                string text7 = string.Empty;
                if (num7 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text7 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text7 = NrTSingleton <UIDataManager> .Instance.GetString("(", "+", num7.ToString(), ")");
                }
                item.m_strText = ((itemInfo.m_nDefense > 0) ? string.Concat(new object[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1264"),
                    optionValue,
                    " ",
                    text7
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nDefense > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1264") + optionValue) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_ADDHP(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 4);
            }
            num6        = Protocol_Item.Get_ADDHP(pkItem);
            optionValue = Tooltip_Dlg.GetOptionValue(pkItem, num6, 4);
            num7        = optionValue - num4;
            if (!bEquiped && num7 != 0 && pkEquipedItem != null)
            {
                string text8 = string.Empty;
                if (num7 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text8 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text8 = NrTSingleton <UIDataManager> .Instance.GetString("(", "+", num7.ToString(), ")");
                }
                item.m_strText = ((itemInfo.m_nAddHP > 0) ? string.Concat(new object[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1265"),
                    optionValue,
                    " ",
                    text8
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nAddHP > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1265") + optionValue) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            num6                    = Protocol_Item.Get_STR(pkItem);
            item.m_strText          = ((itemInfo.m_nSTR > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1271") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            num6                    = Protocol_Item.Get_DEX(pkItem);
            item.m_strText          = ((itemInfo.m_nDEX > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1272") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            num6                    = Protocol_Item.Get_INT(pkItem);
            item.m_strText          = ((itemInfo.m_nINT > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1274") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            num6                    = Protocol_Item.Get_VIT(pkItem);
            item.m_strText          = ((itemInfo.m_nVIT > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1263") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_Critical_Plus(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 3);
            }
            num6        = Protocol_Item.Get_Critical_Plus(pkItem);
            optionValue = Tooltip_Dlg.GetOptionValue(pkItem, num6, 3);
            num7        = optionValue - num4;
            if (!bEquiped && num7 != 0 && pkEquipedItem != null)
            {
                string text9 = string.Empty;
                if (num7 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text9 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text9 = NrTSingleton <UIDataManager> .Instance.GetString("(", "+", num7.ToString(), ")");
                }
                item.m_strText = ((itemInfo.m_nCriticalPlus > 0) ? string.Concat(new object[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1267"),
                    optionValue,
                    " ",
                    text9
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nCriticalPlus > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1267") + optionValue) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            num6                    = Protocol_Item.Get_AttackSpeed(pkItem);
            item.m_strText          = ((itemInfo.m_nAttackSpeed > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("1276") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_Hitrate_Plus(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 6);
            }
            num6        = Protocol_Item.Get_Hitrate_Plus(pkItem);
            optionValue = Tooltip_Dlg.GetOptionValue(pkItem, num6, 6);
            num7        = optionValue - num4;
            if (!bEquiped && num7 != 0 && pkEquipedItem != null)
            {
                string text10 = string.Empty;
                if (num7 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text10 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text10 = NrTSingleton <UIDataManager> .Instance.GetString("(", "+", num7.ToString(), ")");
                }
                item.m_strText = ((itemInfo.m_nHitratePlus > 0) ? string.Concat(new object[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("173"),
                    optionValue,
                    " ",
                    text10
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nHitratePlus > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("173") + optionValue) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            if (pkEquipedItem != null)
            {
                int nValue = Protocol_Item.Get_Evasion_Plus(pkEquipedItem);
                num4 = Tooltip_Dlg.GetOptionValue(pkEquipedItem, nValue, 7);
            }
            num6        = Protocol_Item.Get_Evasion_Plus(pkItem);
            optionValue = Tooltip_Dlg.GetOptionValue(pkItem, num6, 7);
            num7        = optionValue - num4;
            if (!bEquiped && num7 != 0 && pkEquipedItem != null)
            {
                string text11 = string.Empty;
                if (num7 < 0)
                {
                    item.m_strTextColorCode = strTextColorCode5;
                    text11 = NrTSingleton <UIDataManager> .Instance.GetString("(", num7.ToString(), ")");
                }
                else
                {
                    item.m_strTextColorCode = strTextColorCode6;
                    text11 = NrTSingleton <UIDataManager> .Instance.GetString("(", "+", num7.ToString(), ")");
                }
                item.m_strText = ((itemInfo.m_nEvasionPlus > 0) ? string.Concat(new object[]
                {
                    NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("174"),
                    optionValue,
                    " ",
                    text11
                }) : null);
            }
            else
            {
                item.m_strText          = ((itemInfo.m_nEvasionPlus > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("174") + optionValue) : null);
                item.m_strTextColorCode = strTextColorCode3;
            }
            list.Add(item);
            num6                    = Protocol_Item.Get_Move_Speed(pkItem);
            item.m_strText          = ((itemInfo.m_nMoveSpeed > 0) ? (NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("175") + num6) : null);
            item.m_strTextColorCode = strTextColorCode3;
            list.Add(item);
            item.m_strText = ((itemInfo.m_nDurability > 0) ? string.Concat(new object[]
            {
                NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("176"),
                num,
                " / ",
                itemInfo.m_nDurability
            }) : null);
            item.m_strTextColorCode = ((num < num2) ? ((num > num3) ? text4 : text5) : text3);
            list.Add(item);
            for (int j = count; j < list.Count; j++)
            {
                if (list[j].m_strText != null)
                {
                    item.m_nTextureType = 1;
                    list.Add(item);
                    item.m_nTextureType = 0;
                    break;
                }
            }
            count = list.Count;
            for (int k = count; k < list.Count; k++)
            {
                if (list[k].m_strText != null)
                {
                    item.m_nTextureType = 1;
                    list.Add(item);
                    item.m_nTextureType = 0;
                    break;
                }
            }
            string empty  = string.Empty;
            string empty2 = string.Empty;
            NrTSingleton <CTextParser> .Instance.ReplaceParam(ref empty, new object[]
            {
                empty2
            });

            item.m_eAnchor          = SpriteText.Anchor_Pos.Upper_Left;
            item.m_strText          = empty;
            item.m_strTextColorCode = strTextColorCode2;
            list.Add(item);
            return(list.ToArray());
        }
        return(null);
    }