Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package games.coob.skywars.test;
- import org.apache.commons.io.FileUtils;
- import org.bukkit.Bukkit;
- import org.bukkit.World;
- import org.bukkit.WorldCreator;
- import java.io.File;
- import java.io.IOException;
- public class LocalGameMap implements GameMap {
- private final File sourceWorldFolder;
- public LocalGameMap(final File worldFolder, final String worldName) {
- this.sourceWorldFolder = new File(worldFolder, worldName);
- }
- @Override
- public void load() throws IOException {
- final File worldFolder = new File(sourceWorldFolder.getName());
- if (!worldFolder.exists())
- worldFolder.mkdir();
- try {
- for (final File sourceFile : sourceWorldFolder.listFiles()) {
- if (sourceFile.isDirectory())
- FileUtils.copyDirectoryToDirectory(sourceFile, worldFolder); // TODO
- if (sourceFile.isFile())
- FileUtils.copyFileToDirectory(sourceFile, worldFolder);
- }
- } catch (final IOException e) {
- Bukkit.getLogger().severe("Failed to load GameMap from source folder");
- e.printStackTrace();
- }
- Bukkit.createWorld(new WorldCreator(sourceWorldFolder.getName()));
- Bukkit.getWorld(sourceWorldFolder.getName()).setAutoSave(false);
- }
- @Override
- public void unload() throws IOException {
- final World world = Bukkit.getWorld(sourceWorldFolder.getName());
- System.out.println(world);
- Bukkit.unloadWorld(world, false);
- //FileUtil.delete(world.getWorldFolder());
- //FileUtils.deleteDirectory(world.getWorldFolder());
- FileUtils.forceDelete(world.getWorldFolder());
- }
- @Override
- public void restoreFromSource() throws IOException {
- unload();
- load();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement