protected WorkingBeatmap(BeatmapInfo beatmapInfo) { BeatmapInfo = beatmapInfo; BeatmapSetInfo = beatmapInfo.BeatmapSet; Metadata = beatmapInfo.Metadata ?? BeatmapSetInfo?.Metadata ?? new BeatmapMetadata(); Mods.ValueChanged += mods => applyRateAdjustments(); beatmap = new RecyclableLazy <IBeatmap>(() => { var b = GetBeatmap() ?? new Beatmap(); // use the database-backed info. b.BeatmapInfo = BeatmapInfo; return(b); }); track = new RecyclableLazy <Track>(() => { // we want to ensure that we always have a track, even if it's a fake one. var t = GetTrack() ?? new VirtualBeatmapTrack(Beatmap); applyRateAdjustments(t); return(t); }); background = new RecyclableLazy <Texture>(GetBackground, BackgroundStillValid); waveform = new RecyclableLazy <Waveform>(GetWaveform); storyboard = new RecyclableLazy <Storyboard>(GetStoryboard); skin = new RecyclableLazy <Skin>(GetSkin); }
protected WorkingBeatmap(BeatmapInfo beatmapInfo) { BeatmapInfo = beatmapInfo; BeatmapSetInfo = beatmapInfo.BeatmapSet; Metadata = beatmapInfo.Metadata ?? BeatmapSetInfo?.Metadata ?? new BeatmapMetadata(); Mods.ValueChanged += _ => applyRateAdjustments(); beatmap = new RecyclableLazy <IBeatmap>(() => { var b = GetBeatmap() ?? new Beatmap(); // The original beatmap version needs to be preserved as the database doesn't contain it BeatmapInfo.BeatmapVersion = b.BeatmapInfo.BeatmapVersion; // Use the database-backed info for more up-to-date values (beatmap id, ranked status, etc) b.BeatmapInfo = BeatmapInfo; return(b); }); track = new RecyclableLazy <Track>(() => { // we want to ensure that we always have a track, even if it's a fake one. var t = GetTrack() ?? new VirtualBeatmapTrack(Beatmap); applyRateAdjustments(t); return(t); }); background = new RecyclableLazy <Texture>(GetBackground, BackgroundStillValid); waveform = new RecyclableLazy <Waveform>(GetWaveform); storyboard = new RecyclableLazy <Storyboard>(GetStoryboard); skin = new RecyclableLazy <Skin>(GetSkin); }
protected WorkingBeatmap(BeatmapInfo beatmapInfo) { BeatmapInfo = beatmapInfo; BeatmapSetInfo = beatmapInfo.BeatmapSet; Metadata = beatmapInfo.Metadata ?? BeatmapSetInfo?.Metadata ?? new BeatmapMetadata(); beatmap = new RecyclableLazy <IBeatmap>(() => { var b = GetBeatmap() ?? new Beatmap(); // The original beatmap version needs to be preserved as the database doesn't contain it BeatmapInfo.BeatmapVersion = b.BeatmapInfo.BeatmapVersion; // Use the database-backed info for more up-to-date values (beatmap id, ranked status, etc) b.BeatmapInfo = BeatmapInfo; return(b); }); track = new RecyclableLazy <Track>(() => GetTrack() ?? new VirtualBeatmapTrack(Beatmap)); background = new RecyclableLazy <Texture>(GetBackground, BackgroundStillValid); waveform = new RecyclableLazy <Waveform>(GetWaveform); storyboard = new RecyclableLazy <Storyboard>(GetStoryboard); skin = new RecyclableLazy <Skin>(GetSkin); }
protected WorkingBeatmap(BeatmapInfo beatmapInfo, AudioManager audioManager) { AudioManager = audioManager; BeatmapInfo = beatmapInfo; BeatmapSetInfo = beatmapInfo.BeatmapSet; Metadata = beatmapInfo.Metadata ?? BeatmapSetInfo?.Metadata ?? new BeatmapMetadata(); background = new RecyclableLazy <Texture>(GetBackground, BackgroundStillValid); waveform = new RecyclableLazy <Waveform>(GetWaveform); storyboard = new RecyclableLazy <Storyboard>(GetStoryboard); skin = new RecyclableLazy <ISkin>(GetSkin); }
protected WorkingBeatmap(BeatmapInfo beatmapInfo, AudioManager audioManager) { AudioManager = audioManager; BeatmapInfo = beatmapInfo; BeatmapSetInfo = beatmapInfo.BeatmapSet; Metadata = beatmapInfo.Metadata ?? BeatmapSetInfo?.Metadata ?? new BeatmapMetadata(); track = new RecyclableLazy <Track>(() => GetTrack() ?? GetVirtualTrack(1000)); background = new RecyclableLazy <Texture>(GetBackground, BackgroundStillValid); waveform = new RecyclableLazy <Waveform>(GetWaveform); storyboard = new RecyclableLazy <Storyboard>(GetStoryboard); skin = new RecyclableLazy <ISkin>(GetSkin); total_count.Value++; }