mirror of
https://github.com/osukey/osukey.git
synced 2025-08-04 07:06:35 +09:00
Merge branch 'master' into scrolling-lifetime-safety
This commit is contained in:
@ -3,6 +3,7 @@
|
||||
|
||||
using osu.Game.Beatmaps;
|
||||
using osu.Game.Replays;
|
||||
using osu.Game.Rulesets.Objects;
|
||||
|
||||
namespace osu.Game.Rulesets.Replays
|
||||
{
|
||||
@ -34,5 +35,13 @@ namespace osu.Game.Rulesets.Replays
|
||||
protected const double KEY_UP_DELAY = 50;
|
||||
|
||||
#endregion
|
||||
|
||||
protected virtual HitObject GetNextObject(int currentIndex)
|
||||
{
|
||||
if (currentIndex >= Beatmap.HitObjects.Count - 1)
|
||||
return null;
|
||||
|
||||
return Beatmap.HitObjects[currentIndex + 1];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ namespace osu.Game.Rulesets
|
||||
public IRulesetConfigManager GetConfigFor(Ruleset ruleset)
|
||||
{
|
||||
if (ruleset.RulesetInfo.ID == null)
|
||||
throw new InvalidOperationException("The provided ruleset doesn't have a valid id.");
|
||||
return null;
|
||||
|
||||
return configCache.GetOrAdd(ruleset.RulesetInfo.ID.Value, _ => ruleset.CreateConfig(settingsStore));
|
||||
}
|
||||
|
@ -62,13 +62,20 @@ namespace osu.Game.Rulesets.UI
|
||||
|
||||
public override GameplayClock FrameStableClock => frameStabilityContainer.GameplayClock;
|
||||
|
||||
private bool frameStablePlayback = true;
|
||||
|
||||
/// <summary>
|
||||
/// Whether to enable frame-stable playback.
|
||||
/// </summary>
|
||||
internal bool FrameStablePlayback
|
||||
{
|
||||
get => frameStabilityContainer.FrameStablePlayback;
|
||||
set => frameStabilityContainer.FrameStablePlayback = value;
|
||||
get => frameStablePlayback;
|
||||
set
|
||||
{
|
||||
frameStablePlayback = false;
|
||||
if (frameStabilityContainer != null)
|
||||
frameStabilityContainer.FrameStablePlayback = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -156,6 +163,7 @@ namespace osu.Game.Rulesets.UI
|
||||
{
|
||||
frameStabilityContainer = new FrameStabilityContainer(GameplayStartTime)
|
||||
{
|
||||
FrameStablePlayback = FrameStablePlayback,
|
||||
Child = KeyBindingInputManager
|
||||
.WithChild(CreatePlayfieldAdjustmentContainer()
|
||||
.WithChild(Playfield)
|
||||
|
Reference in New Issue
Block a user