JackOUT

Untitled

Jan 23rd, 2022
721
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.21 KB | None | 0 0
  1. package games.coob.skywars.model;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.World;
  5. import org.bukkit.WorldCreator;
  6.  
  7. import java.io.File;
  8. import java.io.IOException;
  9.  
  10. public class LocalGameMap implements GameMap {
  11.     private final File sourceWorldFolder;
  12.  
  13.     public LocalGameMap(final File worldFolder, final String worldName, final boolean loadOnInit) throws IOException {
  14.         this.sourceWorldFolder = new File(worldFolder, worldName);
  15.     }
  16.  
  17.     @Override
  18.     public void load() throws IOException {
  19.         final File worldFolder = new File(sourceWorldFolder.getName());
  20.        
  21.     try {
  22.             FileUtil.copy(sourceWorldFolder, worldFolder);
  23.         } catch (final IOException e) {
  24.             Bukkit.getLogger().severe("Failed to load GameMap from source folder");
  25.             e.printStackTrace();
  26.             return false;
  27.         }
  28.  
  29.         Bukkit.createWorld(new WorldCreator(sourceWorldFolder.getName()));
  30.         Bukkit.getWorld(sourceWorldFolder.getName()).setAutoSave(false);
  31.     }
  32.  
  33.     @Override
  34.     public void unload() {
  35.         final World world = Bukkit.getWorld(sourceWorldFolder.getName());
  36.  
  37.         Bukkit.unloadWorld(world, false);
  38.         FileUtil.delete(world.getWorldFolder());
  39.     }
  40.  
  41.     @Override
  42.     public void restoreFromSource() throws IOException {
  43.         unload();
  44.         load();
  45.     }
  46. }
  47.  
Advertisement
Add Comment
Please, Sign In to add comment