List of usage examples for com.badlogic.gdx.assets.loaders FileHandleResolver resolve
public FileHandle resolve(String fileName);
From source file:com.bladecoder.engine.assets.EngineAssetManager.java
License:Apache License
public String[] listAssetFiles(String base) { FileHandleResolver resolver = resResolver.getBaseResolver(); String list[];//from w w w . j a v a 2 s .c o m URL u = EngineAssetManager.class.getResource(base); if (u != null && u.getProtocol().equals("jar")) { list = getFilesFromJar(base); } else { String n = base.substring(1); if (u != null) n = u.getFile(); FileHandle f = null; try { f = resolver.resolve(URLDecoder.decode(n, "UTF-8")); } catch (UnsupportedEncodingException e) { EngineLogger.error("Error decoding URL", e); return new String[0]; } FileHandle[] l = f.list(); list = new String[l.length]; for (int i = 0; i < l.length; i++) list[i] = l[i].name(); } return list; }
From source file:org.bladecoder.bladeengine.assets.EngineAssetManager.java
License:Apache License
private Resolution[] getResolutions(FileHandleResolver resolver) { ArrayList<Resolution> rl = new ArrayList<Resolution>(); String n = "atlases"; URL u = EngineAssetManager.class.getResource("/atlases"); if (u != null && u.getProtocol().equals("jar")) { String list[] = getResolutionsFromJar(); for (String name : list) { if (name.contains("_")) { Resolution r = parseResolution(name); if (r != null) rl.add(r);/* ww w . j a va 2 s . c o m*/ } } } else { if (u != null) n = u.getFile(); FileHandle f = null; try { f = resolver.resolve(URLDecoder.decode(n, "UTF-8")); } catch (UnsupportedEncodingException e) { EngineLogger.error("Error decoding URL", e); return rl.toArray(new Resolution[rl.size()]); } FileHandle[] list = f.list(); for (FileHandle h : list) { String name = h.name(); if (h.isDirectory() && name.contains("_")) { Resolution r = parseResolution(name); if (r != null) rl.add(r); } } } Collections.sort(rl, new Comparator<Resolution>() { public int compare(Resolution a, Resolution b) { return a.portraitWidth - b.portraitWidth; } }); return rl.toArray(new Resolution[rl.size()]); }
From source file:util.Utils.java
public static void setTilesFromTMX(BaseMap map, Maps id, String tmxFile, TileSet ts) { Tile[] tiles = new Tile[map.getWidth() * map.getHeight()]; FileHandleResolver resolver = new Constants.ClasspathResolver(); TmxMapLoader loader = new TmxMapLoader(resolver); TiledMap tm = loader.load("assets/tmx/" + tmxFile); TiledMapTileLayer ml = (TiledMapTileLayer) tm.getLayers().get(map.getId() + "-map"); if (ml != null) { FileHandle f = resolver.resolve("assets/graphics/latest-atlas.txt"); TextureAtlas.TextureAtlasData atlas = new TextureAtlas.TextureAtlasData(f, f.parent(), false); int png_grid_width = 24; Tile[] mapTileIds = new Tile[png_grid_width * Constants.tilePixelWidth + 1]; for (TextureAtlas.TextureAtlasData.Region r : atlas.getRegions()) { int x = r.left / r.width; int y = r.top / r.height; int i = x + (y * png_grid_width) + 1; mapTileIds[i] = ts.getTileByName(r.name); if (mapTileIds[i] == null) { //System.out.printf("no tile found: %s %d\n",r.name,i); }//from w w w. java 2s.com } for (int y = 0; y < map.getHeight(); y++) { for (int x = 0; x < map.getWidth(); x++) { StaticTiledMapTile tr = (StaticTiledMapTile) ml.getCell(x, map.getWidth() - 1 - y).getTile(); Tile tile = mapTileIds[tr.getId()]; if (tile == null) { System.out.printf("no tile found: %d %d %d\n", x, y, tr.getId()); } tiles[x + (y * map.getWidth())] = tile; } } } map.setTiles(tiles); MapLayer objectsLayer = tm.getLayers().get("portals"); if (objectsLayer != null) { Iterator<MapObject> iter = objectsLayer.getObjects().iterator(); while (iter.hasNext()) { MapObject obj = iter.next(); Portal p = map.getPortal(Maps.valueOf(obj.getName()).getId()); Iterator<String> keys = obj.getProperties().getKeys(); while (keys.hasNext()) { String key = keys.next(); String value = obj.getProperties().get(key).toString(); if (key.equals("x")) { p.setX(new Integer(value)); } else if (key.equals("y")) { p.setY(new Integer(value)); } } } } objectsLayer = tm.getLayers().get("moongates"); if (objectsLayer != null) { Iterator<MapObject> iter = objectsLayer.getObjects().iterator(); while (iter.hasNext()) { MapObject obj = iter.next(); Moongate m = map.getMoongate(obj.getName()); Iterator<String> keys = obj.getProperties().getKeys(); while (keys.hasNext()) { String key = keys.next(); String value = obj.getProperties().get(key).toString(); if (key.equals("x")) { m.setX(new Integer(value)); } else if (key.equals("y")) { m.setY(new Integer(value)); } } } } }