mirror of
https://github.com/ppy/osu
synced 2024-12-17 20:35:21 +00:00
Move setting to user config
This commit is contained in:
parent
a6cdf6df07
commit
0cddb93dda
@ -196,6 +196,7 @@ namespace osu.Game.Configuration
|
||||
SetDefault(OsuSetting.EditorShowSpeedChanges, false);
|
||||
SetDefault(OsuSetting.EditorScaleOrigin, EditorOrigin.GridCentre);
|
||||
SetDefault(OsuSetting.EditorRotationOrigin, EditorOrigin.GridCentre);
|
||||
SetDefault(OsuSetting.EditorAdjustExistingObjectsOnTimingChanges, true);
|
||||
|
||||
SetDefault(OsuSetting.HideCountryFlags, false);
|
||||
|
||||
@ -442,5 +443,6 @@ namespace osu.Game.Configuration
|
||||
EditorScaleOrigin,
|
||||
EditorRotationOrigin,
|
||||
EditorTimelineShowBreaks,
|
||||
EditorAdjustExistingObjectsOnTimingChanges,
|
||||
}
|
||||
}
|
||||
|
@ -40,9 +40,9 @@ namespace osu.Game.Localisation
|
||||
public static LocalisableString SetPreviewPointToCurrent => new TranslatableString(getKey(@"set_preview_point_to_current"), @"Set preview point to current time");
|
||||
|
||||
/// <summary>
|
||||
/// "Move already placed notes when changing the offset / BPM"
|
||||
/// "Move already placed objects when changing timing"
|
||||
/// </summary>
|
||||
public static LocalisableString AdjustNotesOnOffsetBPMChange => new TranslatableString(getKey(@"adjust_notes_on_offset_bpm_change"), @"Move already placed notes when changing the offset / BPM");
|
||||
public static LocalisableString AdjustExistingObjectsOnTimingChanges => new TranslatableString(getKey(@"adjust_existing_objects_on_timing_changes"), @"Move already placed objects when changing timing");
|
||||
|
||||
/// <summary>
|
||||
/// "For editing (.olz)"
|
||||
|
@ -422,9 +422,9 @@ namespace osu.Game.Screens.Edit
|
||||
Items = new MenuItem[]
|
||||
{
|
||||
new EditorMenuItem(EditorStrings.SetPreviewPointToCurrent, MenuItemType.Standard, SetPreviewPointToCurrentTime),
|
||||
new ToggleMenuItem(EditorStrings.AdjustNotesOnOffsetBPMChange)
|
||||
new ToggleMenuItem(EditorStrings.AdjustExistingObjectsOnTimingChanges)
|
||||
{
|
||||
State = { BindTarget = editorBeatmap.AdjustNotesOnOffsetBPMChange },
|
||||
State = { BindTarget = config.GetBindable<bool>(OsuSetting.EditorAdjustExistingObjectsOnTimingChanges) },
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -89,8 +89,6 @@ namespace osu.Game.Screens.Edit
|
||||
|
||||
public BindableInt PreviewTime { get; }
|
||||
|
||||
public Bindable<bool> AdjustNotesOnOffsetBPMChange { get; } = new Bindable<bool>(false);
|
||||
|
||||
private readonly IBeatmapProcessor beatmapProcessor;
|
||||
|
||||
private readonly Dictionary<HitObject, Bindable<double>> startTimeBindables = new Dictionary<HitObject, Bindable<double>>();
|
||||
|
@ -7,6 +7,7 @@ using osu.Framework.Bindables;
|
||||
using osu.Framework.Graphics;
|
||||
using osu.Framework.Graphics.Containers;
|
||||
using osu.Game.Beatmaps.ControlPoints;
|
||||
using osu.Game.Configuration;
|
||||
using osu.Game.Graphics.UserInterface;
|
||||
using osu.Game.Graphics.UserInterfaceV2;
|
||||
using osuTK;
|
||||
@ -25,6 +26,9 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
[Resolved]
|
||||
protected EditorBeatmap Beatmap { get; private set; } = null!;
|
||||
|
||||
[Resolved]
|
||||
private OsuConfigManager configManager { get; set; } = null!;
|
||||
|
||||
[Resolved]
|
||||
private EditorClock clock { get; set; } = null!;
|
||||
|
||||
@ -112,7 +116,7 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
foreach (var cp in currentGroupItems)
|
||||
{
|
||||
// Only adjust hit object offsets if the group contains a timing control point
|
||||
if (Beatmap.AdjustNotesOnOffsetBPMChange.Value && cp is TimingControlPoint tp)
|
||||
if (cp is TimingControlPoint tp && configManager.Get<bool>(OsuSetting.EditorAdjustExistingObjectsOnTimingChanges))
|
||||
{
|
||||
TimingSectionAdjustments.AdjustHitObjectOffset(Beatmap, tp, time - SelectedGroup.Value.Time);
|
||||
Beatmap.UpdateAllHitObjects();
|
||||
|
@ -10,6 +10,7 @@ using osu.Framework.Graphics.Shapes;
|
||||
using osu.Framework.Graphics.Sprites;
|
||||
using osu.Framework.Input.Events;
|
||||
using osu.Game.Beatmaps.ControlPoints;
|
||||
using osu.Game.Configuration;
|
||||
using osu.Game.Graphics;
|
||||
using osu.Game.Graphics.UserInterface;
|
||||
using osu.Game.Graphics.UserInterfaceV2;
|
||||
@ -26,6 +27,9 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
[Resolved]
|
||||
private EditorBeatmap beatmap { get; set; } = null!;
|
||||
|
||||
[Resolved]
|
||||
private OsuConfigManager configManager { get; set; } = null!;
|
||||
|
||||
[Resolved]
|
||||
private Bindable<ControlPointGroup> selectedGroup { get; set; } = null!;
|
||||
|
||||
@ -209,7 +213,7 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
|
||||
foreach (var cp in currentGroupItems)
|
||||
{
|
||||
if (beatmap.AdjustNotesOnOffsetBPMChange.Value && cp is TimingControlPoint tp)
|
||||
if (cp is TimingControlPoint tp)
|
||||
{
|
||||
TimingSectionAdjustments.AdjustHitObjectOffset(beatmap, tp, adjust);
|
||||
beatmap.UpdateAllHitObjects();
|
||||
@ -236,7 +240,7 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
double oldBeatLength = timing.BeatLength;
|
||||
timing.BeatLength = 60000 / (timing.BPM + adjust);
|
||||
|
||||
if (beatmap.AdjustNotesOnOffsetBPMChange.Value)
|
||||
if (configManager.Get<bool>(OsuSetting.EditorAdjustExistingObjectsOnTimingChanges))
|
||||
{
|
||||
beatmap.BeginChange();
|
||||
TimingSectionAdjustments.SetHitObjectBPM(beatmap, timing, oldBeatLength);
|
||||
|
@ -6,6 +6,7 @@ using osu.Framework.Allocation;
|
||||
using osu.Framework.Bindables;
|
||||
using osu.Framework.Graphics;
|
||||
using osu.Game.Beatmaps.ControlPoints;
|
||||
using osu.Game.Configuration;
|
||||
using osu.Game.Graphics.UserInterfaceV2;
|
||||
|
||||
namespace osu.Game.Screens.Edit.Timing
|
||||
@ -16,6 +17,9 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
private LabelledSwitchButton omitBarLine = null!;
|
||||
private BPMTextBox bpmTextEntry = null!;
|
||||
|
||||
[Resolved]
|
||||
private OsuConfigManager configManager { get; set; } = null!;
|
||||
|
||||
[BackgroundDependencyLoader]
|
||||
private void load()
|
||||
{
|
||||
@ -46,7 +50,7 @@ namespace osu.Game.Screens.Edit.Timing
|
||||
|
||||
bpmTextEntry.OnCommit = (oldBeatLength, _) =>
|
||||
{
|
||||
if (!Beatmap.AdjustNotesOnOffsetBPMChange.Value || ControlPoint.Value == null)
|
||||
if (!configManager.Get<bool>(OsuSetting.EditorAdjustExistingObjectsOnTimingChanges) || ControlPoint.Value == null)
|
||||
return;
|
||||
|
||||
Beatmap.BeginChange();
|
||||
|
Loading…
Reference in New Issue
Block a user