Support asynchronous events; Addresses BUKKIT-1212
Dieser Commit ist enthalten in:
Ursprung
f58e514192
Commit
ed6d4c7759
@ -14,7 +14,6 @@ import java.util.logging.Logger;
|
||||
|
||||
// CraftBukkit start
|
||||
import java.io.PrintStream;
|
||||
import java.io.PrintWriter;
|
||||
import java.net.UnknownHostException;
|
||||
import jline.console.ConsoleReader;
|
||||
import joptsimple.OptionSet;
|
||||
@ -83,6 +82,7 @@ public class MinecraftServer implements Runnable, ICommandListener, IMinecraftSe
|
||||
public RemoteConsoleCommandSender remoteConsole;
|
||||
public ConsoleReader reader;
|
||||
public static int currentTick;
|
||||
public final Thread primaryThread;
|
||||
// CraftBukkit end
|
||||
|
||||
public MinecraftServer(OptionSet options) { // CraftBukkit - adds argument OptionSet
|
||||
@ -106,6 +106,8 @@ public class MinecraftServer implements Runnable, ICommandListener, IMinecraftSe
|
||||
}
|
||||
}
|
||||
Runtime.getRuntime().addShutdownHook(new ServerShutdownThread(this));
|
||||
|
||||
primaryThread = new ThreadServerApplication("Server thread", this); // Moved from main
|
||||
// CraftBukkit end
|
||||
}
|
||||
|
||||
@ -625,7 +627,7 @@ public class MinecraftServer implements Runnable, ICommandListener, IMinecraftSe
|
||||
|
||||
// CraftBukkit - remove gui
|
||||
|
||||
(new ThreadServerApplication("Server thread", minecraftserver)).start();
|
||||
minecraftserver.primaryThread.start(); // CraftBukkit - let MinecraftServer construct the thread
|
||||
} catch (Exception exception) {
|
||||
log.log(Level.SEVERE, "Failed to start the minecraft server", exception);
|
||||
}
|
||||
@ -779,7 +781,7 @@ public class MinecraftServer implements Runnable, ICommandListener, IMinecraftSe
|
||||
public String[] r() {
|
||||
return (String[]) this.serverConfigurationManager.getBannedPlayers().toArray(new String[0]);
|
||||
}
|
||||
|
||||
|
||||
public String getServerModName() {
|
||||
return "craftbukkit"; // CraftBukkit - cb > vanilla!
|
||||
}
|
||||
|
@ -1182,4 +1182,8 @@ public final class CraftServer implements Server {
|
||||
public int getWaterAnimalSpawnLimit() {
|
||||
return waterAnimalSpawn;
|
||||
}
|
||||
|
||||
public boolean isPrimaryThread() {
|
||||
return Thread.currentThread().equals(console.primaryThread);
|
||||
}
|
||||
}
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren