mirror of
https://github.com/ppy/osu.git
synced 2025-01-23 03:02:55 +08:00
Merge branch 'master' into fix-relax-mod-keypresses
This commit is contained in:
commit
7ff3a1d28d
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
@ -62,6 +62,11 @@ namespace osu.Game.Rulesets.Osu.Skinning
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
bool overlayAboveNumber = skin.GetConfig<OsuSkinConfiguration, bool>(OsuSkinConfiguration.HitCircleOverlayAboveNumber)?.Value ?? true;
|
||||||
|
|
||||||
|
if (!overlayAboveNumber)
|
||||||
|
ChangeInternalChildDepth(hitCircleText, -float.MaxValue);
|
||||||
|
|
||||||
state.BindTo(drawableObject.State);
|
state.BindTo(drawableObject.State);
|
||||||
state.BindValueChanged(updateState, true);
|
state.BindValueChanged(updateState, true);
|
||||||
|
|
||||||
|
@ -11,6 +11,7 @@ namespace osu.Game.Rulesets.Osu.Skinning
|
|||||||
SliderPathRadius,
|
SliderPathRadius,
|
||||||
AllowSliderBallTint,
|
AllowSliderBallTint,
|
||||||
CursorExpand,
|
CursorExpand,
|
||||||
CursorRotate
|
CursorRotate,
|
||||||
|
HitCircleOverlayAboveNumber
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -28,10 +28,11 @@ namespace osu.Game.Scoring.Legacy
|
|||||||
{
|
{
|
||||||
var score = new Score
|
var score = new Score
|
||||||
{
|
{
|
||||||
ScoreInfo = new ScoreInfo(),
|
|
||||||
Replay = new Replay()
|
Replay = new Replay()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
WorkingBeatmap workingBeatmap;
|
||||||
|
|
||||||
using (SerializationReader sr = new SerializationReader(stream))
|
using (SerializationReader sr = new SerializationReader(stream))
|
||||||
{
|
{
|
||||||
currentRuleset = GetRuleset(sr.ReadByte());
|
currentRuleset = GetRuleset(sr.ReadByte());
|
||||||
@ -41,7 +42,7 @@ namespace osu.Game.Scoring.Legacy
|
|||||||
|
|
||||||
var version = sr.ReadInt32();
|
var version = sr.ReadInt32();
|
||||||
|
|
||||||
var workingBeatmap = GetBeatmap(sr.ReadString());
|
workingBeatmap = GetBeatmap(sr.ReadString());
|
||||||
if (workingBeatmap is DummyWorkingBeatmap)
|
if (workingBeatmap is DummyWorkingBeatmap)
|
||||||
throw new BeatmapNotFoundException();
|
throw new BeatmapNotFoundException();
|
||||||
|
|
||||||
@ -113,6 +114,10 @@ namespace osu.Game.Scoring.Legacy
|
|||||||
|
|
||||||
CalculateAccuracy(score.ScoreInfo);
|
CalculateAccuracy(score.ScoreInfo);
|
||||||
|
|
||||||
|
// before returning for database import, we must restore the database-sourced BeatmapInfo.
|
||||||
|
// if not, the clone operation in GetPlayableBeatmap will cause a dereference and subsequent database exception.
|
||||||
|
score.ScoreInfo.Beatmap = workingBeatmap.BeatmapInfo;
|
||||||
|
|
||||||
return score;
|
return score;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ namespace osu.Game.Storyboards.Drawables
|
|||||||
|
|
||||||
AddInternal(Content = new Container<DrawableStoryboardLayer>
|
AddInternal(Content = new Container<DrawableStoryboardLayer>
|
||||||
{
|
{
|
||||||
Size = new Vector2(640, 480),
|
RelativeSizeAxes = Axes.Both,
|
||||||
Anchor = Anchor.Centre,
|
Anchor = Anchor.Centre,
|
||||||
Origin = Anchor.Centre,
|
Origin = Anchor.Centre,
|
||||||
});
|
});
|
||||||
|
@ -8,7 +8,7 @@ using osu.Framework.Graphics.Containers;
|
|||||||
|
|
||||||
namespace osu.Game.Storyboards.Drawables
|
namespace osu.Game.Storyboards.Drawables
|
||||||
{
|
{
|
||||||
public class DrawableStoryboardLayer : LifetimeManagementContainer
|
public class DrawableStoryboardLayer : CompositeDrawable
|
||||||
{
|
{
|
||||||
public StoryboardLayer Layer { get; }
|
public StoryboardLayer Layer { get; }
|
||||||
public bool Enabled;
|
public bool Enabled;
|
||||||
@ -23,17 +23,34 @@ namespace osu.Game.Storyboards.Drawables
|
|||||||
Origin = Anchor.Centre;
|
Origin = Anchor.Centre;
|
||||||
Enabled = layer.VisibleWhenPassing;
|
Enabled = layer.VisibleWhenPassing;
|
||||||
Masking = layer.Masking;
|
Masking = layer.Masking;
|
||||||
|
|
||||||
|
InternalChild = new LayerElementContainer(layer);
|
||||||
}
|
}
|
||||||
|
|
||||||
[BackgroundDependencyLoader]
|
private class LayerElementContainer : LifetimeManagementContainer
|
||||||
private void load(CancellationToken? cancellationToken)
|
|
||||||
{
|
{
|
||||||
foreach (var element in Layer.Elements)
|
private readonly StoryboardLayer storyboardLayer;
|
||||||
{
|
|
||||||
cancellationToken?.ThrowIfCancellationRequested();
|
|
||||||
|
|
||||||
if (element.IsDrawable)
|
public LayerElementContainer(StoryboardLayer layer)
|
||||||
AddInternal(element.CreateDrawable());
|
{
|
||||||
|
storyboardLayer = layer;
|
||||||
|
|
||||||
|
Width = 640;
|
||||||
|
Height = 480;
|
||||||
|
Anchor = Anchor.Centre;
|
||||||
|
Origin = Anchor.Centre;
|
||||||
|
}
|
||||||
|
|
||||||
|
[BackgroundDependencyLoader]
|
||||||
|
private void load(CancellationToken? cancellationToken)
|
||||||
|
{
|
||||||
|
foreach (var element in storyboardLayer.Elements)
|
||||||
|
{
|
||||||
|
cancellationToken?.ThrowIfCancellationRequested();
|
||||||
|
|
||||||
|
if (element.IsDrawable)
|
||||||
|
AddInternal(element.CreateDrawable());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user