diff --git a/osu.Game/Screens/Play/HUDOverlay.cs b/osu.Game/Screens/Play/HUDOverlay.cs index 37a96dc96c..1fdeaba1e6 100644 --- a/osu.Game/Screens/Play/HUDOverlay.cs +++ b/osu.Game/Screens/Play/HUDOverlay.cs @@ -115,7 +115,7 @@ namespace osu.Game.Screens.Play //Needs to be initialized before skinnable drawables. tally = new JudgementTally(), mainComponents = new HUDComponentsContainer { AlwaysPresent = true, }, - rulesetComponents = new HUDComponentsContainer(drawableRuleset.Ruleset) { AlwaysPresent = true, }, + rulesetComponents = new HUDComponentsContainer(drawableRuleset.Ruleset.RulesetInfo) { AlwaysPresent = true, }, topRightElements = new FillFlowContainer { Anchor = Anchor.TopRight, @@ -399,7 +399,7 @@ namespace osu.Game.Screens.Play [Resolved] private OsuConfigManager config { get; set; } - public HUDComponentsContainer([CanBeNull] Ruleset ruleset = null) + public HUDComponentsContainer([CanBeNull] RulesetInfo ruleset = null) : base(new SkinComponentsContainerLookup(SkinComponentsContainerLookup.TargetArea.MainHUDComponents, ruleset)) { RelativeSizeAxes = Axes.Both; diff --git a/osu.Game/Skinning/SkinComponentsContainerLookup.cs b/osu.Game/Skinning/SkinComponentsContainerLookup.cs index 90384d7a4d..f6c462ddaa 100644 --- a/osu.Game/Skinning/SkinComponentsContainerLookup.cs +++ b/osu.Game/Skinning/SkinComponentsContainerLookup.cs @@ -15,11 +15,11 @@ namespace osu.Game.Skinning /// public readonly TargetArea Target; - public readonly Ruleset? Ruleset; + public readonly RulesetInfo? Ruleset; public string GetSerialisableIdentifier() => Ruleset?.ShortName ?? "global"; - public SkinComponentsContainerLookup(TargetArea target, Ruleset? ruleset = null) + public SkinComponentsContainerLookup(TargetArea target, RulesetInfo? ruleset = null) { Target = target; Ruleset = ruleset; diff --git a/osu.Game/Skinning/SkinLayoutInfo.cs b/osu.Game/Skinning/SkinLayoutInfo.cs index e069fe2457..ff27a47223 100644 --- a/osu.Game/Skinning/SkinLayoutInfo.cs +++ b/osu.Game/Skinning/SkinLayoutInfo.cs @@ -24,13 +24,13 @@ namespace osu.Game.Skinning [JsonProperty] public Dictionary DrawableInfo { get; set; } = new Dictionary(); - public bool TryGetDrawableInfo(Ruleset? ruleset, [NotNullWhen(true)] out SerialisedDrawableInfo[]? components) => + public bool TryGetDrawableInfo(RulesetInfo? ruleset, [NotNullWhen(true)] out SerialisedDrawableInfo[]? components) => DrawableInfo.TryGetValue(ruleset?.ShortName ?? global_identifier, out components); - public void Reset(Ruleset? ruleset) => + public void Reset(RulesetInfo? ruleset) => DrawableInfo.Remove(ruleset?.ShortName ?? global_identifier); - public void Update(Ruleset? ruleset, SerialisedDrawableInfo[] components) => + public void Update(RulesetInfo? ruleset, SerialisedDrawableInfo[] components) => DrawableInfo[ruleset?.ShortName ?? global_identifier] = components; } }