1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-12-26 06:58:10 +00:00

alphabetical filtering for freeplay non-all sort

This commit is contained in:
Cameron Taylor 2024-06-04 16:24:24 -04:00
parent cd85bcf222
commit d4712a8ef7

View file

@ -804,6 +804,13 @@ class FreeplayState extends MusicBeatSubState
*/ */
public function sortSongs(songsToFilter:Array<FreeplaySongData>, songFilter:SongFilter):Array<FreeplaySongData> public function sortSongs(songsToFilter:Array<FreeplaySongData>, songFilter:SongFilter):Array<FreeplaySongData>
{ {
var filterAlphabetically = function(a:FreeplaySongData, b:FreeplaySongData):Int {
if (a?.songName.toLowerCase() < b?.songName.toLowerCase()) return -1;
else if (a?.songName.toLowerCase() > b?.songName.toLowerCase()) return 1;
else
return 0;
};
switch (songFilter.filterType) switch (songFilter.filterType)
{ {
case REGEXP: case REGEXP:
@ -818,6 +825,8 @@ class FreeplayState extends MusicBeatSubState
return filterRegexp.match(str.songName); return filterRegexp.match(str.songName);
}); });
songsToFilter.sort(filterAlphabetically);
case STARTSWITH: case STARTSWITH:
// extra note: this is essentially a "search" // extra note: this is essentially a "search"
@ -832,9 +841,13 @@ class FreeplayState extends MusicBeatSubState
if (str == null) return true; // Random if (str == null) return true; // Random
return str.isFav; return str.isFav;
}); });
songsToFilter.sort(filterAlphabetically);
default: default:
// return all on default // return all on default
} }
return songsToFilter; return songsToFilter;
} }