mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2025-06-25 02:04:44 +02:00
Fix the WE extent and add our own tile entity list
This commit is contained in:
@ -96,7 +96,8 @@ public class Set extends SubCommand {
|
||||
|
||||
if (blockType.startsWith("##")) {
|
||||
try {
|
||||
final BlockCategory category = BlockCategory.REGISTRY.get(blockType.substring(2).toLowerCase(Locale.ENGLISH));
|
||||
final BlockCategory category = BlockCategory.REGISTRY.get(blockType.substring(2)
|
||||
.replaceAll("[*^|]+", "").toLowerCase(Locale.ENGLISH));
|
||||
if (category == null || !category.contains(BlockTypes.get(forbiddenType))) {
|
||||
continue;
|
||||
}
|
||||
|
@ -29,6 +29,7 @@ import com.plotsquared.core.PlotSquared;
|
||||
import com.plotsquared.core.configuration.Captions;
|
||||
import com.plotsquared.core.configuration.Settings;
|
||||
import com.plotsquared.core.util.WEManager;
|
||||
import com.plotsquared.core.util.WorldUtil;
|
||||
import com.sk89q.worldedit.WorldEditException;
|
||||
import com.sk89q.worldedit.entity.BaseEntity;
|
||||
import com.sk89q.worldedit.entity.Entity;
|
||||
@ -90,12 +91,12 @@ public class ProcessedWEExtent extends AbstractDelegateExtent {
|
||||
public <T extends BlockStateHolder<T>> boolean setBlock(BlockVector3 location, T block)
|
||||
throws WorldEditException {
|
||||
|
||||
final boolean isTile = block.toBaseBlock().getNbtData() != null;
|
||||
final boolean isTile = WorldUtil.IMP.getTileEntityTypes().contains(block.getBlockType());
|
||||
if (isTile) {
|
||||
if (this.BSblocked) {
|
||||
return false;
|
||||
}
|
||||
if (++this.BScount > Settings.Chunk_Processor.MAX_TILES) {
|
||||
if (++this.BScount >= Settings.Chunk_Processor.MAX_TILES) {
|
||||
this.BSblocked = true;
|
||||
PlotSquared.debug(Captions.PREFIX + "&cDetected unsafe WorldEdit: " + location.getX() + ","
|
||||
+ location.getZ());
|
||||
|
@ -39,6 +39,7 @@ import com.sk89q.worldedit.math.BlockVector2;
|
||||
import com.sk89q.worldedit.regions.CuboidRegion;
|
||||
import com.sk89q.worldedit.world.biome.BiomeType;
|
||||
import com.sk89q.worldedit.world.block.BlockState;
|
||||
import com.sk89q.worldedit.world.block.BlockType;
|
||||
import com.sk89q.worldedit.world.entity.EntityType;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ -48,6 +49,7 @@ import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.net.URL;
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
@ -216,4 +218,6 @@ public abstract class WorldUtil {
|
||||
|
||||
public abstract Set<EntityType> getTypesInCategory(final String category);
|
||||
|
||||
public abstract Collection<BlockType> getTileEntityTypes();
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user