From b796106dd76d710272f48c86268d0018c2c45418 Mon Sep 17 00:00:00 2001 From: dordsor21 Date: Fri, 11 Jun 2021 15:25:52 +0100 Subject: [PATCH] Add directionals for chests and slabs "type" block state Fixes #987 --- .../extent/transform/BlockTransformExtent.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/extent/transform/BlockTransformExtent.java b/worldedit-core/src/main/java/com/sk89q/worldedit/extent/transform/BlockTransformExtent.java index 2d3c18af5..87695fa60 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/extent/transform/BlockTransformExtent.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/extent/transform/BlockTransformExtent.java @@ -160,9 +160,12 @@ public class BlockTransformExtent extends ResettableExtent { } else { List values = property.getValues(); PropertyKey key = property.getKey(); - if (key == PropertyKey.HALF) { + if (key == PropertyKey.HALF || values.contains("top")) { return adapt(UP, DOWN); } + if (values.contains("left")) { + return adapt(0L, combine(EAST, WEST), combine(NORTH, SOUTH)); + } if (key == PropertyKey.ROTATION) { List directions = new ArrayList<>(); for (Object value : values) { @@ -332,7 +335,11 @@ public class BlockTransformExtent extends ResettableExtent { if (property instanceof DirectionalProperty) { return true; } - return directional.contains(property.getKey()); + if (directional.contains(property.getKey())) { + return true; + } + List values = property.getValues(); + return (values.contains("top") || values.contains("left")); } private static BaseBlock transformBaseBlockNBT(BlockState transformed, CompoundTag tag, Transform transform) {