diff --git a/osu.Game/Beatmaps/Beatmap.cs b/osu.Game/Beatmaps/Beatmap.cs
index 1ce01aee24..66b8f169ef 100644
--- a/osu.Game/Beatmaps/Beatmap.cs
+++ b/osu.Game/Beatmaps/Beatmap.cs
@@ -75,7 +75,7 @@ namespace osu.Game.Beatmaps
return mostCommon.beatLength;
}
- public int SnapTimeForDivisor(double time, int beatDivisor, double? referenceTime = null)
+ public int ClosestSnapTime(double time, int beatDivisor, double? referenceTime = null)
{
var timingPoint = ControlPointInfo.TimingPointAt(referenceTime ?? time);
var beatLength = timingPoint.BeatLength / beatDivisor;
@@ -84,14 +84,14 @@ namespace osu.Game.Beatmaps
return (int)(timingPoint.Time + beatLengths * beatLength);
}
- public int SnapTimeAnyDivisor(double time, double? referenceTime = null)
+ public int ClosestSnapTime(double time, double? referenceTime = null)
{
- return SnapTimeForDivisor(time, ClosestBeatSnapDivisor(time, referenceTime), referenceTime);
+ return ClosestSnapTime(time, ClosestBeatDivisor(time, referenceTime), referenceTime);
}
- public int ClosestBeatSnapDivisor(double time, double? referenceTime = null)
+ public int ClosestBeatDivisor(double time, double? referenceTime = null)
{
- double getUnsnap(int divisor) => Math.Abs(time - SnapTimeForDivisor(time, divisor, referenceTime));
+ double getUnsnap(int divisor) => Math.Abs(time - ClosestSnapTime(time, divisor, referenceTime));
int[] divisors = BindableBeatDivisor.VALID_DIVISORS;
double smallestUnsnap = divisors.Min(getUnsnap);
diff --git a/osu.Game/Beatmaps/IBeatmap.cs b/osu.Game/Beatmaps/IBeatmap.cs
index 3b043cb59b..679d639fd1 100644
--- a/osu.Game/Beatmaps/IBeatmap.cs
+++ b/osu.Game/Beatmaps/IBeatmap.cs
@@ -56,22 +56,22 @@ namespace osu.Game.Beatmaps
///
/// The time to find the closest snapped time to.
/// The beat divisor to snap to.
- /// The time at which the timing point is retrieved, by default same as time.
- int SnapTimeForDivisor(double time, int beatDivisor, double? referenceTime = null);
+ /// An optional reference point to use for timing point lookup.
+ int ClosestSnapTime(double time, int beatDivisor, double? referenceTime = null);
///
/// Returns the time on any valid beat divisor closest to the given time.
///
/// The time to find the closest snapped time to.
- /// The time at which the timing point is retrieved, by default same as time.
- int SnapTimeAnyDivisor(double time, double? referenceTime = null);
+ /// An optional reference point to use for timing point lookup.
+ int ClosestSnapTime(double time, double? referenceTime = null);
///
/// Returns the beat snap divisor closest to the given time. If two are equally close, the smallest is returned.
///
/// The time to find the closest beat snap divisor to.
- /// The time at which the timing point is retrieved, by default same as time.
- int ClosestBeatSnapDivisor(double time, double? referenceTime = null);
+ /// An optional reference point to use for timing point lookup.
+ int ClosestBeatDivisor(double time, double? referenceTime = null);
///
/// Creates a shallow-clone of this beatmap and returns it.
diff --git a/osu.Game/Rulesets/Edit/Checks/CheckUnsnaps.cs b/osu.Game/Rulesets/Edit/Checks/CheckUnsnaps.cs
index d15dc6f179..ca268652a9 100644
--- a/osu.Game/Rulesets/Edit/Checks/CheckUnsnaps.cs
+++ b/osu.Game/Rulesets/Edit/Checks/CheckUnsnaps.cs
@@ -26,7 +26,7 @@ namespace osu.Game.Rulesets.Edit.Checks
{
foreach (var hitobject in playableBeatmap.HitObjects)
{
- double startUnsnap = hitobject.StartTime - playableBeatmap.SnapTimeAnyDivisor(hitobject.StartTime);
+ double startUnsnap = hitobject.StartTime - playableBeatmap.ClosestSnapTime(hitobject.StartTime);
string startPostfix = hitobject is IHasDuration ? "start" : "";
foreach (var issue in getUnsnapIssues(hitobject, startUnsnap, hitobject.StartTime, startPostfix))
yield return issue;
@@ -37,7 +37,7 @@ namespace osu.Game.Rulesets.Edit.Checks
{
double spanDuration = hasRepeats.Duration / (hasRepeats.RepeatCount + 1);
double repeatTime = hitobject.StartTime + spanDuration * (repeatIndex + 1);
- double repeatUnsnap = repeatTime - playableBeatmap.SnapTimeAnyDivisor(repeatTime);
+ double repeatUnsnap = repeatTime - playableBeatmap.ClosestSnapTime(repeatTime);
foreach (var issue in getUnsnapIssues(hitobject, repeatUnsnap, repeatTime, "repeat"))
yield return issue;
}
@@ -45,7 +45,7 @@ namespace osu.Game.Rulesets.Edit.Checks
if (hitobject is IHasDuration hasDuration)
{
- double endUnsnap = hasDuration.EndTime - playableBeatmap.SnapTimeAnyDivisor(hasDuration.EndTime);
+ double endUnsnap = hasDuration.EndTime - playableBeatmap.ClosestSnapTime(hasDuration.EndTime);
foreach (var issue in getUnsnapIssues(hitobject, endUnsnap, hasDuration.EndTime, "end"))
yield return issue;
}
diff --git a/osu.Game/Screens/Edit/EditorBeatmap.cs b/osu.Game/Screens/Edit/EditorBeatmap.cs
index 9334814e2a..72fb0ac9e9 100644
--- a/osu.Game/Screens/Edit/EditorBeatmap.cs
+++ b/osu.Game/Screens/Edit/EditorBeatmap.cs
@@ -301,16 +301,16 @@ namespace osu.Game.Screens.Edit
return list.Count - 1;
}
- public int SnapTimeForDivisor(double time, int beatDivisor, double? referenceTime = null)
+ public int ClosestSnapTime(double time, int beatDivisor, double? referenceTime = null)
{
- return PlayableBeatmap.SnapTimeForDivisor(time, beatDivisor, referenceTime);
+ return PlayableBeatmap.ClosestSnapTime(time, beatDivisor, referenceTime);
}
- public int SnapTimeAnyDivisor(double time, double? referenceTime = null) => PlayableBeatmap.SnapTimeAnyDivisor(time, referenceTime);
+ public int ClosestSnapTime(double time, double? referenceTime = null) => PlayableBeatmap.ClosestSnapTime(time, referenceTime);
- public int ClosestBeatSnapDivisor(double time, double? referenceTime = null) => PlayableBeatmap.ClosestBeatSnapDivisor(time, referenceTime);
+ public int ClosestBeatDivisor(double time, double? referenceTime = null) => PlayableBeatmap.ClosestBeatDivisor(time, referenceTime);
- public double SnapTime(double time, double? referenceTime) => SnapTimeForDivisor(time, BeatDivisor, referenceTime);
+ public double SnapTime(double time, double? referenceTime) => ClosestSnapTime(time, BeatDivisor, referenceTime);
public double GetBeatLengthAtTime(double referenceTime) => ControlPointInfo.TimingPointAt(referenceTime).BeatLength / BeatDivisor;
diff --git a/osu.Game/Screens/Play/GameplayBeatmap.cs b/osu.Game/Screens/Play/GameplayBeatmap.cs
index a3a2bbd41b..92f58c8759 100644
--- a/osu.Game/Screens/Play/GameplayBeatmap.cs
+++ b/osu.Game/Screens/Play/GameplayBeatmap.cs
@@ -45,14 +45,14 @@ namespace osu.Game.Screens.Play
public double GetMostCommonBeatLength() => PlayableBeatmap.GetMostCommonBeatLength();
- public int SnapTimeForDivisor(double time, int beatDivisor, double? referenceTime = null)
+ public int ClosestSnapTime(double time, int beatDivisor, double? referenceTime = null)
{
- return PlayableBeatmap.SnapTimeForDivisor(time, beatDivisor, referenceTime);
+ return PlayableBeatmap.ClosestSnapTime(time, beatDivisor, referenceTime);
}
- public int SnapTimeAnyDivisor(double time, double? referenceTime = null) => PlayableBeatmap.SnapTimeAnyDivisor(time, referenceTime);
+ public int ClosestSnapTime(double time, double? referenceTime = null) => PlayableBeatmap.ClosestSnapTime(time, referenceTime);
- public int ClosestBeatSnapDivisor(double time, double? referenceTime = null) => PlayableBeatmap.ClosestBeatSnapDivisor(time, referenceTime);
+ public int ClosestBeatDivisor(double time, double? referenceTime = null) => PlayableBeatmap.ClosestBeatDivisor(time, referenceTime);
public IBeatmap Clone() => PlayableBeatmap.Clone();