private void CreateVisitedLocationSpot() { OutGameSettingsManager.QuestMap questMap = MonoBehaviourSingleton <OutGameSettingsManager> .I.questMap; MonoBehaviourSingleton <FilterManager> .I.StopBlur(questMap.cameraMoveTime, 0f); for (int i = 0; i < regionMapRoot.locations.Length; i++) { RegionMapLocation regionMapLocation = regionMapRoot.locations[i]; FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData((uint)regionMapLocation.mapId); if ((fieldMapData != null || regionMapLocation.mapId == 0) && (fieldMapData == null || FieldManager.IsShowPortal(fieldMapData.jumpPortalID))) { if (fieldMapData != null && !MonoBehaviourSingleton <FieldManager> .I.CanJumpToMap(fieldMapData)) { CreateLocationSpot(regionMapLocation, SpotManager.ICON_TYPE.NOT_OPENED, false); } else if (regionMapLocation.mapId == newMapData.mapID && !eventData.IsOnlyCameraMoveEvent() && !eventData.IsEnterDungeon() && !eventData.IsQuestToField()) { CreateLocationSpot(regionMapLocation, SpotManager.ICON_TYPE.NOT_OPENED, false); } else { SpotManager.ICON_TYPE iCON_TYPE = SpotManager.ICON_TYPE.CLEARED; if (regionMapLocation.portal.Length > 0) { for (int j = 0; j < regionMapLocation.portal.Length; j++) { RegionMapPortal regionMapPortal = regionMapLocation.portal[j]; if (!regionMapPortal.IsVisited() && regionMapPortal.IsShow()) { iCON_TYPE = SpotManager.ICON_TYPE.NEW; break; } } } if (fieldMapData != null) { if (FieldManager.IsToHardPortal(fieldMapData.jumpPortalID)) { iCON_TYPE = SpotManager.ICON_TYPE.HARD; if (iCON_TYPE == SpotManager.ICON_TYPE.NEW) { iCON_TYPE = SpotManager.ICON_TYPE.HARD_NEW; } } if (fieldMapData.hasChildRegion && fieldMapData.childRegionId != regionId) { iCON_TYPE = SpotManager.ICON_TYPE.CHILD_REGION; } } CreateLocationSpot(regionMapLocation, iCON_TYPE, false); } } } }
private GameObject CreateLocationSpot(RegionMapLocation location, SpotManager.ICON_TYPE icon = SpotManager.ICON_TYPE.CLEARED, bool isNew = false) { //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Expected O, but got Unknown //IL_01bc: Unknown result type (might be due to invalid IL or missing references) //IL_01c1: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Unknown result type (might be due to invalid IL or missing references) //IL_01ee: Expected O, but got Unknown if (location.mapId == 0) { return(spots.AddSpot(0, MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSectionTextList().Find((GameSceneTables.TextData textData) => textData.key == "STR_HOME").text, location.get_transform().get_position(), SpotManager.ICON_TYPE.HOME, null, false, false, false, null, null, false, SpotManager.HAPPEN_CONDITION.NONE, 0)._transform.get_gameObject()); } FieldMapTable.FieldMapTableData fieldMapData = Singleton <FieldMapTable> .I.GetFieldMapData((uint)location.mapId); if (fieldMapData == null) { return(null); } bool canUnlockNewPortal = false; if (location.portal.Length > 0 && icon != SpotManager.ICON_TYPE.NOT_OPENED) { for (int i = 0; i < location.portal.Length; i++) { string s = location.get_name().Replace("location", string.Empty); int.TryParse(s, out int result); int[] locationNumbers = GetLocationNumbers(location.portal[i].get_name()); if (result == locationNumbers[0] && GameSaveData.instance.isNewReleasePortal((uint)location.portal[i].entranceId)) { if (!location.portal[i].IsVisited()) { canUnlockNewPortal = true; break; } GameSaveData.instance.newReleasePortals.Remove((uint)location.portal[i].entranceId); } if (result == locationNumbers[1] && GameSaveData.instance.isNewReleasePortal((uint)location.portal[i].exitId)) { if (!location.portal[i].IsVisited()) { canUnlockNewPortal = true; break; } GameSaveData.instance.newReleasePortals.Remove((uint)location.portal[i].exitId); } } } return(spots.AddSpot((int)fieldMapData.mapID, fieldMapData.mapName, location.get_transform().get_position(), icon, null, isNew, canUnlockNewPortal, false, fieldMapData.mapID, location.icon, false, SpotManager.HAPPEN_CONDITION.NONE, 0)._transform.get_gameObject()); }