Mirror von
https://github.com/IntellectualSites/FastAsyncWorldEdit.git
synchronisiert 2024-12-25 18:40:05 +01:00
Reformat, fix RichParser suggestions
Dieser Commit ist enthalten in:
Ursprung
7929320611
Commit
dc465f7d3c
@ -94,32 +94,32 @@ public class AngleMask extends SolidBlockMask implements ResettableMask {
|
|||||||
boolean aboveMin;
|
boolean aboveMin;
|
||||||
lastY = y;
|
lastY = y;
|
||||||
slope =
|
slope =
|
||||||
Math.abs(getHeight(extent, x + distance, y, z) - getHeight(extent, x - distance, y, z))
|
Math.abs(getHeight(extent, x + distance, y, z) - getHeight(extent, x - distance, y, z))
|
||||||
* ADJACENT_MOD;
|
* ADJACENT_MOD;
|
||||||
if (checkFirst) {
|
if (checkFirst) {
|
||||||
if (slope >= min) {
|
if (slope >= min) {
|
||||||
return lastValue = true;
|
return lastValue = true;
|
||||||
}
|
}
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x, y, z + distance) - getHeight(extent, x, y, z - distance))
|
getHeight(extent, x, y, z + distance) - getHeight(extent, x, y, z - distance))
|
||||||
* ADJACENT_MOD);
|
* ADJACENT_MOD);
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x + distance, y, z + distance) - getHeight(extent,
|
getHeight(extent, x + distance, y, z + distance) - getHeight(extent,
|
||||||
x - distance, y, z - distance)) * DIAGONAL_MOD);
|
x - distance, y, z - distance)) * DIAGONAL_MOD);
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x - distance, y, z + distance) - getHeight(extent,
|
getHeight(extent, x - distance, y, z + distance) - getHeight(extent,
|
||||||
x + distance, y, z - distance)) * DIAGONAL_MOD);
|
x + distance, y, z - distance)) * DIAGONAL_MOD);
|
||||||
return lastValue = (slope >= min);
|
return lastValue = (slope >= min);
|
||||||
} else {
|
} else {
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x, y, z + distance) - getHeight(extent, x, y, z - distance))
|
getHeight(extent, x, y, z + distance) - getHeight(extent, x, y, z - distance))
|
||||||
* ADJACENT_MOD);
|
* ADJACENT_MOD);
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x + distance, y, z + distance) - getHeight(extent,
|
getHeight(extent, x + distance, y, z + distance) - getHeight(extent,
|
||||||
x - distance, y, z - distance)) * DIAGONAL_MOD);
|
x - distance, y, z - distance)) * DIAGONAL_MOD);
|
||||||
slope = Math.max(slope, Math.abs(
|
slope = Math.max(slope, Math.abs(
|
||||||
getHeight(extent, x - distance, y, z + distance) - getHeight(extent,
|
getHeight(extent, x - distance, y, z + distance) - getHeight(extent,
|
||||||
x + distance, y, z - distance)) * DIAGONAL_MOD);
|
x + distance, y, z - distance)) * DIAGONAL_MOD);
|
||||||
return lastValue = (slope >= min && slope <= max);
|
return lastValue = (slope >= min && slope <= max);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,19 +14,19 @@ public class ROCAngleMask extends AngleMask {
|
|||||||
|
|
||||||
int base = getHeight(extent, x, y, z);
|
int base = getHeight(extent, x, y, z);
|
||||||
double slope =
|
double slope =
|
||||||
(getHeight(extent, x + distance, y, z) - base - (base - getHeight(extent, x - distance, y, z)))
|
(getHeight(extent, x + distance, y, z) - base - (base - getHeight(extent, x - distance, y, z)))
|
||||||
* ADJACENT_MOD;
|
* ADJACENT_MOD;
|
||||||
|
|
||||||
double tmp = (getHeight(extent, x, y, z + distance) - base - (base - getHeight(extent, x, y,
|
double tmp = (getHeight(extent, x, y, z + distance) - base - (base - getHeight(extent, x, y,
|
||||||
z - distance))) * ADJACENT_MOD;
|
z - distance))) * ADJACENT_MOD;
|
||||||
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
||||||
|
|
||||||
tmp = (getHeight(extent, x + distance, y, z + distance) - base - (base - getHeight(extent, x - distance, y,
|
tmp = (getHeight(extent, x + distance, y, z + distance) - base - (base - getHeight(extent, x - distance, y,
|
||||||
z - distance))) * DIAGONAL_MOD;
|
z - distance))) * DIAGONAL_MOD;
|
||||||
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
||||||
|
|
||||||
tmp = (getHeight(extent, x - distance, y, z + distance) - base - (base - getHeight(extent, x + distance, y,
|
tmp = (getHeight(extent, x - distance, y, z + distance) - base - (base - getHeight(extent, x + distance, y,
|
||||||
z - distance))) * DIAGONAL_MOD;
|
z - distance))) * DIAGONAL_MOD;
|
||||||
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
if (Math.abs(tmp) > Math.abs(slope)) slope = tmp;
|
||||||
|
|
||||||
return lastValue = slope >= min && slope <= max;
|
return lastValue = slope >= min && slope <= max;
|
||||||
|
@ -13,9 +13,9 @@ public class SurfaceMask extends AdjacentAnyMask {
|
|||||||
|
|
||||||
public static AbstractExtentMask getMask(Extent extent) {
|
public static AbstractExtentMask getMask(Extent extent) {
|
||||||
return new BlockMaskBuilder()
|
return new BlockMaskBuilder()
|
||||||
.addTypes(BlockTypes.AIR, BlockTypes.CAVE_AIR, BlockTypes.VOID_AIR)
|
.addTypes(BlockTypes.AIR, BlockTypes.CAVE_AIR, BlockTypes.VOID_AIR)
|
||||||
.addAll(b -> !b.getMaterial().isMovementBlocker())
|
.addAll(b -> !b.getMaterial().isMovementBlocker())
|
||||||
.build(extent);
|
.build(extent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -20,7 +20,32 @@
|
|||||||
package com.sk89q.worldedit.extension.factory;
|
package com.sk89q.worldedit.extension.factory;
|
||||||
|
|
||||||
import com.sk89q.worldedit.WorldEdit;
|
import com.sk89q.worldedit.WorldEdit;
|
||||||
import com.sk89q.worldedit.extension.factory.parser.mask.*;
|
import com.sk89q.worldedit.extension.factory.parser.mask.AdjacentMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.AirMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.AngleMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.BiomeMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.BlockCategoryMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.BlockStateMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.BlocksMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.ExistingMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.ExpressionMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.ExtremaMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.FalseMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.LazyRegionMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.LiquidMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.NegateMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.NoiseMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.OffsetMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.ROCAngleMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.RegionMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.SimplexMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.SolidMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.SurfaceMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.TrueMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.WallMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.XAxisMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.YAxisMaskParser;
|
||||||
|
import com.sk89q.worldedit.extension.factory.parser.mask.ZAxisMaskParser;
|
||||||
import com.sk89q.worldedit.extension.input.InputParseException;
|
import com.sk89q.worldedit.extension.input.InputParseException;
|
||||||
import com.sk89q.worldedit.extension.input.NoMatchException;
|
import com.sk89q.worldedit.extension.input.NoMatchException;
|
||||||
import com.sk89q.worldedit.extension.input.ParserContext;
|
import com.sk89q.worldedit.extension.input.ParserContext;
|
||||||
|
@ -36,7 +36,7 @@ public abstract class RichParser<E> extends InputParser<E> {
|
|||||||
@Override
|
@Override
|
||||||
public Stream<String> getSuggestions(String input) {
|
public Stream<String> getSuggestions(String input) {
|
||||||
// we don't even want to start suggesting if it's not meant to be this parser result
|
// we don't even want to start suggesting if it's not meant to be this parser result
|
||||||
if (input.length() > this.required.length() && !input.startsWith(this.required)) {
|
if (input.length() >= this.required.length() && !input.startsWith(this.required)) {
|
||||||
return Stream.empty();
|
return Stream.empty();
|
||||||
}
|
}
|
||||||
// suggest until the first [ as long as it isn't fully typed
|
// suggest until the first [ as long as it isn't fully typed
|
||||||
@ -45,11 +45,11 @@ public abstract class RichParser<E> extends InputParser<E> {
|
|||||||
}
|
}
|
||||||
// we know that it is at least "<required>"
|
// we know that it is at least "<required>"
|
||||||
String[] strings = extractArguments(input.substring(this.prefix.length()), false);
|
String[] strings = extractArguments(input.substring(this.prefix.length()), false);
|
||||||
StringJoiner joiner = new StringJoiner(",");
|
StringBuilder builder = new StringBuilder();
|
||||||
for (int i = 0; i < strings.length - 1; i++) {
|
for (int i = 0; i < strings.length - 1; i++) {
|
||||||
joiner.add("[" + strings[i] + "]");
|
builder.append('[').append(strings[i]).append(']');
|
||||||
}
|
}
|
||||||
String previous = this.prefix + joiner;
|
String previous = this.prefix + builder;
|
||||||
return getSuggestions(strings[strings.length - 1], strings.length - 1).map(s -> previous + "[" + s + "]");
|
return getSuggestions(strings[strings.length - 1], strings.length - 1).map(s -> previous + "[" + s + "]");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,12 +14,12 @@ import java.util.stream.Stream;
|
|||||||
public class AdjacentMaskParser extends RichParser<Mask> {
|
public class AdjacentMaskParser extends RichParser<Mask> {
|
||||||
|
|
||||||
public AdjacentMaskParser(WorldEdit worldEdit) {
|
public AdjacentMaskParser(WorldEdit worldEdit) {
|
||||||
super(worldEdit,"~");
|
super(worldEdit, "~");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Stream<String> getSuggestions(String argumentInput, int index) {
|
protected Stream<String> getSuggestions(String argumentInput, int index) {
|
||||||
if(index == 0){
|
if (index == 0) {
|
||||||
return worldEdit.getMaskFactory().getSuggestions(argumentInput).stream();
|
return worldEdit.getMaskFactory().getSuggestions(argumentInput).stream();
|
||||||
} else if (index == 1 || index == 2) {
|
} else if (index == 1 || index == 2) {
|
||||||
return this.suggestPositiveDoubles(argumentInput);
|
return this.suggestPositiveDoubles(argumentInput);
|
||||||
@ -29,7 +29,7 @@ public class AdjacentMaskParser extends RichParser<Mask> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Mask parseFromInput(@NotNull String[] arguments, ParserContext context) throws InputParseException {
|
protected Mask parseFromInput(@NotNull String[] arguments, ParserContext context) throws InputParseException {
|
||||||
if(arguments.length == 0) return null;
|
if (arguments.length == 0) return null;
|
||||||
Mask subMask = worldEdit.getMaskFactory().parseFromInput(arguments[0], context);
|
Mask subMask = worldEdit.getMaskFactory().parseFromInput(arguments[0], context);
|
||||||
int min = arguments.length > 1 ? Integer.parseInt(arguments[1]) : -1;
|
int min = arguments.length > 1 ? Integer.parseInt(arguments[1]) : -1;
|
||||||
int max = arguments.length > 2 ? Integer.parseInt(arguments[2]) : -1;
|
int max = arguments.length > 2 ? Integer.parseInt(arguments[2]) : -1;
|
||||||
@ -40,6 +40,6 @@ public class AdjacentMaskParser extends RichParser<Mask> {
|
|||||||
if (max >= 8 && min == 1) {
|
if (max >= 8 && min == 1) {
|
||||||
return new AdjacentAnyMask(subMask);
|
return new AdjacentAnyMask(subMask);
|
||||||
}
|
}
|
||||||
return new AdjacentMask(subMask, (int) min, (int) max);
|
return new AdjacentMask(subMask, min, max);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ public class RadiusMaskParser extends RichParser<Mask> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Stream<String> getSuggestions(String argumentInput, int index) {
|
protected Stream<String> getSuggestions(String argumentInput, int index) {
|
||||||
if(index == 0 || index == 1){
|
if (index == 0 || index == 1) {
|
||||||
return suggestPositiveDoubles(argumentInput);
|
return suggestPositiveDoubles(argumentInput);
|
||||||
}
|
}
|
||||||
return Stream.empty();
|
return Stream.empty();
|
||||||
@ -26,10 +26,9 @@ public class RadiusMaskParser extends RichParser<Mask> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Mask parseFromInput(@NotNull String[] arguments, ParserContext context) throws InputParseException {
|
protected Mask parseFromInput(@NotNull String[] arguments, ParserContext context) throws InputParseException {
|
||||||
if(arguments.length < 2) return null;
|
if (arguments.length < 2) return null;
|
||||||
int min = Integer.parseInt(arguments[0]);
|
int min = Integer.parseInt(arguments[0]);
|
||||||
int max = Integer.parseInt(arguments[1]);
|
int max = Integer.parseInt(arguments[1]);
|
||||||
System.out.println("radius: " + min + " | " + max);
|
|
||||||
return new RadiusMask(min, max);
|
return new RadiusMask(min, max);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren