Added a config option to entirely disable server side cui.

This commit is contained in:
Matthew Miller 2018-08-18 19:42:45 +10:00
parent 0cbfc9308e
commit eba91cac5f
7 changed files with 13 additions and 0 deletions

View File

@ -143,3 +143,4 @@ no-double-slash: false
no-op-permissions: false
debug: false
show-help-on-first-use: true
server-side-cui: true

View File

@ -134,6 +134,7 @@ public abstract class LocalConfiguration {
public int butcherDefaultRadius = -1;
public int butcherMaxRadius = -1;
public boolean allowSymlinks = false;
public boolean serverSideCUI = true;
/**
* Load the configuration.

View File

@ -636,6 +636,10 @@ public class LocalSession {
return; // This is for players only.
}
if (!config.serverSideCUI) {
return; // Disabled in config.
}
Player player = (Player) actor;
if (!useServerCUI || hasCUISupport) {

View File

@ -31,6 +31,7 @@ import com.sk89q.worldedit.LocalSession;
import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.entity.Player;
import com.sk89q.worldedit.extension.input.DisallowedUsageException;
import com.sk89q.worldedit.extension.platform.Actor;
import com.sk89q.worldedit.function.mask.Mask;
import com.sk89q.worldedit.util.command.parametric.Optional;
@ -124,6 +125,9 @@ public class GeneralCommands {
@CommandPermissions("worldedit.drawsel")
public void drawSelection(Player player, LocalSession session, CommandContext args) throws WorldEditException {
if (!WorldEdit.getInstance().getConfiguration().serverSideCUI) {
throw new DisallowedUsageException("This functionality is disabled in the configuration!");
}
String newState = args.getString(0, null);
if (session.shouldUseServerCUI()) {
if ("on".equals(newState)) {

View File

@ -114,6 +114,7 @@ public class PropertiesConfiguration extends LocalConfiguration {
butcherDefaultRadius = getInt("butcher-default-radius", butcherDefaultRadius);
butcherMaxRadius = getInt("butcher-max-radius", butcherMaxRadius);
allowSymlinks = getBool("allow-symbolic-links", allowSymlinks);
serverSideCUI = getBool("server-side-cui", serverSideCUI);
LocalSession.MAX_HISTORY_SIZE = Math.max(15, getInt("history-size", 15));

View File

@ -112,6 +112,7 @@ public class YAMLConfiguration extends LocalConfiguration {
SessionManager.EXPIRATION_GRACE = config.getInt("history.expiration", 10) * 60 * 1000;
showHelpInfo = config.getBoolean("show-help-on-first-use", true);
serverSideCUI = config.getBoolean("server-side-cui", true);
String snapshotsDir = config.getString("snapshots.directory", "");
if (!snapshotsDir.isEmpty()) {

View File

@ -120,6 +120,7 @@ public class ConfigurateConfiguration extends LocalConfiguration {
SessionManager.EXPIRATION_GRACE = node.getNode("history", "expiration").getInt(10) * 60 * 1000;
showHelpInfo = node.getNode("show-help-on-first-use").getBoolean(true);
serverSideCUI = node.getNode("server-side-cui").getBoolean(true);
String snapshotsDir = node.getNode("snapshots", "directory").getString("");
if (!snapshotsDir.isEmpty()) {