From 3ff8d34053f5234ef6fca7065e28bd7b5ecc6ba0 Mon Sep 17 00:00:00 2001 From: Kermina Awad Date: Tue, 23 Feb 2021 14:38:54 -0500 Subject: [PATCH] add config option to disable buscript --- .../MultiverseCore/MultiverseCore.java | 17 ++++++++++------- .../MultiverseCoreConfiguration.java | 19 +++++++++++++++++++ .../api/MultiverseCoreConfig.java | 12 ++++++++++++ .../commands/VersionCommand.java | 1 + 4 files changed, 42 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java index 4af01ad6..fc7d399f 100644 --- a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java +++ b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java @@ -353,13 +353,16 @@ public class MultiverseCore extends JavaPlugin implements MVPlugin, Core { * Initializes the buscript javascript library. */ private void initializeBuscript() { - try { - buscript = new Buscript(this); - // Add global variable "multiverse" to javascript environment - buscript.setScriptVariable("multiverse", this); - } catch (NullPointerException e) { - buscript = null; - Logging.warning("Buscript failed to load! The script command will be disabled!"); + buscript = null; + + if (this.getMVConfig().getEnableBuscript()) { + try { + buscript = new Buscript(this); + // Add global variable "multiverse" to javascript environment + buscript.setScriptVariable("multiverse", this); + } catch (NullPointerException e) { + Logging.warning("Buscript failed to load! The script command will be disabled!"); + } } } diff --git a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCoreConfiguration.java b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCoreConfiguration.java index a04a6651..f07c12e0 100644 --- a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCoreConfiguration.java +++ b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCoreConfiguration.java @@ -56,6 +56,8 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements @Property private volatile boolean displaypermerrors; @Property + private volatile boolean enablebuscript; + @Property private volatile int globaldebug; @Property private volatile boolean silentstart; @@ -99,6 +101,7 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements teleportintercept = true; firstspawnoverride = true; displaypermerrors = true; + enablebuscript = true; globaldebug = 0; messagecooldown = 5000; teleportcooldown = 1000; @@ -213,6 +216,22 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements return this.displaypermerrors; } + /** + * {@inheritDoc} + */ + @Override + public boolean getEnableBuscript() { + return this.enablebuscript; + } + + /** + * {@inheritDoc} + */ + @Override + public void setEnableBuscript(boolean enableBuscript) { + this.enablebuscript = enableBuscript; + } + /** * {@inheritDoc} */ diff --git a/src/main/java/com/onarandombox/MultiverseCore/api/MultiverseCoreConfig.java b/src/main/java/com/onarandombox/MultiverseCore/api/MultiverseCoreConfig.java index b5574ff2..07b2bb91 100644 --- a/src/main/java/com/onarandombox/MultiverseCore/api/MultiverseCoreConfig.java +++ b/src/main/java/com/onarandombox/MultiverseCore/api/MultiverseCoreConfig.java @@ -86,6 +86,18 @@ public interface MultiverseCoreConfig extends ConfigurationSerializable { */ boolean getDisplayPermErrors(); + /** + * Sets enableBuscript. + * @param enableBuscript The new value. + */ + void setEnableBuscript(boolean enableBuscript); + + /** + * Gets enableBuscript. + * @return enableBuscript. + */ + boolean getEnableBuscript(); + /** * Sets firstSpawnOverride. * @param firstSpawnOverride The new value. diff --git a/src/main/java/com/onarandombox/MultiverseCore/commands/VersionCommand.java b/src/main/java/com/onarandombox/MultiverseCore/commands/VersionCommand.java index 403226bf..eff1d4ac 100644 --- a/src/main/java/com/onarandombox/MultiverseCore/commands/VersionCommand.java +++ b/src/main/java/com/onarandombox/MultiverseCore/commands/VersionCommand.java @@ -64,6 +64,7 @@ public class VersionCommand extends MultiverseCommand { + "[Multiverse-Core] teleportintercept: " + plugin.getMVConfig().getTeleportIntercept() + '\n' + "[Multiverse-Core] firstspawnoverride: " + plugin.getMVConfig().getFirstSpawnOverride() + '\n' + "[Multiverse-Core] displaypermerrors: " + plugin.getMVConfig().getDisplayPermErrors() + '\n' + + "[Multiverse-Core] enablebuscript: " + plugin.getMVConfig().getEnableBuscript() + '\n' + "[Multiverse-Core] globaldebug: " + plugin.getMVConfig().getGlobalDebug() + '\n' + "[Multiverse-Core] silentstart: " + plugin.getMVConfig().getSilentStart() + '\n' + "[Multiverse-Core] messagecooldown: " + plugin.getMessaging().getCooldown() + '\n'