mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-11-21 20:56:45 +01:00
chore: Address more violations
This commit is contained in:
parent
827f46566c
commit
42bf413528
@ -1,4 +1,4 @@
|
|||||||
jdkVersion = "17"
|
jdkVersion = "17"
|
||||||
build = "gradle clean build -x test"
|
build = "gradle clean build -x test"
|
||||||
tools = ["findsecbugs", "ErrorProne", "Semgrep", "Detekt", "Infer"]
|
tools = ["findsecbugs", "ErrorProne", "Semgrep", "Detekt", "Infer"]
|
||||||
ignoreRules = ["CatchAndPrintStackTrace", "ReferenceEquality", "FallThrough", "FutureReturnValueIgnored", "MixedMutabilityReturnType", "EmptyCatch", "MissingCasesInEnumSwitch", "OperatorPrecedence", "StaticAssignmentInConstructor", "ReferenceEquality", "EqualsHashCode", "EqualsGetClass", "TypeParameterUnusedInFormals"]
|
ignoreRules = ["CatchAndPrintStackTrace", "ReferenceEquality", "FallThrough", "FutureReturnValueIgnored", "MixedMutabilityReturnType", "EmptyCatch", "MissingCasesInEnumSwitch", "OperatorPrecedence", "StaticAssignmentInConstructor", "ReferenceEquality", "EqualsHashCode", "EqualsGetClass", "TypeParameterUnusedInFormals", "StringSplitter", "InlineMeSuggester", "NULL_DEREFERENCE"]
|
||||||
|
@ -60,7 +60,7 @@ import java.util.List;
|
|||||||
|
|
||||||
public class EntitySpawnListener implements Listener {
|
public class EntitySpawnListener implements Listener {
|
||||||
|
|
||||||
private final static String KEY = "P2";
|
private static final String KEY = "P2";
|
||||||
private static boolean ignoreTP = false;
|
private static boolean ignoreTP = false;
|
||||||
private static boolean hasPlotArea = false;
|
private static boolean hasPlotArea = false;
|
||||||
private static String areaName = null;
|
private static String areaName = null;
|
||||||
|
@ -342,6 +342,7 @@ public class PlotSquared {
|
|||||||
* @param plotArea the {@link PlotArea} to add.
|
* @param plotArea the {@link PlotArea} to add.
|
||||||
* @see #removePlotArea(PlotArea) To remove the reference
|
* @see #removePlotArea(PlotArea) To remove the reference
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public void addPlotArea(final @NonNull PlotArea plotArea) {
|
public void addPlotArea(final @NonNull PlotArea plotArea) {
|
||||||
HashMap<PlotId, Plot> plots;
|
HashMap<PlotId, Plot> plots;
|
||||||
if (plots_tmp == null || (plots = plots_tmp.remove(plotArea.toString())) == null) {
|
if (plots_tmp == null || (plots = plots_tmp.remove(plotArea.toString())) == null) {
|
||||||
@ -556,6 +557,7 @@ public class PlotSquared {
|
|||||||
*
|
*
|
||||||
* @param input an array of plots to sort
|
* @param input an array of plots to sort
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
private void sortPlotsByHash(final @NonNull Plot @NonNull [] input) {
|
private void sortPlotsByHash(final @NonNull Plot @NonNull [] input) {
|
||||||
List<Plot>[] bucket = new ArrayList[32];
|
List<Plot>[] bucket = new ArrayList[32];
|
||||||
Arrays.fill(bucket, new ArrayList<>());
|
Arrays.fill(bucket, new ArrayList<>());
|
||||||
@ -696,20 +698,12 @@ public class PlotSquared {
|
|||||||
ArrayList<Plot> toReturn = new ArrayList<>(plots.size());
|
ArrayList<Plot> toReturn = new ArrayList<>(plots.size());
|
||||||
for (PlotArea area : areas) {
|
for (PlotArea area : areas) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case CREATION_DATE:
|
case CREATION_DATE -> toReturn.addAll(sortPlotsByTemp(map.get(area)));
|
||||||
toReturn.addAll(sortPlotsByTemp(map.get(area)));
|
case CREATION_DATE_TIMESTAMP -> toReturn.addAll(sortPlotsByTimestamp(map.get(area)));
|
||||||
break;
|
case DISTANCE_FROM_ORIGIN -> toReturn.addAll(sortPlotsByHash(map.get(area)));
|
||||||
case CREATION_DATE_TIMESTAMP:
|
case LAST_MODIFIED -> toReturn.addAll(sortPlotsByModified(map.get(area)));
|
||||||
toReturn.addAll(sortPlotsByTimestamp(map.get(area)));
|
default -> {
|
||||||
break;
|
}
|
||||||
case DISTANCE_FROM_ORIGIN:
|
|
||||||
toReturn.addAll(sortPlotsByHash(map.get(area)));
|
|
||||||
break;
|
|
||||||
case LAST_MODIFIED:
|
|
||||||
toReturn.addAll(sortPlotsByModified(map.get(area)));
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return toReturn;
|
return toReturn;
|
||||||
@ -1540,7 +1534,7 @@ public class PlotSquared {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a caption map. The namespace needs be equal to the namespace used for
|
* Register a caption map. The namespace needs to be equal to the namespace used for
|
||||||
* the {@link TranslatableCaption}s inside the map.
|
* the {@link TranslatableCaption}s inside the map.
|
||||||
*
|
*
|
||||||
* @param namespace Namespace
|
* @param namespace Namespace
|
||||||
|
@ -29,7 +29,8 @@ import java.util.Arrays;
|
|||||||
|
|
||||||
public class ArrayUtil {
|
public class ArrayUtil {
|
||||||
|
|
||||||
public static final <T> T[] concatAll(T[] first, T[]... rest) {
|
@SuppressWarnings("unchecked")
|
||||||
|
public static <T> T[] concatAll(T[] first, T[]... rest) {
|
||||||
int totalLength = first.length;
|
int totalLength = first.length;
|
||||||
for (T[] array : rest) {
|
for (T[] array : rest) {
|
||||||
totalLength += array.length;
|
totalLength += array.length;
|
||||||
|
@ -35,6 +35,7 @@ public class FlatRandomCollection<T> extends RandomCollection<T> {
|
|||||||
|
|
||||||
private final T[] values;
|
private final T[] values;
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public FlatRandomCollection(Map<T, Double> weights, Random random) {
|
public FlatRandomCollection(Map<T, Double> weights, Random random) {
|
||||||
super(weights, random);
|
super(weights, random);
|
||||||
int max = 0;
|
int max = 0;
|
||||||
|
@ -241,6 +241,7 @@ public class QuadMap<T> {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public void recalculateSkip() {
|
public void recalculateSkip() {
|
||||||
QuadMap<T> map = null;
|
QuadMap<T> map = null;
|
||||||
for (QuadMap<T> current : new QuadMap[]{this.one, this.two, this.three, this.four}) {
|
for (QuadMap<T> current : new QuadMap[]{this.one, this.two, this.three, this.four}) {
|
||||||
|
@ -58,6 +58,7 @@ import java.util.concurrent.CompletableFuture;
|
|||||||
public class Clear extends Command {
|
public class Clear extends Command {
|
||||||
|
|
||||||
private final EventDispatcher eventDispatcher;
|
private final EventDispatcher eventDispatcher;
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
private final GlobalBlockQueue blockQueue;
|
private final GlobalBlockQueue blockQueue;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
|
@ -375,7 +375,6 @@ public abstract class Command {
|
|||||||
boolean failed = args.length < reqArgs.length;
|
boolean failed = args.length < reqArgs.length;
|
||||||
String[] baseSplit = getCommandString().split(" ");
|
String[] baseSplit = getCommandString().split(" ");
|
||||||
String[] fullSplit = getUsage().split(" ");
|
String[] fullSplit = getUsage().split(" ");
|
||||||
String base = getCommandString();
|
|
||||||
if (fullSplit.length - baseSplit.length < reqArgs.length) {
|
if (fullSplit.length - baseSplit.length < reqArgs.length) {
|
||||||
String[] tmp = new String[baseSplit.length + reqArgs.length];
|
String[] tmp = new String[baseSplit.length + reqArgs.length];
|
||||||
System.arraycopy(fullSplit, 0, tmp, 0, fullSplit.length);
|
System.arraycopy(fullSplit, 0, tmp, 0, fullSplit.length);
|
||||||
|
@ -69,6 +69,7 @@ public class Condense extends SubCommand {
|
|||||||
this.worldUtil = worldUtil;
|
this.worldUtil = worldUtil;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
public boolean onCommand(final PlotPlayer<?> player, String[] args) {
|
||||||
if (args.length != 2 && args.length != 3) {
|
if (args.length != 2 && args.length != 3) {
|
||||||
|
@ -255,7 +255,7 @@ public class DatabaseCommand extends SubCommand {
|
|||||||
player.sendMessage(TranslatableCaption.of("database.failed_to_save_plots"));
|
player.sendMessage(TranslatableCaption.of("database.failed_to_save_plots"));
|
||||||
player.sendMessage(TranslatableCaption.of("errors.stacktrace_begin"));
|
player.sendMessage(TranslatableCaption.of("errors.stacktrace_begin"));
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
player.sendMessage(TranslatableCaption.of(("errors.stacktrace_end")));
|
player.sendMessage(TranslatableCaption.of("errors.stacktrace_end"));
|
||||||
player.sendMessage(TranslatableCaption.of("database.invalid_args"));
|
player.sendMessage(TranslatableCaption.of("database.invalid_args"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -94,12 +94,12 @@ public class Download extends SubCommand {
|
|||||||
player.sendMessage(TranslatableCaption.of("info.plot_unowned"));
|
player.sendMessage(TranslatableCaption.of("info.plot_unowned"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((Settings.Done.REQUIRED_FOR_DOWNLOAD && (!DoneFlag.isDone(plot))) && !Permissions
|
if ((Settings.Done.REQUIRED_FOR_DOWNLOAD && !DoneFlag.isDone(plot)) && !Permissions
|
||||||
.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DOWNLOAD)) {
|
.hasPermission(player, Permission.PERMISSION_ADMIN_COMMAND_DOWNLOAD)) {
|
||||||
player.sendMessage(TranslatableCaption.of("done.done_not_done"));
|
player.sendMessage(TranslatableCaption.of("done.done_not_done"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((!plot.isOwner(player.getUUID())) && !Permissions
|
if (!plot.isOwner(player.getUUID()) && !Permissions
|
||||||
.hasPermission(player, Permission.PERMISSION_ADMIN.toString())) {
|
.hasPermission(player, Permission.PERMISSION_ADMIN.toString())) {
|
||||||
player.sendMessage(TranslatableCaption.of("permission.no_plot_perms"));
|
player.sendMessage(TranslatableCaption.of("permission.no_plot_perms"));
|
||||||
return false;
|
return false;
|
||||||
|
@ -367,6 +367,7 @@ public final class FlagCommand extends Command {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings({"unchecked", "rawtypes"})
|
||||||
@CommandDeclaration(command = "add",
|
@CommandDeclaration(command = "add",
|
||||||
aliases = {"a", "add"},
|
aliases = {"a", "add"},
|
||||||
usage = "/plot flag add <flag> <value>",
|
usage = "/plot flag add <flag> <value>",
|
||||||
@ -435,6 +436,7 @@ public final class FlagCommand extends Command {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings({"unchecked", "rawtypes"})
|
||||||
@CommandDeclaration(command = "remove",
|
@CommandDeclaration(command = "remove",
|
||||||
aliases = {"r", "remove", "delete"},
|
aliases = {"r", "remove", "delete"},
|
||||||
usage = "/plot flag remove <flag> [values]",
|
usage = "/plot flag remove <flag> [values]",
|
||||||
|
@ -112,7 +112,7 @@ public class Like extends SubCommand {
|
|||||||
});
|
});
|
||||||
for (final Plot plot : plots) {
|
for (final Plot plot : plots) {
|
||||||
if ((!Settings.Done.REQUIRED_FOR_RATINGS || DoneFlag.isDone(plot)) && plot
|
if ((!Settings.Done.REQUIRED_FOR_RATINGS || DoneFlag.isDone(plot)) && plot
|
||||||
.isBasePlot() && (!plot.getLikes().containsKey(uuid))) {
|
.isBasePlot() && !plot.getLikes().containsKey(uuid)) {
|
||||||
plot.teleportPlayer(player, TeleportCause.COMMAND_LIKE, result -> {
|
plot.teleportPlayer(player, TeleportCause.COMMAND_LIKE, result -> {
|
||||||
});
|
});
|
||||||
player.sendMessage(TranslatableCaption.of("tutorial.rate_this"));
|
player.sendMessage(TranslatableCaption.of("tutorial.rate_this"));
|
||||||
|
@ -104,7 +104,7 @@ public class Rate extends SubCommand {
|
|||||||
UUID uuid = player.getUUID();
|
UUID uuid = player.getUUID();
|
||||||
for (Plot p : plots) {
|
for (Plot p : plots) {
|
||||||
if ((!Settings.Done.REQUIRED_FOR_RATINGS || DoneFlag.isDone(p)) && p
|
if ((!Settings.Done.REQUIRED_FOR_RATINGS || DoneFlag.isDone(p)) && p
|
||||||
.isBasePlot() && (!p.getRatings().containsKey(uuid)) && !p
|
.isBasePlot() && !p.getRatings().containsKey(uuid) && !p
|
||||||
.isAdded(uuid)) {
|
.isAdded(uuid)) {
|
||||||
p.teleportPlayer(player, TeleportCause.COMMAND_RATE, result -> {
|
p.teleportPlayer(player, TeleportCause.COMMAND_RATE, result -> {
|
||||||
});
|
});
|
||||||
|
@ -88,7 +88,6 @@ public class RegenAllRoads extends SubCommand {
|
|||||||
);
|
);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
String name = args[0];
|
|
||||||
PlotManager manager = area.getPlotManager();
|
PlotManager manager = area.getPlotManager();
|
||||||
if (!(manager instanceof HybridPlotManager)) {
|
if (!(manager instanceof HybridPlotManager)) {
|
||||||
player.sendMessage(TranslatableCaption.of("errors.invalid_plot_world"));
|
player.sendMessage(TranslatableCaption.of("errors.invalid_plot_world"));
|
||||||
|
@ -181,8 +181,6 @@ public class SchematicCmd extends SubCommand {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
case "saveall", "exportall" -> {
|
case "saveall", "exportall" -> {
|
||||||
Location loc = player.getLocation();
|
|
||||||
final Plot plot = loc.getPlotAbs();
|
|
||||||
if (!(player instanceof ConsolePlayer)) {
|
if (!(player instanceof ConsolePlayer)) {
|
||||||
player.sendMessage(TranslatableCaption.of("console.not_console"));
|
player.sendMessage(TranslatableCaption.of("console.not_console"));
|
||||||
return false;
|
return false;
|
||||||
|
@ -100,7 +100,7 @@ public class Set extends SubCommand {
|
|||||||
|
|
||||||
if (Settings.Enabled_Components.CHUNK_PROCESSOR) {
|
if (Settings.Enabled_Components.CHUNK_PROCESSOR) {
|
||||||
forbiddenTypes.addAll(worldUtil.getTileEntityTypes().stream().map(
|
forbiddenTypes.addAll(worldUtil.getTileEntityTypes().stream().map(
|
||||||
BlockType::getName).collect(Collectors.toList()));
|
BlockType::getName).toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_ALLOW_UNSAFE) &&
|
if (!Permissions.hasPermission(player, Permission.PERMISSION_ADMIN_ALLOW_UNSAFE) &&
|
||||||
|
@ -361,30 +361,4 @@ public class Visit extends Command {
|
|||||||
return completions;
|
return completions;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void completeNumbers(final List<Command> commands, final String arg, final int start) {
|
|
||||||
for (int i = 0; i < 100; i++) {
|
|
||||||
final String command = Integer.toString(start + 1);
|
|
||||||
if (!command.toLowerCase().startsWith(arg.toLowerCase())) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
commands.add(new Command(this, false, command, "",
|
|
||||||
RequiredType.NONE, CommandCategory.TELEPORT
|
|
||||||
) {
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void completeAreas(final List<Command> commands, final String arg) {
|
|
||||||
for (final PlotArea area : this.plotAreaManager.getAllPlotAreas()) {
|
|
||||||
final String areaName = area.getWorldName() + ";" + area.getId();
|
|
||||||
if (!areaName.toLowerCase().startsWith(arg.toLowerCase())) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
commands.add(new Command(this, false, area.getWorldName() + ";" + area.getId(), "",
|
|
||||||
RequiredType.NONE, CommandCategory.TELEPORT
|
|
||||||
) {
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -65,6 +65,7 @@ public class ComponentPreset implements ConfigurationSerializable {
|
|||||||
this.icon = icon;
|
this.icon = icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public static ComponentPreset deserialize(final @NonNull Map<String, Object> map) {
|
public static ComponentPreset deserialize(final @NonNull Map<String, Object> map) {
|
||||||
final ClassicPlotManagerComponent classicPlotManagerComponent = ClassicPlotManagerComponent
|
final ClassicPlotManagerComponent classicPlotManagerComponent = ClassicPlotManagerComponent
|
||||||
.fromString(map.getOrDefault("component", "").toString()).orElseThrow(() ->
|
.fromString(map.getOrDefault("component", "").toString()).orElseThrow(() ->
|
||||||
|
@ -75,6 +75,7 @@ public class ComponentPresetManager {
|
|||||||
private final InventoryUtil inventoryUtil;
|
private final InventoryUtil inventoryUtil;
|
||||||
private File componentsFile;
|
private File componentsFile;
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Inject
|
@Inject
|
||||||
public ComponentPresetManager(final @NonNull EconHandler econHandler, final @NonNull InventoryUtil inventoryUtil) throws
|
public ComponentPresetManager(final @NonNull EconHandler econHandler, final @NonNull InventoryUtil inventoryUtil) throws
|
||||||
IOException {
|
IOException {
|
||||||
|
@ -58,6 +58,7 @@ public class Config {
|
|||||||
* @param <T> value type
|
* @param <T> value type
|
||||||
* @return value
|
* @return value
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public static <T> T get(String key, Class<?> root) {
|
public static <T> T get(String key, Class<?> root) {
|
||||||
String[] split = key.split("\\.");
|
String[] split = key.split("\\.");
|
||||||
Object instance = getInstance(split, root);
|
Object instance = getInstance(split, root);
|
||||||
@ -183,6 +184,7 @@ public class Config {
|
|||||||
return value != null ? value.toString() : "null";
|
return value != null ? value.toString() : "null";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings({"unchecked", "rawtypes"})
|
||||||
private static void save(PrintWriter writer, Class<?> clazz, Object instance, int indent) {
|
private static void save(PrintWriter writer, Class<?> clazz, Object instance, int indent) {
|
||||||
try {
|
try {
|
||||||
String lineSeparator = System.lineSeparator();
|
String lineSeparator = System.lineSeparator();
|
||||||
@ -258,21 +260,6 @@ public class Config {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the field for a specific config node.
|
|
||||||
*
|
|
||||||
* @param split the node (split by period)
|
|
||||||
* @param root
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
private static Field getField(String[] split, Class<?> root) {
|
|
||||||
Object instance = getInstance(split, root);
|
|
||||||
if (instance == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return getField(split, instance);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the field for a specific config node and instance<br>
|
* Get the field for a specific config node and instance<br>
|
||||||
* Note: As expiry can have multiple blocks there will be multiple instances
|
* Note: As expiry can have multiple blocks there will be multiple instances
|
||||||
@ -305,6 +292,7 @@ public class Config {
|
|||||||
* @param root
|
* @param root
|
||||||
* @return The instance or null
|
* @return The instance or null
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings({"unchecked", "rawtypes"})
|
||||||
private static Object getInstance(String[] split, Class<?> root) {
|
private static Object getInstance(String[] split, Class<?> root) {
|
||||||
try {
|
try {
|
||||||
Class<?> clazz = root == null ? MethodHandles.lookup().lookupClass() : root;
|
Class<?> clazz = root == null ? MethodHandles.lookup().lookupClass() : root;
|
||||||
|
@ -101,7 +101,9 @@ public class SQLManager implements AbstractDB {
|
|||||||
private final String prefix;
|
private final String prefix;
|
||||||
private final Database database;
|
private final Database database;
|
||||||
private final boolean mySQL;
|
private final boolean mySQL;
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
private final EventDispatcher eventDispatcher;
|
private final EventDispatcher eventDispatcher;
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
private final PlotListener plotListener;
|
private final PlotListener plotListener;
|
||||||
private final YamlConfiguration worldConfiguration;
|
private final YamlConfiguration worldConfiguration;
|
||||||
/**
|
/**
|
||||||
@ -408,7 +410,6 @@ public class SQLManager implements AbstractDB {
|
|||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
try {
|
try {
|
||||||
Entry<Plot, Queue<UniqueStatement>> entry = iterator.next();
|
Entry<Plot, Queue<UniqueStatement>> entry = iterator.next();
|
||||||
Plot plot = entry.getKey();
|
|
||||||
Queue<UniqueStatement> tasks = entry.getValue();
|
Queue<UniqueStatement> tasks = entry.getValue();
|
||||||
if (tasks.isEmpty()) {
|
if (tasks.isEmpty()) {
|
||||||
iterator.remove();
|
iterator.remove();
|
||||||
@ -2295,8 +2296,6 @@ public class SQLManager implements AbstractDB {
|
|||||||
int size = uniqueIdsList.size();
|
int size = uniqueIdsList.size();
|
||||||
int packet = 990;
|
int packet = 990;
|
||||||
int amount = size / packet;
|
int amount = size / packet;
|
||||||
int count = 0;
|
|
||||||
int last = -1;
|
|
||||||
for (int j = 0; j <= amount; j++) {
|
for (int j = 0; j <= amount; j++) {
|
||||||
List<Integer> subList =
|
List<Integer> subList =
|
||||||
uniqueIdsList.subList(j * packet, Math.min(size, (j + 1) * packet));
|
uniqueIdsList.subList(j * packet, Math.min(size, (j + 1) * packet));
|
||||||
@ -3200,6 +3199,7 @@ public class SQLManager implements AbstractDB {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings({"unchecked", "unused"})
|
||||||
@Override
|
@Override
|
||||||
public void validateAllPlots(Set<Plot> toValidate) {
|
public void validateAllPlots(Set<Plot> toValidate) {
|
||||||
if (!isValid()) {
|
if (!isValid()) {
|
||||||
@ -3455,15 +3455,7 @@ public class SQLManager implements AbstractDB {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class UUIDPair {
|
private record UUIDPair(int id, UUID uuid) {
|
||||||
|
|
||||||
public final int id;
|
|
||||||
public final UUID uuid;
|
|
||||||
|
|
||||||
public UUIDPair(int id, UUID uuid) {
|
|
||||||
this.id = id;
|
|
||||||
this.uuid = uuid;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,8 +40,6 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class PlayerAutoPlotsChosenEvent extends PlotPlayerEvent {
|
public class PlayerAutoPlotsChosenEvent extends PlotPlayerEvent {
|
||||||
|
|
||||||
private Result eventResult;
|
|
||||||
|
|
||||||
private List<Plot> plots;
|
private List<Plot> plots;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -97,8 +97,8 @@ public class HybridGen extends IndependentPlotGenerator {
|
|||||||
}
|
}
|
||||||
// Coords
|
// Coords
|
||||||
Location min = result.getMin();
|
Location min = result.getMin();
|
||||||
int bx = (min.getX()) - hybridPlotWorld.ROAD_OFFSET_X;
|
int bx = min.getX() - hybridPlotWorld.ROAD_OFFSET_X;
|
||||||
int bz = (min.getZ()) - hybridPlotWorld.ROAD_OFFSET_Z;
|
int bz = min.getZ() - hybridPlotWorld.ROAD_OFFSET_Z;
|
||||||
// The relative X-coordinate (within the plot) of the minimum X coordinate
|
// The relative X-coordinate (within the plot) of the minimum X coordinate
|
||||||
// contained in the scoped queue
|
// contained in the scoped queue
|
||||||
short relativeOffsetX;
|
short relativeOffsetX;
|
||||||
|
@ -95,6 +95,7 @@ public abstract class IndependentPlotGenerator {
|
|||||||
* @param world ChunkGenerator Implementation
|
* @param world ChunkGenerator Implementation
|
||||||
* @return Chunk generator
|
* @return Chunk generator
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public <T> GeneratorWrapper<T> specify(final @NonNull String world) {
|
public <T> GeneratorWrapper<T> specify(final @NonNull String world) {
|
||||||
return (GeneratorWrapper<T>) PlotSquared.platform().wrapPlotGenerator(world, this);
|
return (GeneratorWrapper<T>) PlotSquared.platform().wrapPlotGenerator(world, this);
|
||||||
}
|
}
|
||||||
|
@ -42,8 +42,6 @@ import com.sk89q.worldedit.world.biome.BiomeType;
|
|||||||
import com.sk89q.worldedit.world.block.BaseBlock;
|
import com.sk89q.worldedit.world.block.BaseBlock;
|
||||||
import com.sk89q.worldedit.world.block.BlockState;
|
import com.sk89q.worldedit.world.block.BlockState;
|
||||||
import com.sk89q.worldedit.world.block.BlockStateHolder;
|
import com.sk89q.worldedit.world.block.BlockStateHolder;
|
||||||
import org.apache.logging.log4j.LogManager;
|
|
||||||
import org.apache.logging.log4j.Logger;
|
|
||||||
import org.checkerframework.checker.nullness.qual.NonNull;
|
import org.checkerframework.checker.nullness.qual.NonNull;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
@ -53,8 +51,6 @@ import java.util.Set;
|
|||||||
|
|
||||||
public class ProcessedWEExtent extends AbstractDelegateExtent {
|
public class ProcessedWEExtent extends AbstractDelegateExtent {
|
||||||
|
|
||||||
private static final Logger LOGGER = LogManager.getLogger("PlotSquared/" + ProcessedWEExtent.class.getSimpleName());
|
|
||||||
|
|
||||||
private final Set<CuboidRegion> mask;
|
private final Set<CuboidRegion> mask;
|
||||||
private final String world;
|
private final String world;
|
||||||
private final int max;
|
private final int max;
|
||||||
@ -162,6 +158,7 @@ public class ProcessedWEExtent extends AbstractDelegateExtent {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
@Override
|
@Override
|
||||||
public boolean setBiome(BlockVector2 position, BiomeType biome) {
|
public boolean setBiome(BlockVector2 position, BiomeType biome) {
|
||||||
return WEManager.maskContains(this.mask, position.getX(), position.getZ()) && super
|
return WEManager.maskContains(this.mask, position.getX(), position.getZ()) && super
|
||||||
|
@ -54,6 +54,7 @@ public class WEExtent extends AbstractDelegateExtent {
|
|||||||
this.mask = mask;
|
this.mask = mask;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public boolean setBlock(BlockVector3 location, BlockStateHolder block)
|
public boolean setBlock(BlockVector3 location, BlockStateHolder block)
|
||||||
throws WorldEditException {
|
throws WorldEditException {
|
||||||
|
@ -62,6 +62,7 @@ public final class MetaDataKey<T> {
|
|||||||
* @param <T> Type
|
* @param <T> Type
|
||||||
* @return MetaData key instance
|
* @return MetaData key instance
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public static @NonNull <T> MetaDataKey<T> of(final @NonNull String key, final @NonNull TypeLiteral<T> type) {
|
public static @NonNull <T> MetaDataKey<T> of(final @NonNull String key, final @NonNull TypeLiteral<T> type) {
|
||||||
synchronized (keyMetaData) {
|
synchronized (keyMetaData) {
|
||||||
return (MetaDataKey<T>)
|
return (MetaDataKey<T>)
|
||||||
|
@ -47,6 +47,7 @@ final class PersistentMetaDataAccess<T> extends MetaDataAccess<T> {
|
|||||||
return this.getPlayer().hasPersistentMeta(getMetaDataKey().toString());
|
return this.getPlayer().hasPersistentMeta(getMetaDataKey().toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public @Nullable T remove() {
|
public @Nullable T remove() {
|
||||||
this.checkClosed();
|
this.checkClosed();
|
||||||
|
@ -104,7 +104,8 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
private static final Set<PlotPlayer<?>> debugModeEnabled =
|
private static final Set<PlotPlayer<?>> debugModeEnabled =
|
||||||
Collections.synchronizedSet(new HashSet<>());
|
Collections.synchronizedSet(new HashSet<>());
|
||||||
|
|
||||||
private static final Map<Class, PlotPlayerConverter> converters = new HashMap<>();
|
@SuppressWarnings("rawtypes")
|
||||||
|
private static final Map<Class<?>, PlotPlayerConverter> converters = new HashMap<>();
|
||||||
private final LockRepository lockRepository = new LockRepository();
|
private final LockRepository lockRepository = new LockRepository();
|
||||||
private final PlotAreaManager plotAreaManager;
|
private final PlotAreaManager plotAreaManager;
|
||||||
private final EventDispatcher eventDispatcher;
|
private final EventDispatcher eventDispatcher;
|
||||||
@ -128,6 +129,7 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
this.permissionHandler = permissionHandler;
|
this.permissionHandler = permissionHandler;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings({"rawtypes", "unchecked"})
|
||||||
public static <T> PlotPlayer<T> from(final @NonNull T object) {
|
public static <T> PlotPlayer<T> from(final @NonNull T object) {
|
||||||
// fast path
|
// fast path
|
||||||
if (converters.containsKey(object.getClass())) {
|
if (converters.containsKey(object.getClass())) {
|
||||||
@ -234,6 +236,7 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
* @param <T> the object type to return
|
* @param <T> the object type to return
|
||||||
* @return the value assigned to the key or null if it does not exist
|
* @return the value assigned to the key or null if it does not exist
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
<T> T getMeta(String key) {
|
<T> T getMeta(String key) {
|
||||||
if (this.meta != null) {
|
if (this.meta != null) {
|
||||||
return (T) this.meta.get(key);
|
return (T) this.meta.get(key);
|
||||||
@ -361,7 +364,6 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getClusterCount(String world) {
|
public int getClusterCount(String world) {
|
||||||
UUID uuid = getUUID();
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (PlotArea area : this.plotAreaManager.getPlotAreasSet(world)) {
|
for (PlotArea area : this.plotAreaManager.getPlotAreasSet(world)) {
|
||||||
for (PlotCluster cluster : area.getClusters()) {
|
for (PlotCluster cluster : area.getClusters()) {
|
||||||
@ -795,16 +797,16 @@ public abstract class PlotPlayer<P> implements CommandCaller, OfflinePlotPlayer,
|
|||||||
final @NonNull MetaDataKey<T> key,
|
final @NonNull MetaDataKey<T> key,
|
||||||
final @NonNull T value
|
final @NonNull T value
|
||||||
) {
|
) {
|
||||||
final Object rawValue = value;
|
|
||||||
if (key.getType().getRawType().equals(Integer.class)) {
|
if (key.getType().getRawType().equals(Integer.class)) {
|
||||||
this.setPersistentMeta(key.toString(), Ints.toByteArray((int) rawValue));
|
this.setPersistentMeta(key.toString(), Ints.toByteArray((int) (Object) value));
|
||||||
} else if (key.getType().getRawType().equals(Boolean.class)) {
|
} else if (key.getType().getRawType().equals(Boolean.class)) {
|
||||||
this.setPersistentMeta(key.toString(), ByteArrayUtilities.booleanToBytes((boolean) rawValue));
|
this.setPersistentMeta(key.toString(), ByteArrayUtilities.booleanToBytes((boolean) (Object) value));
|
||||||
} else {
|
} else {
|
||||||
throw new IllegalArgumentException(String.format("Unknown meta data type '%s'", key.getType()));
|
throw new IllegalArgumentException(String.format("Unknown meta data type '%s'", key.getType()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Nullable <T> T getPersistentMeta(final @NonNull MetaDataKey<T> key) {
|
@Nullable <T> T getPersistentMeta(final @NonNull MetaDataKey<T> key) {
|
||||||
final byte[] value = this.getPersistentMeta(key.toString());
|
final byte[] value = this.getPersistentMeta(key.toString());
|
||||||
if (value == null) {
|
if (value == null) {
|
||||||
|
@ -47,6 +47,7 @@ final class TemporaryMetaDataAccess<T> extends MetaDataAccess<T> {
|
|||||||
return this.getPlayer().getMeta(this.getMetaDataKey().toString()) != null;
|
return this.getPlayer().getMeta(this.getMetaDataKey().toString()) != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public @Nullable T remove() {
|
public @Nullable T remove() {
|
||||||
this.checkClosed();
|
this.checkClosed();
|
||||||
|
@ -439,38 +439,6 @@ public abstract class PlotArea {
|
|||||||
loadConfiguration(config);
|
loadConfiguration(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Component getFlagsComponent(Component flagsComponent, Collection<PlotFlag<?, ?>> flagCollection) {
|
|
||||||
if (flagCollection.isEmpty()) {
|
|
||||||
flagsComponent = MINI_MESSAGE.parse(TranslatableCaption.of("flag.no_flags").getComponent(LocaleHolder.console()));
|
|
||||||
} else {
|
|
||||||
String prefix = " ";
|
|
||||||
for (final PlotFlag<?, ?> flag : flagCollection) {
|
|
||||||
Object value;
|
|
||||||
if (flag instanceof DoubleFlag && !Settings.General.SCIENTIFIC) {
|
|
||||||
value = FLAG_DECIMAL_FORMAT.format(flag.getValue());
|
|
||||||
} else {
|
|
||||||
value = flag.toString();
|
|
||||||
}
|
|
||||||
Component snip = MINI_MESSAGE.parse(
|
|
||||||
prefix + CaptionUtility
|
|
||||||
.format(
|
|
||||||
ConsolePlayer.getConsole(),
|
|
||||||
TranslatableCaption.of("info.plot_flag_list").getComponent(LocaleHolder.console())
|
|
||||||
),
|
|
||||||
Template.of("flag", flag.getName()),
|
|
||||||
Template.of("value", CaptionUtility.formatRaw(ConsolePlayer.getConsole(), value.toString()))
|
|
||||||
);
|
|
||||||
if (flagsComponent != null) {
|
|
||||||
flagsComponent.append(snip);
|
|
||||||
} else {
|
|
||||||
flagsComponent = snip;
|
|
||||||
}
|
|
||||||
prefix = ", ";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return flagsComponent;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract void loadConfiguration(ConfigurationSection config);
|
public abstract void loadConfiguration(ConfigurationSection config);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -319,7 +319,6 @@ public class ExpireManager {
|
|||||||
ExpireManager.this.running = 0;
|
ExpireManager.this.running = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
long start = System.currentTimeMillis();
|
|
||||||
while (!plots.isEmpty()) {
|
while (!plots.isEmpty()) {
|
||||||
if (ExpireManager.this.running != 2) {
|
if (ExpireManager.this.running != 2) {
|
||||||
ExpireManager.this.running = 0;
|
ExpireManager.this.running = 0;
|
||||||
|
@ -558,6 +558,7 @@ public class PlotAnalysis {
|
|||||||
return ranks;
|
return ranks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public static void sort(int[] input) {
|
public static void sort(int[] input) {
|
||||||
int SIZE = 10;
|
int SIZE = 10;
|
||||||
List<Integer>[] bucket = new ArrayList[SIZE];
|
List<Integer>[] bucket = new ArrayList[SIZE];
|
||||||
|
@ -57,7 +57,9 @@ import java.nio.file.Files;
|
|||||||
|
|
||||||
public class SinglePlotArea extends GridPlotWorld {
|
public class SinglePlotArea extends GridPlotWorld {
|
||||||
|
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
private final EventDispatcher eventDispatcher;
|
private final EventDispatcher eventDispatcher;
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
private final PlotListener plotListener;
|
private final PlotListener plotListener;
|
||||||
public boolean VOID = false;
|
public boolean VOID = false;
|
||||||
|
|
||||||
@ -273,6 +275,7 @@ public class SinglePlotArea extends GridPlotWorld {
|
|||||||
return false; // do not create signs for single plots
|
return false; // do not create signs for single plots
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
protected Plot adapt(Plot p) {
|
protected Plot adapt(Plot p) {
|
||||||
if (p instanceof SinglePlot) {
|
if (p instanceof SinglePlot) {
|
||||||
return p;
|
return p;
|
||||||
|
@ -57,7 +57,6 @@ public abstract class BasicQueueCoordinator extends QueueCoordinator {
|
|||||||
private final ConcurrentHashMap<BlockVector2, LocalChunk> blockChunks = new ConcurrentHashMap<>();
|
private final ConcurrentHashMap<BlockVector2, LocalChunk> blockChunks = new ConcurrentHashMap<>();
|
||||||
private final List<BlockVector2> readRegion = new ArrayList<>();
|
private final List<BlockVector2> readRegion = new ArrayList<>();
|
||||||
private final List<ProgressSubscriber> progressSubscribers = new ArrayList<>();
|
private final List<ProgressSubscriber> progressSubscribers = new ArrayList<>();
|
||||||
private long modified;
|
|
||||||
private LocalChunk lastWrappedChunk;
|
private LocalChunk lastWrappedChunk;
|
||||||
private int lastX = Integer.MIN_VALUE;
|
private int lastX = Integer.MIN_VALUE;
|
||||||
private int lastZ = Integer.MIN_VALUE;
|
private int lastZ = Integer.MIN_VALUE;
|
||||||
@ -76,7 +75,6 @@ public abstract class BasicQueueCoordinator extends QueueCoordinator {
|
|||||||
public BasicQueueCoordinator(@NonNull World world) {
|
public BasicQueueCoordinator(@NonNull World world) {
|
||||||
super(world);
|
super(world);
|
||||||
this.world = world;
|
this.world = world;
|
||||||
this.modified = System.currentTimeMillis();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -94,7 +92,6 @@ public abstract class BasicQueueCoordinator extends QueueCoordinator {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void setModified(long modified) {
|
public final void setModified(long modified) {
|
||||||
this.modified = modified;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -120,6 +117,7 @@ public abstract class BasicQueueCoordinator extends QueueCoordinator {
|
|||||||
return setBlock(x, y, z, id.toBaseBlock());
|
return setBlock(x, y, z, id.toBaseBlock());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("removal")
|
||||||
@Override
|
@Override
|
||||||
public boolean setBiome(int x, int z, @NonNull BiomeType biomeType) {
|
public boolean setBiome(int x, int z, @NonNull BiomeType biomeType) {
|
||||||
LocalChunk chunk = getChunk(x >> 4, z >> 4);
|
LocalChunk chunk = getChunk(x >> 4, z >> 4);
|
||||||
|
@ -56,6 +56,7 @@ public abstract class QueueCoordinator {
|
|||||||
private Object chunkObject;
|
private Object chunkObject;
|
||||||
private final AtomicBoolean enqueued = new AtomicBoolean();
|
private final AtomicBoolean enqueued = new AtomicBoolean();
|
||||||
|
|
||||||
|
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
||||||
@Inject
|
@Inject
|
||||||
private GlobalBlockQueue blockQueue;
|
private GlobalBlockQueue blockQueue;
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@ import java.util.function.Consumer;
|
|||||||
/**
|
/**
|
||||||
* A repository for keyed {@link java.util.concurrent.locks.Lock locks}
|
* A repository for keyed {@link java.util.concurrent.locks.Lock locks}
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("UnstableApiUsage")
|
||||||
public final class LockRepository {
|
public final class LockRepository {
|
||||||
|
|
||||||
private final Striped<Lock> striped;
|
private final Striped<Lock> striped;
|
||||||
|
@ -90,7 +90,7 @@ public final class BlockUtil {
|
|||||||
if (id.length() == 1 && id.charAt(0) == '*') {
|
if (id.length() == 1 && id.charAt(0) == '*') {
|
||||||
return FuzzyBlockState.builder().type(BlockTypes.AIR).build();
|
return FuzzyBlockState.builder().type(BlockTypes.AIR).build();
|
||||||
}
|
}
|
||||||
String mutableId = id;
|
String mutableId;
|
||||||
mutableId = id.toLowerCase();
|
mutableId = id.toLowerCase();
|
||||||
BlockType type = BlockTypes.get(mutableId);
|
BlockType type = BlockTypes.get(mutableId);
|
||||||
if (type != null) {
|
if (type != null) {
|
||||||
|
@ -289,7 +289,7 @@ public abstract class RegionManager {
|
|||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|
||||||
toQueue2.setCompleteTask(whenDone::run);
|
toQueue2.setCompleteTask(whenDone);
|
||||||
if (actor != null && Settings.QUEUE.NOTIFY_PROGRESS) {
|
if (actor != null && Settings.QUEUE.NOTIFY_PROGRESS) {
|
||||||
toQueue2.addProgressSubscriber(subscriberFactory.createFull(
|
toQueue2.addProgressSubscriber(subscriberFactory.createFull(
|
||||||
actor,
|
actor,
|
||||||
|
@ -59,6 +59,7 @@ public class StringComparison<T> {
|
|||||||
this(input, objects, Object::toString);
|
this(input, objects, Object::toString);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
public StringComparison(String input, Collection<T> objects, Function<T, String> toString) {
|
public StringComparison(String input, Collection<T> objects, Function<T, String> toString) {
|
||||||
this(input, (T[]) objects.toArray(), toString);
|
this(input, (T[]) objects.toArray(), toString);
|
||||||
}
|
}
|
||||||
|
@ -286,7 +286,7 @@ public class StringMan {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isEqualIgnoreCase(String a, String b) {
|
public static boolean isEqualIgnoreCase(String a, String b) {
|
||||||
return (a.equals(b)) || ((a != null) && (b != null) && (a.length() == b.length()) && a
|
return a.equals(b) || ((a != null) && (b != null) && (a.length() == b.length()) && a
|
||||||
.equalsIgnoreCase(b));
|
.equalsIgnoreCase(b));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -265,6 +265,7 @@ public final class TabCompletions {
|
|||||||
* @return List of completions
|
* @return List of completions
|
||||||
* @deprecated In favor {@link #completePlayers(String, PlotPlayer, String, List, Predicate)}
|
* @deprecated In favor {@link #completePlayers(String, PlotPlayer, String, List, Predicate)}
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unused")
|
||||||
@Deprecated(forRemoval = true)
|
@Deprecated(forRemoval = true)
|
||||||
private static List<Command> completePlayers(
|
private static List<Command> completePlayers(
|
||||||
final @NonNull String cacheIdentifier,
|
final @NonNull String cacheIdentifier,
|
||||||
|
@ -109,7 +109,7 @@ public class WEManager {
|
|||||||
plot = metaDataAccess.get().orElse(null);
|
plot = metaDataAccess.get().orElse(null);
|
||||||
}
|
}
|
||||||
if (plot != null && (!Settings.Done.RESTRICT_BUILDING || !DoneFlag.isDone(plot)) && (
|
if (plot != null && (!Settings.Done.RESTRICT_BUILDING || !DoneFlag.isDone(plot)) && (
|
||||||
(allowMember && plot.isAdded(uuid)) || (!allowMember && (plot.isOwner(uuid)) || plot
|
(allowMember && plot.isAdded(uuid)) || (!allowMember && plot.isOwner(uuid) || plot
|
||||||
.getTrusted().contains(uuid))) && !plot.getFlag(NoWorldeditFlag.class)) {
|
.getTrusted().contains(uuid))) && !plot.getFlag(NoWorldeditFlag.class)) {
|
||||||
for (CuboidRegion region : plot.getRegions()) {
|
for (CuboidRegion region : plot.getRegions()) {
|
||||||
BlockVector3 pos1 = region.getMinimumPoint().withY(area.getMinBuildHeight());
|
BlockVector3 pos1 = region.getMinimumPoint().withY(area.getMinBuildHeight());
|
||||||
|
Loading…
Reference in New Issue
Block a user