mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2024-11-24 00:27:59 -05:00
30 lines
805 B
Haxe
30 lines
805 B
Haxe
package funkin.util.assets;
|
|
|
|
class DataAssets
|
|
{
|
|
static function buildDataPath(path:String):String
|
|
{
|
|
return 'assets/data/${path}';
|
|
}
|
|
|
|
public static function listDataFilesInPath(path:String, ?suffix:String = '.json'):Array<String>
|
|
{
|
|
var textAssets = openfl.utils.Assets.list();
|
|
var queryPath = buildDataPath(path);
|
|
|
|
var results:Array<String> = [];
|
|
for (textPath in textAssets)
|
|
{
|
|
if (textPath.startsWith(queryPath) && textPath.endsWith(suffix))
|
|
{
|
|
var pathNoSuffix = textPath.substring(0, textPath.length - suffix.length);
|
|
var pathNoPrefix = pathNoSuffix.substring(queryPath.length);
|
|
|
|
// No duplicates! Why does this happen?
|
|
if (!results.contains(pathNoPrefix)) results.push(pathNoPrefix);
|
|
}
|
|
}
|
|
|
|
return results;
|
|
}
|
|
}
|