From a272675705e40330c25ed63c32971b500d929298 Mon Sep 17 00:00:00 2001 From: smoogipooo Date: Tue, 21 Mar 2017 21:18:08 +0900 Subject: [PATCH] Parse time signature from legacy beatmap control points. --- osu.Game/Beatmaps/Formats/OsuLegacyDecoder.cs | 3 ++- osu.Game/Beatmaps/Timing/ControlPoint.cs | 8 +------- osu.Game/Beatmaps/Timing/TimeSignatures.cs | 11 +++++++++++ osu.Game/osu.Game.csproj | 1 + 4 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 osu.Game/Beatmaps/Timing/TimeSignatures.cs diff --git a/osu.Game/Beatmaps/Formats/OsuLegacyDecoder.cs b/osu.Game/Beatmaps/Formats/OsuLegacyDecoder.cs index af90e35da7..20b977499e 100644 --- a/osu.Game/Beatmaps/Formats/OsuLegacyDecoder.cs +++ b/osu.Game/Beatmaps/Formats/OsuLegacyDecoder.cs @@ -207,7 +207,8 @@ namespace osu.Game.Beatmaps.Formats VelocityAdjustment = beatLength < 0 ? -beatLength / 100.0 : 1, TimingChange = split.Length <= 6 || split[6][0] == '1', KiaiMode = (effectFlags & 1) > 0, - OmitFirstBarLine = (effectFlags & 8) > 0 + OmitFirstBarLine = (effectFlags & 8) > 0, + TimeSignature = (TimeSignatures)int.Parse(split[2]) }; } diff --git a/osu.Game/Beatmaps/Timing/ControlPoint.cs b/osu.Game/Beatmaps/Timing/ControlPoint.cs index e323412f81..40320a88d7 100644 --- a/osu.Game/Beatmaps/Timing/ControlPoint.cs +++ b/osu.Game/Beatmaps/Timing/ControlPoint.cs @@ -11,18 +11,12 @@ namespace osu.Game.Beatmaps.Timing TimingChange = true, }; + public TimeSignatures TimeSignature; public double Time; public double BeatLength; public double VelocityAdjustment; public bool TimingChange; public bool KiaiMode; public bool OmitFirstBarLine; - - } - - internal enum TimeSignatures - { - SimpleQuadruple = 4, - SimpleTriple = 3 } } diff --git a/osu.Game/Beatmaps/Timing/TimeSignatures.cs b/osu.Game/Beatmaps/Timing/TimeSignatures.cs new file mode 100644 index 0000000000..94b36591f5 --- /dev/null +++ b/osu.Game/Beatmaps/Timing/TimeSignatures.cs @@ -0,0 +1,11 @@ +// Copyright (c) 2007-2017 ppy Pty Ltd . +// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE + +namespace osu.Game.Beatmaps.Timing +{ + public enum TimeSignatures + { + SimpleQuadruple = 4, + SimpleTriple = 3 + } +} \ No newline at end of file diff --git a/osu.Game/osu.Game.csproj b/osu.Game/osu.Game.csproj index 188d929888..50809cddf7 100644 --- a/osu.Game/osu.Game.csproj +++ b/osu.Game/osu.Game.csproj @@ -76,6 +76,7 @@ +