private bool IsNewItemQuestEnemySpecies(QuestItemInfo questItem)
    {
        bool result = true;

        if (questItem == null)
        {
            return(result);
        }
        QuestInfoData infoData = questItem.infoData;

        if (infoData == null)
        {
            return(result);
        }
        QuestInfoData.Quest questData = infoData.questData;
        if (questData == null)
        {
            return(result);
        }
        QuestTable.QuestTableData tableData = questData.tableData;
        if (tableData == null)
        {
            return(result);
        }
        ClearStatusQuestEnemySpecies clearStatusQuestEnemySpecies = MonoBehaviourSingleton <QuestManager> .I.GetClearStatusQuestEnemySpecies(tableData.questID);

        if (clearStatusQuestEnemySpecies == null)
        {
            return(result);
        }
        if (clearStatusQuestEnemySpecies.questStatus != 1)
        {
            result = false;
        }
        return(result);
    }
    private void UpdateGirdListItemQuest(int i, Transform t, bool is_recycle)
    {
        //IL_0427: Unknown result type (might be due to invalid IL or missing references)
        //IL_044c: Unknown result type (might be due to invalid IL or missing references)
        List <GameSectionHistory.HistoryData> historyList = MonoBehaviourSingleton <GameSceneManager> .I.GetHistoryList();

        bool flag = historyList.Any((GameSectionHistory.HistoryData h) => h.sectionName.StartsWith("GuildRequest"));

        SetActive(t, true);
        SetEvent(t, "SELECT_ORDER", i);
        QuestSortData questSortData = questGridDatas[i].questSortData;
        UIScrollView  component     = GetCtrl(UI.SCR_ORDER_QUEST).GetComponent <UIScrollView>();
        QuestInfoData info          = questSortData.itemData.infoData;

        if (flag)
        {
            SetActive(t, UI.TWN_DIFFICULT_STAR, false);
            SetActive(t, UI.TXT_NEED_POINT, true);
            string text = string.Format(StringTable.Get(STRING_CATEGORY.GUILD_REQUEST, 6u), MonoBehaviourSingleton <GuildRequestManager> .I.GetNeedPoint(info.questData.tableData.rarity), MonoBehaviourSingleton <GuildRequestManager> .I.GetNeedTimeWithFormat(info.questData.tableData.rarity));
            SetLabelText(t, UI.TXT_NEED_POINT, text);
        }
        else
        {
            SetActive(t, UI.TWN_DIFFICULT_STAR, false);
            SetActive(t, UI.TXT_NEED_POINT, false);
        }
        EnemyTable.EnemyData enemyData = Singleton <EnemyTable> .I.GetEnemyData((uint)info.questData.tableData.GetMainEnemyID());

        QuestSortData questSortData2 = questSortData;
        ItemIcon      icon           = ItemIcon.Create(questSortData2.GetIconType(), questSortData2.GetIconID(), questSortData2.GetRarity(), FindCtrl(t, UI.OBJ_ENEMY), questSortData2.GetIconElement(), null, -1, null, 0, false, -1, false, null, false, 0, 0, false, GET_TYPE.PAY);

        icon.SetEnableCollider(false);
        SetActive(t, UI.SPR_ELEMENT_ROOT, enemyData.element != ELEMENT_TYPE.MAX);
        SetElementSprite(t, UI.SPR_ELEMENT, (int)enemyData.element);
        SetElementSprite(t, UI.SPR_WEAK_ELEMENT, (int)enemyData.weakElement);
        SetActive(t, UI.STR_NON_WEAK_ELEMENT, enemyData.weakElement == ELEMENT_TYPE.MAX);
        SetLabelText(t, UI.LBL_QUEST_NAME, info.questData.tableData.questText);
        int num = 1;
        ClearStatusQuestEnemySpecies clearStatusQuestEnemySpecies = MonoBehaviourSingleton <QuestManager> .I.GetClearStatusQuestEnemySpecies(info.questData.tableData.questID);

        if (clearStatusQuestEnemySpecies != null)
        {
            num = clearStatusQuestEnemySpecies.questStatus;
        }
        int value = i + 100;

        SetToggleGroup(t, UI.OBJ_ICON_NEW, value);
        SetToggleGroup(t, UI.OBJ_ICON_CLEARED, value);
        SetToggleGroup(t, UI.OBJ_ICON_COMPLETE, value);
        CLEAR_STATUS cLEAR_STATUS = (CLEAR_STATUS)num;

        if (cLEAR_STATUS != CLEAR_STATUS.NEW)
        {
            SetToggle(t, UI.OBJ_ICON_NEW, false);
            SetToggle(t, UI.OBJ_ICON_CLEARED, false);
            SetToggle(t, UI.OBJ_ICON_COMPLETE, false);
            SetActive(t, UI.OBJ_ICON_ROOT, false);
            SetVisibleWidgetEffect(UI.SCR_ORDER_QUEST, t, UI.SPR_ICON_NEW, null);
            SetVisibleWidgetEffect(UI.SCR_ORDER_QUEST, t, UI.SPR_ICON_COMPLETE, null);
        }
        else
        {
            SetActive(t, UI.OBJ_ICON_ROOT, true);
            SetToggle(t, UI.OBJ_ICON_NEW, true);
            SetVisibleWidgetEffect(UI.SCR_ORDER_QUEST, t, UI.SPR_ICON_COMPLETE, null);
            SetVisibleWidgetEffect(UI.SCR_ORDER_QUEST, t, UI.SPR_ICON_NEW, "ef_ui_questselect_new");
        }
        int num2 = info.questData.num;
        int num3 = 0;

        if (MonoBehaviourSingleton <UserInfoManager> .I.isGuildRequestOpen)
        {
            num3 = (from g in MonoBehaviourSingleton <GuildRequestManager> .I.guildRequestData.guildRequestItemList
                    where g.questId == (int)info.questData.tableData.questID
                    select g).Count();
        }
        int num4 = num2 - num3;

        SetLabelText(t, UI.LBL_ORDER_NUM, num4.ToString());
        if (num4 <= 0)
        {
            t.GetComponent <UIButton>().isEnabled = false;
        }
        Transform val = FindCtrl(t, UI.OBJ_FRAME);

        if (val != null)
        {
            UIPanel uiPanel = val.get_gameObject().GetComponent <UIPanel>();
            if (uiPanel == null)
            {
                uiPanel       = val.get_gameObject().AddComponent <UIPanel>();
                uiPanel.depth = component.panel.depth + 1;
            }
            uiPanel.widgetsAreStatic = false;
            if (isScrollViewReady)
            {
                PanelToStatic(icon, uiPanel);
            }
            else
            {
                onScrollViewReady = (Action)Delegate.Combine(onScrollViewReady, (Action) delegate
                {
                    PanelToStatic(icon, uiPanel);
                });
            }
        }
        QuestItemInfo itemData   = questSortData.itemData;
        bool          is_visible = false;

        foreach (float remainTime in itemData.remainTimes)
        {
            float num5 = remainTime;
            if (num5 < SHOW_QUEST_REMAIN_LIMIT_SECOND)
            {
                is_visible = true;
                break;
            }
        }
        SetLabelText(t, UI.LBL_REMAIN, StringTable.Get(STRING_CATEGORY.GATE_QUEST_NAME, 1u));
        SetActive(t, UI.LBL_REMAIN, is_visible);
    }
    protected void ShowChallenge()
    {
        //IL_0071: Unknown result type (might be due to invalid IL or missing references)
        List <QuestData> challengeList = MonoBehaviourSingleton <QuestManager> .I.challengeList;

        if (MonoBehaviourSingleton <PartyManager> .I.challengeInfo.oldShadowCount != null)
        {
            SetActive((Enum)UI.STR_CHALLENGE_BONUS_MESSAGE, true);
            SetActive((Enum)UI.BTN_DETAIL, true);
            UIPanel component = GetCtrl(UI.SCR_ORDER_QUEST).GetComponent <UIPanel>();
            component.baseClipRegion = new Vector4(0f, -110f, 440f, 549f);
            SetLabelText((Enum)UI.STR_CHALLENGE_BONUS_MESSAGE, StringTable.Format(STRING_CATEGORY.SHADOW_COUNT, 3u, MonoBehaviourSingleton <PartyManager> .I.challengeInfo.oldShadowCount.num));
            base.GetComponent <UILabel>((Enum)UI.STR_CHALLENGE_BONUS_MESSAGE).supportEncoding = true;
        }
        else
        {
            SetActive((Enum)UI.STR_CHALLENGE_BONUS_MESSAGE, false);
            SetActive((Enum)UI.BTN_DETAIL, false);
        }
        SetLabelText((Enum)UI.STR_CHALLENGE_MESSAGE, MonoBehaviourSingleton <PartyManager> .I.challengeInfo.message);
        SetSupportEncoding(UI.STR_CHALLENGE_MESSAGE, true);
        if (challengeList == null || challengeList.Count == 0)
        {
            SetActive((Enum)UI.GRD_ORDER_QUEST, false);
            SetActive((Enum)UI.STR_ORDER_NON_LIST, true);
            SetActive((Enum)UI.OBJ_ACTIVE_ROOT, false);
            SetActive((Enum)UI.OBJ_INACTIVE_ROOT, true);
            SetLabelText((Enum)UI.LBL_MAX, "0");
            SetLabelText((Enum)UI.LBL_NOW, "0");
            UIScrollView component2 = GetCtrl(UI.SCR_ORDER_QUEST).GetComponent <UIScrollView>();
            if (component2 != null)
            {
                component2.set_enabled(false);
                component2.verticalScrollBar.alpha = 0f;
            }
        }
        else
        {
            SetActive((Enum)UI.GRD_ORDER_QUEST, true);
            SetActive((Enum)UI.STR_ORDER_NON_LIST, false);
            pageMax = 1 + (challengeList.Count - 1) / 10;
            bool flag = pageMax > 1;
            SetActive((Enum)UI.OBJ_ACTIVE_ROOT, flag);
            SetActive((Enum)UI.OBJ_INACTIVE_ROOT, !flag);
            SetLabelText((Enum)UI.LBL_MAX, pageMax.ToString());
            SetLabelText((Enum)UI.LBL_NOW, nowPage.ToString());
            UITweener[] transitions = GetCtrl(UI.OBJ_FRAME).GetComponents <UITweener>();
            int         finishCount = 0;
            UITweener[] array       = transitions;
            foreach (UITweener uITweener in array)
            {
                uITweener.AddOnFinished(delegate
                {
                    finishCount++;
                    if (finishCount >= transitions.Length)
                    {
                        isTransitionFinished = true;
                    }
                });
            }
            int num  = 10 * (nowPage - 1);
            int num2 = (nowPage != pageMax) ? 10 : (challengeList.Count - num);
            challengeData = new QuestData[num2];
            Array.Copy(challengeList.ToArray(), num, challengeData, 0, num2);
            bool isGuildRequest = MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSectionName() == "GuildRequestChallengeCounter";

            UIScrollView scrollView = GetCtrl(UI.SCR_ORDER_QUEST).GetComponent <UIScrollView>();
            SetGrid(UI.GRD_ORDER_QUEST, "QuestListChallengeItem", challengeData.Length, isResetUI, (int i, Transform t) => Realizes("QuestListChallengeItem", t, true), delegate(int i, Transform t, bool is_recycle)
            {
                //IL_02f4: Unknown result type (might be due to invalid IL or missing references)
                //IL_0319: Unknown result type (might be due to invalid IL or missing references)
                SetActive(t, true);
                SetEvent(t, "SELECT_ORDER", i);
                QuestTable.QuestTableData questData = Singleton <QuestTable> .I.GetQuestData((uint)challengeData[i].questId);
                if (isGuildRequest)
                {
                    SetActive(t, UI.TWN_DIFFICULT_STAR, false);
                    SetActive(t, UI.TXT_NEED_POINT, true);
                    string text = string.Format(StringTable.Get(STRING_CATEGORY.GUILD_REQUEST, 6u), MonoBehaviourSingleton <GuildRequestManager> .I.GetNeedPoint(questData.rarity), MonoBehaviourSingleton <GuildRequestManager> .I.GetNeedTimeWithFormat(questData.rarity));
                    SetLabelText(t, UI.TXT_NEED_POINT, text);
                }
                else
                {
                    SetActive(t, UI.TWN_DIFFICULT_STAR, false);
                    SetActive(t, UI.TXT_NEED_POINT, false);
                }
                EnemyTable.EnemyData enemyData = Singleton <EnemyTable> .I.GetEnemyData((uint)questData.GetMainEnemyID());
                ITEM_ICON_TYPE itemIconType    = ItemIcon.GetItemIconType(questData.questType);
                ItemIcon icon = ItemIcon.Create(itemIconType, enemyData.iconId, questData.rarity, FindCtrl(t, UI.OBJ_ENEMY), enemyData.element, null, -1, null, 0, false, -1, false, null, false, 0, 0, false, GET_TYPE.PAY);
                icon.SetEnableCollider(false);
                SetActive(t, UI.SPR_ELEMENT_ROOT, enemyData.element != ELEMENT_TYPE.MAX);
                SetElementSprite(t, UI.SPR_ELEMENT, (int)enemyData.element);
                SetElementSprite(t, UI.SPR_WEAK_ELEMENT, (int)enemyData.weakElement);
                SetActive(t, UI.STR_NON_WEAK_ELEMENT, enemyData.weakElement == ELEMENT_TYPE.MAX);
                SetLabelText(t, UI.LBL_QUEST_NAME, questData.questText);
                int num3 = 1;
                ClearStatusQuestEnemySpecies clearStatusQuestEnemySpecies = MonoBehaviourSingleton <QuestManager> .I.GetClearStatusQuestEnemySpecies(questData.questID);
                if (clearStatusQuestEnemySpecies != null)
                {
                    num3 = clearStatusQuestEnemySpecies.questStatus;
                }
                int value = i + 100;
                SetToggleGroup(t, UI.OBJ_ICON_NEW, value);
                CLEAR_STATUS cLEAR_STATUS = (CLEAR_STATUS)num3;
                if (cLEAR_STATUS != CLEAR_STATUS.NEW)
                {
                    SetToggle(t, UI.OBJ_ICON_NEW, false);
                    SetActive(t, UI.OBJ_ICON_ROOT, false);
                }
                else
                {
                    SetActive(t, UI.OBJ_ICON_ROOT, true);
                    SetToggle(t, UI.OBJ_ICON_NEW, true);
                    SetVisibleWidgetEffect(UI.SCR_ORDER_QUEST, t, UI.SPR_ICON_NEW, "ef_ui_questselect_new");
                }
                Transform val = FindCtrl(t, UI.OBJ_FRAME);
                if (val != null)
                {
                    UIPanel uiPanel = val.get_gameObject().GetComponent <UIPanel>();
                    if (uiPanel == null)
                    {
                        uiPanel       = val.get_gameObject().AddComponent <UIPanel>();
                        uiPanel.depth = scrollView.panel.depth + 1;
                    }
                    uiPanel.widgetsAreStatic = false;
                    if (isScrollViewReady)
                    {
                        PanelToStatic(icon, uiPanel);
                    }
                    else
                    {
                        QuestChallengeSelect questChallengeSelect = this;
                        questChallengeSelect.onScrollViewReady    = (Action)Delegate.Combine(questChallengeSelect.onScrollViewReady, (Action) delegate
                        {
                            PanelToStatic(icon, uiPanel);
                        });
                    }
                }
            });
        }
    }