diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Block.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Block.java index 7321156d6..9c6177d10 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Block.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Block.java @@ -2,8 +2,8 @@ package com.dfsek.terra.api.structures.parser.lang; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; import java.util.List; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Item.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Item.java index 8cee610ab..7cc895eaf 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Item.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/Item.java @@ -2,8 +2,8 @@ package com.dfsek.terra.api.structures.parser.lang; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public interface Item { T apply(Location location, Rotation rotation); diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/constants/ConstantExpression.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/constants/ConstantExpression.java index 6aae85bb7..05b276897 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/constants/ConstantExpression.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/constants/ConstantExpression.java @@ -3,8 +3,8 @@ package com.dfsek.terra.api.structures.parser.lang.constants; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public abstract class ConstantExpression implements Returnable { private final T constant; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/IfKeyword.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/IfKeyword.java index 909e3821a..ce6e541b1 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/IfKeyword.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/IfKeyword.java @@ -5,8 +5,8 @@ import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Block; import com.dfsek.terra.api.structures.parser.lang.Keyword; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class IfKeyword implements Keyword { private final Block conditional; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/ReturnKeyword.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/ReturnKeyword.java index 7dfec4988..c257c660b 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/ReturnKeyword.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/ReturnKeyword.java @@ -3,8 +3,8 @@ package com.dfsek.terra.api.structures.parser.lang.keywords; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Keyword; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class ReturnKeyword implements Keyword { private final Position position; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/WhileKeyword.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/WhileKeyword.java index f37a6fb4c..9f4c6fd80 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/WhileKeyword.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/keywords/WhileKeyword.java @@ -5,8 +5,8 @@ import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Block; import com.dfsek.terra.api.structures.parser.lang.Keyword; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class WhileKeyword implements Keyword { private final Block conditional; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/BinaryOperation.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/BinaryOperation.java index 6cb4047c4..ef5642cd5 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/BinaryOperation.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/BinaryOperation.java @@ -3,8 +3,8 @@ package com.dfsek.terra.api.structures.parser.lang.operations; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public abstract class BinaryOperation implements Returnable { private final Returnable left; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/UnaryOperation.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/UnaryOperation.java index 68406fbc8..68e588cd0 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/UnaryOperation.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/operations/UnaryOperation.java @@ -3,8 +3,8 @@ package com.dfsek.terra.api.structures.parser.lang.operations; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public abstract class UnaryOperation implements Returnable { private final Returnable input; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Assignment.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Assignment.java index fdf6a5e76..c18988e5b 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Assignment.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Assignment.java @@ -4,8 +4,8 @@ import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Item; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class Assignment implements Item { private final Variable delegate; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Getter.java b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Getter.java index 7b2b83600..f8922b840 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Getter.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/parser/lang/variables/Getter.java @@ -3,8 +3,8 @@ package com.dfsek.terra.api.structures.parser.lang.variables; import com.dfsek.terra.api.math.vector.Location; import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.structures.parser.lang.Returnable; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class Getter implements Returnable { private final Variable delegate; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/script/functions/BlockFunction.java b/common/src/main/java/com/dfsek/terra/api/structures/script/functions/BlockFunction.java index 58cb7ee8d..cc4e01761 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/script/functions/BlockFunction.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/script/functions/BlockFunction.java @@ -8,8 +8,8 @@ import com.dfsek.terra.api.structures.parser.exceptions.ParseException; import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.constants.ConstantExpression; import com.dfsek.terra.api.structures.parser.lang.functions.Function; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; public class BlockFunction implements Function { private final BlockData data; diff --git a/common/src/main/java/com/dfsek/terra/api/structures/script/functions/CheckFunction.java b/common/src/main/java/com/dfsek/terra/api/structures/script/functions/CheckFunction.java index e854cb356..952fb0db8 100644 --- a/common/src/main/java/com/dfsek/terra/api/structures/script/functions/CheckFunction.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/script/functions/CheckFunction.java @@ -7,10 +7,10 @@ import com.dfsek.terra.api.platform.world.Chunk; import com.dfsek.terra.api.platform.world.World; import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.functions.Function; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.world.LandCheck; import com.dfsek.terra.api.structures.world.OceanCheck; -import com.dfsek.terra.structure.Rotation; public class CheckFunction implements Function { private final TerraPlugin main; diff --git a/common/src/main/java/com/dfsek/terra/structure/Rotation.java b/common/src/main/java/com/dfsek/terra/api/structures/structure/Rotation.java similarity index 95% rename from common/src/main/java/com/dfsek/terra/structure/Rotation.java rename to common/src/main/java/com/dfsek/terra/api/structures/structure/Rotation.java index 63d910b03..8efbff230 100644 --- a/common/src/main/java/com/dfsek/terra/structure/Rotation.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/structure/Rotation.java @@ -1,4 +1,4 @@ -package com.dfsek.terra.structure; +package com.dfsek.terra.api.structures.structure; import net.jafama.FastMath; diff --git a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/structure/RotationUtil.java b/common/src/main/java/com/dfsek/terra/api/structures/structure/RotationUtil.java similarity index 96% rename from platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/structure/RotationUtil.java rename to common/src/main/java/com/dfsek/terra/api/structures/structure/RotationUtil.java index 1df7921a9..b819b35ee 100644 --- a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/structure/RotationUtil.java +++ b/common/src/main/java/com/dfsek/terra/api/structures/structure/RotationUtil.java @@ -1,4 +1,4 @@ -package com.dfsek.terra.bukkit.structure; +package com.dfsek.terra.api.structures.structure; import com.dfsek.terra.api.math.vector.Vector2; import com.dfsek.terra.api.platform.block.Axis; @@ -11,15 +11,16 @@ import com.dfsek.terra.api.platform.block.data.Rail; import com.dfsek.terra.api.platform.block.data.RedstoneWire; import com.dfsek.terra.api.platform.block.data.Rotatable; import com.dfsek.terra.api.platform.block.data.Wall; -import com.dfsek.terra.structure.Rotation; +import com.google.common.collect.Sets; import net.jafama.FastMath; import java.util.EnumMap; -import java.util.HashSet; import java.util.Map; import java.util.Set; -public final class RotationUtil { +public class RotationUtil { + private static final Set CARDINALS = Sets.newHashSet(BlockFace.NORTH, BlockFace.SOUTH, BlockFace.EAST, BlockFace.WEST); + /** * Rotate and mirror a coordinate pair. * @@ -247,14 +248,6 @@ public final class RotationUtil { return orig; } - private static final Set CARDINALS = new HashSet<>(); - static { - CARDINALS.add(BlockFace.NORTH); - CARDINALS.add(BlockFace.SOUTH); - CARDINALS.add(BlockFace.EAST); - CARDINALS.add(BlockFace.WEST); - } - public static void rotateBlockData(BlockData data, Rotation r) { if(data instanceof Rotatable) { BlockFace rt = getRotatedFace(((Rotatable) data).getRotation(), r); diff --git a/common/src/test/java/structure/ParserTest.java b/common/src/test/java/structure/ParserTest.java index 46af40f24..4361f3083 100644 --- a/common/src/test/java/structure/ParserTest.java +++ b/common/src/test/java/structure/ParserTest.java @@ -8,8 +8,8 @@ import com.dfsek.terra.api.structures.parser.lang.Block; import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.FunctionBuilder; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.api.structures.tokenizer.Position; -import com.dfsek.terra.structure.Rotation; import org.apache.commons.io.IOUtils; import org.junit.jupiter.api.Test; diff --git a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/command/command/structure/load/LoadRawCommand.java b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/command/command/structure/load/LoadRawCommand.java index 13d4e1168..f47a5f575 100644 --- a/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/command/command/structure/load/LoadRawCommand.java +++ b/platforms/bukkit/src/main/java/com/dfsek/terra/bukkit/command/command/structure/load/LoadRawCommand.java @@ -6,9 +6,9 @@ import com.dfsek.terra.api.structures.parser.exceptions.ParseException; import com.dfsek.terra.api.structures.parser.lang.Block; import com.dfsek.terra.api.structures.script.builders.BlockFunctionBuilder; import com.dfsek.terra.api.structures.script.builders.CheckFunctionBuilder; +import com.dfsek.terra.api.structures.structure.Rotation; import com.dfsek.terra.bukkit.BukkitWorld; import com.dfsek.terra.bukkit.command.DebugCommand; -import com.dfsek.terra.structure.Rotation; import org.apache.commons.io.IOUtils; import org.bukkit.block.Sign; import org.bukkit.command.Command;