Exemplo n.º 1
0
		public static LevelInfo[] getLevels(ESingleplayerMapCategory categoryFilter)
		{
			List<LevelInfo> list = new List<LevelInfo>();
			string[] folders = ReadWrite.getFolders("/Maps");
			for (int i = 0; i < folders.Length; i++)
			{
				LevelInfo level = Level.getLevel(folders[i], false);
				if (level != null && !(level.name.ToLower() == "tutorial"))
				{
					if (Level.doesLevelPassFilter(level, categoryFilter))
					{
						list.Add(level);
					}
				}
			}
			if (Provider.provider.workshopService.ugc != null)
			{
				for (int j = 0; j < Provider.provider.workshopService.ugc.Count; j++)
				{
					SteamContent steamContent = Provider.provider.workshopService.ugc[j];
					if (steamContent.type == ESteamUGCType.MAP)
					{
						LevelInfo level2 = Level.getLevel(ReadWrite.folderFound(steamContent.path, false), false);
						if (level2 != null)
						{
							level2.isFromWorkshop = true;
							if (Level.doesLevelPassFilter(level2, categoryFilter))
							{
								list.Add(level2);
							}
						}
					}
				}
			}
			else
			{
				string[] folders2 = ReadWrite.getFolders("/Bundles/Workshop/Maps");
				for (int k = 0; k < folders2.Length; k++)
				{
					LevelInfo level3 = Level.getLevel(folders2[k], false);
					if (level3 != null)
					{
						level3.isFromWorkshop = true;
						if (Level.doesLevelPassFilter(level3, categoryFilter))
						{
							list.Add(level3);
						}
					}
				}
				string[] folders3 = ReadWrite.getFolders(ServerSavedata.directory + "/" + Provider.serverID + "/Workshop/Maps");
				for (int l = 0; l < folders3.Length; l++)
				{
					LevelInfo level4 = Level.getLevel(folders3[l], false);
					if (level4 != null)
					{
						level4.isFromWorkshop = true;
						if (Level.doesLevelPassFilter(level4, categoryFilter))
						{
							list.Add(level4);
						}
					}
				}
				folders = ReadWrite.getFolders(ServerSavedata.directory + "/" + Provider.serverID + "/Maps");
				for (int m = 0; m < folders.Length; m++)
				{
					LevelInfo level5 = Level.getLevel(folders[m], false);
					if (level5 != null && !(level5.name.ToLower() == "tutorial"))
					{
						level5.isFromWorkshop = true;
						if (Level.doesLevelPassFilter(level5, categoryFilter))
						{
							list.Add(level5);
						}
					}
				}
			}
			return list.ToArray();
		}
Exemplo n.º 2
0
 public static string folderFound(string path)
 {
     return(ReadWrite.folderFound(path, true));
 }