diff --git a/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubCommand.java b/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubCommand.java index 21a206f5..3939d84f 100644 --- a/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubCommand.java +++ b/SubServers.Client/Bukkit/src/net/ME1312/SubServers/Client/Bukkit/SubCommand.java @@ -40,6 +40,8 @@ public final class SubCommand implements CommandExecutor { } else if (plugin.lang == null) { new IllegalStateException("There are no lang options available at this time").printStackTrace(); if (!(sender instanceof ConsoleCommandSender)) sender.sendMessage(ChatColor.RED + "An exception has occurred while running this command"); + } else if (!(sender instanceof ConsoleCommandSender || plugin.config.get().getSection("Settings").getBoolean("Ingame-Access", true))) { + sender.sendMessage(plugin.api.getLang("SubServers", "Command.Generic.Invalid-Permission").replace("$str$", "subservers.command")); } else { if (sender.hasPermission("subservers.command")) { if (args.length > 0) { 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 15e5a9e1..ed9a6ae9 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 @@ -77,13 +77,11 @@ public final class SubPlugin extends JavaPlugin { reload(false); - if (config.get().getSection("Settings").getBoolean("Ingame-Access", true)) { - gui = new DefaultUIHandler(this); - SubCommand cmd = new SubCommand(this); - getCommand("subservers").setExecutor(cmd); - getCommand("subserver").setExecutor(cmd); - getCommand("sub").setExecutor(cmd); - } + gui = new DefaultUIHandler(this); + SubCommand cmd = new SubCommand(this); + getCommand("subservers").setExecutor(cmd); + getCommand("subserver").setExecutor(cmd); + getCommand("sub").setExecutor(cmd); new Metrics(this); Bukkit.getScheduler().runTaskTimerAsynchronously(this, () -> { diff --git a/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubCommand.java b/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubCommand.java index eb333a0f..c508a6b3 100644 --- a/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubCommand.java +++ b/SubServers.Client/Sponge/src/net/ME1312/SubServers/Client/Sponge/SubCommand.java @@ -17,6 +17,7 @@ import org.spongepowered.api.command.CommandResult; import org.spongepowered.api.command.CommandSource; import org.spongepowered.api.command.args.CommandContext; import org.spongepowered.api.command.args.GenericArguments; +import org.spongepowered.api.command.source.ConsoleSource; import org.spongepowered.api.command.spec.CommandExecutor; import org.spongepowered.api.command.spec.CommandSpec; import org.spongepowered.api.entity.living.player.Player; @@ -115,7 +116,7 @@ public final class SubCommand implements CommandExecutor { } else if (plugin.lang == null) { throw new CommandException(Text.builder("An exception has occurred while running this command").color(TextColors.RED).build(), new IllegalStateException("There are no lang options available at this time"), false); } else { - return sender.hasPermission("subservers.command"); + return (sender instanceof ConsoleSource || plugin.config.get().getSection("Settings").getBoolean("Ingame-Access", true)) && sender.hasPermission("subservers.command"); } } 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 db7d9846..f4d821d0 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 @@ -102,10 +102,8 @@ public final class SubPlugin { reload(false); - if (config.get().getSection("Settings").getBoolean("Ingame-Access", true)) { - //gui = new InternalUIHandler(this); - Sponge.getCommandManager().register(plugin, new SubCommand(this).spec(), "sub", "subserver", "subservers"); - } + //gui = new InternalUIHandler(this); + Sponge.getCommandManager().register(plugin, new SubCommand(this).spec(), "sub", "subserver", "subservers"); new Metrics(this); game.getScheduler().createTaskBuilder().async().execute(() -> {