protected override void UpdateUIJumpButton(JumpButtonType type)
 {
     if (base.isComplete)
     {
         SetActive(baseRoot, UI.BTN_COMPLETE, true);
         SetActive(baseRoot, UI.BTN_JUMP_QUEST, false);
     }
     else
     {
         bool is_visible = MonoBehaviourSingleton <FieldManager> .I.currentMapID != mapData.mapId;
         SetActive(baseRoot, UI.BTN_JUMP_QUEST, is_visible);
     }
 }
    protected virtual void UpdateUIJumpButton(JumpButtonType type)
    {
        SetActive(baseRoot, UI.BTN_JUMP_QUEST, false);
        SetActive(baseRoot, UI.BTN_JUMP_MAP, false);
        SetActive(baseRoot, UI.BTN_JUMP_GACHATOP, false);
        SetActive(baseRoot, UI.BTN_JUMP_INVALID, false);
        SetActive(baseRoot, UI.BTN_COMPLETE, false);
        SetActive(baseRoot, UI.BTN_JUMP_POINT_SHOP, false);
        SetActive(baseRoot, UI.BTN_JUMP_WORLDMAP, false);
        SetActive(baseRoot, UI.BTN_JUMP_SMITH, false);
        SetActive(baseRoot, UI.BTN_JUMP_STATUS, false);
        SetActive(baseRoot, UI.BTN_JUMP_STORAGE, false);
        SetActive(baseRoot, UI.BTN_WAVEMATCH_NEW, false);
        SetActive(baseRoot, UI.BTN_WAVEMATCH_PASS, false);
        SetActive(baseRoot, UI.BTN_WAVEMATCH_AUTO, false);
        switch (type)
        {
        default:
            SetActive(baseRoot, UI.BTN_JUMP_INVALID, true);
            break;

        case JumpButtonType.Complete:
            SetActive(baseRoot, UI.BTN_COMPLETE, true);
            break;

        case JumpButtonType.Map:
            SetActive(baseRoot, UI.BTN_JUMP_MAP, true);
            break;

        case JumpButtonType.Quest:
            SetActive(baseRoot, UI.BTN_JUMP_QUEST, true);
            break;

        case JumpButtonType.Gacha:
            SetActive(baseRoot, UI.BTN_JUMP_GACHATOP, true);
            break;

        case JumpButtonType.Smith:
            SetActive(baseRoot, UI.BTN_JUMP_SMITH, true);
            break;

        case JumpButtonType.Status:
            SetActive(baseRoot, UI.BTN_JUMP_STATUS, true);
            break;

        case JumpButtonType.Storage:
            SetActive(baseRoot, UI.BTN_JUMP_STORAGE, true);
            break;

        case JumpButtonType.PointShop:
            SetActive(baseRoot, UI.BTN_JUMP_POINT_SHOP, true);
            break;

        case JumpButtonType.WorldMap:
            SetActive(baseRoot, UI.BTN_JUMP_WORLDMAP, true);
            break;

        case JumpButtonType.WaveRoom:
            if (!isInGameScene)
            {
                SetActive(baseRoot, UI.BTN_WAVEMATCH_NEW, true);
                SetActive(baseRoot, UI.BTN_WAVEMATCH_PASS, true);
                SetActive(baseRoot, UI.BTN_WAVEMATCH_AUTO, true);
            }
            break;
        }
    }
    public override void UpdateUI()
    {
        //IL_0089: Unknown result type (might be due to invalid IL or missing references)
        //IL_0145: Unknown result type (might be due to invalid IL or missing references)
        //IL_014f: Unknown result type (might be due to invalid IL or missing references)
        //IL_01df: Unknown result type (might be due to invalid IL or missing references)
        //IL_01e4: Expected O, but got Unknown
        //IL_05e2: Unknown result type (might be due to invalid IL or missing references)
        //IL_05ff: Unknown result type (might be due to invalid IL or missing references)
        //IL_07e0: Unknown result type (might be due to invalid IL or missing references)
        //IL_07ed: Unknown result type (might be due to invalid IL or missing references)
        OpenTutorial();
        UpdateTitle();
        SetSprite(baseRoot, UI.SPR_WINDOW, SPR_WINDOW_TYPE[info.DeliveryTypeIndex()]);
        SetSprite(baseRoot, UI.SPR_MESSAGE_BG, SPR_MESSAGE_BG_TYPE[info.DeliveryTypeIndex()]);
        bool flag = false;

        if (Object.op_Implicit(submissionFrame))
        {
            UpdateSubMissionButton();
            UpdateSubMission();
            flag = submissionFrame.get_gameObject().get_activeSelf();
            SetActive((Enum)UI.STR_BTN_SUBMISSION, !flag);
            SetActive((Enum)UI.STR_BTN_SUBMISSION_BACK, flag);
        }
        Transform root = targetFrame;

        MonoBehaviourSingleton <DeliveryManager> .I.GetTargetEnemyData(deliveryID, out targetQuestID, out targetMapID, out string map_name, out string enemy_name, out DIFFICULTY_TYPE?difficulty, out targetPortalID);

        SetLabelText(root, UI.LBL_PLACE_NAME, map_name);
        MonoBehaviourSingleton <DeliveryManager> .I.GetAllProgressDelivery(deliveryID, out int have, out int need);

        SetLabelText(root, UI.LBL_HAVE, (!isComplete) ? have.ToString() : need.ToString());
        SetColor(root, UI.LBL_HAVE, (!isComplete) ? Color.get_red() : Color.get_white());
        SetLabelText(root, UI.LBL_NEED, need.ToString());
        SetLabelText(root, UI.LBL_NEED_ITEM_NAME, MonoBehaviourSingleton <DeliveryManager> .I.GetTargetItemName(deliveryID, 0u));
        if (info.IsDefeatCondition(0u))
        {
            if (targetQuestID != 0)
            {
                isQuestEnemy = true;
                Transform val   = FindCtrl(root, UI.OBJ_DIFFICULTY_ROOT);
                int       value = (int)difficulty.Value;
                int       j     = 0;
                for (int childCount = val.get_childCount(); j < childCount; j++)
                {
                    Transform t2 = val.GetChild(j);
                    SetActive(t2, j <= value);
                }
                SetLabelText(root, UI.LBL_GET_PLACE, base.sectionData.GetText("GET_QUEST"));
            }
            else
            {
                isQuestEnemy = false;
                SetLabelText(root, UI.LBL_GET_PLACE, base.sectionData.GetText("GET_AREA"));
            }
            SetLabelText(root, UI.LBL_ENEMY_NAME, string.Format(StringTable.Get(STRING_CATEGORY.TEXT_SCRIPT, 3u), enemy_name));
        }
        else
        {
            isQuestEnemy = false;
            SetLabelText(root, UI.LBL_GET_PLACE, StringTable.Get(STRING_CATEGORY.DELIVERY_CONDITION_PLACE, (uint)info.GetConditionType(0u)));
            SetLabelText(root, UI.LBL_ENEMY_NAME, enemy_name);
        }
        SetActive(root, UI.OBJ_DIFFICULTY_ROOT, isQuestEnemy);
        SetActive(root, UI.OBJ_ENEMY_NAME_ROOT, !isQuestEnemy);
        UpdateNPC(map_name, enemy_name);
        if ((isComplete || isNotice) && !isCompletedEventDelivery)
        {
            SetActive((Enum)UI.OBJ_BACK, false);
            SetActive((Enum)UI.BTN_CREATE, false);
            SetActive((Enum)UI.BTN_JOIN, false);
            SetActive((Enum)UI.BTN_MATCHING, false);
            UpdateUIJumpButton(JumpButtonType.Complete);
        }
        else
        {
            SetActive((Enum)UI.OBJ_BACK, true);
            bool flag2 = true;
            bool flag3 = false;
            if (info == null || info.IsDefeatCondition(0u) || targetMapID != 0)
            {
                if (isQuestEnemy)
                {
                    if (isInGameScene)
                    {
                        flag2 = false;
                    }
                }
                else
                {
                    bool flag4 = FieldManager.HasWorldMap(targetMapID);
                    if (isInGameScene)
                    {
                        if (MonoBehaviourSingleton <FieldManager> .I.currentMapID == targetMapID)
                        {
                            if (flag4)
                            {
                                flag3 = true;
                            }
                            else
                            {
                                flag2 = false;
                            }
                        }
                        else if (flag4)
                        {
                            if (!MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(targetMapID) || WorldMapManager.IsValidPortalIDs(targetPortalID))
                            {
                                flag3 = true;
                            }
                        }
                        else if (!MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(targetMapID))
                        {
                            flag2 = false;
                        }
                    }
                    else if (flag4)
                    {
                        if (!MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(targetMapID) || WorldMapManager.IsValidPortalIDs(targetPortalID))
                        {
                            flag3 = true;
                        }
                    }
                    else if (!MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(targetMapID))
                    {
                        flag2 = false;
                    }
                }
            }
            else
            {
                flag2 = (info.GetDeliveryJumpType() != DeliveryTable.DELIVERY_JUMPTYPE.UNDEFINED);
            }
            JumpButtonType jumpButtonType = JumpButtonType.Invalid;
            if (flag2)
            {
                if (info != null && info.GetDeliveryJumpType() != 0)
                {
                    jumpButtonType = ConvertDeliveryJumpType();
                }
                else
                {
                    if (info != null)
                    {
                        QuestTable.QuestTableData questData = info.GetQuestData();
                        if (questData != null && questData.questType == QUEST_TYPE.WAVE)
                        {
                            jumpButtonType = JumpButtonType.WaveRoom;
                        }
                    }
                    if (jumpButtonType != JumpButtonType.WaveRoom)
                    {
                        jumpButtonType = ((!flag3) ? JumpButtonType.Quest : JumpButtonType.Map);
                    }
                }
                UpdateUIJumpButton(jumpButtonType);
            }
            else
            {
                SetActive(baseRoot, UI.BTN_JUMP_QUEST, false);
                SetActive(baseRoot, UI.BTN_JUMP_MAP, false);
                SetActive(baseRoot, UI.BTN_JUMP_GACHATOP, false);
                SetActive(baseRoot, UI.BTN_JUMP_INVALID, false);
                SetActive(baseRoot, UI.BTN_WAVEMATCH_NEW, false);
                SetActive(baseRoot, UI.BTN_WAVEMATCH_PASS, false);
                SetActive(baseRoot, UI.BTN_WAVEMATCH_AUTO, false);
                SetActive(baseRoot, UI.BTN_COMPLETE, false);
            }
            if (flag3 && MonoBehaviourSingleton <FieldManager> .I.currentMapID != targetMapID)
            {
                SetColor(baseRoot, UI.LBL_PLACE_NAME, Color.get_red());
            }
            else
            {
                SetColor(baseRoot, UI.LBL_PLACE_NAME, Color.get_white());
            }
        }
        int money = 0;
        int exp   = 0;

        if (rewardData != null)
        {
            SetGrid(baseRoot, UI.GRD_REWARD, string.Empty, rewardData.Length, false, delegate(int i, Transform t, bool is_recycle)
            {
                DeliveryRewardTable.DeliveryRewardData.Reward reward = rewardData[i].reward;
                bool is_visible = false;
                if (reward.type == REWARD_TYPE.MONEY)
                {
                    money += reward.num;
                }
                else if (reward.type == REWARD_TYPE.EXP)
                {
                    exp += reward.num;
                }
                else
                {
                    is_visible        = true;
                    ItemIcon itemIcon = ItemIcon.CreateRewardItemIcon(reward.type, reward.item_id, t, reward.num, string.Empty, 0, false, -1, false, null, false, false, ItemIcon.QUEST_ICON_SIZE_TYPE.REWARD_DELIVERY_DETAIL);
                    SetMaterialInfo(itemIcon.transform, reward.type, reward.item_id, null);
                    itemIcon.SetRewardBG(true);
                }
                SetActive(t, is_visible);
            });
        }
        SetLabelText(baseRoot, UI.LBL_MONEY, money.ToString());
        SetLabelText(baseRoot, UI.LBL_EXP, exp.ToString());
        SetActive(baseRoot, UI.OBJ_COMPLETE_ROOT, isComplete && !flag);
        SetActive(baseRoot, UI.OBJ_UNLOCK_PORTAL_ROOT, isComplete);
        if (isComplete)
        {
            string text = string.Empty;
            List <FieldMapTable.PortalTableData> deliveryRelationPortalData = Singleton <FieldMapTable> .I.GetDeliveryRelationPortalData(info.id);

            switch (deliveryRelationPortalData.Count)
            {
            case 1:
            {
                FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData(deliveryRelationPortalData[0].srcMapID);

                if (fieldMapData != null)
                {
                    text = fieldMapData.mapName;
                }
                break;
            }

            default:
                text = base.sectionData.GetText("MULTI_UNLOCK");
                break;

            case 0:
                break;
            }
            bool flag5 = !string.IsNullOrEmpty(text);
            if (!TutorialStep.HasFirstDeliveryCompleted())
            {
                flag5 = false;
            }
            SetActive(baseRoot, UI.OBJ_UNLOCK_PORTAL_ROOT, flag5 && !isCompletedEventDelivery);
            SetLabelText(baseRoot, UI.LBL_UNLOCK_PORTAL, text);
            if (isCompletedEventDelivery)
            {
                SkipTween(baseRoot, UI.OBJ_COMPLETE_ROOT, true, 0);
            }
            else
            {
                this.StartCoroutine(StartTweenCoroutine(flag5));
            }
        }
        this.StartCoroutine(SetPointShopGetPointUI());
    }