From ba4e88a9c2ea353f94ba74b5a8abc879faff332d Mon Sep 17 00:00:00 2001 From: LA <1245661240@qq.com> Date: Sun, 6 Jul 2025 17:07:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=89=B9=E6=AE=8A=E5=88=97?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LAsEZMania/ManiaKeyCounterDisplay.cs | 8 +++++--- .../Skinning/EzStylePro/EzHitExplosion.cs | 2 +- .../Skinning/EzStylePro/EzHoldNoteHead.cs | 4 ++-- .../Skinning/EzStylePro/EzHoldNoteHittingLayer.cs | 2 +- .../Skinning/EzStylePro/EzHoldNoteMiddle.cs | 11 +++++++---- .../Skinning/EzStylePro/EzKeyArea.cs | 4 ++-- osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzNote.cs | 4 ++-- .../EzStylePro/ManiaEzStyleProSkinTransformer.cs | 6 +++--- osu.Game.Rulesets.Mania/UI/ColumnFlow.cs | 3 +-- 9 files changed, 24 insertions(+), 20 deletions(-) diff --git a/osu.Game.Rulesets.Mania/LAsEZMania/ManiaKeyCounterDisplay.cs b/osu.Game.Rulesets.Mania/LAsEZMania/ManiaKeyCounterDisplay.cs index d640457e9e..6970bb5c60 100644 --- a/osu.Game.Rulesets.Mania/LAsEZMania/ManiaKeyCounterDisplay.cs +++ b/osu.Game.Rulesets.Mania/LAsEZMania/ManiaKeyCounterDisplay.cs @@ -8,7 +8,6 @@ using osu.Framework.Graphics; using osu.Framework.Graphics.Containers; using osu.Game.Rulesets.Mania.Beatmaps; using osu.Game.Screens; -using osu.Game.Screens.LAsEzExtensions; using osu.Game.Screens.Play.HUD; using osuTK; @@ -22,6 +21,9 @@ namespace osu.Game.Rulesets.Mania.LAsEZMania [Resolved] protected InputCountController Controller { get; private set; } = null!; + [Resolved] + private EzSkinSettingsManager ezSkinConfig { get; set; } = null!; + protected readonly FillFlowContainer KeyFlow; private readonly IBindableList triggers = new BindableList(); @@ -41,7 +43,7 @@ namespace osu.Game.Rulesets.Mania.LAsEZMania } [BackgroundDependencyLoader] - private void load(EzSkinSettingsManager ezSkinConfig) + private void load() { columnWidth = ezSkinConfig.GetBindable(EzSkinSetting.ColumnWidth); specialFactor = ezSkinConfig.GetBindable(EzSkinSetting.SpecialFactor); @@ -65,7 +67,7 @@ namespace osu.Game.Rulesets.Mania.LAsEZMania float width = (float)columnWidth.Value; int index = KeyFlow.IndexOf(counter); - if (EzColumnTypeManager.GetColumnType(StageDefinition.Columns, index) == "S1") + if (ezSkinConfig.GetColumnType(StageDefinition.Columns, index) == "S1") width *= (float)specialFactor.Value; counter.Width = width; diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHitExplosion.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHitExplosion.cs index b3b39c99fe..12f90c5f58 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHitExplosion.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHitExplosion.cs @@ -97,7 +97,7 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro private void updateY() { - bool isSpecialColumn = EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1"; + bool isSpecialColumn = ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1"; double columnWidth = columnWidthBindable.Value * (isSpecialColumn ? specialFactorBindable.Value : 1); bool isSquare = factory.IsSquareNote("whitenote"); diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHead.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHead.cs index 64b247186c..c3e3684a75 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHead.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHead.cs @@ -84,14 +84,14 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro if (enabledColor.Value) return "white"; - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1") return "green"; int logicalIndex = 0; for (int i = 0; i < column.Index; i++) { - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, i) != "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, i) != "S1") logicalIndex++; } diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHittingLayer.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHittingLayer.cs index dcd6d0607b..5822934031 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHittingLayer.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteHittingLayer.cs @@ -129,7 +129,7 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro public void UpdateLNsLight() { - bool isSpecialColumn = EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1"; + bool isSpecialColumn = ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1"; double columnWidth = columnWidthBindable.Value * (isSpecialColumn ? specialFactorBindable.Value : 1); bool isSquare = factory.IsSquareNote("whitenote"); diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteMiddle.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteMiddle.cs index 78f9dc2a0e..6bb514aa26 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteMiddle.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzHoldNoteMiddle.cs @@ -10,7 +10,6 @@ using osu.Framework.Graphics.Containers; using osu.Game.Rulesets.Mania.Beatmaps; using osu.Game.Rulesets.Mania.Objects.Drawables; using osu.Game.Rulesets.Mania.Skinning.Default; -using osu.Game.Rulesets.Mania.Skinning.Legacy; using osu.Game.Rulesets.Mania.UI; using osu.Game.Rulesets.Objects.Drawables; using osu.Game.Screens; @@ -122,11 +121,15 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro Alpha = 0, IsHitting = { BindTarget = isHitting } }; - lightContainer = new HitTargetInsetContainer + lightContainer = new Container { + RelativeSizeAxes = Axes.Both, + Anchor = Anchor.BottomCentre, + Origin = Anchor.BottomCentre, Alpha = 0, Child = hittingLayer }; + hittingLayer.HitPosition.BindTo(hitPosition); } @@ -170,14 +173,14 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro if (enabledColor.Value) return "white"; - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1") return "green"; int logicalIndex = 0; for (int i = 0; i < column.Index; i++) { - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) != "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) != "S1") logicalIndex++; } diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzKeyArea.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzKeyArea.cs index ce33f47dd5..6c4c037376 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzKeyArea.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzKeyArea.cs @@ -67,14 +67,14 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro { get { - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1") return "02"; int logicalIndex = 0; for (int i = 0; i < column.Index; i++) { - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, i) == "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, i) == "S1") logicalIndex++; } diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzNote.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzNote.cs index 0116e07446..8dab66e593 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzNote.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/EzNote.cs @@ -87,14 +87,14 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro if (enabledColor.Value) return "white"; - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, column.Index) == "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, column.Index) == "S1") return "green"; int logicalIndex = 0; for (int i = 0; i < column.Index; i++) { - if (EzColumnTypeManager.GetColumnType(stageDefinition.Columns, i) != "S1") + if (ezSkinConfig.GetColumnType(stageDefinition.Columns, i) != "S1") logicalIndex++; } diff --git a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/ManiaEzStyleProSkinTransformer.cs b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/ManiaEzStyleProSkinTransformer.cs index 193cc871a4..1c0f67dd6a 100644 --- a/osu.Game.Rulesets.Mania/Skinning/EzStylePro/ManiaEzStyleProSkinTransformer.cs +++ b/osu.Game.Rulesets.Mania/Skinning/EzStylePro/ManiaEzStyleProSkinTransformer.cs @@ -11,7 +11,6 @@ using osu.Game.Rulesets.Mania.Skinning.Ez2; using osu.Game.Rulesets.Mania.Skinning.Ez2HUD; using osu.Game.Rulesets.Scoring; using osu.Game.Screens; -using osu.Game.Screens.LAsEzExtensions; using osu.Game.Screens.Play.HUD.HitErrorMeters; using osu.Game.Skinning; using osu.Game.Skinning.Components; @@ -21,6 +20,7 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro { public class ManiaEzStyleProSkinTransformer : SkinTransformer { + private readonly EzSkinSettingsManager ezSkinConfig; private readonly ManiaBeatmap beatmap; private readonly IBindable columnWidthBindable; private readonly IBindable specialFactorBindable; @@ -32,7 +32,7 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro : base(skin) { this.beatmap = (ManiaBeatmap)beatmap; - + this.ezSkinConfig = ezSkinConfig; columnWidthBindable = ezSkinConfig.GetBindable(EzSkinSetting.ColumnWidth); specialFactorBindable = ezSkinConfig.GetBindable(EzSkinSetting.SpecialFactor); hitPosition = ezSkinConfig.GetBindable(EzSkinSetting.HitPosition); @@ -226,7 +226,7 @@ namespace osu.Game.Rulesets.Mania.Skinning.EzStylePro { int columnIndex = maniaLookup.ColumnIndex ?? 0; var stage = beatmap.GetStageForColumnIndex(columnIndex); - bool isSpecialColumn = EzColumnTypeManager.GetColumnType(stage.Columns, columnIndex) == "S1"; + bool isSpecialColumn = ezSkinConfig.GetColumnType(stage.Columns, columnIndex) == "S1"; float width = (float)columnWidthBindable.Value * (isSpecialColumn ? (float)specialFactorBindable.Value : 1f); // float hitPositionValue = (float)hitPosition.Value; // + (float)virtualHitPosition.Value - 110f; diff --git a/osu.Game.Rulesets.Mania/UI/ColumnFlow.cs b/osu.Game.Rulesets.Mania/UI/ColumnFlow.cs index a3ec5d23c5..add2ce843f 100644 --- a/osu.Game.Rulesets.Mania/UI/ColumnFlow.cs +++ b/osu.Game.Rulesets.Mania/UI/ColumnFlow.cs @@ -13,7 +13,6 @@ using osu.Game.Rulesets.Mania.Beatmaps; using osu.Game.Rulesets.Mania.Configuration; using osu.Game.Rulesets.Mania.Skinning; using osu.Game.Screens; -using osu.Game.Screens.LAsEzExtensions; using osu.Game.Skinning; using osuTK; @@ -164,7 +163,7 @@ namespace osu.Game.Rulesets.Mania.UI } bool isSpecialColumn = - EzColumnTypeManager.GetColumnType(stageDefinition.Columns, i) == "S1"; + ezSkinConfig.GetColumnType(stageDefinition.Columns, i) == "S1"; float ezWidth = (float)columnWidthBindable.Value * (isSpecialColumn ? (float)specialFactorBindable.Value : 1); switch (ezColumnWidthStyle.Value)