2025-01-15 19:45:00 +01:00

40 lines
1.4 KiB
Haxe

package assets;
import openfl.display.BitmapData;
import openfl.Assets;
import assets.schema.HTexSchema;
import assets.tilesets.TilesetGeneric;
import assets.tilesets.TextureAtlas;
import haxe.Json;
class HTex{
public static var hTexArray:Array<HTex> = [];
public var bitmaps:Array<BitmapData>;
public var name:String = "";
public function new(_name:String){
// name = _name;
// if(hTexArray[name] == null)
// hTexArray[name] = name;
}
public static function createTextureObjectFromJSON(path:String){
var DATA:TexV1;
var loadedData:String = Assets.getText(path);
var jsondata = Json.parse(loadedData);
DATA = jsondata;
if(DATA.datascheme == "htex"){
if(DATA.version == 1){
var td:TextureDataV1 = DATA.textureData;
var width:Int = td.atlas.tileSize.x;
var height:Int = td.atlas.tileSize.y;
if(td.atlas.atlasType == "tilesetgeneric"){
var baseTexturePath:String = td.tilesetGeneric.baseTexture;
var tileNames:Array<String> = td.tilesetGeneric.tiles;
var atlas:TextureAtlas = new TextureAtlas(Assets.getBitmapData(baseTexturePath),width,height);
var tileSetGeneric = new TilesetGeneric(td.texName, atlas, tileNames);
//trace(tileSetGeneric);
}
}
}
}
}