1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-21 20:07:25 +08:00

Use nullable doubule to better represent initial playback case

This commit is contained in:
Dean Herbert 2021-01-08 14:05:22 +09:00
parent 8f52a83b29
commit 11801d61c1
2 changed files with 4 additions and 4 deletions

View File

@ -16,7 +16,7 @@ namespace osu.Game.Configuration
{
Set(Static.LoginOverlayDisplayed, false);
Set(Static.MutedAudioNotificationShownOnce, false);
Set(Static.LastHoverSoundPlaybackTime, 0.0);
Set(Static.LastHoverSoundPlaybackTime, (double?)0.0);
Set<APISeasonalBackgrounds>(Static.SeasonalBackgrounds, null);
}
}

View File

@ -29,7 +29,7 @@ namespace osu.Game.Graphics.UserInterface
protected readonly HoverSampleSet SampleSet;
private Bindable<double> lastPlaybackTime;
private Bindable<double?> lastPlaybackTime;
public HoverSounds(HoverSampleSet sampleSet = HoverSampleSet.Normal)
{
@ -40,7 +40,7 @@ namespace osu.Game.Graphics.UserInterface
[BackgroundDependencyLoader]
private void load(AudioManager audio, SessionStatics statics)
{
lastPlaybackTime = statics.GetBindable<double>(Static.LastHoverSoundPlaybackTime);
lastPlaybackTime = statics.GetBindable<double?>(Static.LastHoverSoundPlaybackTime);
sampleHover = audio.Samples.Get($@"UI/generic-hover{SampleSet.GetDescription()}");
}
@ -48,7 +48,7 @@ namespace osu.Game.Graphics.UserInterface
protected override bool OnHover(HoverEvent e)
{
bool requiresDebounce = HoverDebounceTime <= 0;
bool enoughTimePassedSinceLastPlayback = lastPlaybackTime.Value == 0 || Time.Current - lastPlaybackTime.Value > HoverDebounceTime;
bool enoughTimePassedSinceLastPlayback = !lastPlaybackTime.Value.HasValue || Time.Current - lastPlaybackTime.Value >= HoverDebounceTime;
if (!requiresDebounce || enoughTimePassedSinceLastPlayback)
{