fixed fonts + more customizable stuff
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package funkin.mods;
|
||||
|
||||
import lime.utils.AssetLibrary;
|
||||
|
||||
/**
|
||||
* Used to prevent crashes
|
||||
*/
|
||||
class ModdableAssetsFolder extends ModsFolderLibrary {
|
||||
public var oldLibrary:AssetLibrary;
|
||||
|
||||
public override function exists(id:String, type:String) {
|
||||
if (!id.startsWith("assets/"))
|
||||
return oldLibrary.exists(id, type);
|
||||
return super.exists(id, type);
|
||||
}
|
||||
|
||||
public override function getAsset(id:String, type:String) {
|
||||
if (!id.startsWith("assets/"))
|
||||
return oldLibrary.getAsset(id, type);
|
||||
return super.getAsset(id, type);
|
||||
}
|
||||
|
||||
public function new(folder:String, libName:String, oldLib:AssetLibrary) {
|
||||
super(folder, libName);
|
||||
oldLibrary = oldLib;
|
||||
trace(Type.getClassName(Type.getClass(oldLibrary)));
|
||||
}
|
||||
|
||||
private override function __parseAsset(asset:String):Bool {
|
||||
var prefix = 'assets/';
|
||||
if (!asset.startsWith(prefix)) return false;
|
||||
_parsedAsset = asset.substr(prefix.length);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -111,10 +111,11 @@ class ModsFolder {
|
||||
return lib;
|
||||
}
|
||||
|
||||
public static function loadLibraryFromFolder(libName:String, folder:String, force:Bool = false) {
|
||||
public static function loadLibraryFromFolder(libName:String, folder:String, force:Bool = false, useOldWhenMissing:Bool = false) {
|
||||
var oldLib = useOldWhenMissing ? Assets.getLibrary(libName) : null;
|
||||
var lib = prepareLibrary(libName, force);
|
||||
@:privateAccess
|
||||
lib.__proxy = new ModsFolderLibrary(folder, libName);
|
||||
lib.__proxy = useOldWhenMissing ? new ModdableAssetsFolder(folder, libName, oldLib) : new ModsFolderLibrary(folder, libName);
|
||||
Assets.registerLibrary(libName, lib);
|
||||
return lib;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user