diff --git a/Challenge/src/main/java/de/fanta/challenge/utils/SaveWorldUtils.java b/Challenge/src/main/java/de/fanta/challenge/utils/SaveWorldUtils.java index 667f938..e94f082 100644 --- a/Challenge/src/main/java/de/fanta/challenge/utils/SaveWorldUtils.java +++ b/Challenge/src/main/java/de/fanta/challenge/utils/SaveWorldUtils.java @@ -139,11 +139,13 @@ copyFuture.thenAccept(result -> { plugin.getServer().getScheduler().runTask(plugin, () -> { plugin.getLogger().info("Save result: " + result); + isSavingWorld = false; if (result) { if (player != null) { plugin.getComponentUtil().sendNormalMessage(player, "Welt wurde erfolgreich auf Slot " + saveSlot.getSlot() + " gespeichert!"); } + plugin.getLogger().info("isServerRestartRequested: " + isServerRestartRequested); if (isServerRestartRequested) { restartServerInternal(restartSeed); } else if (restart) { @@ -155,7 +157,6 @@ plugin.getComponentUtil().sendErrorMessage(Bukkit.getPlayer(saveID), "Map konnte nicht richtig gespeichert werden, bitte versuche es noch einmal"); } } - isSavingWorld = false; try { FileUtils.deleteDirectory(dir); } catch (IOException ex) { @@ -169,10 +170,16 @@ } public static void restartServer(@Nullable String seed) { + plugin.getLogger().info("run restart server"); + if (plugin.isWaitingForShutdown()) { + return; + } if (isSavingWorld) { + plugin.getLogger().info("run restart server if"); restartSeed = seed; isServerRestartRequested = true; } else { + plugin.getLogger().info("run restart server else"); restartServerInternal(seed); } } @@ -208,7 +215,6 @@ Config.setValue("World_Reset", true); Bukkit.shutdown(); } - } private static void setSeedInServerProperties(@Nullable String seed) {