private static async Task CreateLists(int mapCount, int playlistSize, IEnumerable <string> idList, CatType catType) { IEnumerable <Task> tasks = Enumerable.Range(0, (int)Math.Ceiling(mapCount / (double)playlistSize)) .Select(i => CreateBeatMapPlaylist(mapCount, playlistSize, idList, catType, i)); await Task.WhenAll(tasks); ProcessedBeatmapNotifier.SendNotification($"Playlist size: {playlistSize}, Category: {catType}, finished"); }
public async void CreatePlaylistOnClick() { LoadLoggingScene(); ProcessedBeatmapNotifier.SendNotification("Beatmap processing started..."); await PlaylistCreator.CreateAllLists(this.beatmapCount, this.playlistSize, this.catType); ProcessedBeatmapNotifier.SendNotification("All beatmaps processed."); BeatmapLog.SaveLog(); ProcessedBeatmapNotifier.SendNotification("You can view all new beatmaps in the log."); }
public async void OnClick() { LoadLoggingScene(); ProcessedBeatmapNotifier.SendNotification("Calculating max beatmap count..."); ProcessedBeatmapNotifier.SendNotification("Beatmap processing started..."); await CreateAllPlaylistCreators(CurrentBeatmapCount.CurrentMapCount); ProcessedBeatmapNotifier.SendNotification("All beatmaps processed."); BeatmapLog.SaveLog(); ProcessedBeatmapNotifier.SendNotification("You can view all new beatmaps in the log."); }
/// <summary> /// Initializes a new instance of the <see cref="BeatMapPlaylist" /> class. /// </summary> /// <param name="image"> The data of the jpg to be saved. </param> /// <param name="songs"> All Song id's. </param> /// <param name="fileNumber"> The playlist number. </param> /// <param name="playlistSize"> The amount of maps per file. </param> /// <param name="catType"> The category type. </param> public BeatMapPlaylist(byte[] image, IEnumerable <HashBase> songs, int fileNumber, int playlistSize, CatType catType) { this.playlistTitle = $"{catType} Part{fileNumber}"; this.image = Base64ImagePrefix + Convert.ToBase64String(image); this.songs = songs; this.playlistAuthor = "Rubiksmaster02"; string path = $"Playlists/BeatmapSize{playlistSize}/{catType}/"; Directory.CreateDirectory(path); path += $"{catType} part{fileNumber}"; if (Options.Default.UseOutputImage) { File.WriteAllBytes(path + ".jpg", image); } File.WriteAllText(path + ".bplist", JsonConvert.SerializeObject(this, Formatting.Indented)); ProcessedBeatmapNotifier.SendNotification( $"Playlist size: {playlistSize}, Category: {catType}, File number: {fileNumber}, has been processed."); }