Add configurable disallowed states for limits, global disallowed blocks (#1312)

This commit is contained in:
dordsor21
2021-10-09 12:02:26 +01:00
committed by GitHub
parent d641e21dfc
commit 6839fa5567
27 changed files with 575 additions and 48 deletions

View File

@ -42,6 +42,7 @@ import java.util.HashSet;
import java.util.Locale;
import java.util.Properties;
import java.util.Set;
import java.util.stream.Collectors;
/**
* Simple LocalConfiguration that loads settings using
@ -92,7 +93,10 @@ public class PropertiesConfiguration extends LocalConfiguration {
profile = getBool("profile", profile);
traceUnflushedSessions = getBool("trace-unflushed-sessions", traceUnflushedSessions);
disallowedBlocks = getStringSet("disallowed-blocks", getDefaultDisallowedBlocks());
disallowedBlocks = getStringSet("disallowed-blocks", getDefaultDisallowedBlocks())
.stream()
.map(s -> s.contains(":") ? s.toLowerCase(Locale.ROOT) : ("minecraft:" + s).toLowerCase(Locale.ROOT))
.collect(Collectors.toSet());
defaultChangeLimit = getInt("default-max-changed-blocks", defaultChangeLimit);
maxChangeLimit = getInt("max-changed-blocks", maxChangeLimit);
defaultVerticalHeight = getInt("default-vertical-height", defaultVerticalHeight);

View File

@ -30,6 +30,7 @@ import org.apache.logging.log4j.Logger;
import java.io.IOException;
import java.util.HashSet;
import java.util.Locale;
import java.util.stream.Collectors;
/**
* A less simple implementation of {@link LocalConfiguration}
@ -94,10 +95,10 @@ public class YAMLConfiguration extends LocalConfiguration {
butcherDefaultRadius = Math.max(-1, config.getInt("limits.butcher-radius.default", butcherDefaultRadius));
butcherMaxRadius = Math.max(-1, config.getInt("limits.butcher-radius.maximum", butcherMaxRadius));
disallowedBlocks = new HashSet<>(config.getStringList(
"limits.disallowed-blocks",
Lists.newArrayList(getDefaultDisallowedBlocks())
));
disallowedBlocks = config.getStringList("limits.disallowed-blocks", Lists.newArrayList(getDefaultDisallowedBlocks()))
.stream()
.map(s -> s.contains(":") ? s.toLowerCase(Locale.ROOT) : ("minecraft:" + s).toLowerCase(Locale.ROOT))
.collect(Collectors.toSet());
allowedDataCycleBlocks = new HashSet<>(config.getStringList("limits.allowed-data-cycle-blocks", null));
registerHelp = config.getBoolean("register-help", true);