diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/MultiRegionExtent.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/MultiRegionExtent.java index c13c5965b8..61b786903f 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/MultiRegionExtent.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/MultiRegionExtent.java @@ -155,15 +155,7 @@ public boolean processGet(int chunkX, int chunkZ) { } } } - if (!result || disallowed == null) { - return result; - } - for (Region region : disallowed) { - if (region.containsChunk(chunkX, chunkZ)) { - return false; - } - } - return true; + return result; } @Override diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/regions/Region.java b/worldedit-core/src/main/java/com/sk89q/worldedit/regions/Region.java index 0ba49a2f37..47ee24f4cb 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/regions/Region.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/regions/Region.java @@ -19,11 +19,15 @@ package com.sk89q.worldedit.regions; +import java.util.List; +import java.util.Set; + +import javax.annotation.Nullable; + import com.fastasyncworldedit.core.FaweCache; import com.fastasyncworldedit.core.extent.SingleRegionExtent; import com.fastasyncworldedit.core.extent.filter.block.ChunkFilterBlock; import com.fastasyncworldedit.core.extent.processor.ProcessorScope; -import com.fastasyncworldedit.core.limit.FaweLimit; import com.fastasyncworldedit.core.queue.Filter; import com.fastasyncworldedit.core.queue.IBatchProcessor; import com.fastasyncworldedit.core.queue.IChunk; @@ -40,10 +44,6 @@ import com.sk89q.worldedit.world.World; import com.sk89q.worldedit.world.block.BlockTypesCache; -import javax.annotation.Nullable; -import java.util.List; -import java.util.Set; - /** * Represents a physical shape. */ @@ -476,7 +476,8 @@ default IChunkSet processSet(IChunk chunk, IChunkGet get, IChunkSet set, boolean for (int y = 0, index = 0; y < 16; y++) { for (int z = 0; z < 16; z++) { for (int x = 0; x < 16; x++, index++) { - if (arr[index] != BlockTypesCache.ReservedIDs.__RESERVED__ && contains(x, y, z)) { + if (arr[index] != BlockTypesCache.ReservedIDs.__RESERVED__ + && contains(bx + x, by + y, bz + z)) { arr[index] = BlockTypesCache.ReservedIDs.__RESERVED__; processExtra = true; }