1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 07:33:20 +08:00

remove incompatible system mods before enable preset

This commit is contained in:
cdwcgt 2024-05-04 18:44:47 +08:00
parent b35f2c99e6
commit f9be9ed479
No known key found for this signature in database
GPG Key ID: F8460DACCE48E8BD

View File

@ -55,7 +55,8 @@ namespace osu.Game.Overlays.Mods
protected override void Select()
{
var selectedSystemMods = selectedMods.Value.Where(mod => mod.Type == ModType.System);
var selectedSystemMods = selectedMods.Value.Where(mod => mod.Type == ModType.System
&& !mod.IncompatibleMods.Any(t => Preset.Value.Mods.Any(m => m.GetType() == t)));
// will also have the side effect of activating the preset (see `updateActiveState()`).
selectedMods.Value = Preset.Value.Mods.Concat(selectedSystemMods).ToArray();
}