mirror of
https://github.com/osukey/osukey.git
synced 2025-07-02 00:40:09 +09:00
Split button mods updating to private method
This commit is contained in:
@ -133,24 +133,24 @@ namespace osu.Game.Overlays.Mods
|
|||||||
public void UpdateSelectedMods(IReadOnlyList<Mod> newSelectedMods)
|
public void UpdateSelectedMods(IReadOnlyList<Mod> newSelectedMods)
|
||||||
{
|
{
|
||||||
foreach (var button in buttons)
|
foreach (var button in buttons)
|
||||||
|
updateButtonMods(button, newSelectedMods);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateButtonMods(ModButton button, IReadOnlyList<Mod> newSelectedMods)
|
||||||
|
{
|
||||||
|
foreach (var mod in newSelectedMods)
|
||||||
{
|
{
|
||||||
int index = -1;
|
var index = Array.FindIndex(button.Mods, m1 => mod.GetType() == m1.GetType());
|
||||||
|
|
||||||
foreach (var mod in newSelectedMods)
|
|
||||||
{
|
|
||||||
index = Array.FindIndex(button.Mods, m1 => mod.GetType() == m1.GetType());
|
|
||||||
if (index < 0)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
var buttonMod = button.Mods[index];
|
|
||||||
buttonMod.CopyFrom(mod);
|
|
||||||
button.SelectAt(index);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
button.Deselect();
|
continue;
|
||||||
|
|
||||||
|
var buttonMod = button.Mods[index];
|
||||||
|
buttonMod.CopyFrom(mod);
|
||||||
|
button.SelectAt(index);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button.Deselect();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected ModSection()
|
protected ModSection()
|
||||||
|
Reference in New Issue
Block a user