1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-14 19:22:56 +08:00

Merge pull request #10451 from smoogipoo/fix-early-break-cull

Fix breaks being culled during beatmap parsing
This commit is contained in:
Bartłomiej Dach 2020-10-13 18:34:57 +02:00 committed by GitHub
commit 205c6606a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 7 deletions

View File

@ -307,12 +307,7 @@ namespace osu.Game.Beatmaps.Formats
double start = getOffsetTime(Parsing.ParseDouble(split[1]));
double end = Math.Max(start, getOffsetTime(Parsing.ParseDouble(split[2])));
var breakEvent = new BreakPeriod(start, end);
if (!breakEvent.HasEffect)
return;
beatmap.Breaks.Add(breakEvent);
beatmap.Breaks.Add(new BreakPeriod(start, end));
break;
}
}

View File

@ -28,7 +28,7 @@ namespace osu.Game.Beatmaps.Timing
public double Duration => EndTime - StartTime;
/// <summary>
/// Whether the break has any effect. Breaks that are too short are culled before they are added to the beatmap.
/// Whether the break has any effect.
/// </summary>
public bool HasEffect => Duration >= MIN_BREAK_DURATION;

View File

@ -107,6 +107,9 @@ namespace osu.Game.Rulesets.Mods
{
foreach (var breakPeriod in Breaks)
{
if (!breakPeriod.HasEffect)
continue;
if (breakPeriod.Duration < FLASHLIGHT_FADE_DURATION * 2) continue;
this.Delay(breakPeriod.StartTime + FLASHLIGHT_FADE_DURATION).FadeOutFromOne(FLASHLIGHT_FADE_DURATION);