From 3bbca4a9aee62133bd0f7b7ff230329ac28bb808 Mon Sep 17 00:00:00 2001 From: f4n74z14 <28479425+f4n74z14@users.noreply.github.com> Date: Tue, 19 Jul 2022 13:28:02 +0700 Subject: [PATCH] Make "parse" command toggleable. Fix a small typo. --- .../expansion/javascript/JavascriptExpansion.java | 3 ++- .../javascript/commands/GitDownloadCommand.java | 2 +- .../expansion/javascript/commands/ParseCommand.java | 12 +++++++++++- .../javascript/commands/router/CommandRegistrar.java | 4 ++-- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java index 4372d27..f88bf5c 100644 --- a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java +++ b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java @@ -112,7 +112,7 @@ public class JavascriptExpansion extends PlaceholderExpansion implements Cacheab final JavascriptPlaceholderFactory placeholderFactory = new SimpleJavascriptPlaceholderFactory(this, scriptEvaluatorFactory); this.loader = new ConfigurationScriptLoader(registry, scriptConfiguration, placeholderFactory); try { - this.commandRegistrar = new CommandRegistrar(scriptManager, placeholderFactory, scriptConfiguration, registry, loader); + this.commandRegistrar = new CommandRegistrar(scriptManager, placeholderFactory, scriptConfiguration, registry, loader, this); } catch (ReflectiveOperationException e) { e.printStackTrace(); } @@ -167,6 +167,7 @@ public class JavascriptExpansion extends PlaceholderExpansion implements Cacheab defaults.put("debug", false); defaults.put("argument_split", ","); defaults.put("github_script_downloads", false); + defaults.put("enable_parse_command", false); defaults.put("use_quick_js", false); return defaults; } diff --git a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/GitDownloadCommand.java b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/GitDownloadCommand.java index e47776e..f907e2a 100644 --- a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/GitDownloadCommand.java +++ b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/GitDownloadCommand.java @@ -34,7 +34,7 @@ public final class GitDownloadCommand extends ExpansionCommand { @Override public void execute(final CommandSender sender, final String[] args) { if (args.length < 1) { - ExpansionUtils.sendMsg(sender, "&cIncorrect usage! &f/" + getParentCommandName() + " git info [name]"); + ExpansionUtils.sendMsg(sender, "&cIncorrect usage! &f/" + getParentCommandName() + " git download [name]"); return; } final ScriptIndexProvider indexProvider = scriptManager.getIndexProvider(); diff --git a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/ParseCommand.java b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/ParseCommand.java index f3c9b86..d4962c8 100644 --- a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/ParseCommand.java +++ b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/ParseCommand.java @@ -1,9 +1,11 @@ package com.extendedclip.papi.expansion.javascript.commands; import com.extendedclip.papi.expansion.javascript.ExpansionUtils; +import com.extendedclip.papi.expansion.javascript.JavascriptExpansion; import com.extendedclip.papi.expansion.javascript.JavascriptPlaceholder; import com.extendedclip.papi.expansion.javascript.JavascriptPlaceholderFactory; import com.extendedclip.papi.expansion.javascript.commands.router.ExpansionCommand; +import com.extendedclip.papi.expansion.javascript.config.ScriptConfiguration; import com.extendedclip.papi.expansion.javascript.evaluator.ScriptEvaluatorFactory; import org.bukkit.Bukkit; import org.bukkit.OfflinePlayer; @@ -23,13 +25,21 @@ public final class ParseCommand extends ExpansionCommand { private final JavascriptPlaceholderFactory placeholderFactory; - public ParseCommand(final String parentCommand, final JavascriptPlaceholderFactory placeholderFactory) { + private final JavascriptExpansion expansion; + + public ParseCommand(final String parentCommand, final JavascriptPlaceholderFactory placeholderFactory, JavascriptExpansion expansion) { super(parentCommand, "parse"); this.placeholderFactory = placeholderFactory; + this.expansion = expansion; } @Override public void execute(final CommandSender sender, final String[] args) { + if (!(boolean) expansion.get("enable_parse_command", false)) { + ExpansionUtils.sendMsg(sender, "&cThis command is disabled in config."); + return; + } + if (args.length < 2) { ExpansionUtils.sendMsg(sender, "&cIncorrect usage! &f/" + getParentCommandName() + " parse [me/player] [code]"); return; diff --git a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/router/CommandRegistrar.java b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/router/CommandRegistrar.java index ab87494..ece954f 100644 --- a/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/router/CommandRegistrar.java +++ b/expansion/src/main/java/com/extendedclip/papi/expansion/javascript/commands/router/CommandRegistrar.java @@ -24,7 +24,7 @@ public final class CommandRegistrar { private final CommandRouter router; private final CommandMap commandMap; - public CommandRegistrar(final GitScriptManager gitScriptManager, final JavascriptPlaceholderFactory placeholderFactory, final ScriptConfiguration configuration, final ScriptRegistry registry, final ScriptLoader loader) throws ReflectiveOperationException { + public CommandRegistrar(final GitScriptManager gitScriptManager, final JavascriptPlaceholderFactory placeholderFactory, final ScriptConfiguration configuration, final ScriptRegistry registry, final ScriptLoader loader, JavascriptExpansion expansion) throws ReflectiveOperationException { final GitRefreshCommand gitRefreshCommand = new GitRefreshCommand(gitScriptManager.getIndexProvider()); final GitListCommand gitListCommand = new GitListCommand(gitScriptManager.getIndexProvider()); final GitDownloadCommand gitDownloadCommand = new GitDownloadCommand(gitScriptManager, configuration); @@ -45,7 +45,7 @@ public final class CommandRegistrar { final GitCommand gitCommand = new GitCommand(COMMAND_NAME, gitScriptManager.getActiveStateSetter(), gitCommandRouter); final ListCommand listCommand = new ListCommand(COMMAND_NAME, registry); final DebugCommand debugCommand = new DebugCommand(COMMAND_NAME, registry); - final ParseCommand parseCommand = new ParseCommand(COMMAND_NAME, placeholderFactory); + final ParseCommand parseCommand = new ParseCommand(COMMAND_NAME, placeholderFactory, expansion); final ReloadCommand reloadCommand = new ReloadCommand(COMMAND_NAME, loader); final Map commandMap = ImmutableMap.builder() .put("git", gitCommand)