public static void clearLevels() { for (int x = -2; x <= 1; x++) { if (loadedMaps.get(x) != null) { loadedMaps.put(x, null); } } }
public static Level get(int layer, Player player) { Level level = loadedMaps.get(layer); if (level == null) { level = new Level( Art.load("/res/map/layer_" + layer + ".png"), Art.load("/res/map/items_" + layer + ".png"), player, layer); loadedMaps.put(layer, level); } return level; }
public void saveAllOpenLevels(RandomAccessFile savefile) throws IOException { System.out.printf("Entering map saver at %d!\n", savefile.getFilePointer()); int mapsToSave = loadedMaps.size(); savefile.writeInt(mapsToSave); saveMap(1, savefile); saveMap(0, savefile); saveMap(-1, savefile); saveMap(-2, savefile); saveMap(-100, savefile); }
public static void loadMap(int layer, Player player, RandomAccessFile loadfile) throws IOException { Level level = new Level(Art.load("/res/map/layer_" + layer + ".png"), null, player, layer, true); for (int x = 0; x < level.w; x++) { for (int y = 0; y < level.h; y++) { if (x == 0 && y == 0) { System.out.printf("Entering first tile at %d!\n", loadfile.getFilePointer()); } Tile tileToSave = level.getTile(x, y); tileToSave.loadTile(loadfile); } } level.init(); loadedMaps.put(layer, level); }
public void saveMap(int layer, RandomAccessFile savefile) throws IOException { System.out.printf("Saving map %d at %d!\n", layer, savefile.getFilePointer()); Level level = loadedMaps.get(layer); if (level == null) { return; } savefile.writeInt(layer); for (int x = 0; x < level.w; x++) { for (int y = 0; y < level.h; y++) { if (x == 0 && y == 0) { System.out.printf("Entering first tile at %d!\n", savefile.getFilePointer()); } Tile tileToSave = level.getTile(x, y); tileToSave.saveTile(savefile); } } }