Example #1
0
        public static void OnRankGodDetailTab(int tabIndex, COMDT_RANKING_LIST_ITEM_EXTRA_MASTER_HERO masterHeroInfo, uint heroId)
        {
            CUIFormScript form = Singleton <CUIManager> .instance.GetForm(RankingSystem.s_rankingGodDetailForm);

            if (form != null)
            {
                GameObject widget = form.GetWidget(0);
                if (widget != null)
                {
                    ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(heroId);
                    if (dataByKey != null)
                    {
                        GameObject obj3   = Utility.FindChild(widget, "Panel_EquipInfo");
                        GameObject obj4   = Utility.FindChild(widget, "Panel_SymbolInfo");
                        string     str    = Utility.UTF8Convert(masterHeroInfo.stAcntInfo.szPlayerName);
                        string     szName = dataByKey.szName;
                        obj3.CustomSetActive(false);
                        obj4.CustomSetActive(false);
                        if (tabIndex == 0)
                        {
                            obj3.CustomSetActive(true);
                            CUIListScript componetInChild           = Utility.GetComponetInChild <CUIListScript>(obj3, "List");
                            int           bEquipNum                 = masterHeroInfo.stEquipList.bEquipNum;
                            ushort[]      defaultRecommendEquipInfo = new ushort[6];
                            if (bEquipNum > 0)
                            {
                                for (int j = 0; j < bEquipNum; j++)
                                {
                                    defaultRecommendEquipInfo[j] = (ushort)masterHeroInfo.stEquipList.EquipID[j];
                                }
                            }
                            else
                            {
                                defaultRecommendEquipInfo = Singleton <CEquipSystem> .instance.GetDefaultRecommendEquipInfo(heroId);

                                bEquipNum = defaultRecommendEquipInfo.Length;
                            }
                            componetInChild.SetElementAmount(bEquipNum);
                            for (int i = 0; i < bEquipNum; i++)
                            {
                                GameObject     gameObject = componetInChild.GetElemenet(i).gameObject;
                                CUIEventScript component  = gameObject.GetComponent <CUIEventScript>();
                                ushort         equipID    = defaultRecommendEquipInfo[i];
                                CEquipInfo     equipInfo  = Singleton <CEquipSystem> .instance.GetEquipInfo(equipID);

                                component.m_onClickEventParams.battleEquipPar.equipInfo = Singleton <CEquipSystem> .instance.GetEquipInfo(equipID);

                                component.m_onClickEventParams.tagStr  = str;
                                component.m_onClickEventParams.tagStr1 = szName;
                                CUICommonSystem.SetEquipIcon(equipID, gameObject, form);
                            }
                            if (bEquipNum > 0)
                            {
                                componetInChild.SelectElement(0, true);
                                componetInChild.GetElemenet(0).GetComponent <CUIEventScript>().OnPointerClick(null);
                                CUIEventScript script4 = componetInChild.GetElemenet(0).GetComponent <CUIEventScript>();
                                Singleton <CUIEventManager> .instance.DispatchUIEvent(script4.m_onClickEventID, script4.m_onClickEventParams);
                            }
                            else
                            {
                                componetInChild.SelectElement(-1, true);
                            }
                        }
                        else if (tabIndex == 1)
                        {
                            ListView <CSymbolItem> symbolList = new ListView <CSymbolItem>();
                            for (int k = 0; k < masterHeroInfo.stSymbolPageInfo.bSymbolPosNum; k++)
                            {
                                bool flag = false;
                                for (int n = 0; n < symbolList.Count; n++)
                                {
                                    if (symbolList[n].m_baseID == masterHeroInfo.stSymbolPageInfo.SymbolId[k])
                                    {
                                        CSymbolItem local1 = symbolList[n];
                                        local1.m_stackCount++;
                                        flag = true;
                                        break;
                                    }
                                }
                                if (!flag)
                                {
                                    CSymbolItem item = CUseableManager.CreateUseable(COM_ITEM_TYPE.COM_OBJTYPE_ITEMSYMBOL, masterHeroInfo.stSymbolPageInfo.SymbolId[k], 1) as CSymbolItem;
                                    symbolList.Add(item);
                                }
                            }
                            CSymbolWearController.SortSymbolList(ref symbolList);
                            obj4.CustomSetActive(true);
                            CUIListScript script5 = Utility.GetComponetInChild <CUIListScript>(obj4, "List");
                            script5.SetElementAmount(symbolList.Count);
                            int num7 = 0;
                            for (int m = 0; m < symbolList.Count; m++)
                            {
                                GameObject p = script5.GetElemenet(m).gameObject;
                                Utility.GetComponetInChild <Image>(p, "imgIcon").SetSprite(symbolList[m].GetIconPath(), form, true, false, false);
                                Utility.GetComponetInChild <Text>(p, "SymbolName").text = symbolList[m].m_name;
                                char[] trimChars = new char[] { '\n' };
                                Utility.GetComponetInChild <Text>(p, "SymbolDesc").text   = CSymbolSystem.GetSymbolAttString(symbolList[m], true).TrimEnd(trimChars);
                                Utility.GetComponetInChild <Text>(p, "lblIconCount").text = string.Format("x{0}", symbolList[m].m_stackCount);
                                num7 += symbolList[m].m_SymbolData.wLevel;
                            }
                            Utility.GetComponetInChild <Text>(obj4, "symbolPageLvlText").text = num7.ToString();
                            string[] args = new string[] { str, szName };
                            Utility.GetComponetInChild <Text>(obj4, "heroSymbolText").text = Singleton <CTextManager> .instance.GetText("RankGodHeroSymbolDesc", args);
                        }
                    }
                }
            }
        }
Example #2
0
        public static void OnRankGodDetailTab(int tabIndex, COMDT_RANKING_LIST_ITEM_EXTRA_MASTER_HERO masterHeroInfo, uint heroId)
        {
            CUIFormScript form = Singleton <CUIManager> .get_instance().GetForm(RankingSystem.s_rankingGodDetailForm);

            if (form == null)
            {
                return;
            }
            GameObject widget = form.GetWidget(0);

            if (widget == null)
            {
                return;
            }
            ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(heroId);

            if (dataByKey == null)
            {
                return;
            }
            GameObject gameObject  = Utility.FindChild(widget, "Panel_EquipInfo");
            GameObject gameObject2 = Utility.FindChild(widget, "Panel_SymbolInfo");
            string     text        = Utility.UTF8Convert(masterHeroInfo.stAcntInfo.szPlayerName);
            string     szName      = dataByKey.szName;

            gameObject.CustomSetActive(false);
            gameObject2.CustomSetActive(false);
            if (tabIndex == 0)
            {
                gameObject.CustomSetActive(true);
                CUIListScript componetInChild = Utility.GetComponetInChild <CUIListScript>(gameObject, "List");
                int           num             = (int)masterHeroInfo.stEquipList.bEquipNum;
                ushort[]      array           = new ushort[6];
                if (num > 0)
                {
                    for (int i = 0; i < num; i++)
                    {
                        array[i] = (ushort)masterHeroInfo.stEquipList.EquipID[i];
                    }
                }
                else
                {
                    ResRecommendEquipInBattle defaultRecommendEquipInfo = Singleton <CEquipSystem> .get_instance().GetDefaultRecommendEquipInfo(heroId, 1u);

                    if (defaultRecommendEquipInfo != null)
                    {
                        array = defaultRecommendEquipInfo.RecommendEquipID;
                    }
                    num = array.Length;
                }
                componetInChild.SetElementAmount(num);
                for (int j = 0; j < num; j++)
                {
                    GameObject     gameObject3 = componetInChild.GetElemenet(j).gameObject;
                    CUIEventScript component   = gameObject3.GetComponent <CUIEventScript>();
                    ushort         num2        = array[j];
                    CEquipInfo     equipInfo   = CEquipSystem.GetEquipInfo(num2);
                    component.m_onClickEventParams.battleEquipPar.equipInfo = CEquipSystem.GetEquipInfo(num2);
                    component.m_onClickEventParams.tagStr  = text;
                    component.m_onClickEventParams.tagStr1 = szName;
                    CUICommonSystem.SetEquipIcon(num2, gameObject3, form);
                }
                if (num > 0)
                {
                    componetInChild.SelectElement(0, true);
                    componetInChild.GetElemenet(0).GetComponent <CUIEventScript>().OnPointerClick(null);
                    CUIEventScript component2 = componetInChild.GetElemenet(0).GetComponent <CUIEventScript>();
                    Singleton <CUIEventManager> .get_instance().DispatchUIEvent(component2.m_onClickEventID, component2.m_onClickEventParams);
                }
                else
                {
                    componetInChild.SelectElement(-1, true);
                }
            }
            else if (tabIndex == 1)
            {
                ListView <CSymbolItem> listView = new ListView <CSymbolItem>();
                for (int k = 0; k < (int)masterHeroInfo.stSymbolPageInfo.bSymbolPosNum; k++)
                {
                    bool flag = false;
                    for (int l = 0; l < listView.get_Count(); l++)
                    {
                        if (listView.get_Item(l).m_baseID == masterHeroInfo.stSymbolPageInfo.SymbolId[k])
                        {
                            listView.get_Item(l).m_stackCount++;
                            flag = true;
                            break;
                        }
                    }
                    if (!flag)
                    {
                        CSymbolItem cSymbolItem = CUseableManager.CreateUseable(5, masterHeroInfo.stSymbolPageInfo.SymbolId[k], 1) as CSymbolItem;
                        listView.Add(cSymbolItem);
                    }
                }
                CSymbolWearController.SortSymbolList(ref listView);
                gameObject2.CustomSetActive(true);
                CUIListScript componetInChild2 = Utility.GetComponetInChild <CUIListScript>(gameObject2, "List");
                componetInChild2.SetElementAmount(listView.get_Count());
                int num3 = 0;
                for (int m = 0; m < listView.get_Count(); m++)
                {
                    GameObject gameObject4      = componetInChild2.GetElemenet(m).gameObject;
                    Image      componetInChild3 = Utility.GetComponetInChild <Image>(gameObject4, "imgIcon");
                    componetInChild3.SetSprite(listView.get_Item(m).GetIconPath(), form, true, false, false, false);
                    Text componetInChild4 = Utility.GetComponetInChild <Text>(gameObject4, "SymbolName");
                    componetInChild4.text = listView.get_Item(m).m_name;
                    Text componetInChild5 = Utility.GetComponetInChild <Text>(gameObject4, "SymbolDesc");
                    componetInChild5.text = CSymbolSystem.GetSymbolAttString(listView.get_Item(m), true).TrimEnd(new char[]
                    {
                        '\n'
                    });
                    Text componetInChild6 = Utility.GetComponetInChild <Text>(gameObject4, "lblIconCount");
                    componetInChild6.text = string.Format("x{0}", listView.get_Item(m).m_stackCount);
                    num3 += (int)listView.get_Item(m).m_SymbolData.wLevel *listView.get_Item(m).m_stackCount;
                }
                Utility.GetComponetInChild <Text>(gameObject2, "symbolPageLvlText").text = num3.ToString();
                Utility.GetComponetInChild <Text>(gameObject2, "heroSymbolText").text    = Singleton <CTextManager> .get_instance().GetText("RankGodHeroSymbolDesc", new string[]
                {
                    text,
                    szName
                });
            }
        }