forked from LeenkxTeam/LNXSDK
		
	
		
			
				
	
	
		
			72 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
package kha;
 | 
						|
 | 
						|
import js.Boot;
 | 
						|
import js.Browser;
 | 
						|
import js.lib.Error;
 | 
						|
import js.html.audio.DynamicsCompressorNode;
 | 
						|
import js.html.ImageElement;
 | 
						|
import js.Node;
 | 
						|
import js.node.Buffer;
 | 
						|
import js.node.Fs;
 | 
						|
import kha.FontStyle;
 | 
						|
import kha.Blob;
 | 
						|
import kha.graphics4.TextureFormat;
 | 
						|
import kha.Image;
 | 
						|
import kha.Kravur;
 | 
						|
import haxe.io.Bytes;
 | 
						|
import haxe.io.BytesData;
 | 
						|
import js.Lib;
 | 
						|
import js.html.XMLHttpRequest;
 | 
						|
 | 
						|
class LoaderImpl {
 | 
						|
	public static function getSoundFormats(): Array<String> {
 | 
						|
		return ["nix"];
 | 
						|
	}
 | 
						|
 | 
						|
	public static function loadSoundFromDescription(desc: Dynamic, done: kha.Sound->Void, failed: AssetError->Void): Void {
 | 
						|
		Node.setTimeout(function() {
 | 
						|
			done(new Sound());
 | 
						|
		}, 0);
 | 
						|
	}
 | 
						|
 | 
						|
	public static function getImageFormats(): Array<String> {
 | 
						|
		return ["nix"];
 | 
						|
	}
 | 
						|
 | 
						|
	public static function loadImageFromDescription(desc: Dynamic, done: kha.Image->Void, failed: AssetError->Void): Void {
 | 
						|
		Node.setTimeout(function() {
 | 
						|
			done(new Image(100, 100, TextureFormat.RGBA32));
 | 
						|
		}, 0);
 | 
						|
	}
 | 
						|
 | 
						|
	public static function getVideoFormats(): Array<String> {
 | 
						|
		return ["nix"];
 | 
						|
	}
 | 
						|
 | 
						|
	public static function loadVideoFromDescription(desc: Dynamic, done: kha.Video->Void, failed: AssetError->Void): Void {
 | 
						|
		Node.setTimeout(function() {
 | 
						|
			done(new Video());
 | 
						|
		}, 0);
 | 
						|
	}
 | 
						|
 | 
						|
	public static function loadBlobFromDescription(desc: Dynamic, done: Blob->Void, failed: AssetError->Void): Void {
 | 
						|
		Fs.readFile(desc.files[0], function(error: Error, data: Buffer) {
 | 
						|
			if (error != null) {
 | 
						|
				failed({
 | 
						|
					url: desc.files[0],
 | 
						|
					error: error,
 | 
						|
				});
 | 
						|
			}
 | 
						|
			else {
 | 
						|
				done(Blob._fromBuffer(data));
 | 
						|
			}
 | 
						|
		});
 | 
						|
	}
 | 
						|
 | 
						|
	public static function loadFontFromDescription(desc: Dynamic, done: Font->Void, failed: AssetError->Void): Void {
 | 
						|
		loadBlobFromDescription(desc, function(blob: Blob) {
 | 
						|
			done(new Kravur(blob));
 | 
						|
		}, failed);
 | 
						|
	}
 | 
						|
}
 |