diff --git a/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubPlugin.java b/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubPlugin.java index 205a6f4f..a8d1b3dd 100644 --- a/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubPlugin.java +++ b/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubPlugin.java @@ -59,12 +59,12 @@ public final class SubPlugin extends JavaPlugin { } if (!(new UniversalFile(getDataFolder(), "config.yml").exists())) { Util.copyFromJar(SubPlugin.class.getClassLoader(), "config.yml", new UniversalFile(getDataFolder(), "config.yml").getPath()); - Bukkit.getLogger().info("SubServers > Created ~/plugins/SubServers/config.yml"); + Bukkit.getLogger().info("SubServers > Created ~/plugins/SubServers-Client-Bukkit/config.yml"); } else if ((new Version((new YAMLConfig(new UniversalFile(getDataFolder(), "config.yml"))).get().getSection("Settings").getString("Version", "0")).compareTo(new Version("2.11.2a+"))) != 0) { Files.move(new UniversalFile(getDataFolder(), "config.yml").toPath(), new UniversalFile(getDataFolder(), "config.old" + Math.round(Math.random() * 100000) + ".yml").toPath()); Util.copyFromJar(SubPlugin.class.getClassLoader(), "config.yml", new UniversalFile(getDataFolder(), "config.yml").getPath()); - Bukkit.getLogger().info("SubServers > Updated ~/plugins/SubServers/config.yml"); + Bukkit.getLogger().info("SubServers > Updated ~/plugins/SubServers-Client-Bukkit/config.yml"); } config = new YAMLConfig(new UniversalFile(getDataFolder(), "config.yml")); if (new UniversalFile(new File(System.getProperty("user.dir")), "subservers.client").exists()) { diff --git a/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubPlugin.java b/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubPlugin.java index 48e65c5a..11fa612f 100644 --- a/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubPlugin.java +++ b/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubPlugin.java @@ -84,12 +84,12 @@ public final class SubPlugin { } if (!(new UniversalFile(dir, "config.yml").exists())) { Util.copyFromJar(SubPlugin.class.getClassLoader(), "config.yml", new UniversalFile(dir, "config.yml").getPath()); - logger.info("Created ~/plugins/SubServers/config.yml"); + logger.info("Created ~/config/subservers-client-sponge/config.yml"); } else if ((new Version((new YAMLConfig(new UniversalFile(dir, "config.yml"))).get().getSection("Settings").getString("Version", "0")).compareTo(new Version("2.11.2a+"))) != 0) { Files.move(new UniversalFile(dir, "config.yml").toPath(), new UniversalFile(dir, "config.old" + Math.round(Math.random() * 100000) + ".yml").toPath()); Util.copyFromJar(SubPlugin.class.getClassLoader(), "config.yml", new UniversalFile(dir, "config.yml").getPath()); - logger.info("Updated ~/plugins/SubServers/config.yml"); + logger.info("Updated ~/config/subservers-client-sponge/config.yml"); } config = new YAMLConfig(new UniversalFile(dir, "config.yml")); if (new UniversalFile(new File(System.getProperty("user.dir")), "subservers.client").exists()) { diff --git a/SubServers.Console/pom.xml b/SubServers.Console/pom.xml index ac07f6c2..5f226f2a 100644 --- a/SubServers.Console/pom.xml +++ b/SubServers.Console/pom.xml @@ -49,6 +49,15 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 3.7.0 + + 1.7 + 1.8 + + org.codehaus.mojo ideauidesigner-maven-plugin @@ -66,15 +75,6 @@ true - - org.apache.maven.plugins - maven-compiler-plugin - 3.7.0 - - 1.7 - 1.8 - - org.apache.maven.plugins maven-antrun-plugin diff --git a/SubServers.Console/src/bungee.yml b/SubServers.Console/src/bungee.yml index dbb55a0d..2b3e250a 100644 --- a/SubServers.Console/src/bungee.yml +++ b/SubServers.Console/src/bungee.yml @@ -1,4 +1,4 @@ name: SubServers-Console main: net.ME1312.SubServers.Console.ConsolePlugin -version: 2.12.1a +version: 2.13.2a author: ME1312 \ No newline at end of file diff --git a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java index 5a41a9ad..a132503d 100644 --- a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java +++ b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java @@ -356,8 +356,6 @@ public final class ConsoleWindow implements SubLogFilter { if (logger.getHandler() instanceof SubServer && input.getText().length() > 0 && !input.getText().equals(">")) { if (((SubServer) logger.getHandler()).command((input.getText().startsWith(">")) ? input.getText().substring(1) : input.getText())) { popup.commands.add((input.getText().startsWith(">")) ? input.getText().substring(1) : input.getText()); - popup.current = 0; - popup.last = true; input.setText(""); } } @@ -376,9 +374,21 @@ public final class ConsoleWindow implements SubLogFilter { public void replace(FilterBypass fb, int offset, int length, String text, AttributeSet attrs) throws BadLocationException { if (offset < 1) { length = Math.max(0, length - 1); - offset = 1; + offset = input.getDocument().getLength(); + input.setCaretPosition(offset); + } + + if (popup.history == Boolean.TRUE) { + popup.history = null; + } else if (popup.history == null) { + popup.history = false; + } + + try { + super.replace(fb, offset, length, text, attrs); + } catch (BadLocationException e) { + super.replace(fb, 1, length, text, attrs); } - super.replace(fb, offset, length, text, attrs); } @Override @@ -664,8 +674,9 @@ public final class ConsoleWindow implements SubLogFilter { private class TextFieldPopup extends JPanel { protected LinkedList commands = new LinkedList(); - protected int current = 0; - protected boolean last = true; + protected Boolean history = false; + protected int hpos = -1; + protected String hcache = ""; public TextFieldPopup(JTextComponent field, boolean command) { JPopupMenu menu = new JPopupMenu(); @@ -738,11 +749,17 @@ public final class ConsoleWindow implements SubLogFilter { if (field.isEditable()) { LinkedList list = new LinkedList(commands); Collections.reverse(list); - if (current > 0) { - if (last && current != 1) current--; - last = false; - field.setText(list.get(--current)); - } else field.setText(""); + if (history == Boolean.FALSE) { + hcache = (field.getText().startsWith(">"))?field.getText().substring(1):field.getText(); + hpos = -1; + } else { + hpos--; + if (hpos < -1) hpos = -1; + } + if (hpos >= 0) { + history = true; + field.setText(list.get(hpos)); + } else field.setText(hcache); field.setCaretPosition(field.getText().length()); } } @@ -751,11 +768,16 @@ public final class ConsoleWindow implements SubLogFilter { if (field.isEditable()) { LinkedList list = new LinkedList(commands); Collections.reverse(list); - if (list.size() > current) { - if (!last) current++; - last = true; - field.setText(list.get(current++)); - field.setCaretPosition(field.getText().length()); + if (history == Boolean.FALSE) { + hcache = (field.getText().startsWith(">"))?field.getText().substring(1):field.getText(); + hpos = 0; + } else { + hpos++; + } + if (hpos >= list.size()) hpos = list.size() - 1; + if (hpos >= 0) { + history = true; + field.setText(list.get(hpos)); } } } diff --git a/SubServers.Host/pom.xml b/SubServers.Host/pom.xml index 969e8bd8..91b8d3b7 100644 --- a/SubServers.Host/pom.xml +++ b/SubServers.Host/pom.xml @@ -20,7 +20,7 @@ net.ME1312.Galaxi GalaxiEngine - 18w43b + 18w43d compile diff --git a/SubServers.Host/src/net/ME1312/SubServers/Host/ExHost.java b/SubServers.Host/src/net/ME1312/SubServers/Host/ExHost.java index 994dfa11..0521f6f6 100644 --- a/SubServers.Host/src/net/ME1312/SubServers/Host/ExHost.java +++ b/SubServers.Host/src/net/ME1312/SubServers/Host/ExHost.java @@ -132,6 +132,7 @@ public final class ExHost { try { info = PluginInfo.getPluginInfo(this); info.setLogger(log); + info.setIcon(ExHost.class.getResourceAsStream("/net/ME1312/SubServers/Host/Library/Files/icon.png")); engine = GalaxiEngine.init(info); log.info.println("Loading SubServers.Host v" + info.getVersion().toString() + " Libraries"); if (!(new UniversalFile(engine.getRuntimeDirectory(), "config.yml").exists())) { @@ -242,7 +243,7 @@ public final class ExHost { } } catch (Exception e) { log.error.println(e); - stop(); + engine.stop(); } } diff --git a/SubServers.Host/src/net/ME1312/SubServers/Host/Executable/SubLogger.java b/SubServers.Host/src/net/ME1312/SubServers/Host/Executable/SubLogger.java index 87a9c10e..9ddb78bc 100644 --- a/SubServers.Host/src/net/ME1312/SubServers/Host/Executable/SubLogger.java +++ b/SubServers.Host/src/net/ME1312/SubServers/Host/Executable/SubLogger.java @@ -1,5 +1,6 @@ package net.ME1312.SubServers.Host.Executable; +import net.ME1312.Galaxi.Library.Config.YAMLSection; import net.ME1312.Galaxi.Library.Container; import net.ME1312.Galaxi.Library.Log.LogStream; import net.ME1312.Galaxi.Library.Log.Logger; @@ -104,10 +105,11 @@ public class SubLogger { } // Log to NETWORK - if (log.get() && SubAPI.getInstance().getInternals().config.get().getSection("Settings").getBoolean("Network-Log", true)) SubAPI.getInstance().getSubDataNetwork().sendPacket(new PacketOutExLogMessage(address, line)); + YAMLSection yaml = SubAPI.getInstance().getInternals().config.get().getSection("Settings"); + if (log.get() && yaml.getBoolean("Network-Log", true)) SubAPI.getInstance().getSubDataNetwork().sendPacket(new PacketOutExLogMessage(address, line)); // Log to CONSOLE - if (log.get() && SubAPI.getInstance().getInternals().config.get().getSection("Settings").getBoolean("Console-Log", true)) level.println(TextColor.convertColor(msg)); + if (log.get() && yaml.getBoolean("Console-Log", true)) level.println(TextColor.convertColor(msg)); // Log to FILE if (writer != null) { diff --git a/SubServers.Host/src/net/ME1312/SubServers/Host/Library/Files/icon.png b/SubServers.Host/src/net/ME1312/SubServers/Host/Library/Files/icon.png new file mode 100644 index 00000000..e6c9a82d Binary files /dev/null and b/SubServers.Host/src/net/ME1312/SubServers/Host/Library/Files/icon.png differ