mirror of
https://github.com/ppy/osu.git
synced 2025-01-27 17:03:21 +08:00
Subclass LocalPlayerModSelectOverlay to correctly deselect incompatible mods on free mod selection
This commit is contained in:
parent
2fc3a97f56
commit
3e750feaa4
@ -333,7 +333,7 @@ namespace osu.Game.Tests.Visual.UserInterface
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private class TestModSelectOverlay : SoloModSelectOverlay
|
private class TestModSelectOverlay : LocalPlayerModSelectOverlay
|
||||||
{
|
{
|
||||||
public new Bindable<IReadOnlyList<Mod>> SelectedMods => base.SelectedMods;
|
public new Bindable<IReadOnlyList<Mod>> SelectedMods => base.SelectedMods;
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ namespace osu.Game.Tests.Visual.UserInterface
|
|||||||
AddUntilStep("wait for ready", () => modSelect.State.Value == Visibility.Visible && modSelect.ButtonsLoaded);
|
AddUntilStep("wait for ready", () => modSelect.State.Value == Visibility.Visible && modSelect.ButtonsLoaded);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class TestModSelectOverlay : SoloModSelectOverlay
|
private class TestModSelectOverlay : LocalPlayerModSelectOverlay
|
||||||
{
|
{
|
||||||
public new VisibilityContainer ModSettingsContainer => base.ModSettingsContainer;
|
public new VisibilityContainer ModSettingsContainer => base.ModSettingsContainer;
|
||||||
public new TriangleButton CustomiseButton => base.CustomiseButton;
|
public new TriangleButton CustomiseButton => base.CustomiseButton;
|
||||||
|
@ -5,7 +5,7 @@ using osu.Game.Rulesets.Mods;
|
|||||||
|
|
||||||
namespace osu.Game.Overlays.Mods
|
namespace osu.Game.Overlays.Mods
|
||||||
{
|
{
|
||||||
public class SoloModSelectOverlay : ModSelectOverlay
|
public class LocalPlayerModSelectOverlay : ModSelectOverlay
|
||||||
{
|
{
|
||||||
protected override void OnModSelected(Mod mod)
|
protected override void OnModSelected(Mod mod)
|
||||||
{
|
{
|
@ -373,7 +373,7 @@ namespace osu.Game.Screens.OnlinePlay.Multiplayer
|
|||||||
client.LoadRequested -= onLoadRequested;
|
client.LoadRequested -= onLoadRequested;
|
||||||
}
|
}
|
||||||
|
|
||||||
private class UserModSelectOverlay : ModSelectOverlay
|
private class UserModSelectOverlay : LocalPlayerModSelectOverlay
|
||||||
{
|
{
|
||||||
public UserModSelectOverlay()
|
public UserModSelectOverlay()
|
||||||
{
|
{
|
||||||
|
@ -125,7 +125,7 @@ namespace osu.Game.Screens.OnlinePlay
|
|||||||
return base.OnExiting(next);
|
return base.OnExiting(next);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override ModSelectOverlay CreateModSelectOverlay() => new SoloModSelectOverlay
|
protected override ModSelectOverlay CreateModSelectOverlay() => new LocalPlayerModSelectOverlay
|
||||||
{
|
{
|
||||||
IsValidMod = IsValidMod
|
IsValidMod = IsValidMod
|
||||||
};
|
};
|
||||||
|
@ -311,7 +311,7 @@ namespace osu.Game.Screens.Select
|
|||||||
(new FooterButtonOptions(), BeatmapOptions)
|
(new FooterButtonOptions(), BeatmapOptions)
|
||||||
};
|
};
|
||||||
|
|
||||||
protected virtual ModSelectOverlay CreateModSelectOverlay() => new SoloModSelectOverlay();
|
protected virtual ModSelectOverlay CreateModSelectOverlay() => new LocalPlayerModSelectOverlay();
|
||||||
|
|
||||||
protected virtual void ApplyFilterToCarousel(FilterCriteria criteria)
|
protected virtual void ApplyFilterToCarousel(FilterCriteria criteria)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user