Пример #1
0
    public bool IsShowedOpenRegion(int regionId)
    {
        RegionTable.Data data = Singleton <RegionTable> .I.GetData((uint)regionId);

        if (data.difficulty != 0)
        {
            return(true);
        }
        if (data.regionId == 0)
        {
            return(true);
        }
        List <int> showedOpenRegionIds = GameSaveData.instance.showedOpenRegionIds;

        if (showedOpenRegionIds.Contains(regionId))
        {
            return(true);
        }
        FieldMapTable.FieldMapTableData[] fieldMapDataInRegion = Singleton <FieldMapTable> .I.GetFieldMapDataInRegion((uint)regionId);

        foreach (FieldMapTable.FieldMapTableData fieldMapTableData in fieldMapDataInRegion)
        {
            if (traveledMapList.Contains((int)fieldMapTableData.mapID))
            {
                GameSaveData.instance.AddShowedOpenRegionId((int)fieldMapTableData.regionId);
                if (fieldMapTableData.mapID != (uint)openNewFieldId)
                {
                    return(true);
                }
            }
        }
        return(false);
    }
    private void SetPlayingStatus(Transform root, int userId)
    {
        SetActive(root, UI.OBJ_LOUNGE, false);
        SetActive(root, UI.OBJ_FIELD, false);
        SetActive(root, UI.OBJ_QUEST, false);
        if (MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus != null)
        {
            LoungeMemberStatus loungeMemberStatus = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus[userId];
            if (loungeMemberStatus != null)
            {
                switch (loungeMemberStatus.GetStatus())
                {
                case LoungeMemberStatus.MEMBER_STATUS.LOUNGE:
                    SetActive(root, UI.OBJ_LOUNGE, true);
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.QUEST:
                    SetQuestInfo(root, loungeMemberStatus.questId);
                    SetActive(root, UI.BTN_JOIN, !CheckRush(loungeMemberStatus.questId));
                    SetActive(root, UI.LBL_PLAYING_QUEST, true);
                    SetActive(root, UI.LBL_PLAYING_READY, false);
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.QUEST_READY:
                    SetQuestInfo(root, loungeMemberStatus.questId);
                    SetActive(root, UI.LBL_PLAYING_QUEST, false);
                    SetActive(root, UI.LBL_PLAYING_READY, true);
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.FIELD:
                {
                    SetActive(root, UI.OBJ_FIELD, true);
                    FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData((uint)loungeMemberStatus.fieldMapId);

                    if (fieldMapData == null)
                    {
                        SetLabelText(root, UI.LBL_AREA_NAME, string.Empty);
                    }
                    else
                    {
                        RegionTable.Data data = Singleton <RegionTable> .I.GetData(fieldMapData.regionId);

                        if (data == null)
                        {
                            SetLabelText(root, UI.LBL_AREA_NAME, fieldMapData.mapName);
                        }
                        else
                        {
                            SetLabelText(root, UI.LBL_AREA_NAME, data.regionName + " - " + fieldMapData.mapName);
                        }
                    }
                    break;
                }
                }
            }
        }
    }
    protected virtual bool ShouldShowEventMapButton()
    {
        if (!showMap)
        {
            return(false);
        }
        RegionTable.Data[] data = Singleton <RegionTable> .I.GetData();

        RegionTable.Data data2 = Array.Find(data, (RegionTable.Data o) => o.eventId == eventData.eventId);
        return(null != data2);
    }
Пример #4
0
    private IEnumerator DoMoveCamera(Vector3 from, Vector3 to)
    {
        //IL_0007: Unknown result type (might be due to invalid IL or missing references)
        //IL_0008: Unknown result type (might be due to invalid IL or missing references)
        //IL_000e: Unknown result type (might be due to invalid IL or missing references)
        //IL_000f: Unknown result type (might be due to invalid IL or missing references)
        //IL_0015: Unknown result type (might be due to invalid IL or missing references)
        //IL_0016: Unknown result type (might be due to invalid IL or missing references)
        //IL_001c: Unknown result type (might be due to invalid IL or missing references)
        //IL_001d: Unknown result type (might be due to invalid IL or missing references)
        Vector3Interpolator ip = new Vector3Interpolator();

        yield return((object)new WaitForSeconds(0.5f));

        Vector3 scaleBegin = playerMarker.get_localScale();
        Vector3 scaleEnd   = new Vector3(0f, 0f, 0f);

        ip.Set(0.5f, scaleBegin, scaleEnd, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            playerMarker.set_localScale(ip.Get());
            yield return((object)null);
        }
        yield return((object)new WaitForSeconds(0f));

        ip.Set(0.7f, from, to, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            worldMapCamera.targetPos = ip.Get();
            yield return((object)null);
        }
        RegionTable.Data targetData = openedRegionInfo[toRegionID].data;
        if (targetData != null)
        {
            playerMarker.set_localPosition(targetData.markerPos);
        }
        yield return((object)new WaitForSeconds(0.1f));

        ip.Set(0.5f, scaleEnd, scaleBegin, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            playerMarker.set_localScale(ip.Get());
            yield return((object)null);
        }
        yield return((object)new WaitForSeconds(0.4f));

        OnQuery_EXIT();
    }
Пример #5
0
 public void InitRegionInfo()
 {
     //IL_0036: Unknown result type (might be due to invalid IL or missing references)
     //IL_003b: Unknown result type (might be due to invalid IL or missing references)
     //IL_0060: Unknown result type (might be due to invalid IL or missing references)
     //IL_00a2: Unknown result type (might be due to invalid IL or missing references)
     //IL_0110: Unknown result type (might be due to invalid IL or missing references)
     //IL_0127: Unknown result type (might be due to invalid IL or missing references)
     //IL_0153: Unknown result type (might be due to invalid IL or missing references)
     //IL_0158: Expected O, but got Unknown
     //IL_0164: Unknown result type (might be due to invalid IL or missing references)
     //IL_01a1: Unknown result type (might be due to invalid IL or missing references)
     //IL_01b7: Unknown result type (might be due to invalid IL or missing references)
     if (spots != null)
     {
         Transform val = spots.SetRoot(base._transform);
         if (uiMapSprite == null)
         {
             uiMapSprite = val.FindChild("Map").get_gameObject().GetComponent <UITexture>();
         }
         InitMapSprite(MonoBehaviourSingleton <ScreenOrientationManager> .I.isPortrait);
         worldMapObject.get_gameObject().SetActive(true);
         for (int i = 0; i < openedRegionInfo.Length; i++)
         {
             RegionTable.Data data = openedRegionInfo[i].data;
             if (data != null)
             {
                 SpotManager.Spot spot = spots.AddSpot((int)data.regionId, data.regionName, data.iconPos, SpotManager.ICON_TYPE.CLEARED, "OPEN_REGION", false, false, false, null, null, false, SpotManager.HAPPEN_CONDITION.NONE, 0);
                 spot.SetIconSprite("SPR_ICON", openedRegionInfo[i].icon.loadedObject as Texture2D, (int)data.iconSize.x, (int)data.iconSize.y);
                 if (fromRegionID == data.regionId)
                 {
                     playerMarker.get_gameObject().SetActive(true);
                     playerMarker.SetParent(worldMapObject.get_transform());
                     PlayerMarker component = playerMarker.GetComponent <PlayerMarker>();
                     component.SetWorldMode(true);
                     component.SetCamera(worldMapCamera._camera.get_transform());
                     playerMarker.set_localPosition(data.markerPos);
                 }
                 if (toRegionID == data.regionId)
                 {
                     targetRegionIcon = spot._transform;
                     if (!eventData.IsOnlyCameraMoveEvent())
                     {
                         spot._transform.get_gameObject().SetActive(false);
                     }
                     else
                     {
                         spot._transform.get_gameObject().SetActive(true);
                     }
                 }
             }
         }
     }
 }
Пример #6
0
    public static bool HasWorldMap(FieldMapTable.FieldMapTableData map)
    {
        if (map != null && Singleton <RegionTable> .IsValid())
        {
            RegionTable.Data[] data = Singleton <RegionTable> .I.GetData();

            RegionTable.Data data2 = Array.Find(data, (RegionTable.Data o) => o.regionId == map.regionId);
            return(null != data2);
        }
        return(false);
    }
    protected virtual void OnQuery_WORLDMAP()
    {
        int eventId = (int)GameSection.GetEventData();

        RegionTable.Data[] data = Singleton <RegionTable> .I.GetData();

        RegionTable.Data data2 = Array.Find(data, (RegionTable.Data o) => o.eventId == eventId);
        if (data2 != null)
        {
            MonoBehaviourSingleton <WorldMapManager> .I.ignoreTutorial = true;
            RequestEvent("DIRECT_EVENT", (int)data2.regionId);
        }
    }
Пример #8
0
    public static bool IsEventRegion(uint regionID)
    {
        if (!Singleton <RegionTable> .IsValid())
        {
            return(false);
        }
        RegionTable.Data data = Singleton <RegionTable> .I.GetData(regionID);

        if (data == null)
        {
            return(false);
        }
        return(0 < data.eventId);
    }
    protected void JumpMap()
    {
        if (FieldManager.HasWorldMap(targetMapID))
        {
            FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData(targetMapID);

            if (Array.IndexOf(MonoBehaviourSingleton <WorldMapManager> .I.GetOpenRegionIdList(), fieldMapData.regionId) < 0)
            {
                RegionTable.Data data = Singleton <RegionTable> .I.GetData(fieldMapData.regionId);

                GameSection.ChangeEvent("NOT_OPEN", new object[1]
                {
                    data.regionName
                });
                return;
            }
        }
        MonoBehaviourSingleton <WorldMapManager> .I.PushDisplayQuestTarget((int)targetMapID, targetPortalID);

        MonoBehaviourSingleton <WorldMapManager> .I.ignoreTutorial = true;
        bool flag = true;

        if (Singleton <TutorialMessageTable> .IsValid())
        {
            TutorialReadData readData = Singleton <TutorialMessageTable> .I.ReadData;
            flag = readData.HasRead(10003);
        }
        bool flag2 = false;

        DeliveryTable.DeliveryData deliveryTableData = Singleton <DeliveryTable> .I.GetDeliveryTableData((uint)deliveryID);

        if (deliveryTableData != null && deliveryTableData.type == DELIVERY_TYPE.STORY && 10100011 >= deliveryID && !flag)
        {
            flag2 = true;
            if (Singleton <TutorialMessageTable> .IsValid())
            {
                TutorialReadData readData2 = Singleton <TutorialMessageTable> .I.ReadData;
                readData2.SetReadId(10003, true);
                readData2.Save();
            }
        }
        if (flag2)
        {
            RequestEvent("DIRECT_REGION_TUTORIAL", null);
        }
        else
        {
            RequestEvent("DIRECT_REGION_QUEST", null);
        }
    }
Пример #10
0
    public bool IsExistedWorld2()
    {
        uint[] validRegionIdListInWorldMap = GetValidRegionIdListInWorldMap();
        uint[] array = validRegionIdListInWorldMap;
        foreach (uint id in array)
        {
            RegionTable.Data data = Singleton <RegionTable> .I.GetData(id);

            if (data.regionId < 100 && data.worldId == 2)
            {
                return(true);
            }
        }
        return(false);
    }
Пример #11
0
    public static bool IsValidRegion(FieldMapTable.FieldMapTableData mapData)
    {
        if (mapData == null)
        {
            return(false);
        }
        if (!Singleton <RegionTable> .IsValid())
        {
            return(false);
        }
        RegionTable.Data[] data = Singleton <RegionTable> .I.GetData();

        if (data == null || data.Length == 0)
        {
            return(false);
        }
        RegionTable.Data data2 = Array.Find(data, (RegionTable.Data o) => o.regionId == mapData.regionId);
        return(null != data2);
    }
Пример #12
0
    public bool IsAllOpenedMap(int regionId)
    {
        RegionTable.Data data = Singleton <RegionTable> .I.GetData((uint)regionId);

        if (data == null)
        {
            return(false);
        }
        FieldMapTable.FieldMapTableData[] fieldMapDataInRegion = Singleton <FieldMapTable> .I.GetFieldMapDataInRegion(data.regionId);

        foreach (FieldMapTable.FieldMapTableData map in fieldMapDataInRegion)
        {
            if (!MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(map))
            {
                return(false);
            }
        }
        return(true);
    }
Пример #13
0
    protected override IEnumerator DoInitialize()
    {
        int regionId = (int)GameSection.GetEventData();

        regionData = Singleton <RegionTable> .I.GetData((uint)regionId);

        bool needSummary = regionId != 0;

        SetActive((Enum)UI.BTN_SUMMARY, needSummary);
        LoadingQueue loadQueue  = new LoadingQueue(this);
        string       bannerName = ResourceName.GetAreaBG(regionId);
        LoadObject   bannerObj  = loadQueue.Load(RESOURCE_CATEGORY.AREA_BACKGROUND, bannerName, false);

        if (loadQueue.IsLoading())
        {
            yield return((object)loadQueue.Wait());
        }
        Texture2D bannerTex = bannerObj.loadedObject as Texture2D;

        if (bannerTex != null)
        {
            SetTexture((Enum)UI.TEX_AREA_BG, bannerTex);
        }
        if (ShouldShowEventMapButton())
        {
            LoadObject item = loadQueue.Load(RESOURCE_CATEGORY.QUEST_ITEM, "QEM_10000001", false);
            if (loadQueue.IsLoading())
            {
                yield return((object)loadQueue.Wait());
            }
            SetTexture(texture: item.loadedObject as Texture2D, texture_enum: UI.TEX_EVENT_BG);
            if (item != null && null != item.loadedObject)
            {
                GameObject mapItemObj = item.loadedObject as GameObject;
                mapItem = mapItemObj.get_transform();
            }
        }
        SetAreaName();
        EndInitialize();
    }
    public override void Initialize()
    {
        int num  = (int)GameSection.GetEventData();
        int num2 = num - 1;

        for (int num3 = num2; num3 < 1; num3--)
        {
            RegionTable.Data data = Singleton <RegionTable> .I.GetData((uint)num);

            if (data.difficulty == REGION_DIFFICULTY_TYPE.NORMAL)
            {
                num = (int)data.regionId;
                break;
            }
        }
        string text = StringTable.Get(STRING_CATEGORY.SUMMARY, (uint)num);

        splitedSummary = text.Split('@');
        currentPage    = 1;
        maxPage        = splitedSummary.Length;
        base.Initialize();
    }
    private static bool IsSrcOrDstChildRegion(uint portalID)
    {
        if (!Singleton <FieldMapTable> .IsValid())
        {
            return(false);
        }
        FieldMapTable.PortalTableData portalData = Singleton <FieldMapTable> .I.GetPortalData(portalID);

        if (portalData == null)
        {
            return(false);
        }
        FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData(portalData.srcMapID);

        FieldMapTable.FieldMapTableData fieldMapData2 = Singleton <FieldMapTable> .I.GetFieldMapData(portalData.dstMapID);

        if (fieldMapData == null || fieldMapData2 == null)
        {
            return(false);
        }
        if (fieldMapData.childRegionId == fieldMapData2.regionId)
        {
            return(true);
        }
        if (!Singleton <RegionTable> .IsValid())
        {
            return(false);
        }
        RegionTable.Data data = Singleton <RegionTable> .I.GetData(fieldMapData.regionId);

        RegionTable.Data data2 = Singleton <RegionTable> .I.GetData(fieldMapData2.regionId);

        if (data == null || data2 == null)
        {
            return(false);
        }
        return(data2.parentRegionId == fieldMapData.regionId || data.parentRegionId == fieldMapData2.regionId);
    }
    private bool IsCleardRegion(RegionTable.Data data)
    {
        int i = 0;

        for (int num = normalDeliveryInfo.Length; i < num; i++)
        {
            Delivery delivery = normalDeliveryInfo[i];
            if (delivery.dId != 0)
            {
                DeliveryTable.DeliveryData deliveryTableData = Singleton <DeliveryTable> .I.GetDeliveryTableData((uint)delivery.dId);

                if (deliveryTableData.regionId == data.regionId)
                {
                    return(false);
                }
                if (data.groupId > 0 && deliveryTableData.regionId == data.groupId)
                {
                    return(false);
                }
            }
        }
        return(true);
    }
    public IEnumerator DoInitialize()
    {
        LoadingQueue loadQueue = new LoadingQueue(this);

        if (reInitialize)
        {
            yield return((object)0);
        }
        if (loadQueue.IsLoading())
        {
            yield return((object)loadQueue.Wait());
        }
        MonoBehaviourSingleton <UIManager> .I.enableShadow = true;
        if (GameSection.GetEventData() is object[])
        {
            object[] obj = GameSection.GetEventData() as object[];
            if (obj.Length == 2)
            {
                enemyCollectionId           = (uint)obj[0];
                currentRegionCollectionData = (obj[1] as List <EnemyCollectionTable.EnemyCollectionData>);
            }
        }
        if (currentRegionCollectionData == null)
        {
            Log.Warning("図鑑デ\u30fcタが正しくありません");
        }
        else
        {
            enemyData = Singleton <EnemyTable> .I.GetEnemyDataByEnemyCollectionId(enemyCollectionId).FirstOrDefault();

            enemyCollectionData = Singleton <EnemyCollectionTable> .I.GetEnemyCollectionData(enemyCollectionId);

            regionData = Singleton <RegionTable> .I.GetData(enemyCollectionData.regionId);

            achievementCounter = MonoBehaviourSingleton <AchievementManager> .I.monsterCollectionList;
            SetText((Enum)UI.STR_TOTAL_DEFEAT_TITLE, "TOTAL_DEFEAT");
            SetLabelText(text: string.Format(base.sectionData.GetText("AREA_DEFEAT"), regionData.regionName), label_enum: UI.STR_FIELD_DEFEAT_TITLE);
            SetText((Enum)UI.STR_FLAVOR_TITLE, "FLAVOR_TITLE");
            SetText((Enum)UI.STR_BREAK_REWARD_TITLE, "BREAK_REWARD_TITLE");
            SetText((Enum)UI.STR_REWARD_TITLE, "DEFEAT_REWARD_TITLE");
            OnQuery_TO_FRONT();
            string foundationName = string.Empty;
            popMapIds = new List <uint>();
            if (enemyCollectionData.collectionType == COLLECTION_TYPE.NORMAL)
            {
                foreach (EnemyTable.EnemyData item in Singleton <EnemyTable> .I.GetEnemyDataByEnemyCollectionId(enemyCollectionId))
                {
                    uint mapId = Singleton <FieldMapTable> .I.GetTargetEnemyPopMapID(item.id);

                    FieldMapTable.FieldMapTableData fieldmap = Singleton <FieldMapTable> .I.GetFieldMapData(mapId);

                    if (fieldmap != null)
                    {
                        popMapIds.AddRange(Singleton <FieldMapTable> .I.GetTargetEnemyPopMapIDs(item.id));
                        if (string.IsNullOrEmpty(foundationName))
                        {
                            foundationName = ResourceName.GetFoundationName(fieldmap.stageName);
                        }
                    }
                }
            }
            else
            {
                List <EnemyTable.EnemyData> targetEnemyAllData = Singleton <EnemyTable> .I.GetEnemyDataByEnemyCollectionId(enemyCollectionId);

                foreach (EnemyTable.EnemyData item2 in targetEnemyAllData)
                {
                    IEnumerable <QuestTable.QuestTableData> questData = Singleton <QuestTable> .I.GetEnemyAppearQuestData(item2.id);

                    if (questData != null)
                    {
                        foreach (QuestTable.QuestTableData item3 in questData)
                        {
                            FieldMapTable.FieldMapTableData[] fieldData = Singleton <QuestToFieldTable> .I.GetFieldMapTableFromQuestId(item3.questID, false);

                            if (fieldData != null)
                            {
                                FieldMapTable.FieldMapTableData[] array = fieldData;
                                foreach (FieldMapTable.FieldMapTableData field in array)
                                {
                                    popMapIds.Add(field.mapID);
                                    if (string.IsNullOrEmpty(foundationName))
                                    {
                                        foundationName = questData.FirstOrDefault().GetFoundationName();
                                    }
                                }
                            }
                        }
                    }
                }
            }
            if (popMapIds != null)
            {
                popMapIds = (from x in popMapIds
                             where MonoBehaviourSingleton <WorldMapManager> .I.IsTraveledMap((int)x)
                             select x).ToList();
            }
            if (string.IsNullOrEmpty(foundationName))
            {
                foundationName = base.sectionData.GetText("DEFAULT_STGE_NAME");
            }
            sameMonsterCounter = (from x in achievementCounter
                                  where x.Count != 0
                                  where Singleton <EnemyCollectionTable> .I.GetEnemyCollectionData((uint)x.subType).enemySpeciesId == ((_003CDoInitialize_003Ec__Iterator141) /*Error near IL_0597: stateMachine*/)._003C_003Ef__this.enemyCollectionData.enemySpeciesId
                                  select x).ToList();
            SetLabelText((Enum)UI.LBL_ENEMY_NAME, enemyData.name);
            SetFrame(GetCtrl(UI.OBJ_FRAME), (int)enemyCollectionData.collectionType);
            isUnknown = !sameMonsterCounter.Any((AchievementCounter x) => x.subType == ((_003CDoInitialize_003Ec__Iterator141) /*Error near IL_0612: stateMachine*/)._003C_003Ef__this.enemyCollectionId);
            SetActive((Enum)UI.OBJ_UNKNOWN, isUnknown);
            SetActive((Enum)UI.LBL_UNKNOWN_WEAKPOINT, isUnknown || enemyData.weakElement == ELEMENT_TYPE.MAX);
            SetActive((Enum)UI.LBL_ELEMENT, isUnknown || enemyData.element == ELEMENT_TYPE.MAX);
            SetActive((Enum)UI.SPR_WEAK_ELEMENT, !isUnknown);
            SetActive((Enum)UI.SPR_ELEMENT, !isUnknown);
            InitRenderTexture(UI.TEX_ENEMY_MODEL, -1f, false);
            bool activeAppearButton = !isUnknown && popMapIds != null && popMapIds.Any();
            SetActive((Enum)UI.OBJ_APPEAR_MAP_ON, activeAppearButton);
            SetActive((Enum)UI.OBJ_APPEAR_MAP_OFF, !activeAppearButton);
            if (isUnknown)
            {
                SetRenderEnemyModel((Enum)UI.TEX_ENEMY_MODEL, enemyData.id, foundationName, OutGameSettingsManager.EnemyDisplayInfo.SCENE.GACHA, (Action <bool, EnemyLoader>)null, UIModelRenderTexture.ENEMY_MOVE_TYPE.STOP, true);
                enemyModelRenderTexture = base.GetComponent <UIModelRenderTexture>((Enum)UI.TEX_ENEMY_MODEL);
                UITexture rendererTexture2 = base.GetComponent <UITexture>((Enum)UI.TEX_ENEMY_MODEL);
                rendererTexture2.color = Color.get_black();
                SetActive((Enum)UI.TEX_ENEMYICON, false);
                SetText((Enum)UI.LBL_ENEMY_NAME, "???");
                SetText((Enum)UI.LBL_REWARD_LIST, "???");
                SetText((Enum)UI.LBL_BREAK_REWARD_LIST, "???");
                SetText((Enum)UI.LBL_FLAVOR_TEXT, "???");
                SetText((Enum)UI.LBL_UNKNOWN_WEAKPOINT, "?");
                SetText((Enum)UI.LBL_ELEMENT, "?");
                SetLabelText((Enum)UI.LBL_FIELD_DEFEAT, "0");
                SetLabelText((Enum)UI.LBL_TOTAL_DEFEAT, "0");
            }
            else
            {
                SetRenderEnemyModel((Enum)UI.TEX_ENEMY_MODEL, enemyData.id, foundationName, OutGameSettingsManager.EnemyDisplayInfo.SCENE.GACHA, (Action <bool, EnemyLoader>)null, UIModelRenderTexture.ENEMY_MOVE_TYPE.DONT_MOVE, true);
                enemyModelRenderTexture = base.GetComponent <UIModelRenderTexture>((Enum)UI.TEX_ENEMY_MODEL);
                UITexture rendererTexture = base.GetComponent <UITexture>((Enum)UI.TEX_ENEMY_MODEL);
                rendererTexture.color = Color.get_white();
                SetActive((Enum)UI.TEX_ENEMYICON, true);
                SetEnemyIcon((Enum)UI.TEX_ENEMYICON, enemyData.iconId);
                SetElementSprite((Enum)UI.SPR_WEAK_ELEMENT, (int)enemyData.weakElement);
                SetElementSprite((Enum)UI.SPR_ELEMENT, (int)enemyData.element);
                if (enemyData.weakElement == ELEMENT_TYPE.MAX)
                {
                    SetText((Enum)UI.LBL_UNKNOWN_WEAKPOINT, "NONE_WEAK_POINT");
                }
                if (enemyData.element == ELEMENT_TYPE.MAX)
                {
                    SetText((Enum)UI.LBL_ELEMENT, "NONE_WEAK_POINT");
                }
                SetLabelText((Enum)UI.LBL_ENEMY_NAME, enemyData.name);
                SetLabelText((Enum)UI.LBL_REWARD_LIST, GetDefeatRewardText());
                SetLabelText((Enum)UI.LBL_BREAK_REWARD_LIST, GetBreakRewardText());
                SetLabelText((Enum)UI.LBL_FLAVOR_TEXT, enemyCollectionData.flavorText);
                SetLabelText((Enum)UI.LBL_FIELD_DEFEAT, sameMonsterCounter.First((AchievementCounter x) => x.subType == ((_003CDoInitialize_003Ec__Iterator141) /*Error near IL_0a9a: stateMachine*/)._003C_003Ef__this.enemyCollectionData.id).count);
                SetLabelText((Enum)UI.LBL_TOTAL_DEFEAT, sameMonsterCounter.Sum((AchievementCounter x) => x.Count).ToString());
            }
            eventListener = base.GetComponent <UIEventListener>((Enum)UI.TEX_ENEMY_MODEL);
            if (eventListener != null)
            {
                UIEventListener uIEventListener = eventListener;
                uIEventListener.onClick = (UIEventListener.VoidDelegate)Delegate.Combine(uIEventListener.onClick, new UIEventListener.VoidDelegate(OnTap));
                UIEventListener uIEventListener2 = eventListener;
                uIEventListener2.onDrag = (UIEventListener.VectorDelegate)Delegate.Combine(uIEventListener2.onDrag, new UIEventListener.VectorDelegate(OnDrag));
            }
            reInitialize = false;
            base.Initialize();
        }
    }
Пример #18
0
    private IEnumerator DoInitialize()
    {
        uint         regionId              = MonoBehaviourSingleton <FieldManager> .I.currentMapData.regionId;
        LoadingQueue loadQueue             = new LoadingQueue(this);
        LoadObject   loadedExploreMapFrame = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMapFrame", false);
        LoadObject   loadedExploreMap      = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMap_" + regionId.ToString("D3"), false);
        LoadObject   loadedPlayerMarker    = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExplorePlayerMarker", false);
        LoadObject   loadedCircle          = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreCircle", false);
        LoadObject   loadedBattleIcon      = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreBattleMarker", false);
        LoadObject   loadedFootprint       = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreTraceMarker", false);
        LoadObject   loadedFindIcon        = null;
        LoadObject   loadedDirSonar        = null;
        LoadObject   loadedSonarTexture    = null;

        if (openType == OPEN_MAP_TYPE.SONAR)
        {
            loadedFindIcon     = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreExclametionMarker", false);
            loadedDirSonar     = loadQueue.Load(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_sonar_02", false);
            loadedSonarTexture = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreSonarTexture", false);
            CacheAudio(loadQueue);
        }
        if (loadQueue.IsLoading())
        {
            yield return((object)loadQueue.Wait());
        }
        Transform exploreMapFrame = ResourceUtility.Realizes(loadedExploreMapFrame.loadedObject, base._transform, -1);
        Transform exploreMap      = ResourceUtility.Realizes(loadedExploreMap.loadedObject, exploreMapFrame, -1);
        Transform map             = exploreMap.FindChild("Map");

        map.get_gameObject().SetActive(true);
        mapRoot_ = exploreMap.GetComponent <ExploreMapRoot>();
        ExploreMapLocation[] locations = mapRoot_.locations;
        for (int k = 0; k < locations.Length; k++)
        {
            Transform active   = locations[k].get_transform().FindChild("ExploreSpotActive");
            Transform inactive = locations[k].get_transform().FindChild("ExploreSpotInactive");
            Transform sonar    = locations[k].get_transform().FindChild("ExploreSpotSonar");
            active.get_gameObject().SetActive(true);
            inactive.get_gameObject().SetActive(false);
            List <FieldMapTable.FieldGimmickPointTableData> gimmicks = Singleton <FieldMapTable> .I.GetFieldGimmickPointListByMapID((uint)locations[k].mapId);

            if (gimmicks != null && sonar != null)
            {
                for (int i = 0; i < gimmicks.Count; i++)
                {
                    if (gimmicks[i].gimmickType == FieldMapTable.FieldGimmickPointTableData.GIMMICK_TYPE.SONAR)
                    {
                        active.get_gameObject().SetActive(false);
                        inactive.get_gameObject().SetActive(false);
                        sonar.get_gameObject().SetActive(true);
                    }
                }
            }
        }
        mapRoot_.UpdatePortals(false);
        ExploreMapFrame frame = exploreMapFrame.GetComponent <ExploreMapFrame>();

        frame.SetMap(mapRoot_);
        RegionTable.Data regionData = Singleton <RegionTable> .I.GetData(regionId);

        if (regionData != null)
        {
            frame.SetCaption(regionData.regionName);
        }
        for (int j = 0; j < playerMarkers_.Length; j++)
        {
            playerMarkers_[j] = ResourceUtility.Realizes(loadedPlayerMarker.loadedObject, exploreMapFrame, -1);
            ExplorePlayerMarker marker = playerMarkers_[j].GetComponent <ExplorePlayerMarker>();
            if (null != marker)
            {
                marker.SetIndex(j);
            }
            marker.get_gameObject().SetActive(false);
        }
        mapRoot_.SetMarkers(playerMarkers_, false);
        ExploreStatus.TraceInfo[] traceHistory = MonoBehaviourSingleton <QuestManager> .I.GetBossTraceHistory();

        if (traceHistory != null && traceHistory.Length > 0)
        {
            Transform lastFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, exploreMap, -1);
            ExploreStatus.TraceInfo lastInfo = traceHistory[traceHistory.Length - 1];
            Vector3 lastPos = mapRoot_.GetPositionOnMap(lastInfo.mapId);
            lastFootprint.set_localPosition(new Vector3(lastPos.x + 22f, lastPos.y + 33f, lastPos.z));
            lastFootprint.get_gameObject().SetActive(true);
            if (traceHistory.Length > 1)
            {
                Transform lastSecondFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, exploreMap, -1);
                ExploreStatus.TraceInfo lastSecondInfo = traceHistory[traceHistory.Length - 2];
                Vector3 lastSecondPos = mapRoot_.GetPositionOnMap(lastSecondInfo.mapId);
                lastSecondFootprint.set_localPosition(new Vector3(lastSecondPos.x + 22f, lastSecondPos.y + 33f, lastSecondPos.z));
                lastSecondFootprint.get_gameObject().SetActive(true);
            }
        }
        redCircle = ResourceUtility.Realizes(loadedCircle.loadedObject, exploreMap, -1);
        redCircle.set_localScale(new Vector3(0.6f, 0.6f, 0.6f));
        battleIcon = ResourceUtility.Realizes(loadedBattleIcon.loadedObject, exploreMap, -1);
        if (mapRoot_.showBattleMarker && openType != OPEN_MAP_TYPE.SONAR)
        {
            int bossMapId = MonoBehaviourSingleton <QuestManager> .I.GetExploreBossAppearMapId();

            Vector3 pos = mapRoot_.GetPositionOnMap(bossMapId);
            redCircle.set_localPosition(pos);
            battleIcon.set_localPosition(new Vector3(pos.x + 22f, pos.y + 33f, pos.z));
            TweenAlpha tweenAlpha = redCircle.GetComponent <TweenAlpha>();
            if (null != tweenAlpha)
            {
                tweenAlpha.from = tweenAlpha.to;
            }
            redCircle.get_gameObject().SetActive(true);
            battleIcon.get_gameObject().SetActive(true);
        }
        else
        {
            redCircle.get_gameObject().SetActive(false);
            battleIcon.get_gameObject().SetActive(false);
        }
        if (openType == OPEN_MAP_TYPE.SONAR)
        {
            tapToSkip = Utility.FindChild(exploreMapFrame, "TaptoSkip");
            Transform backGround = Utility.FindChild(exploreMapFrame, "BG");
            backGround.get_gameObject().SetActive(true);
            bgEventListener = UIEventListener.Get(backGround.get_gameObject());
            Transform close = Utility.FindChild(exploreMapFrame, "CaptionRoot/Close");
            if (close != null)
            {
                close.get_gameObject().SetActive(false);
            }
            findIcon = ResourceUtility.Realizes(loadedFindIcon.loadedObject, exploreMap, -1);
            findIcon.get_gameObject().SetActive(false);
            sonarTexture = ResourceUtility.Realizes(loadedSonarTexture.loadedObject, exploreMap, -1);
            UITexture       uiTex         = sonarTexture.get_gameObject().GetComponentInChildren <UITexture>();
            UIRenderTexture renderTexture = UIRenderTexture.Get(uiTex, mapRoot_.GetSonarFov(), false, -1);
            renderTexture.modelTransform.set_localPosition(new Vector3(0f, 0f, 150f));
            sonarDirEffect = ResourceUtility.Realizes(loadedDirSonar.loadedObject, renderTexture.modelTransform, renderTexture.renderLayer);
            sonarDirEffect.set_localScale(Vector2.op_Implicit(mapRoot_.GetSonarScale()));
            sonarDirEffect.get_gameObject().SetActive(false);
            renderTexture.Enable(0.25f);
            renderTexture.renderCamera.set_backgroundColor(mapRoot_.sonarBackGroundColor);
            mapRoot_.SetDirectionSonar(sonarDirEffect.get_gameObject());
        }
        base.Initialize();
    }
 public AreaQuestInfo(RegionTable.Data data, Texture2D tex, bool cleared)
 {
     regionData   = data;
     bannerTex    = tex;
     this.cleared = cleared;
 }
    protected virtual void SetDeliveryList(Delivery[] list)
    {
        if (selectedTab == UI.BTN_TAB_NORMAL && openRegionIds.Length >= 2)
        {
            SetActive((Enum)UI.OBJ_DELIVERY_BAR, false);
            SetActive((Enum)UI.GRD_DELIVERY, false);
            SetActive((Enum)UI.LBL_DELIVERY_NON_LIST, false);
            SetActive((Enum)UI.GRD_AREA, true);
            SetActive((Enum)UI.OBJ_AREA_BAR, true);
            RegionTable.Data     data      = null;
            List <AreaQuestInfo> areaInfos = new List <AreaQuestInfo>();
            List <AreaQuestInfo> list2     = new List <AreaQuestInfo>();
            for (int j = 0; j < openRegionIds.Length; j++)
            {
                data = Singleton <RegionTable> .I.GetData(openRegionIds[j]);

                if (!IsCleardRegion(data))
                {
                    areaInfos.Add(new AreaQuestInfo(data, areaBanners[j], false));
                }
                else
                {
                    list2.Add(new AreaQuestInfo(data, areaBanners[j], true));
                }
            }
            areaInfos.AddRange(list2);
            SetDynamicList((Enum)UI.GRD_AREA, "QuestAreaListItem", areaInfos.Count, true, (Func <int, bool>) null, (Func <int, Transform, Transform>) null, (Action <int, Transform, bool>) delegate(int i, Transform t, bool is_recycle)
            {
                AreaQuestInfo areaQuestInfo = areaInfos[i];
                Texture2D bannerTex         = areaQuestInfo.bannerTex;
                if (bannerTex != null)
                {
                    Transform t2 = FindCtrl(t, UI.TEX_AREA_BANNER);
                    SetActive(t2, true);
                    SetTexture(t2, bannerTex);
                }
                AreaQuestInfo areaQuestInfo2 = areaInfos[i];
                RegionTable.Data regionData  = areaQuestInfo2.regionData;
                SetEvent(t, "SELECT_AREA", (int)regionData.regionId);
                int completableRegionDeliveryNum = MonoBehaviourSingleton <DeliveryManager> .I.GetCompletableRegionDeliveryNum((int)regionData.regionId, regionData.groupId);
                SetBadge(FindCtrl(t, UI.TEX_AREA_BANNER), completableRegionDeliveryNum, 3, -16, -3, false);
                QuestSpecialSelect questSpecialSelect = this;
                object ctrl_enum             = UI.SPR_CLEARED_AREA;
                AreaQuestInfo areaQuestInfo3 = areaInfos[i];
                questSpecialSelect.SetActive(t, (Enum)ctrl_enum, areaQuestInfo3.cleared);
            });
            isDeliveryGridReset = false;
        }
        else if (list != null)
        {
            SetActive((Enum)UI.OBJ_AREA_BAR, false);
            SetActive((Enum)UI.GRD_AREA, false);
            SetActive((Enum)UI.GRD_DELIVERY, list.Length > 0);
            SetActive((Enum)UI.LBL_DELIVERY_NON_LIST, list.Length == 0);
            SetActive((Enum)UI.OBJ_DELIVERY_BAR, true);
            SetDynamicList((Enum)UI.GRD_DELIVERY, "QuestRequestItem", list.Length, isDeliveryGridReset, (Func <int, bool>) null, (Func <int, Transform, Transform>) null, (Action <int, Transform, bool>) delegate(int i, Transform t, bool is_recycle)
            {
                SetActive(t, true);
                int num = Array.FindIndex(deliveryInfo, (Delivery d) => d.uId == list[i].uId);
                SetEvent(t, "SELECT_DELIVERY", num);
                DeliveryTable.DeliveryData deliveryTableData = Singleton <DeliveryTable> .I.GetDeliveryTableData((uint)deliveryInfo[num].dId);
                SetupDeliveryListItem(t, deliveryTableData);
            });
            isDeliveryGridReset = false;
            ShowNonDeliveryList();
        }
    }
Пример #21
0
    private IEnumerator DoGlowRegion(Vector3 from, Vector3 to)
    {
        //IL_0007: Unknown result type (might be due to invalid IL or missing references)
        //IL_0008: Unknown result type (might be due to invalid IL or missing references)
        //IL_000e: Unknown result type (might be due to invalid IL or missing references)
        //IL_000f: Unknown result type (might be due to invalid IL or missing references)
        //IL_0015: Unknown result type (might be due to invalid IL or missing references)
        //IL_0016: Unknown result type (might be due to invalid IL or missing references)
        //IL_001c: Unknown result type (might be due to invalid IL or missing references)
        //IL_001d: Unknown result type (might be due to invalid IL or missing references)
        yield return((object)new WaitForSeconds(0.5f));

        Vector3Interpolator ip         = new Vector3Interpolator();
        Vector3             zoomDownTo = to + new Vector3(0f, 0f, -3f);

        ip.Set(1f, from, zoomDownTo, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            worldMapCamera.targetPos = ip.Get();
            yield return((object)null);
        }
        Transform toRegion = regionAreas[toRegionID];

        toRegion.get_gameObject().SetActive(true);
        Renderer toRegionRenderer = toRegion.GetComponent <Renderer>();

        toRegionRenderer.get_material().SetFloat("_Alpha", 0f);
        Renderer topRenderer = glowRegionTop.GetComponent <Renderer>();

        topRenderer.get_material().SetFloat("_Alpha", 0f);
        topRenderer.get_material().SetFloat("_AddColor", 1f);
        topRenderer.get_material().SetFloat("_BlendRate", 1f);
        topRenderer.set_sortingOrder(2);
        glowRegionTop.get_gameObject().SetActive(true);
        DelayExecute(1f, delegate
        {
            //IL_000b: Unknown result type (might be due to invalid IL or missing references)
            ((_003CDoGlowRegion_003Ec__Iterator16E) /*Error near IL_0211: stateMachine*/)._003C_003Ef__this.mapGlowEffectA.get_gameObject().SetActive(true);
            Renderer component = ((_003CDoGlowRegion_003Ec__Iterator16E) /*Error near IL_0211: stateMachine*/)._003C_003Ef__this.mapGlowEffectA.GetComponent <Renderer>();
            component.set_sortingOrder(1);
        });
        yield return((object)new WaitForSeconds(1f));

        ip.Set(1f, zoomDownTo, to, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            worldMapCamera.targetPos = ip.Get();
            yield return((object)null);
        }
        FloatInterpolator fip = new FloatInterpolator();

        fip.Set(2f, 0f, 1.5f, null, 0f, null);
        fip.Play();
        SoundManager.PlayOneShotUISE(SE_ID_SMOKE);
        while (fip.IsPlaying())
        {
            fip.Update();
            topRenderer.get_material().SetFloat("_Alpha", fip.Get());
            yield return((object)null);
        }
        toRegionRenderer.get_material().SetFloat("_Alpha", 1f);
        mapGlowEffectParticleA.Stop();
        mapGlowEffectB.get_gameObject().SetActive(true);
        yield return((object)new WaitForSeconds(0f));

        fip.Set(0.2f, 1f, 0f, null, 0f, null);
        fip.Play();
        while (fip.IsPlaying())
        {
            fip.Update();
            topRenderer.get_material().SetFloat("_Alpha", fip.Get());
            yield return((object)null);
        }
        yield return((object)new WaitForSeconds(0f));

        targetRegionIcon.get_gameObject().SetActive(true);
        TweenScale tweenScale = targetRegionIcon.GetComponent <TweenScale>();

        tweenScale.PlayForward();
        yield return((object)new WaitForSeconds(1f));

        mapGlowEffectParticleB.Stop();
        bool        isTweenEnd = false;
        UITweenCtrl tweenCtrl  = telop.GetComponent <UITweenCtrl>();

        tweenCtrl.Reset();
        tweenCtrl.Play(true, delegate
        {
            ((_003CDoGlowRegion_003Ec__Iterator16E) /*Error near IL_04df: stateMachine*/)._003CisTweenEnd_003E__7 = true;
        });
        SoundManager.PlayOneShotUISE(SE_ID_LOGO);
        while (!isTweenEnd)
        {
            yield return((object)null);
        }
        yield return((object)new WaitForSeconds(0f));

        Vector3 scaleBegin = playerMarker.get_localScale();
        Vector3 scaleEnd   = new Vector3(0f, 0f, 0f);

        ip.Set(0.5f, scaleBegin, scaleEnd, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            playerMarker.set_localScale(ip.Get());
            yield return((object)null);
        }
        RegionTable.Data targetData = openedRegionInfo[toRegionID].data;
        if (targetData != null)
        {
            playerMarker.set_localPosition(targetData.markerPos);
        }
        yield return((object)new WaitForSeconds(0.1f));

        ip.Set(0.5f, scaleEnd, scaleBegin, null, default(Vector3), null);
        ip.Play();
        while (ip.IsPlaying())
        {
            ip.Update();
            playerMarker.set_localScale(ip.Get());
            yield return((object)null);
        }
        yield return((object)new WaitForSeconds(0.4f));

        OnQuery_EXIT();
    }
Пример #22
0
 public OpendRegionInfo(RegionTable.Data _data, LoadObject _icon)
 {
     data = _data;
     icon = _icon;
 }
Пример #23
0
    private IEnumerator DoInitialize()
    {
        EventData eventData = GameSection.GetEventData() as EventData;

        if (eventData == null)
        {
            base.Initialize();
        }
        else
        {
            uint regionId = eventData.regionId;
            fromBoss_   = eventData.fromBoss;
            toBoss_     = eventData.toBoss;
            portalData_ = Singleton <FieldMapTable> .I.GetPortalData(eventData.portalId);

            if (portalData_ == null)
            {
                base.Initialize();
            }
            else
            {
                LoadingQueue loadQueue                = new LoadingQueue(this);
                LoadObject   loadedExploreMapFrame    = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMapFrame", false);
                LoadObject   loadedExploreMap         = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMap_" + regionId.ToString("D3"), false);
                LoadObject   loadedPlayerMarker       = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExplorePlayerMarker", false);
                LoadObject   loadedCircle             = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreCircle", false);
                LoadObject   loadedBattleIcon         = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreBattleMarker", false);
                LoadObject   loadedFootprint          = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreTraceMarker", false);
                LoadObject   loadedEncounterBossCutIn = null;
                if (toBoss_)
                {
                    loadedEncounterBossCutIn = loadQueue.Load(RESOURCE_CATEGORY.UI, "InGameFieldQuestWarning", false);
                }
                if (loadQueue.IsLoading())
                {
                    yield return((object)loadQueue.Wait());
                }
                if (null == loadedExploreMap.loadedObject)
                {
                    base.Initialize();
                }
                else
                {
                    if (loadedEncounterBossCutIn != null)
                    {
                        fieldQuestWarningRoot = ResourceUtility.Realizes(loadedEncounterBossCutIn.loadedObject, -1).get_gameObject();
                        UIPanel panel2 = fieldQuestWarningRoot.GetComponentInChildren <UIPanel>();
                        if (panel2 != null)
                        {
                            panel2.depth = 12000;
                        }
                        if (MonoBehaviourSingleton <UIInGameFieldQuestWarning> .IsValid())
                        {
                            MonoBehaviourSingleton <UIInGameFieldQuestWarning> .I.Load(loadQueue);
                        }
                    }
                    mapFrame_ = ResourceUtility.Realizes(loadedExploreMapFrame.loadedObject, base._transform, -1);
                    if (toBoss_)
                    {
                        UIPanel panel = mapFrame_.GetComponent <UIPanel>();
                        panel.renderQueue         = UIPanel.RenderQueue.StartAt;
                        panel.startingRenderQueue = 2900;
                    }
                    map_ = ResourceUtility.Realizes(loadedExploreMap.loadedObject, mapFrame_, -1);
                    Transform map = map_.FindChild("Map");
                    map.get_gameObject().SetActive(true);
                    mapRoot_ = map_.GetComponent <ExploreMapRoot>();
                    ExploreMapLocation[] locations = mapRoot_.locations;
                    for (int k = 0; k < locations.Length; k++)
                    {
                        Transform active   = locations[k].get_transform().FindChild("ExploreSpotActive");
                        Transform inactive = locations[k].get_transform().FindChild("ExploreSpotInactive");
                        Transform sonar    = locations[k].get_transform().FindChild("ExploreSpotSonar");
                        active.get_gameObject().SetActive(true);
                        inactive.get_gameObject().SetActive(false);
                        List <FieldMapTable.FieldGimmickPointTableData> gimmicks = Singleton <FieldMapTable> .I.GetFieldGimmickPointListByMapID((uint)locations[k].mapId);

                        if (gimmicks != null && sonar != null)
                        {
                            for (int i = 0; i < gimmicks.Count; i++)
                            {
                                if (gimmicks[i].gimmickType == FieldMapTable.FieldGimmickPointTableData.GIMMICK_TYPE.SONAR)
                                {
                                    active.get_gameObject().SetActive(false);
                                    inactive.get_gameObject().SetActive(false);
                                    sonar.get_gameObject().SetActive(true);
                                }
                            }
                        }
                    }
                    mapRoot_.UpdatePortals(false);
                    from_ = mapRoot_.FindLocation((int)portalData_.srcMapID);
                    to_   = mapRoot_.FindLocation((int)portalData_.dstMapID);
                    if (null == to_)
                    {
                        base.Initialize();
                    }
                    else
                    {
                        ExploreMapFrame frame = mapFrame_.GetComponent <ExploreMapFrame>();
                        frame.SetMap(mapRoot_);
                        RegionTable.Data regionData = Singleton <RegionTable> .I.GetData(regionId);

                        if (regionData != null)
                        {
                            frame.SetCaption(regionData.regionName);
                        }
                        for (int j = 0; j < playerMarkers_.Length; j++)
                        {
                            playerMarkers_[j] = ResourceUtility.Realizes(loadedPlayerMarker.loadedObject, mapFrame_, -1);
                            ExplorePlayerMarker marker = playerMarkers_[j].GetComponent <ExplorePlayerMarker>();
                            if (null != marker)
                            {
                                marker.SetIndex(j);
                            }
                            marker.get_gameObject().SetActive(false);
                        }
                        selfMarker_ = playerMarkers_[0];
                        Transform bg = mapFrame_.FindChild("BG");
                        bg.get_gameObject().SetActive(true);
                        bgEventListener = UIEventListener.Get(bg.get_gameObject());
                        mapFrame_.FindChild("TaptoSkip").get_gameObject().SetActive(!toBoss_);
                        mapFrame_.FindChild("CaptionRoot/Close").get_gameObject().SetActive(false);
                        mapRoot_.SetMarkers(playerMarkers_, false);
                        ExploreStatus.TraceInfo[] traceHistory = MonoBehaviourSingleton <QuestManager> .I.GetBossTraceHistory();

                        if (traceHistory != null && traceHistory.Length > 0)
                        {
                            Transform lastFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, map_, -1);
                            ExploreStatus.TraceInfo lastInfo = traceHistory[traceHistory.Length - 1];
                            Vector3 lastPos = mapRoot_.GetPositionOnMap(lastInfo.mapId);
                            lastFootprint.set_localPosition(new Vector3(lastPos.x + MarkerOffsetX, lastPos.y + MarkerOffsetY, lastPos.z));
                            lastFootprint.get_gameObject().SetActive(true);
                            if (traceHistory.Length > 1)
                            {
                                Transform lastSecondFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, map_, -1);
                                ExploreStatus.TraceInfo lastSecondInfo = traceHistory[traceHistory.Length - 2];
                                Vector3 lastSecondPos = mapRoot_.GetPositionOnMap(lastSecondInfo.mapId);
                                lastSecondFootprint.set_localPosition(new Vector3(lastSecondPos.x + MarkerOffsetX, lastSecondPos.y + MarkerOffsetY, lastSecondPos.z));
                                lastSecondFootprint.get_gameObject().SetActive(true);
                            }
                        }
                        redCircle = ResourceUtility.Realizes(loadedCircle.loadedObject, map_, -1);
                        redCircle.set_localScale(new Vector3(0.6f, 0.6f, 0.6f));
                        battleIcon = ResourceUtility.Realizes(loadedBattleIcon.loadedObject, map_, -1);
                        if (mapRoot_.showBattleMarker)
                        {
                            int bossMapId = MonoBehaviourSingleton <QuestManager> .I.GetExploreBossAppearMapId();

                            Vector3 pos = mapRoot_.GetPositionOnMap(bossMapId);
                            redCircle.set_localPosition(pos);
                            battleIcon.set_localPosition(new Vector3(pos.x + MarkerOffsetX, pos.y + MarkerOffsetY, pos.z));
                            TweenAlpha tweenAlpha = redCircle.GetComponent <TweenAlpha>();
                            if (null != tweenAlpha)
                            {
                                tweenAlpha.from = tweenAlpha.to;
                            }
                            redCircle.get_gameObject().SetActive(true);
                            battleIcon.get_gameObject().SetActive(true);
                        }
                        else
                        {
                            redCircle.get_gameObject().SetActive(false);
                            battleIcon.get_gameObject().SetActive(false);
                        }
                        base.Initialize();
                    }
                }
            }
        }
    }
Пример #24
0
    private IEnumerator DoInitialize()
    {
        eventData = (SectionEventData)GameSection.GetEventData();
        FieldMapTable.PortalTableData portal = Singleton <FieldMapTable> .I.GetPortalData(MonoBehaviourSingleton <FieldManager> .I.currentPortalID);

        FieldMapTable.FieldMapTableData mapA = Singleton <FieldMapTable> .I.GetFieldMapData(portal.srcMapID);

        FieldMapTable.FieldMapTableData mapB = Singleton <FieldMapTable> .I.GetFieldMapData(portal.dstMapID);

        fromRegionID = mapA.regionId;
        toRegionID   = mapB.regionId;
        LoadingQueue loadQueue            = new LoadingQueue(this);
        LoadObject   loadedWorldMap       = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "WorldMap", false);
        LoadObject   loadedRegionSpotRoot = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "RegionSpotRoot", false);
        LoadObject   loadedRegionSpot     = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "RegionSpot", false);
        LoadObject   loadedPlayerMarker   = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "PlayerMarker", false);
        LoadObject   loadedMapGlowEffectA = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "MapGlowEffectA", false);
        LoadObject   loadedMapGlowEffectB = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "MapGlowEffectB", false);
        LoadObject   loadedTelop          = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "TelopOpenRegion", false);

        loadQueue.CacheSE(SE_ID_LOGO, null);
        loadQueue.CacheSE(SE_ID_SMOKE, null);
        uint[] openedRegionids = MonoBehaviourSingleton <WorldMapManager> .I.GetOpenRegionIdListInWorldMap();

        if (openedRegionids.Length == 0)
        {
            openedRegionids = new uint[1];
        }
        LoadObject[] regionAreaLOs    = new LoadObject[openedRegionids.Length];
        string       newRegionIcon    = ResourceName.GetRegionIcon(0);
        string       passedRegionIcon = ResourceName.GetRegionIcon(1);
        int          lastIndex        = openedRegionids.Length - 1;

        openedRegionInfo = new OpendRegionInfo[openedRegionids.Length];
        for (int j = 0; j < openedRegionids.Length; j++)
        {
            RegionTable.Data data = Singleton <RegionTable> .I.GetData(openedRegionids[j]);

            if (!data.hasParentRegion())
            {
                string iconName = passedRegionIcon;
                if (lastIndex == j)
                {
                    iconName = newRegionIcon;
                }
                LoadObject loadedObj = loadQueue.Load(RESOURCE_CATEGORY.REGION_ICON, iconName, false);
                openedRegionInfo[j] = new OpendRegionInfo(data, loadedObj);
                if (j != 0)
                {
                    regionAreaLOs[j] = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "WorldMapPart" + openedRegionids[j].ToString("D3"), false);
                }
            }
        }
        LoadObject loadedMaterial = null;

        if (!eventData.IsOnlyCameraMoveEvent())
        {
            loadedMaterial = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "WorldMapPartGlow" + toRegionID.ToString("D3"), false);
        }
        if (loadQueue.IsLoading())
        {
            yield return((object)loadQueue.Wait());
        }
        worldMapUIRoot = ResourceUtility.Realizes(loadedWorldMap.loadedObject, MonoBehaviourSingleton <AppMain> .I._transform, -1).get_gameObject();
        worldMapCamera = worldMapUIRoot.get_transform().Find("Camera").GetComponent <WorldMapCameraController>();
        worldMapCamera.isInteractive = false;
        worldMapObject = worldMapUIRoot.get_transform().FindChild("Map");
        spots          = new SpotManager(loadedRegionSpotRoot.loadedObject as GameObject, loadedRegionSpot.loadedObject as GameObject, worldMapCamera._camera);
        spots.CreateSpotRoot();
        GameObject bg = spots.spotRootTransform.Find("BG").get_gameObject();

        bg.get_gameObject().SetActive(true);
        bgEventListener = UIEventListener.Get(bg);
        spots.spotRootTransform.Find("TaptoSkip").get_gameObject().SetActive(true);
        mapGlowEffectA = ResourceUtility.Realizes(loadedMapGlowEffectA.loadedObject, worldMapObject, -1);
        mapGlowEffectA.get_gameObject().SetActive(false);
        mapGlowEffectParticleA = mapGlowEffectA.GetComponent <ParticleSystem>();
        mapGlowEffectB         = ResourceUtility.Realizes(loadedMapGlowEffectB.loadedObject, worldMapObject, -1);
        mapGlowEffectB.get_gameObject().SetActive(false);
        mapGlowEffectParticleB = mapGlowEffectB.GetComponent <ParticleSystem>();
        playerMarker           = ResourceUtility.Realizes(loadedPlayerMarker.loadedObject, base._transform, -1);
        playerMarker.get_gameObject().SetActive(false);
        if (loadedMaterial != null)
        {
            glowMaterial = (loadedMaterial.loadedObject as Material);
        }
        regionAreas = (Transform[])new Transform[regionAreaLOs.Length];
        for (int i = 0; i < regionAreaLOs.Length; i++)
        {
            LoadObject areaLO = regionAreaLOs[i];
            if (areaLO != null && null != areaLO.loadedObject)
            {
                Transform regionArea = ResourceUtility.Realizes(areaLO.loadedObject, worldMapObject, -1);
                if (i == toRegionID)
                {
                    if (eventData.IsOnlyCameraMoveEvent())
                    {
                        regionArea.get_gameObject().SetActive(true);
                    }
                    else
                    {
                        regionArea.get_gameObject().SetActive(false);
                    }
                    mapGlowEffectA.SetParent(regionArea);
                    mapGlowEffectA.set_localPosition(new Vector3(0f, 0f, 0f));
                    mapGlowEffectB.SetParent(regionArea);
                    mapGlowEffectB.set_localPosition(new Vector3(0f, 0f, 0f));
                    ShapeModule module     = mapGlowEffectParticleB.get_shape();
                    MeshFilter  meshFilter = regionArea.GetComponent <MeshFilter>();
                    module.set_mesh(meshFilter.get_sharedMesh());
                    glowRegionTop = ResourceUtility.Realizes(areaLO.loadedObject, worldMapObject, -1);
                    glowRegionTop.get_gameObject().SetActive(false);
                    glowRegionTop.set_localPosition(glowRegionTop.get_localPosition() + new Vector3(0f, 0f, 0.001f));
                    glowRegionTop.set_localScale(new Vector3(1.1f, 1.1f, 1.1f));
                    glowRegionTop.GetComponent <Renderer>().set_material(glowMaterial);
                }
                else
                {
                    regionArea.get_gameObject().SetActive(true);
                }
                regionAreas[i] = regionArea;
            }
        }
        telop = ResourceUtility.Realizes(loadedTelop.loadedObject, spots.spotRootTransform, -1);
        Transform closeBtn = Utility.Find(spots.spotRootTransform, "CLOSE_BTN");

        if (null != closeBtn)
        {
            closeBtn.get_gameObject().SetActive(false);
        }
        if (MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSceneName() == "InGameScene")
        {
            MonoBehaviourSingleton <ScreenOrientationManager> .I.OnScreenRotate += InitMapSprite;
        }
        base.Initialize();
    }