Exemplo n.º 1
0
    public void GetChapterAward(int chapterID, int type, Action callback = null)
    {
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterOrder == chapterID && a.chapterType == type);

        if (zhuXianZhangJiePeiZhi == null)
        {
            if (callback != null)
            {
                callback.Invoke();
            }
            return;
        }
        bool flag = false;

        for (int i = 0; i < zhuXianZhangJiePeiZhi.needStar.get_Count(); i++)
        {
            int key = this.MakeBoxRewardID(zhuXianZhangJiePeiZhi.id, type, zhuXianZhangJiePeiZhi.needStar.get_Item(i));
            if (!this.m_mapChapterAwards.ContainsKey(key))
            {
                flag = true;
                break;
            }
        }
        if (flag)
        {
            this.SendGetChapterAwardDataReq(zhuXianZhangJiePeiZhi.id, callback);
        }
        else if (callback != null)
        {
            callback.Invoke();
        }
    }
Exemplo n.º 2
0
    public static void OpenInstanceUI(int instanceID, bool hideTheVisible = false, UIType type = UIType.FullScreen)
    {
        InstanceManagerUI.InstanceID = instanceID;
        ZhuXianPeiZhi zhuXianPeiZhi = DataReader <ZhuXianPeiZhi> .Get(instanceID);

        int chapterID = zhuXianPeiZhi.chapterId;
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(chapterID);

        List <ChapterInfo> dataByInstanceType = DungeonManager.Instance.GetDataByInstanceType(zhuXianZhangJiePeiZhi.chapterType);

        if (dataByInstanceType.get_Count() == 0 || dataByInstanceType.Find((ChapterInfo a) => a.chapterId == chapterID) == null)
        {
            DungeonManager.Instance.SendGetDungeonDataReq(chapterID, (DungeonType.ENUM)zhuXianZhangJiePeiZhi.chapterType, delegate
            {
                InstanceManagerUI.OpenInstanceUI(instanceID, hideTheVisible, type);
            });
            return;
        }
        FuBenJiChuPeiZhi fuBenJiChuPeiZhi = DataReader <FuBenJiChuPeiZhi> .Get(instanceID);

        if (fuBenJiChuPeiZhi.type == 103)
        {
            InstanceSelectUI instanceSelectUI = UIManagerControl.Instance.OpenUI("InstanceSelectUI", null, true, UIType.FullScreen) as InstanceSelectUI;
            instanceSelectUI.RefreshUIByInstanceID(instanceID);
        }
        else
        {
            InstanceSelectUI instanceSelectUI2 = UIManagerControl.Instance.OpenUI("InstanceSelectUI", null, true, UIType.FullScreen) as InstanceSelectUI;
            instanceSelectUI2.RefreshUIByInstanceID(instanceID);
            InstanceDetailUI instanceDetailUI = UIManagerControl.Instance.OpenUI("InstanceDetailUI", null, false, UIType.Pop) as InstanceDetailUI;
            instanceDetailUI.RefreshUI(instanceID);
        }
    }
Exemplo n.º 3
0
    private void OnClickIslandItem(GameObject sender)
    {
        Debug.LogError("sender.name  " + sender.get_name());
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(int.Parse(sender.get_name()));

        this.RefreshUI(zhuXianZhangJiePeiZhi.chapterOrder, InstanceSelectUI.currentDungeonType);
    }
Exemplo n.º 4
0
    private void ResetImageIslands(int chapter, DungeonType.ENUM dungeonType)
    {
        int  num  = 0;
        bool flag = false;

        for (int i = 0; i < this.listData.get_Count(); i++)
        {
            ChapterInfo chapterInfo = this.listData.get_Item(i);
            for (int j = 0; j < chapterInfo.dungeons.get_Count(); j++)
            {
                DungeonInfo dungeonInfo = chapterInfo.dungeons.get_Item(j);
                if (!dungeonInfo.clearance)
                {
                    num  = i;
                    flag = true;
                    break;
                }
            }
            if (flag)
            {
                break;
            }
        }
        for (int k = 0; k < this.listIsland.get_Count(); k++)
        {
            Object.Destroy(this.listIsland.get_Item(k));
        }
        this.listIsland.Clear();
        for (int l = 0; l <= num; l++)
        {
            ChapterInfo           chapterInfo2          = this.listData.get_Item(l);
            ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(chapterInfo2.chapterId);

            if (zhuXianZhangJiePeiZhi.mainSenceIcon != 0)
            {
                GameObject gameObject = new GameObject(chapterInfo2.chapterId.ToString());
                gameObject.get_transform().set_parent(this.Islands);
                this.listIsland.Add(gameObject);
                Image image = gameObject.AddComponent <Image>();
                ResourceManager.SetSprite(image, ResourceManager.GetIconSprite(DataReader <Icon> .Get(zhuXianZhangJiePeiZhi.mainSenceIcon).icon));
                RectTransform component = gameObject.GetComponent <RectTransform>();
                component.set_localPosition(new Vector2((float)zhuXianZhangJiePeiZhi.mainSenceIconPoint.get_Item(0), (float)zhuXianZhangJiePeiZhi.mainSenceIconPoint.get_Item(1)));
                component.set_localScale(Vector3.get_one());
                image.SetNativeSize();
                ButtonCustom buttonCustom = gameObject.AddComponent <ButtonCustom>();
                buttonCustom.onClickCustom = new ButtonCustom.VoidDelegateObj(this.OnClickIslandItem);
            }
        }
    }
Exemplo n.º 5
0
    public bool IsFinish(int instanceID)
    {
        if (instanceID <= 0)
        {
            return(false);
        }
        FuBenJiChuPeiZhi fuBenJiChuPeiZhi = DataReader <FuBenJiChuPeiZhi> .Get(instanceID);

        if (fuBenJiChuPeiZhi == null)
        {
            return(false);
        }
        List <ChapterInfo> dataByInstanceType = this.GetDataByInstanceType(fuBenJiChuPeiZhi.type);

        if (dataByInstanceType == null)
        {
            return(false);
        }
        ZhuXianPeiZhi zhuXianPeiZhi = DataReader <ZhuXianPeiZhi> .Get(instanceID);

        if (zhuXianPeiZhi == null)
        {
            return(false);
        }
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(zhuXianPeiZhi.chapterId);

        if (zhuXianZhangJiePeiZhi == null)
        {
            return(false);
        }
        if (zhuXianZhangJiePeiZhi.chapterOrder - 1 < 0 || zhuXianZhangJiePeiZhi.chapterOrder - 1 >= dataByInstanceType.get_Count())
        {
            return(false);
        }
        ChapterInfo chapterInfo = dataByInstanceType.get_Item(zhuXianZhangJiePeiZhi.chapterOrder - 1);

        for (int i = 0; i < chapterInfo.dungeons.get_Count(); i++)
        {
            if (instanceID == chapterInfo.dungeons.get_Item(i).dungeonId)
            {
                return(chapterInfo.dungeons.get_Item(i).clearance);
            }
        }
        return(false);
    }
Exemplo n.º 6
0
    private void OnClickBtnNextChapter(GameObject sender)
    {
        Debug.LogError("OnClickBtnNextChapter");
        if (this.CheckCanNextChapter())
        {
            int chapterCheck             = InstanceSelectUI.currentShowChapter + 1;
            ZhuXianZhangJiePeiZhi datazj = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterType == (int)InstanceSelectUI.currentDungeonType && a.chapterOrder == chapterCheck);

            if (this.listData.Find((ChapterInfo a) => a.chapterId == datazj.id) == null)
            {
                DungeonManager.Instance.SendGetDungeonDataReq(datazj.id, InstanceSelectUI.currentDungeonType, delegate
                {
                    this.OnClickBtnNextChapter(null);
                });
                return;
            }
            InstanceSelectUI.currentShowChapter++;
            this.RefreshUI(InstanceSelectUI.currentShowChapter, InstanceSelectUI.currentDungeonType);
        }
    }
Exemplo n.º 7
0
    public bool CheckEliteDungeonBadge()
    {
        for (int i = 0; i < DungeonManager.Instance.EliteData.get_Count(); i++)
        {
            int chapterId = DungeonManager.Instance.EliteData.get_Item(i).chapterId;
            ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(chapterId);

            for (int j = 0; j < zhuXianZhangJiePeiZhi.needStar.get_Count(); j++)
            {
                int key = this.MakeBoxRewardID(zhuXianZhangJiePeiZhi.id, 102, zhuXianZhangJiePeiZhi.needStar.get_Item(j));
                if (this.m_mapChapterAwards.ContainsKey(key))
                {
                    ChapterAwardInfo chapterAwardInfo = BoxRewardManager.Instance.m_mapChapterAwards[key];
                    if (chapterAwardInfo.canReceive && !chapterAwardInfo.isReceived)
                    {
                        return(true);
                    }
                }
            }
        }
        return(false);
    }
Exemplo n.º 8
0
    private bool CheckCanNextChapter()
    {
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterOrder == InstanceSelectUI.currentShowChapter && a.chapterType == (int)InstanceSelectUI.currentDungeonType);

        using (List <ChapterInfo> .Enumerator enumerator = this.listData.GetEnumerator())
        {
            while (enumerator.MoveNext())
            {
                ChapterInfo current = enumerator.get_Current();
                if (zhuXianZhangJiePeiZhi.id == current.chapterId)
                {
                    using (List <DungeonInfo> .Enumerator enumerator2 = current.dungeons.GetEnumerator())
                    {
                        while (enumerator2.MoveNext())
                        {
                            DungeonInfo current2 = enumerator2.get_Current();
                            if (!current2.clearance)
                            {
                                UIManagerControl.Instance.ShowToastText(GameDataUtils.GetChineseContent(505098, false));
                                bool result = false;
                                return(result);
                            }
                        }
                    }
                    break;
                }
            }
        }
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi2 = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterOrder == InstanceSelectUI.currentShowChapter + 1 && a.chapterType == (int)InstanceSelectUI.currentDungeonType);

        if (zhuXianZhangJiePeiZhi2 != null && EntityWorld.Instance.EntSelf.Lv < zhuXianZhangJiePeiZhi2.chapterLv)
        {
            string text = GameDataUtils.GetChineseContent(505086, false);
            text = text.Replace("{s1}", zhuXianZhangJiePeiZhi2.chapterLv.ToString());
            UIManagerControl.Instance.ShowToastText(text);
            return(false);
        }
        return(true);
    }
Exemplo n.º 9
0
    public static void OpenInstanceSelectUI(int instanceID, bool hideTheVisible = true, UIType type = UIType.FullScreen)
    {
        ZhuXianPeiZhi zhuXianPeiZhi = DataReader <ZhuXianPeiZhi> .Get(instanceID);

        int chapterId = zhuXianPeiZhi.chapterId;
        ZhuXianZhangJiePeiZhi datazj = DataReader <ZhuXianZhangJiePeiZhi> .Get(chapterId);

        ChapterResume      chapterResume      = DungeonManager.Instance.listChapterResume.Find((ChapterResume a) => a.dungeonType == (DungeonType.ENUM)datazj.chapterType);
        List <ChapterInfo> dataByInstanceType = DungeonManager.Instance.GetDataByInstanceType(datazj.chapterType);

        if (dataByInstanceType.get_Count() == 0)
        {
            DungeonManager.Instance.SendGetDungeonDataReq(chapterResume.chapterId, chapterResume.dungeonType, delegate
            {
                InstanceManagerUI.OpenInstanceSelectUI(instanceID, hideTheVisible, type);
            });
            return;
        }
        InstanceManagerUI.LastOpenInstanceID = instanceID;
        InstanceSelectUI instanceSelectUI = UIManagerControl.Instance.OpenUI("InstanceSelectUI", null, true, UIType.FullScreen) as InstanceSelectUI;

        instanceSelectUI.RefreshUIByInstanceID(InstanceManagerUI.LastOpenInstanceID);
    }
Exemplo n.º 10
0
    private void InitChapterDatas()
    {
        for (int i = 0; i < DataReader <ZhuXianZhangJiePeiZhi> .DataList.get_Count(); i++)
        {
            ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .DataList.get_Item(i);

            ChapterInfoCustom chapterInfoCustom = new ChapterInfoCustom();
            chapterInfoCustom.chapter = zhuXianZhangJiePeiZhi.chapterOrder;
            chapterInfoCustom.type    = zhuXianZhangJiePeiZhi.chapterType;
            chapterInfoCustom.needStar.AddRange(zhuXianZhangJiePeiZhi.needStar);
            chapterInfoCustom.chapterID = zhuXianZhangJiePeiZhi.id;
            if (zhuXianZhangJiePeiZhi.chapterType == 101)
            {
                this.dicChaptersNormal.Add(zhuXianZhangJiePeiZhi.chapterOrder, chapterInfoCustom);
                if (zhuXianZhangJiePeiZhi.chapterOrder < this.minChapterNormal)
                {
                    this.minChapterNormal = zhuXianZhangJiePeiZhi.chapterOrder;
                }
                else if (zhuXianZhangJiePeiZhi.chapterOrder > this.maxChapterNormal)
                {
                    this.maxChapterNormal = zhuXianZhangJiePeiZhi.chapterOrder;
                }
            }
            else if (zhuXianZhangJiePeiZhi.chapterType == 102)
            {
                this.dicChaptersElite.Add(zhuXianZhangJiePeiZhi.chapterOrder, chapterInfoCustom);
                if (zhuXianZhangJiePeiZhi.chapterOrder < this.minChapterElite)
                {
                    this.minChapterElite = zhuXianZhangJiePeiZhi.chapterOrder;
                }
                else if (zhuXianZhangJiePeiZhi.chapterOrder > this.maxChapterElite)
                {
                    this.maxChapterElite = zhuXianZhangJiePeiZhi.chapterOrder;
                }
            }
        }
    }
Exemplo n.º 11
0
    private void RefreshInstanceItems(int chapter, DungeonType.ENUM dungeonType)
    {
        this.ResetItems();
        ChapterInfo        chapterInfo = this.listData.get_Item(chapter - 1);
        List <DungeonInfo> list        = new List <DungeonInfo>();

        list.AddRange(chapterInfo.dungeons);
        for (int i = 0; i < list.get_Count(); i++)
        {
            int num = i;
            for (int j = i + 1; j < list.get_Count(); j++)
            {
                DungeonInfo   dungeonInfo   = list.get_Item(num);
                ZhuXianPeiZhi zhuXianPeiZhi = DataReader <ZhuXianPeiZhi> .Get(dungeonInfo.dungeonId);

                if (zhuXianPeiZhi == null)
                {
                    Debug.LogError("GameData.InstanceConfigure no key = " + dungeonInfo.dungeonId);
                }
                else
                {
                    DungeonInfo   dungeonInfo2   = list.get_Item(j);
                    ZhuXianPeiZhi zhuXianPeiZhi2 = DataReader <ZhuXianPeiZhi> .Get(dungeonInfo2.dungeonId);

                    if (zhuXianPeiZhi2 == null)
                    {
                        Debug.LogError("GameData.InstanceConfigure no key = " + dungeonInfo2.dungeonId);
                    }
                    else if (zhuXianPeiZhi.instance > zhuXianPeiZhi2.instance)
                    {
                        num = j;
                    }
                }
            }
            if (num != i)
            {
                XUtility.ListExchange <DungeonInfo>(list, i, num);
            }
        }
        for (int k = 0; k < list.get_Count(); k++)
        {
            DungeonInfo di = list.get_Item(k);
            if (k == 0)
            {
                FuBenJiChuPeiZhi icTmp = DataReader <FuBenJiChuPeiZhi> .Get(di.dungeonId);

                ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterType == icTmp.type && a.chapterOrder == DataReader <ZhuXianZhangJiePeiZhi> .Get(DataReader <ZhuXianPeiZhi> .Get(di.dungeonId).chapterId).chapterOrder);

                string   chineseContent = GameDataUtils.GetChineseContent(zhuXianZhangJiePeiZhi.chapterName, false);
                string[] array          = chineseContent.Split(new char[]
                {
                    ' '
                });
                this.TextChapterTitle.set_text(array[1] + "<size=25>(" + array[0] + ")</size>");
            }
            ZhuXianPeiZhi zhuXianPeiZhi3 = DataReader <ZhuXianPeiZhi> .Get(di.dungeonId);

            InstancesLayoutItem component;
            if (zhuXianPeiZhi3.bossInstanceBoss == 1)
            {
                GameObject boss = this.GetBoss();
                component = boss.GetComponent <InstancesLayoutItem>();
                boss.get_transform().SetParent(this.InstancesLayout);
                boss.GetComponent <RectTransform>().set_localScale(Vector3.get_one());
                boss.set_name(di.dungeonId.ToString());
            }
            else
            {
                GameObject normal = this.GetNormal();
                component = normal.GetComponent <InstancesLayoutItem>();
                normal.get_transform().SetParent(this.InstancesLayout);
                normal.GetComponent <RectTransform>().set_localScale(Vector3.get_one());
                normal.set_name(di.dungeonId.ToString());
            }
            component.GetComponent <ButtonCustom>().onClickCustom = new ButtonCustom.VoidDelegateObj(this.OnClcikInstancesLayoutItem);
            this.listInstanceItem.Add(component);
            bool isLock = (bool)DungeonManager.Instance.CheckLock(di.dungeonId).get_Item("ISLock");
            component.RefreshUI(DataReader <FuBenJiChuPeiZhi> .Get(di.dungeonId), isLock, k, di.star);
        }
    }
Exemplo n.º 12
0
    private void RefreshBoxReward(int chapter, DungeonType.ENUM dungeonType)
    {
        if (dungeonType == DungeonType.ENUM.Normal || dungeonType == DungeonType.ENUM.Elite)
        {
            this.Reward.get_gameObject().SetActive(true);
            ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .DataList.Find((ZhuXianZhangJiePeiZhi a) => a.chapterOrder == chapter && a.chapterType == (int)dungeonType);

            if (zhuXianZhangJiePeiZhi != null)
            {
                for (int i = 0; i < zhuXianZhangJiePeiZhi.needStar.get_Count(); i++)
                {
                    int needstar = zhuXianZhangJiePeiZhi.needStar.get_Item(i);
                    int key      = BoxRewardManager.Instance.MakeBoxRewardID(zhuXianZhangJiePeiZhi.id, (int)dungeonType, needstar);
                    if (BoxRewardManager.Instance.m_mapChapterAwards.ContainsKey(key))
                    {
                        ChapterAwardInfo chapterAwardInfo = BoxRewardManager.Instance.m_mapChapterAwards[key];
                        if (chapterAwardInfo.canReceive && !chapterAwardInfo.isReceived)
                        {
                            this.currentChapterAwardInfo = chapterAwardInfo;
                            break;
                        }
                        if (!chapterAwardInfo.canReceive)
                        {
                            this.currentChapterAwardInfo = chapterAwardInfo;
                            break;
                        }
                    }
                    else
                    {
                        Debug.LogError("cai == null");
                    }
                }
                ChapterInfoCustom chapterInfoCustom = null;
                if (dungeonType == DungeonType.ENUM.Normal)
                {
                    chapterInfoCustom = this.dicChaptersNormal.get_Item(chapter);
                }
                else if (dungeonType == DungeonType.ENUM.Elite)
                {
                    chapterInfoCustom = this.dicChaptersElite.get_Item(chapter);
                }
                ChapterInfo chapterInfo = this.listData.get_Item(chapter - 1);
                if (chapterInfoCustom.canGetReward)
                {
                    this.BtnBoxReward.get_transform().FindChild("Image1").get_gameObject().SetActive(true);
                    this.BtnBoxReward.get_transform().FindChild("Image2").get_gameObject().SetActive(false);
                    if (this.fxBoxReward != 0)
                    {
                        FXSpineManager.Instance.DeleteSpine(this.fxBoxReward, true);
                    }
                    this.fxBoxReward = FXSpineManager.Instance.PlaySpine(1601, this.BtnBoxReward.get_transform().FindChild("FX"), "InstanceSelectUI", 2001, null, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None);
                }
                else if (!chapterInfoCustom.canGetReward && chapterInfo.totalStar == chapterInfoCustom.needStar.get_Item(chapterInfoCustom.needStar.get_Count() - 1))
                {
                    this.BtnBoxReward.get_transform().FindChild("Image1").get_gameObject().SetActive(false);
                    this.BtnBoxReward.get_transform().FindChild("Image2").get_gameObject().SetActive(true);
                    if (this.fxBoxReward != 0)
                    {
                        FXSpineManager.Instance.DeleteSpine(this.fxBoxReward, true);
                    }
                }
                else
                {
                    this.BtnBoxReward.get_transform().FindChild("Image1").get_gameObject().SetActive(true);
                    this.BtnBoxReward.get_transform().FindChild("Image2").get_gameObject().SetActive(false);
                    if (this.fxBoxReward != 0)
                    {
                        FXSpineManager.Instance.DeleteSpine(this.fxBoxReward, true);
                    }
                }
                this.currentRewardNeedStar = chapterInfoCustom.starCondition;
                this.TextRewardNow.set_text(string.Concat(new object[]
                {
                    string.Empty,
                    chapterInfo.totalStar,
                    "/",
                    chapterInfoCustom.starCondition
                }));
            }
        }
        else
        {
            this.Reward.get_gameObject().SetActive(false);
        }
    }
Exemplo n.º 13
0
    private void OnClickBtnBoxReward(GameObject sender)
    {
        if (this.lockBtnBoxReward)
        {
            return;
        }
        if (BackpackManager.Instance.ShowBackpackFull())
        {
            return;
        }
        bool flag = true;
        ChapterInfoCustom chapterInfoCustom = null;

        if (InstanceSelectUI.currentDungeonType == DungeonType.ENUM.Normal)
        {
            chapterInfoCustom = this.dicChaptersNormal.get_Item(InstanceSelectUI.currentShowChapter);
        }
        else if (InstanceSelectUI.currentDungeonType == DungeonType.ENUM.Elite)
        {
            chapterInfoCustom = this.dicChaptersElite.get_Item(InstanceSelectUI.currentShowChapter);
        }
        ChapterInfo chapterInfo = this.listData.get_Item(InstanceSelectUI.currentShowChapter - 1);

        if (!chapterInfoCustom.canGetReward && chapterInfo.totalStar == chapterInfoCustom.needStar.get_Item(chapterInfoCustom.needStar.get_Count() - 1))
        {
            UIManagerControl.Instance.ShowToastText(GameDataUtils.GetChineseContent(505077, false));
            return;
        }
        if (!this.currentChapterAwardInfo.canReceive)
        {
            flag = false;
        }
        XDict <string, int>   xDict = BoxRewardManager.Instance.ParseAwardId(this.currentChapterAwardInfo.chapterAwardId);
        ZhuXianZhangJiePeiZhi zhuXianZhangJiePeiZhi = DataReader <ZhuXianZhangJiePeiZhi> .Get(xDict["chapter"]);

        List <int>  itemIDList    = new List <int>();
        List <long> itemCountList = new List <long>();

        if (zhuXianZhangJiePeiZhi != null)
        {
            string text  = string.Empty;
            string text2 = string.Empty;
            for (int i = 0; i < zhuXianZhangJiePeiZhi.needStar.get_Count(); i++)
            {
                if (zhuXianZhangJiePeiZhi.needStar.get_Item(i) == xDict["needstar"])
                {
                    text  = zhuXianZhangJiePeiZhi.rewardItem.get_Item(i).value;
                    text2 = zhuXianZhangJiePeiZhi.rewardNum.get_Item(i).value;
                    break;
                }
            }
            string[] array = text.Split(new char[]
            {
                ','
            });
            string[] array2 = text2.Split(new char[]
            {
                ','
            });
            for (int j = 0; j < array.Length; j++)
            {
                itemIDList.Add(int.Parse(array[j]));
                itemCountList.Add((long)int.Parse(array2[j]));
            }
        }
        if (flag)
        {
            this.lockBtnBoxReward = true;
            if (this.FxMaskTrans == null)
            {
                this.FxMaskTrans = UINodesManager.MiddleUIRoot;
            }
            else
            {
                this.FxMaskTrans.get_gameObject().SetActive(true);
            }
            RewardUI rewardui;
            this.FxID = FXSpineManager.Instance.ReplaySpine(this.FxID, 801, this.FxMaskTrans, string.Empty, 14000, delegate
            {
                FXSpineManager.Instance.PlaySpine(802, this.FxMaskTrans, string.Empty, 14000, null, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None);
                rewardui = LinkNavigationManager.OpenRewardUI(UINodesManager.MiddleUIRoot);
                rewardui.SetRewardItem("获得奖励", itemIDList, itemCountList, true, true, delegate
                {
                    BoxRewardManager.Instance.SendReceiveAwardReq(this.currentChapterAwardInfo.chapterAwardId);
                    FXSpineManager.Instance.DeleteSpine(this.FxID, true);
                    if (this.FxMaskTrans != UINodesManager.MiddleUIRoot)
                    {
                        this.FxMaskTrans.get_gameObject().SetActive(false);
                        for (int k = 0; k < this.FxMaskTrans.get_childCount(); k++)
                        {
                            Transform child = this.FxMaskTrans.GetChild(k);
                            Object.Destroy(child.get_gameObject());
                        }
                    }
                }, null);
                this.lockBtnBoxReward = false;
            }, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None);
            FXSpineManager.Instance.PlaySpine(803, this.FxMaskTrans, string.Empty, 14000, null, "UI", 0f, 0f, 1f, 1f, false, FXMaskLayer.MaskState.None);
        }
        else
        {
            RewardUI rewardui = LinkNavigationManager.OpenRewardUI(UINodesManager.TopUIRoot);
            rewardui.SetRewardItem("奖励预览", itemIDList, itemCountList, false, false, delegate
            {
                string text3 = GameDataUtils.GetChineseContent(510111, false);
                text3        = text3.Replace("{s1}", this.currentRewardNeedStar.ToString());
                UIManagerControl.Instance.ShowToastText(text3);
            }, null);
        }
    }