geforkt von Mirrors/Paper
42 Zeilen
1.5 KiB
Diff
42 Zeilen
1.5 KiB
Diff
@@ -4,6 +4,8 @@
|
|
import java.io.IOException;
|
|
import java.io.InputStreamReader;
|
|
|
|
+import static org.bukkit.craftbukkit.Main.*; // CraftBukkit
|
|
+
|
|
class ThreadCommandReader extends Thread {
|
|
|
|
final DedicatedServer server;
|
|
@@ -14,13 +16,28 @@
|
|
}
|
|
|
|
public void run() {
|
|
- BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(System.in));
|
|
+ // CraftBukkit start
|
|
+ if (!useConsole) {
|
|
+ return;
|
|
+ }
|
|
+ // CraftBukkit end
|
|
+
|
|
+ jline.console.ConsoleReader bufferedreader = this.server.reader; // CraftBukkit
|
|
|
|
String s;
|
|
|
|
try {
|
|
- while (!this.server.isStopped() && this.server.isRunning() && (s = bufferedreader.readLine()) != null) {
|
|
- this.server.issueCommand(s, this.server);
|
|
+ // CraftBukkit start - JLine disabling compatibility
|
|
+ while (!this.server.isStopped() && this.server.isRunning()) {
|
|
+ if (useJline) {
|
|
+ s = bufferedreader.readLine(">", null);
|
|
+ } else {
|
|
+ s = bufferedreader.readLine();
|
|
+ }
|
|
+ if (s != null && s.trim().length() > 0) { // Trim to filter lines which are just spaces
|
|
+ this.server.issueCommand(s, this.server);
|
|
+ }
|
|
+ // CraftBukkit end
|
|
}
|
|
} catch (IOException ioexception) {
|
|
DedicatedServer.aR().error("Exception handling console input", ioexception);
|