mirror of
https://github.com/ppy/osu.git
synced 2024-12-05 03:03:21 +08:00
Fix score no longer being saved when quick-restarting after pass
This commit is contained in:
parent
1d610a0f1b
commit
9140893249
@ -21,7 +21,7 @@ namespace osu.Game.Tests.Visual.Mods
|
||||
protected override TestPlayer CreateModPlayer(Ruleset ruleset)
|
||||
{
|
||||
var player = base.CreateModPlayer(ruleset);
|
||||
player.RestartRequested = _ => restartRequested = true;
|
||||
player.PrepareLoaderForRestart = _ => restartRequested = true;
|
||||
return player;
|
||||
}
|
||||
|
||||
|
@ -83,7 +83,7 @@ namespace osu.Game.Screens.Play
|
||||
/// </summary>
|
||||
protected virtual bool PauseOnFocusLost => true;
|
||||
|
||||
public Action<bool> RestartRequested;
|
||||
public Action<bool> PrepareLoaderForRestart;
|
||||
|
||||
private bool isRestarting;
|
||||
private bool skipExitTransition;
|
||||
@ -719,12 +719,8 @@ namespace osu.Game.Screens.Play
|
||||
// stopping here is to ensure music doesn't become audible after exiting back to PlayerLoader.
|
||||
musicController.Stop();
|
||||
|
||||
if (RestartRequested != null)
|
||||
{
|
||||
skipExitTransition = quickRestart;
|
||||
RestartRequested?.Invoke(quickRestart);
|
||||
return true;
|
||||
}
|
||||
skipExitTransition = quickRestart;
|
||||
PrepareLoaderForRestart?.Invoke(quickRestart);
|
||||
|
||||
return PerformExit(quickRestart);
|
||||
}
|
||||
|
@ -457,7 +457,7 @@ namespace osu.Game.Screens.Play
|
||||
CurrentPlayer = createPlayer();
|
||||
CurrentPlayer.Configuration.AutomaticallySkipIntro |= quickRestart;
|
||||
CurrentPlayer.RestartCount = restartCount++;
|
||||
CurrentPlayer.RestartRequested = restartRequested;
|
||||
CurrentPlayer.PrepareLoaderForRestart = prepareForRestart;
|
||||
|
||||
LoadTask = LoadComponentAsync(CurrentPlayer, _ =>
|
||||
{
|
||||
@ -470,13 +470,11 @@ namespace osu.Game.Screens.Play
|
||||
{
|
||||
}
|
||||
|
||||
private void restartRequested(bool quickRestartRequested)
|
||||
private void prepareForRestart(bool quickRestartRequested)
|
||||
{
|
||||
quickRestart = quickRestartRequested;
|
||||
hideOverlays = true;
|
||||
ValidForResume = true;
|
||||
|
||||
this.MakeCurrent();
|
||||
}
|
||||
|
||||
private void contentIn(double delayBeforeSideDisplays = 0)
|
||||
|
Loading…
Reference in New Issue
Block a user