Advertisement
Guest User

Untitled

a guest
Dec 14th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.56 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.IOException;
  3. import java.nio.file.FileVisitResult;
  4. import java.nio.file.Files;
  5. import java.nio.file.Path;
  6. import java.nio.file.SimpleFileVisitor;
  7. import java.nio.file.attribute.BasicFileAttributes;
  8. import java.util.List;
  9. import java.util.logging.Logger;
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.Server;
  12. import org.bukkit.World;
  13. import org.bukkit.WorldCreator;
  14. import org.bukkit.configuration.file.FileConfiguration;
  15. import org.bukkit.configuration.file.YamlConfiguration;
  16. import org.bukkit.entity.Player;
  17. import org.bukkit.plugin.Plugin;
  18. import org.bukkit.plugin.PluginManager;
  19. import org.bukkit.plugin.java.JavaPlugin;
  20.  
  21. public class Caves
  22. extends JavaPlugin
  23. {
  24. public void onEnable()
  25. {
  26. try
  27. {
  28. if (!Bukkit.getServer().getPluginManager().getPlugin("TerrainControl").isEnabled()) {
  29. Bukkit.getServer().getPluginManager().enablePlugin(Bukkit.getServer().getPluginManager().getPlugin("TerrainControl"));
  30. }
  31. FileConfiguration config = YamlConfiguration.loadConfiguration(new File("bukkit.yml"));
  32. config.set("worlds.uhc_world.generator", "TerrainControl");
  33. Bukkit.getLogger().info("The world 'uhc_world' is now being generated.");
  34. Bukkit.getServer().createWorld(new WorldCreator("uhc_world").generator("TerrainControl"));
  35. try
  36. {
  37. config.save(new File("bukkit.yml"));
  38. }
  39. catch (IOException localIOException) {}
  40. return;
  41. }
  42. catch (Exception localException) {}
  43. }
  44.  
  45. public void onDisable()
  46. {
  47. if (Bukkit.getWorld("uhc_world").getPlayers().size() > 0)
  48. {
  49. for (Player player : Bukkit.getWorld("uhc_world").getPlayers())
  50. {
  51. player.teleport(Bukkit.getWorld("world").getSpawnLocation());
  52. player.sendMessage("�c?You have been teleported out of the world since it is being re-generated.");
  53. }
  54. return;
  55. }
  56. Bukkit.unloadWorld("uhc_world", false);
  57. File file = Bukkit.getWorld("uhc_world").getWorldFolder();
  58. deleteFileOrFolder(file.toPath());
  59. }
  60.  
  61. public void delete(File file)
  62. {
  63. file.delete();
  64. }
  65.  
  66. public static void deleteFileOrFolder(Path path)
  67. {
  68. try
  69. {
  70. Files.walkFileTree(path, new SimpleFileVisitor()
  71. {
  72. public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
  73. throws IOException
  74. {
  75. Files.delete(file);
  76. return FileVisitResult.CONTINUE;
  77. }
  78.  
  79. public FileVisitResult visitFileFailed(Path file, IOException e)
  80. {
  81. return handleException(e);
  82. }
  83.  
  84. private FileVisitResult handleException(IOException e)
  85. {
  86. e.printStackTrace();
  87. return FileVisitResult.TERMINATE;
  88. }
  89.  
  90. public FileVisitResult postVisitDirectory(Path dir, IOException e)
  91. throws IOException
  92. {
  93. if (e != null) {
  94. return handleException(e);
  95. }
  96. Files.delete(dir);
  97. return FileVisitResult.CONTINUE;
  98. }
  99. });
  100. }
  101. catch (IOException e)
  102. {
  103. e.printStackTrace();
  104. }
  105. }
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement