diff --git a/pom.xml b/pom.xml index a95700d..f097acc 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.ne0nx3r0.betteralias BetterAlias - 1.5.3 + 1.5.4 BetterAlias Command alias system https://dev.bukkit.org/bukkit-plugins/betteralias/ diff --git a/src/main/java/com/ne0nx3r0/betteralias/BetterAlias.java b/src/main/java/com/ne0nx3r0/betteralias/BetterAlias.java index 89c9692..d273578 100644 --- a/src/main/java/com/ne0nx3r0/betteralias/BetterAlias.java +++ b/src/main/java/com/ne0nx3r0/betteralias/BetterAlias.java @@ -31,4 +31,13 @@ public class BetterAlias extends JavaPlugin this.getCommand("bareload").setExecutor(betterAliasCommandExecutor); } + + public boolean reload() { + + if (aliasManager.loadAliases() && this.config.reload()) { + return true; + } + + return false; + } } diff --git a/src/main/java/com/ne0nx3r0/betteralias/alias/AliasManager.java b/src/main/java/com/ne0nx3r0/betteralias/alias/AliasManager.java index de7f095..9d2751a 100644 --- a/src/main/java/com/ne0nx3r0/betteralias/alias/AliasManager.java +++ b/src/main/java/com/ne0nx3r0/betteralias/alias/AliasManager.java @@ -1,9 +1,5 @@ package com.ne0nx3r0.betteralias.alias; -import java.io.File; -import java.io.FileOutputStream; -import java.io.InputStream; -import java.io.OutputStream; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; @@ -34,11 +30,13 @@ public class AliasManager { this.config = new AliasConfig(plugin); // TODO resolve error when no aliases loaded - loadAliases(); + this.aliases = this.config.loadAliases(); } public boolean loadAliases() { + this.config.reload(); + this.aliases = this.config.loadAliases(); if (aliases.isEmpty()) { @@ -97,7 +95,7 @@ public class AliasManager { } } else if (text.equalsIgnoreCase("handItemName")) { if (player != null) { - text = player.getItemInHand().getType().name(); + text = player.getInventory().getItemInMainHand().getType().name(); } else { cs.sendMessage("[BetterAlias] " + ChatColor.RED + "A parameter of this alias requires a player."); @@ -107,7 +105,7 @@ public class AliasManager { } } else if (text.equalsIgnoreCase("handItemID")) { if (player != null) { - text = new Integer(player.getItemInHand().getTypeId()).toString(); + text = new Integer(player.getInventory().getItemInMainHand().getTypeId()).toString(); } else { cs.sendMessage("[BetterAlias] " + ChatColor.RED + "A parameter of this alias requires a player."); @@ -297,19 +295,4 @@ public class AliasManager { } } } - - public void copy(InputStream in, File file) { - try { - OutputStream out = new FileOutputStream(file); - byte[] buf = new byte[1024]; - int len; - while ((len = in.read(buf)) > 0) { - out.write(buf, 0, len); - } - out.close(); - in.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } } diff --git a/src/main/java/com/ne0nx3r0/betteralias/command/BetterAliasCommandExecutor.java b/src/main/java/com/ne0nx3r0/betteralias/command/BetterAliasCommandExecutor.java index ec523fa..1eeeb3c 100644 --- a/src/main/java/com/ne0nx3r0/betteralias/command/BetterAliasCommandExecutor.java +++ b/src/main/java/com/ne0nx3r0/betteralias/command/BetterAliasCommandExecutor.java @@ -24,7 +24,7 @@ public class BetterAliasCommandExecutor implements CommandExecutor { cs.sendMessage(ChatColor.GOLD + "Reloading aliases..."); - if (plugin.aliasManager.loadAliases()) { + if (plugin.reload()) { cs.sendMessage(ChatColor.GOLD + "Aliases reloaded!"); } else { cs.sendMessage(ChatColor.RED + "An error occurred while reloading aliases!"); diff --git a/src/main/java/com/ne0nx3r0/betteralias/config/AliasConfig.java b/src/main/java/com/ne0nx3r0/betteralias/config/AliasConfig.java index 2344884..8238c02 100644 --- a/src/main/java/com/ne0nx3r0/betteralias/config/AliasConfig.java +++ b/src/main/java/com/ne0nx3r0/betteralias/config/AliasConfig.java @@ -26,7 +26,7 @@ public class AliasConfig { private final File configurationFile; - private FileConfiguration configuration; + private static FileConfiguration configuration; public AliasConfig(final BetterAlias plugin) { @@ -39,22 +39,21 @@ public class AliasConfig { copy(plugin.getResource("aliases.yml"), configurationFile); } - configuration = YamlConfiguration.loadConfiguration(configurationFile); + AliasConfig.configuration = YamlConfiguration.loadConfiguration(configurationFile); } - // TODO Synch with bareload public void reload() { - configuration = YamlConfiguration.loadConfiguration(configurationFile); + AliasConfig.configuration = YamlConfiguration.loadConfiguration(configurationFile); } public FileConfiguration getAliasConfiguration() { - return this.configuration; + return AliasConfig.configuration; } public final HashMap loadAliases() { HashMap aliases = new HashMap(); - Set aliasList = this.configuration.getKeys(false); + Set aliasList = AliasConfig.configuration.getKeys(false); if (aliasList.isEmpty()) { plugin.getLogger().log(Level.WARNING, "No aliases found in aliases.yml"); @@ -65,11 +64,11 @@ public class AliasConfig { for (String sAlias : aliasList) { Alias alias = new Alias( sAlias, - this.configuration.getBoolean(sAlias + ".caseSensitive", false), - this.configuration.getString(sAlias + ".permission", null), - this.configuration.getString(sAlias + ".priority", null)); + AliasConfig.configuration.getBoolean(sAlias + ".caseSensitive", false), + AliasConfig.configuration.getString(sAlias + ".permission", null), + AliasConfig.configuration.getString(sAlias + ".priority", null)); - for (String sArg : this.configuration.getConfigurationSection(sAlias).getKeys(false)) { + for (String sArg : AliasConfig.configuration.getConfigurationSection(sAlias).getKeys(false)) { List commandsList = new ArrayList(); if (!sArg.equalsIgnoreCase("permission") @@ -86,10 +85,10 @@ public class AliasConfig { List sArgLines = new ArrayList(); - if (this.configuration.isList(sAlias + "." + sArg)) { - sArgLines = this.configuration.getStringList(sAlias + "." + sArg); + if (AliasConfig.configuration.isList(sAlias + "." + sArg)) { + sArgLines = AliasConfig.configuration.getStringList(sAlias + "." + sArg); } else { - sArgLines.add(this.configuration.getString(sAlias + "." + sArg)); + sArgLines.add(AliasConfig.configuration.getString(sAlias + "." + sArg)); } for (String sArgLine : sArgLines) { diff --git a/src/main/java/com/ne0nx3r0/betteralias/config/PluginConfig.java b/src/main/java/com/ne0nx3r0/betteralias/config/PluginConfig.java index 45e269a..0a2143c 100644 --- a/src/main/java/com/ne0nx3r0/betteralias/config/PluginConfig.java +++ b/src/main/java/com/ne0nx3r0/betteralias/config/PluginConfig.java @@ -9,7 +9,7 @@ import com.ne0nx3r0.betteralias.BetterAlias; public class PluginConfig { - private Configuration configuration; + private static Configuration configuration; private final File configurationFile; @@ -18,16 +18,17 @@ public class PluginConfig { plugin.saveDefaultConfig(); plugin.saveConfig(); - configuration = plugin.getConfig(); + PluginConfig.configuration = plugin.getConfig(); configurationFile = new File(plugin.getDataFolder(), "config.yml"); } - // TODO Synch with bareload - public void reload() { - configuration = YamlConfiguration.loadConfiguration(configurationFile); + public boolean reload() { + PluginConfig.configuration = YamlConfiguration.loadConfiguration(configurationFile); + + return !PluginConfig.configuration.getKeys(false).isEmpty(); } public boolean getDebuggingState() { - return this.configuration.getBoolean("debug"); + return PluginConfig.configuration.getBoolean("debug"); } } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 3f2072d..eb2c49b 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: BetterAlias main: com.ne0nx3r0.betteralias.BetterAlias -version: '1.5.2' +version: '1.5.4' database: false description: Command alias system commands: