From e1729b7f0dce489dab4e97b4a98c6f9e7117af93 Mon Sep 17 00:00:00 2001 From: Noah <altenyt@gmail.com> Date: Mon, 3 May 2021 13:11:05 -0400 Subject: [PATCH 1/5] Rename "Playfield" -> "Ring" for skinning "field-overlay" is now renamed to "ring-overlay" with this change, if you were working on a skin then please rename this file. --- .../Skinning/Legacy/TauLegacySkinTransformer.cs | 4 ++-- osu.Game.Rulesets.Tau/TauSkinComponents.cs | 2 +- osu.Game.Rulesets.Tau/UI/TauPlayfield.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/osu.Game.Rulesets.Tau/Skinning/Legacy/TauLegacySkinTransformer.cs b/osu.Game.Rulesets.Tau/Skinning/Legacy/TauLegacySkinTransformer.cs index 551e60b6..0d31434b 100644 --- a/osu.Game.Rulesets.Tau/Skinning/Legacy/TauLegacySkinTransformer.cs +++ b/osu.Game.Rulesets.Tau/Skinning/Legacy/TauLegacySkinTransformer.cs @@ -27,8 +27,8 @@ public override Drawable GetDrawableComponent(ISkinComponent component) case TauSkinComponents.Handle: return Source.GetTexture("handle") != null ? new LegacyHandle() : null; - case TauSkinComponents.Playfield: - return Source.GetTexture("field-overlay") != null ? new LegacyPlayfield() : null; + case TauSkinComponents.Ring: + return Source.GetTexture("ring-overlay") != null ? new LegacyPlayfield() : null; } return null; diff --git a/osu.Game.Rulesets.Tau/TauSkinComponents.cs b/osu.Game.Rulesets.Tau/TauSkinComponents.cs index e462a752..03b4ba06 100644 --- a/osu.Game.Rulesets.Tau/TauSkinComponents.cs +++ b/osu.Game.Rulesets.Tau/TauSkinComponents.cs @@ -3,7 +3,7 @@ public enum TauSkinComponents { Beat, - Playfield, + Ring, HardBeat, Handle } diff --git a/osu.Game.Rulesets.Tau/UI/TauPlayfield.cs b/osu.Game.Rulesets.Tau/UI/TauPlayfield.cs index 247333d8..81dc5144 100644 --- a/osu.Game.Rulesets.Tau/UI/TauPlayfield.cs +++ b/osu.Game.Rulesets.Tau/UI/TauPlayfield.cs @@ -70,7 +70,7 @@ public TauPlayfield(BeatmapDifficulty difficulty) Origin = Anchor.Centre, }, new VisualisationContainer(), - new SkinnableDrawable(new TauSkinComponent(TauSkinComponents.Playfield), _ => new PlayfieldPiece()), + new SkinnableDrawable(new TauSkinComponent(TauSkinComponents.Ring), _ => new PlayfieldPiece()), HitObjectContainer, cursor, kiaiExplosionContainer = new Container<KiaiHitExplosion> From 18f44c55ee7f97fa262b6ae19d757edaff5a55cd Mon Sep 17 00:00:00 2001 From: Noah <altenyt@gmail.com> Date: Mon, 3 May 2021 13:27:19 -0400 Subject: [PATCH 2/5] Add an extra key for `HardButton`. While I did not agree to add the extra key into the ruleset, people kept pushing me to add in the extra key. The new default for this key is "Left Shift" and "Space", since those two seems to be the most prominent keys used in Tau. --- osu.Game.Rulesets.Tau/TauRuleset.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/osu.Game.Rulesets.Tau/TauRuleset.cs b/osu.Game.Rulesets.Tau/TauRuleset.cs index 0f116d4c..9b2ef48e 100644 --- a/osu.Game.Rulesets.Tau/TauRuleset.cs +++ b/osu.Game.Rulesets.Tau/TauRuleset.cs @@ -110,6 +110,7 @@ public override IEnumerable<KeyBinding> GetDefaultKeyBindings(int variant = 0) = new KeyBinding(InputKey.MouseLeft, TauAction.LeftButton), new KeyBinding(InputKey.MouseRight, TauAction.RightButton), new KeyBinding(InputKey.Space, TauAction.HardButton), + new KeyBinding(InputKey.LShift, TauAction.HardButton), }; public override StatisticRow[] CreateStatisticsForScore(ScoreInfo score, IBeatmap playableBeatmap) => new[] From eaf15b2522a53e00b423c9ff09989c12771acb25 Mon Sep 17 00:00:00 2001 From: Noah <altenyt@gmail.com> Date: Wed, 5 May 2021 19:46:40 -0400 Subject: [PATCH 3/5] Rename all instances of "field-overlay" to "ring-overlay" --- osu.Game.Rulesets.Tau/Skinning/Legacy/LegacyPlayfield.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Tau/Skinning/Legacy/LegacyPlayfield.cs b/osu.Game.Rulesets.Tau/Skinning/Legacy/LegacyPlayfield.cs index 757db80c..aee4e404 100644 --- a/osu.Game.Rulesets.Tau/Skinning/Legacy/LegacyPlayfield.cs +++ b/osu.Game.Rulesets.Tau/Skinning/Legacy/LegacyPlayfield.cs @@ -35,7 +35,7 @@ private void load(ISkinSource skin, TauRulesetConfigManager config) Origin = Anchor.Centre, RelativeSizeAxes = Axes.Both, FillMode = FillMode.Fit, - Texture = skin.GetTexture("field-overlay") + Texture = skin.GetTexture("ring-overlay") } }); From 084ede8ca6a2f63a77085127022715bba82d0061 Mon Sep 17 00:00:00 2001 From: Noah <altenyt@gmail.com> Date: Wed, 5 May 2021 19:47:45 -0400 Subject: [PATCH 4/5] Change `SimultaneousBindingMode` to `All` --- osu.Game.Rulesets.Tau/TauInputManager.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Tau/TauInputManager.cs b/osu.Game.Rulesets.Tau/TauInputManager.cs index eb1a2700..b79cfb42 100644 --- a/osu.Game.Rulesets.Tau/TauInputManager.cs +++ b/osu.Game.Rulesets.Tau/TauInputManager.cs @@ -25,7 +25,7 @@ protected override KeyBindingContainer<TauAction> CreateKeyBindingContainer(Rule => new TauKeyBindingContainer(ruleset, variant, unique); public TauInputManager(RulesetInfo ruleset) - : base(ruleset, 0, SimultaneousBindingMode.Unique) + : base(ruleset, 0, SimultaneousBindingMode.All) { } From 857e076d639451df1bd438f6f953fd5b0197d7e0 Mon Sep 17 00:00:00 2001 From: Derrick Timmermans <derrick.timmermans@outlook.com> Date: Fri, 14 May 2021 15:22:35 +0200 Subject: [PATCH 5/5] Give second hard beat button a unique action --- osu.Game.Rulesets.Tau/Mods/TauModRelax.cs | 2 +- .../Objects/Drawables/DrawableHardBeat.cs | 3 ++- osu.Game.Rulesets.Tau/Replays/TauAutoGenerator.cs | 2 +- osu.Game.Rulesets.Tau/Replays/TauReplayFrame.cs | 6 ++++-- osu.Game.Rulesets.Tau/TauInputManager.cs | 9 ++++++--- osu.Game.Rulesets.Tau/TauRuleset.cs | 4 ++-- 6 files changed, 16 insertions(+), 10 deletions(-) diff --git a/osu.Game.Rulesets.Tau/Mods/TauModRelax.cs b/osu.Game.Rulesets.Tau/Mods/TauModRelax.cs index 581ef27f..674ea0d2 100644 --- a/osu.Game.Rulesets.Tau/Mods/TauModRelax.cs +++ b/osu.Game.Rulesets.Tau/Mods/TauModRelax.cs @@ -111,7 +111,7 @@ private void addAction(bool hitting, bool hardhit = false) { if (hardhit) { - state.PressedActions.Add(TauAction.HardButton); + state.PressedActions.Add(TauAction.HardButton1); } else { diff --git a/osu.Game.Rulesets.Tau/Objects/Drawables/DrawableHardBeat.cs b/osu.Game.Rulesets.Tau/Objects/Drawables/DrawableHardBeat.cs index 1dd171d5..28d780d3 100644 --- a/osu.Game.Rulesets.Tau/Objects/Drawables/DrawableHardBeat.cs +++ b/osu.Game.Rulesets.Tau/Objects/Drawables/DrawableHardBeat.cs @@ -17,7 +17,8 @@ public class DrawableHardBeat : DrawableTauHitObject, IKeyBindingHandler<TauActi { protected override TauAction[] HitActions { get; set; } = new[] { - TauAction.HardButton + TauAction.HardButton1, + TauAction.HardButton2 }; public SkinnableDrawable Circle; diff --git a/osu.Game.Rulesets.Tau/Replays/TauAutoGenerator.cs b/osu.Game.Rulesets.Tau/Replays/TauAutoGenerator.cs index 9800eee8..75d81fc2 100644 --- a/osu.Game.Rulesets.Tau/Replays/TauAutoGenerator.cs +++ b/osu.Game.Rulesets.Tau/Replays/TauAutoGenerator.cs @@ -78,7 +78,7 @@ public override Replay Generate() break; case HardBeat _: - Replay.Frames.Add(new TauReplayFrame(h.StartTime, ((TauReplayFrame)Replay.Frames.Last()).Position, TauAction.HardButton)); + Replay.Frames.Add(new TauReplayFrame(h.StartTime, ((TauReplayFrame)Replay.Frames.Last()).Position, TauAction.HardButton1)); Replay.Frames.Add(new TauReplayFrame(h.StartTime + releaseDelay, ((TauReplayFrame)Replay.Frames.Last()).Position)); lastTime = h.GetEndTime() + releaseDelay; diff --git a/osu.Game.Rulesets.Tau/Replays/TauReplayFrame.cs b/osu.Game.Rulesets.Tau/Replays/TauReplayFrame.cs index 8476f05d..d725fe48 100644 --- a/osu.Game.Rulesets.Tau/Replays/TauReplayFrame.cs +++ b/osu.Game.Rulesets.Tau/Replays/TauReplayFrame.cs @@ -29,7 +29,8 @@ public void FromLegacy(LegacyReplayFrame currentFrame, IBeatmap beatmap, ReplayF if (currentFrame.MouseLeft1) Actions.Add(TauAction.LeftButton); if (currentFrame.MouseRight1) Actions.Add(TauAction.RightButton); - if (currentFrame.MouseLeft2) Actions.Add(TauAction.HardButton); + if (currentFrame.MouseLeft2) Actions.Add(TauAction.HardButton1); + if (currentFrame.MouseRight2) Actions.Add(TauAction.HardButton2); } public LegacyReplayFrame ToLegacy(IBeatmap beatmap) @@ -38,7 +39,8 @@ public LegacyReplayFrame ToLegacy(IBeatmap beatmap) if (Actions.Contains(TauAction.LeftButton)) state |= ReplayButtonState.Left1; if (Actions.Contains(TauAction.RightButton)) state |= ReplayButtonState.Right1; - if (Actions.Contains(TauAction.HardButton)) state |= ReplayButtonState.Left2; + if (Actions.Contains(TauAction.HardButton1)) state |= ReplayButtonState.Left2; + if (Actions.Contains(TauAction.HardButton2)) state |= ReplayButtonState.Right2; return new LegacyReplayFrame(Time, Position.X, Position.Y, state); } diff --git a/osu.Game.Rulesets.Tau/TauInputManager.cs b/osu.Game.Rulesets.Tau/TauInputManager.cs index b79cfb42..c002ce8a 100644 --- a/osu.Game.Rulesets.Tau/TauInputManager.cs +++ b/osu.Game.Rulesets.Tau/TauInputManager.cs @@ -25,7 +25,7 @@ protected override KeyBindingContainer<TauAction> CreateKeyBindingContainer(Rule => new TauKeyBindingContainer(ruleset, variant, unique); public TauInputManager(RulesetInfo ruleset) - : base(ruleset, 0, SimultaneousBindingMode.All) + : base(ruleset, 0, SimultaneousBindingMode.Unique) { } @@ -62,7 +62,10 @@ public enum TauAction [Description("Right tick button")] RightButton, - [Description("Hard beat button")] - HardButton + [Description("Hard beat button 1")] + HardButton1, + + [Description("Hard beat button 2")] + HardButton2, } } diff --git a/osu.Game.Rulesets.Tau/TauRuleset.cs b/osu.Game.Rulesets.Tau/TauRuleset.cs index 9b2ef48e..28aabd92 100644 --- a/osu.Game.Rulesets.Tau/TauRuleset.cs +++ b/osu.Game.Rulesets.Tau/TauRuleset.cs @@ -109,8 +109,8 @@ public override IEnumerable<KeyBinding> GetDefaultKeyBindings(int variant = 0) = new KeyBinding(InputKey.X, TauAction.RightButton), new KeyBinding(InputKey.MouseLeft, TauAction.LeftButton), new KeyBinding(InputKey.MouseRight, TauAction.RightButton), - new KeyBinding(InputKey.Space, TauAction.HardButton), - new KeyBinding(InputKey.LShift, TauAction.HardButton), + new KeyBinding(InputKey.Space, TauAction.HardButton1), + new KeyBinding(InputKey.LShift, TauAction.HardButton2), }; public override StatisticRow[] CreateStatisticsForScore(ScoreInfo score, IBeatmap playableBeatmap) => new[]