예제 #1
0
    public static void Item_Box_Random_Show(ITEM a_cItem)
    {
        if (a_cItem != null)
        {
            List <Protocol_Item_Box.Roulette_Item> list = new List <Protocol_Item_Box.Roulette_Item>();
            Protocol_Item_Box.Roulette_Item        item = default(Protocol_Item_Box.Roulette_Item);
            ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(a_cItem.m_nItemUnique);

            ITEM_BOX_GROUP iTEM_BOX_GROUP = null;
            if (itemInfo.IsItemATB(65536L))
            {
                iTEM_BOX_GROUP = NrTSingleton <ItemManager> .Instance.GetBoxGroup(itemInfo.m_nItemUnique);

                if (iTEM_BOX_GROUP == null)
                {
                    return;
                }
            }
            for (int i = 0; i < 12; i++)
            {
                int num;
                int num2;
                if (iTEM_BOX_GROUP != null)
                {
                    num  = iTEM_BOX_GROUP.i32GroupItemUnique[i];
                    num2 = iTEM_BOX_GROUP.i32GroupItemNum[i];
                }
                else
                {
                    num  = itemInfo.m_nBoxItemUnique[i];
                    num2 = itemInfo.m_nBoxItemNumber[i];
                }
                if (num > 0)
                {
                    item.m_nItemUnique = num;
                    item.m_strText     = NrTSingleton <UIDataManager> .Instance.GetString(num2.ToString(), " ", NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("442"));

                    list.Add(item);
                }
            }
            Protocol_Item_Box.Roulette_Show(a_cItem.m_nItemUnique, new Action <object>(Protocol_Item_Box.On_Sead_Box_Use_Random), a_cItem, list.ToArray());
        }
    }
예제 #2
0
    public void Set_Item(ITEM a_cItem)
    {
        if (a_cItem == null || !a_cItem.IsValid())
        {
            this.Close();
            return;
        }
        ITEMINFO itemInfo = NrTSingleton <ItemManager> .Instance.GetItemInfo(a_cItem.m_nItemUnique);

        if (itemInfo == null)
        {
            this.Close();
            return;
        }
        bool           flag           = false;
        ITEM_BOX_GROUP iTEM_BOX_GROUP = null;

        if (itemInfo.IsItemATB(65536L))
        {
            flag           = true;
            iTEM_BOX_GROUP = NrTSingleton <ItemManager> .Instance.GetBoxGroup(a_cItem.m_nItemUnique);

            if (iTEM_BOX_GROUP == null)
            {
                this.Close();
                return;
            }
        }
        this.m_lMainBoxItem = a_cItem;
        this.m_strItemName  = NrTSingleton <ItemManager> .Instance.GetItemNameByItemUnique(this.m_lMainBoxItem.m_nItemUnique);

        this.m_BoxitemCount = this.m_lMainBoxItem.m_nItemNum;
        this.SetTitle();
        this.m_ivMainBoxItem.BaseInfoLoderImage = NrTSingleton <ItemManager> .Instance.GetItemTexture(this.m_lMainBoxItem.m_nItemUnique);

        this.m_NlbItemListBox.Clear();
        if (a_cItem != null)
        {
            List <Protocol_Item_Box.Roulette_Item> list = new List <Protocol_Item_Box.Roulette_Item>();
            Protocol_Item_Box.Roulette_Item        item = default(Protocol_Item_Box.Roulette_Item);
            for (int i = 0; i < 12; i++)
            {
                int num;
                int num2;
                if (flag)
                {
                    num  = iTEM_BOX_GROUP.i32GroupItemUnique[i];
                    num2 = iTEM_BOX_GROUP.i32GroupItemNum[i];
                }
                else
                {
                    num  = itemInfo.m_nBoxItemUnique[i];
                    num2 = itemInfo.m_nBoxItemNumber[i];
                }
                if (num > 0)
                {
                    ITEM boxItemTemp = NrTSingleton <ItemManager> .Instance.GetBoxItemTemp(a_cItem.m_nItemUnique, i);

                    if (boxItemTemp != null && boxItemTemp.IsValid())
                    {
                        item.m_nItemUnique = num;
                        item.m_strText     = NrTSingleton <UIDataManager> .Instance.GetString(num2.ToString(), " ", NrTSingleton <NrTextMgr> .Instance.GetTextFromInterface("442"));

                        list.Add(item);
                        NewListItem newListItem = new NewListItem(this.m_NlbItemListBox.ColumnNum, true, string.Empty);
                        newListItem.SetListItemData(0, true);
                        newListItem.SetListItemData(1, boxItemTemp, boxItemTemp, new EZValueChangedDelegate(this.OnItemToolTip), null);
                        this.m_NlbItemListBox.Add(newListItem);
                    }
                }
            }
            this.m_NlbItemListBox.RepositionItems();
            this.m_saRouletteItem = list.ToArray();
            ItemOption_Text[] array = ItemTooltipDlg.Get_Item_Info(a_cItem, null, false, false, G_ID.NONE);
            if (array.Length > 0)
            {
                StringBuilder stringBuilder  = new StringBuilder();
                StringBuilder stringBuilder2 = new StringBuilder();
                for (int j = 0; j < array.Length; j++)
                {
                    stringBuilder.Append(array[j].m_OptionName);
                    stringBuilder2.Append(array[j].m_OptionValue);
                }
                this.m_flToolTip1.SetFlashLabel(stringBuilder.ToString());
                this.m_flToolTip2.SetFlashLabel(stringBuilder2.ToString());
            }
            else
            {
                this.m_flToolTip1.SetFlashLabel(string.Empty);
                this.m_flToolTip2.SetFlashLabel(string.Empty);
            }
            this.m_flToolTip3.SetLocation(this.m_flToolTip3.GetLocation().x, this.m_flToolTip2.GetLocationY() + this.m_flToolTip2.Height + 10f);
            if (itemInfo.m_strToolTipTextKey != "0")
            {
                string textFromItemHelper = NrTSingleton <NrTextMgr> .Instance.GetTextFromItemHelper(itemInfo.m_strToolTipTextKey);

                this.m_flToolTip3.SetFlashLabel(textFromItemHelper);
            }
            else
            {
                this.m_flToolTip3.SetFlashLabel(string.Empty);
            }
        }
        base.ShowLayer(0, 1);
    }