mirror of
https://github.com/ppy/osu.git
synced 2025-01-12 19:42:55 +08:00
Fix slider velocity changes not being undone correctly
Closes https://github.com/ppy/osu/issues/25239. `LegacyEditorBeatmapPatcher.processHitObjectLocalData()` was already supposed to be handling changes to hitobjects that will show up neither when comparing the hitobjects themselves or the timing point with "legacy" info stripped - so, in other words, changes to slider velocity and samples. However, a change to slider velocity requires default application to take effect, so just resetting the value would visually fix the timeline marker but not change the actual object. Calling `EditorBeatmap.Update()` fixes this by way of triggering default re-application. This could probably be smarter (by only invoking the update when strictly necessary, etc.) - but I'm not sure it's worth the hassle. This is intended to be a quick fix, rather than a complete solution - the complete solution would indeed likely entail a wholesale restructuring of the editor's change handling.
This commit is contained in:
parent
b3369dbb7b
commit
de89b7e53c
@ -123,6 +123,8 @@ namespace osu.Game.Screens.Edit
|
|||||||
oldWithRepeats.NodeSamples.Clear();
|
oldWithRepeats.NodeSamples.Clear();
|
||||||
oldWithRepeats.NodeSamples.AddRange(newWithRepeats.NodeSamples);
|
oldWithRepeats.NodeSamples.AddRange(newWithRepeats.NodeSamples);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
editorBeatmap.Update(oldObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user