mirror of
https://github.com/ppy/osu.git
synced 2025-01-07 00:42:54 +08:00
Merge pull request #8509 from bdach/fix-widescreen-storyboards
Support widescreen per-layer storyboard masking
This commit is contained in:
commit
f2416f15a3
@ -50,7 +50,7 @@ namespace osu.Game.Storyboards.Drawables
|
||||
|
||||
AddInternal(Content = new Container<DrawableStoryboardLayer>
|
||||
{
|
||||
Size = new Vector2(640, 480),
|
||||
RelativeSizeAxes = Axes.Both,
|
||||
Anchor = Anchor.Centre,
|
||||
Origin = Anchor.Centre,
|
||||
});
|
||||
|
@ -8,7 +8,7 @@ using osu.Framework.Graphics.Containers;
|
||||
|
||||
namespace osu.Game.Storyboards.Drawables
|
||||
{
|
||||
public class DrawableStoryboardLayer : LifetimeManagementContainer
|
||||
public class DrawableStoryboardLayer : CompositeDrawable
|
||||
{
|
||||
public StoryboardLayer Layer { get; }
|
||||
public bool Enabled;
|
||||
@ -23,17 +23,34 @@ namespace osu.Game.Storyboards.Drawables
|
||||
Origin = Anchor.Centre;
|
||||
Enabled = layer.VisibleWhenPassing;
|
||||
Masking = layer.Masking;
|
||||
|
||||
InternalChild = new LayerElementContainer(layer);
|
||||
}
|
||||
|
||||
[BackgroundDependencyLoader]
|
||||
private void load(CancellationToken? cancellationToken)
|
||||
private class LayerElementContainer : LifetimeManagementContainer
|
||||
{
|
||||
foreach (var element in Layer.Elements)
|
||||
{
|
||||
cancellationToken?.ThrowIfCancellationRequested();
|
||||
private readonly StoryboardLayer storyboardLayer;
|
||||
|
||||
if (element.IsDrawable)
|
||||
AddInternal(element.CreateDrawable());
|
||||
public LayerElementContainer(StoryboardLayer layer)
|
||||
{
|
||||
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