1
0
forked from akanyan/mu3-mods

feat: implement SortByInternalDifficulty

This commit is contained in:
2024-07-05 09:15:56 +09:00
parent 76884216dd
commit 44dfa20ea8
9 changed files with 865 additions and 0 deletions

View File

@ -0,0 +1,24 @@
using MU3.DB;
namespace MU3;
public class patch_Scene_32_PrePlayMusic_MusicSelect: Scene_32_PrePlayMusic_MusicSelect {
private static patch_MusicSort1ID[] _sort1SettingList;
private extern void orig_Awake();
private void Awake() {
_sort1SettingList = new[] {
patch_MusicSort1ID.Genre,
patch_MusicSort1ID.All,
patch_MusicSort1ID.Character,
patch_MusicSort1ID.Version,
patch_MusicSort1ID.Level,
patch_MusicSort1ID.Name,
patch_MusicSort1ID.Attribute,
patch_MusicSort1ID.InternalLevel
};
orig_Awake();
}
}

View File

@ -0,0 +1,27 @@
using MU3.CustomUI;
using UnityEngine;
namespace MU3;
class patch_UISortButton: UISortButton {
private MU3UIImageChanger _selectPreviewImageChanger;
protected override void Awake() {
base.Awake();
var changer = (patch_MU3UIImageChanger)_selectPreviewImageChanger;
var n = changer.sprites.Length;
var sprites = new Sprite[n + 1];
for(int i = 0; i < n; ++i) {
sprites[i] = changer.sprites[i];
}
Texture2D tex = new Texture2D(2, 2);
tex.LoadImage(InternalSortPreview.Bytes);
sprites[n] = Sprite.Create(tex, new Rect(0, 0, 254, 121), sprites[0].pivot);
changer.sprites = sprites;
}
}