Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-20 21:40:06 +01:00
Ctrl+C saves world before stopping
Dieser Commit ist enthalten in:
Ursprung
b37dd48ae5
Commit
2ac43ce223
@ -21,6 +21,7 @@ import org.bukkit.craftbukkit.CraftServer;
|
|||||||
import org.bukkit.craftbukkit.LoggerOutputStream;
|
import org.bukkit.craftbukkit.LoggerOutputStream;
|
||||||
import org.bukkit.craftbukkit.command.ColouredConsoleSender;
|
import org.bukkit.craftbukkit.command.ColouredConsoleSender;
|
||||||
import org.bukkit.craftbukkit.scheduler.CraftScheduler;
|
import org.bukkit.craftbukkit.scheduler.CraftScheduler;
|
||||||
|
import org.bukkit.craftbukkit.util.ServerShutdownThread;
|
||||||
import org.bukkit.event.world.WorldSaveEvent;
|
import org.bukkit.event.world.WorldSaveEvent;
|
||||||
|
|
||||||
|
|
||||||
@ -64,6 +65,7 @@ public class MinecraftServer implements Runnable, ICommandListener {
|
|||||||
} catch (IOException ex) {
|
} catch (IOException ex) {
|
||||||
Logger.getLogger(MinecraftServer.class.getName()).log(Level.SEVERE, null, ex);
|
Logger.getLogger(MinecraftServer.class.getName()).log(Level.SEVERE, null, ex);
|
||||||
}
|
}
|
||||||
|
Runtime.getRuntime().addShutdownHook(new ServerShutdownThread(this));
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,7 +220,7 @@ public class MinecraftServer implements Runnable, ICommandListener {
|
|||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
}
|
}
|
||||||
|
|
||||||
private void g() {
|
public void g() { // Craftbukkit: private -> public
|
||||||
a.info("Stopping server");
|
a.info("Stopping server");
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
if (server != null) {
|
if (server != null) {
|
||||||
|
17
src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
Normale Datei
17
src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java
Normale Datei
@ -0,0 +1,17 @@
|
|||||||
|
|
||||||
|
package org.bukkit.craftbukkit.util;
|
||||||
|
|
||||||
|
import net.minecraft.server.MinecraftServer;
|
||||||
|
|
||||||
|
public class ServerShutdownThread extends Thread {
|
||||||
|
private final MinecraftServer server;
|
||||||
|
|
||||||
|
public ServerShutdownThread(MinecraftServer server) {
|
||||||
|
this.server = server;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
server.g();
|
||||||
|
}
|
||||||
|
}
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren