// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. #nullable disable using osu.Framework.Allocation; using osu.Framework.Graphics; using osu.Framework.Localisation; using osu.Game.Overlays.Settings; using osu.Game.Rulesets.Osu.Configuration; using osu.Game.Rulesets.UI; namespace osu.Game.Rulesets.Osu.UI { public class OsuSettingsSubsection : RulesetSettingsSubsection { protected override LocalisableString Header => "osu!"; public OsuSettingsSubsection(Ruleset ruleset) : base(ruleset) { } [BackgroundDependencyLoader] private void load() { var config = (OsuRulesetConfigManager)Config; Children = new Drawable[] { new SettingsCheckbox { LabelText = "Snaking in sliders", Current = config.GetBindable<bool>(OsuRulesetSetting.SnakingInSliders) }, new SettingsCheckbox { ClassicDefault = false, LabelText = "Snaking out sliders", Current = config.GetBindable<bool>(OsuRulesetSetting.SnakingOutSliders) }, new SettingsCheckbox { LabelText = "Cursor trail", Current = config.GetBindable<bool>(OsuRulesetSetting.ShowCursorTrail) }, new SettingsEnumDropdown<PlayfieldBorderStyle> { LabelText = "Playfield border style", Current = config.GetBindable<PlayfieldBorderStyle>(OsuRulesetSetting.PlayfieldBorderStyle), }, }; } } }