Search in sources :

Example 6 with WorldEditException

use of com.sk89q.worldedit.WorldEditException in project FastAsyncWorldEdit by IntellectualSites.

the class MultiStageReorder method commitBefore.

@Override
public Operation commitBefore() {
    if (!commitRequired()) {
        return null;
    }
    List<Operation> operations = new ArrayList<>();
    for (PlacementPriority priority : PlacementPriority.values()) {
        BlockMap<BaseBlock> blocks = stages.get(priority);
        operations.add(new SetBlockMap(getExtent(), blocks) {

            @Override
            public Operation resume(RunContext run) throws WorldEditException {
                Operation operation = super.resume(run);
                if (operation == null) {
                    blocks.clear();
                }
                return operation;
            }
        });
    }
    return new OperationQueue(operations);
}
Also used : OperationQueue(com.sk89q.worldedit.function.operation.OperationQueue) ArrayList(java.util.ArrayList) RunContext(com.sk89q.worldedit.function.operation.RunContext) Operation(com.sk89q.worldedit.function.operation.Operation) WorldEditException(com.sk89q.worldedit.WorldEditException) BaseBlock(com.sk89q.worldedit.world.block.BaseBlock) SetBlockMap(com.sk89q.worldedit.function.operation.SetBlockMap)

Example 7 with WorldEditException

use of com.sk89q.worldedit.WorldEditException in project FastAsyncWorldEdit by IntellectualSites.

the class SelectionCommands method select.

@Command(name = "/sel", aliases = { ";", "/desel", "/deselect" }, desc = "Choose a region selector")
// FAWE start
@CommandPermissions("worldedit.analysis.sel")
public // FAWE end
void select(Actor actor, World world, LocalSession session, @Arg(desc = "Selector to switch to", def = "") SelectorChoice selector, @Switch(name = 'd', desc = "Set default selector") boolean setDefaultSelector) throws WorldEditException {
    if (selector == null) {
        session.getRegionSelector(world).clear();
        session.dispatchCUISelection(actor);
        actor.print(Caption.of("worldedit.select.cleared"));
        return;
    }
    final RegionSelector oldSelector = session.getRegionSelector(world);
    final RegionSelector newSelector;
    switch(selector) {
        case CUBOID:
            newSelector = new CuboidRegionSelector(oldSelector);
            actor.print(Caption.of("worldedit.select.cuboid.message"));
            break;
        case EXTEND:
            newSelector = new ExtendingCuboidRegionSelector(oldSelector);
            actor.print(Caption.of("worldedit.select.extend.message"));
            break;
        case POLY:
            {
                newSelector = new Polygonal2DRegionSelector(oldSelector);
                actor.print(Caption.of("worldedit.select.poly.message"));
                Optional<Integer> limit = ActorSelectorLimits.forActor(actor).getPolygonVertexLimit();
                limit.ifPresent(integer -> actor.print(Caption.of("worldedit.select.poly.limit-message", TextComponent.of(integer))));
                break;
            }
        case ELLIPSOID:
            newSelector = new EllipsoidRegionSelector(oldSelector);
            actor.print(Caption.of("worldedit.select.ellipsoid.message"));
            break;
        case SPHERE:
            newSelector = new SphereRegionSelector(oldSelector);
            actor.print(Caption.of("worldedit.select.sphere.message"));
            break;
        case CYL:
            newSelector = new CylinderRegionSelector(oldSelector);
            actor.print(Caption.of("worldedit.select.cyl.message"));
            break;
        case CONVEX:
        case HULL:
        case POLYHEDRON:
            {
                newSelector = new ConvexPolyhedralRegionSelector(oldSelector);
                actor.print(Caption.of("worldedit.select.convex.message"));
                Optional<Integer> limit = ActorSelectorLimits.forActor(actor).getPolyhedronVertexLimit();
                limit.ifPresent(integer -> actor.print(Caption.of("worldedit.select.convex.limit-message", TextComponent.of(integer))));
                break;
            }
        // FAWE start
        case POLYHEDRAL:
            newSelector = new PolyhedralRegionSelector(world);
            actor.print(Caption.of("fawe.selection.sel.convex.polyhedral"));
            Optional<Integer> limit = ActorSelectorLimits.forActor(actor).getPolyhedronVertexLimit();
            limit.ifPresent(integer -> actor.print(Caption.of("fawe.selection.sel.max", integer)));
            actor.print(Caption.of("fawe.selection.sel.list"));
            break;
        case FUZZY:
        case MAGIC:
            Mask maskOpt = new IdMask(world);
            newSelector = new FuzzyRegionSelector(actor, world, maskOpt);
            actor.print(Caption.of("fawe.selection.sel.fuzzy"));
            actor.print(Caption.of("fawe.selection.sel.list"));
            break;
        // FAWE end
        case LIST:
        default:
            CommandListBox box = new CommandListBox("Selection modes", null, null);
            box.setHidingHelp(true);
            TextComponentProducer contents = box.getContents();
            contents.append(SubtleFormat.wrap("Select one of the modes below:")).newline();
            box.appendCommand("cuboid", Caption.of("worldedit.select.cuboid.description"), "//sel cuboid");
            box.appendCommand("extend", Caption.of("worldedit.select.extend.description"), "//sel extend");
            box.appendCommand("poly", Caption.of("worldedit.select.poly.description"), "//sel poly");
            box.appendCommand("ellipsoid", Caption.of("worldedit.select.ellipsoid.description"), "//sel ellipsoid");
            box.appendCommand("sphere", Caption.of("worldedit.select.sphere.description"), "//sel sphere");
            box.appendCommand("cyl", Caption.of("worldedit.select.cyl.description"), "//sel cyl");
            box.appendCommand("convex", Caption.of("worldedit.select.convex.description"), "//sel convex");
            // FAWE start
            box.appendCommand("polyhedral", Caption.of("fawe.selection.sel.polyhedral"), "//sel polyhedral");
            box.appendCommand("fuzzy[=<mask>]", Caption.of("fawe.selection.sel.fuzzy-instruction"), "//sel fuzzy[=<mask>]");
            box.setComponentsPerPage(box.getComponentsSize());
            // FAWE end
            actor.print(box.create(1));
            return;
    }
    if (setDefaultSelector) {
        RegionSelectorType found = null;
        for (RegionSelectorType type : RegionSelectorType.values()) {
            if (type.getSelectorClass() == newSelector.getClass()) {
                found = type;
                break;
            }
        }
        if (found != null) {
            session.setDefaultRegionSelector(found);
            actor.print(Caption.of("worldedit.select.default-set", TextComponent.of(found.name())));
        } else {
            throw new RuntimeException("Something unexpected happened. Please report this.");
        }
    }
    session.setRegionSelector(world, newSelector);
    session.dispatchCUISelection(actor);
}
Also used : EditSession(com.sk89q.worldedit.EditSession) ChunkStore(com.sk89q.worldedit.world.storage.ChunkStore) BlockVector3(com.sk89q.worldedit.math.BlockVector3) Player(com.sk89q.worldedit.entity.Player) World(com.sk89q.worldedit.world.World) Caption(com.fastasyncworldedit.core.configuration.Caption) BaseItemStack(com.sk89q.worldedit.blocks.BaseItemStack) Arg(org.enginehub.piston.annotation.param.Arg) MaskTraverser(com.fastasyncworldedit.core.util.MaskTraverser) ExtendingCuboidRegionSelector(com.sk89q.worldedit.regions.selector.ExtendingCuboidRegionSelector) Component(com.sk89q.worldedit.util.formatting.text.Component) RegionOperationException(com.sk89q.worldedit.regions.RegionOperationException) SelectionWand(com.sk89q.worldedit.command.tool.SelectionWand) CommandContainer(org.enginehub.piston.annotation.CommandContainer) TextColor(com.sk89q.worldedit.util.formatting.text.format.TextColor) NavigationWand(com.sk89q.worldedit.command.tool.NavigationWand) SelectorChoice(com.sk89q.worldedit.command.argument.SelectorChoice) Operations(com.sk89q.worldedit.function.operation.Operations) Location(com.sk89q.worldedit.util.Location) URI(java.net.URI) POSITION(com.sk89q.worldedit.command.util.Logging.LogMode.POSITION) MultiDirection(com.sk89q.worldedit.internal.annotation.MultiDirection) Polygonal2DRegionSelector(com.sk89q.worldedit.regions.selector.Polygonal2DRegionSelector) Clipboard(com.sk89q.worldedit.extent.clipboard.Clipboard) BlockType(com.sk89q.worldedit.world.block.BlockType) URIClipboardHolder(com.fastasyncworldedit.core.extent.clipboard.URIClipboardHolder) CommandPermissions(com.sk89q.worldedit.command.util.CommandPermissions) Locatable(com.sk89q.worldedit.extension.platform.Locatable) ConvexPolyhedralRegionSelector(com.sk89q.worldedit.regions.selector.ConvexPolyhedralRegionSelector) SubtleFormat(com.sk89q.worldedit.util.formatting.component.SubtleFormat) CHUNK_SHIFTS_Y(com.sk89q.worldedit.world.storage.ChunkStore.CHUNK_SHIFTS_Y) InvalidComponentException(com.sk89q.worldedit.util.formatting.component.InvalidComponentException) ArgFlag(org.enginehub.piston.annotation.param.ArgFlag) TextComponentProducer(com.sk89q.worldedit.util.formatting.component.TextComponentProducer) CommandListBox(com.sk89q.worldedit.util.formatting.component.CommandListBox) List(java.util.List) Stream(java.util.stream.Stream) StopExecutionException(org.enginehub.piston.exception.StopExecutionException) CommandPermissionsConditionGenerator(com.sk89q.worldedit.command.util.CommandPermissionsConditionGenerator) PaginationBox(com.sk89q.worldedit.util.formatting.component.PaginationBox) ActorSelectorLimits(com.sk89q.worldedit.extension.platform.permission.ActorSelectorLimits) Optional(java.util.Optional) Countable(com.sk89q.worldedit.util.Countable) RegionSelector(com.sk89q.worldedit.regions.RegionSelector) BlockDistributionCounter(com.sk89q.worldedit.function.block.BlockDistributionCounter) CuboidRegionSelector(com.sk89q.worldedit.regions.selector.CuboidRegionSelector) ClipboardHolder(com.sk89q.worldedit.session.ClipboardHolder) Switch(org.enginehub.piston.annotation.param.Switch) Logging(com.sk89q.worldedit.command.util.Logging) HoverEvent(com.sk89q.worldedit.util.formatting.text.event.HoverEvent) CHUNK_SHIFTS(com.sk89q.worldedit.world.storage.ChunkStore.CHUNK_SHIFTS) EllipsoidRegionSelector(com.sk89q.worldedit.regions.selector.EllipsoidRegionSelector) Strings(com.google.common.base.Strings) WorldEditException(com.sk89q.worldedit.WorldEditException) RegionSelectorType(com.sk89q.worldedit.regions.selector.RegionSelectorType) PolyhedralRegionSelector(com.fastasyncworldedit.core.regions.selector.PolyhedralRegionSelector) ClickEvent(com.sk89q.worldedit.util.formatting.text.event.ClickEvent) CylinderRegionSelector(com.sk89q.worldedit.regions.selector.CylinderRegionSelector) WorldEdit(com.sk89q.worldedit.WorldEdit) Region(com.sk89q.worldedit.regions.Region) SphereRegionSelector(com.sk89q.worldedit.regions.selector.SphereRegionSelector) TextComponent(com.sk89q.worldedit.util.formatting.text.TextComponent) ItemTypes(com.sk89q.worldedit.world.item.ItemTypes) REGION(com.sk89q.worldedit.command.util.Logging.LogMode.REGION) RegionVisitor(com.sk89q.worldedit.function.visitor.RegionVisitor) File(java.io.File) Actor(com.sk89q.worldedit.extension.platform.Actor) Direction(com.sk89q.worldedit.internal.annotation.Direction) IdMask(com.fastasyncworldedit.core.function.mask.IdMask) FuzzyRegionSelector(com.fastasyncworldedit.core.regions.selector.FuzzyRegionSelector) Command(org.enginehub.piston.annotation.Command) LocalSession(com.sk89q.worldedit.LocalSession) Mask(com.sk89q.worldedit.function.mask.Mask) BlockState(com.sk89q.worldedit.world.block.BlockState) ItemType(com.sk89q.worldedit.world.item.ItemType) CommandListBox(com.sk89q.worldedit.util.formatting.component.CommandListBox) TextComponentProducer(com.sk89q.worldedit.util.formatting.component.TextComponentProducer) Optional(java.util.Optional) Polygonal2DRegionSelector(com.sk89q.worldedit.regions.selector.Polygonal2DRegionSelector) IdMask(com.fastasyncworldedit.core.function.mask.IdMask) Mask(com.sk89q.worldedit.function.mask.Mask) CylinderRegionSelector(com.sk89q.worldedit.regions.selector.CylinderRegionSelector) ExtendingCuboidRegionSelector(com.sk89q.worldedit.regions.selector.ExtendingCuboidRegionSelector) CuboidRegionSelector(com.sk89q.worldedit.regions.selector.CuboidRegionSelector) ExtendingCuboidRegionSelector(com.sk89q.worldedit.regions.selector.ExtendingCuboidRegionSelector) EllipsoidRegionSelector(com.sk89q.worldedit.regions.selector.EllipsoidRegionSelector) FuzzyRegionSelector(com.fastasyncworldedit.core.regions.selector.FuzzyRegionSelector) ExtendingCuboidRegionSelector(com.sk89q.worldedit.regions.selector.ExtendingCuboidRegionSelector) Polygonal2DRegionSelector(com.sk89q.worldedit.regions.selector.Polygonal2DRegionSelector) ConvexPolyhedralRegionSelector(com.sk89q.worldedit.regions.selector.ConvexPolyhedralRegionSelector) RegionSelector(com.sk89q.worldedit.regions.RegionSelector) CuboidRegionSelector(com.sk89q.worldedit.regions.selector.CuboidRegionSelector) EllipsoidRegionSelector(com.sk89q.worldedit.regions.selector.EllipsoidRegionSelector) PolyhedralRegionSelector(com.fastasyncworldedit.core.regions.selector.PolyhedralRegionSelector) CylinderRegionSelector(com.sk89q.worldedit.regions.selector.CylinderRegionSelector) SphereRegionSelector(com.sk89q.worldedit.regions.selector.SphereRegionSelector) FuzzyRegionSelector(com.fastasyncworldedit.core.regions.selector.FuzzyRegionSelector) ConvexPolyhedralRegionSelector(com.sk89q.worldedit.regions.selector.ConvexPolyhedralRegionSelector) IdMask(com.fastasyncworldedit.core.function.mask.IdMask) ConvexPolyhedralRegionSelector(com.sk89q.worldedit.regions.selector.ConvexPolyhedralRegionSelector) PolyhedralRegionSelector(com.fastasyncworldedit.core.regions.selector.PolyhedralRegionSelector) SphereRegionSelector(com.sk89q.worldedit.regions.selector.SphereRegionSelector) RegionSelectorType(com.sk89q.worldedit.regions.selector.RegionSelectorType) Command(org.enginehub.piston.annotation.Command) CommandPermissions(com.sk89q.worldedit.command.util.CommandPermissions)

Example 8 with WorldEditException

use of com.sk89q.worldedit.WorldEditException in project WorldGuard by EngineHub.

the class SpongeUtil method addSpongeWater.

/**
 * Add water around a sponge.
 *
 * @param world The world the sponge is located in
 * @param ox The x coordinate of the 'sponge' block
 * @param oy The y coordinate of the 'sponge' block
 * @param oz The z coordinate of the 'sponge' block
 */
public static void addSpongeWater(World world, int ox, int oy, int oz) {
    WorldConfiguration wcfg = WorldGuard.getInstance().getPlatform().getGlobalStateManager().get(world);
    // The negative x edge
    int cx = ox - wcfg.spongeRadius - 1;
    for (int cy = oy - wcfg.spongeRadius - 1; cy <= oy + wcfg.spongeRadius + 1; cy++) {
        for (int cz = oz - wcfg.spongeRadius - 1; cz <= oz + wcfg.spongeRadius + 1; cz++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx + 1, cy, cz);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    // The positive x edge
    cx = ox + wcfg.spongeRadius + 1;
    for (int cy = oy - wcfg.spongeRadius - 1; cy <= oy + wcfg.spongeRadius + 1; cy++) {
        for (int cz = oz - wcfg.spongeRadius - 1; cz <= oz + wcfg.spongeRadius + 1; cz++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx - 1, cy, cz);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    // The negative y edge
    int cy = oy - wcfg.spongeRadius - 1;
    for (cx = ox - wcfg.spongeRadius - 1; cx <= ox + wcfg.spongeRadius + 1; cx++) {
        for (int cz = oz - wcfg.spongeRadius - 1; cz <= oz + wcfg.spongeRadius + 1; cz++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx, cy + 1, cz);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    // The positive y edge
    cy = oy + wcfg.spongeRadius + 1;
    for (cx = ox - wcfg.spongeRadius - 1; cx <= ox + wcfg.spongeRadius + 1; cx++) {
        for (int cz = oz - wcfg.spongeRadius - 1; cz <= oz + wcfg.spongeRadius + 1; cz++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx, cy - 1, cz);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    // The negative z edge
    int cz = oz - wcfg.spongeRadius - 1;
    for (cx = ox - wcfg.spongeRadius - 1; cx <= ox + wcfg.spongeRadius + 1; cx++) {
        for (cy = oy - wcfg.spongeRadius - 1; cy <= oy + wcfg.spongeRadius + 1; cy++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx, cy, cz + 1);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    // The positive z edge
    cz = oz + wcfg.spongeRadius + 1;
    for (cx = ox - wcfg.spongeRadius - 1; cx <= ox + wcfg.spongeRadius + 1; cx++) {
        for (cy = oy - wcfg.spongeRadius - 1; cy <= oy + wcfg.spongeRadius + 1; cy++) {
            BlockVector3 vector = BlockVector3.at(cx, cy, cz);
            if (isReplacable(world.getBlock(vector).getBlockType())) {
                try {
                    setBlockToWater(world, cx, cy, cz - 1);
                } catch (WorldEditException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
Also used : WorldConfiguration(com.sk89q.worldguard.config.WorldConfiguration) BlockVector3(com.sk89q.worldedit.math.BlockVector3) WorldEditException(com.sk89q.worldedit.WorldEditException)

Example 9 with WorldEditException

use of com.sk89q.worldedit.WorldEditException in project ChuoCity by jaoafa.

the class Event_WGNonProtection method onWEEdit.

@Subscribe
public void onWEEdit(EditSessionEvent event) {
    if (Main.getWorldGuard() == null) {
        return;
    }
    if (event.getStage() == EditSession.Stage.BEFORE_REORDER) {
        return;
    }
    Actor actor = event.getActor();
    if (actor == null || !actor.isPlayer()) {
        return;
    }
    Player player = Bukkit.getPlayer(actor.getUniqueId());
    if (player == null) {
        return;
    }
    if (player.hasPermission("worldguard.region.bypass")) {
        return;
    }
    event.setExtent(new AbstractDelegateExtent(event.getExtent()) {

        private boolean canBuild(int x, int y, int z) {
            LocalPlayer localPlayer = Main.getWorldGuard().wrapPlayer(player);
            if (Main.isChuoCity(new Location(player.getWorld(), x, y, z))) {
                return true;
            }
            if (!player.getWorld().getName().equalsIgnoreCase("Jao_Afa")) {
                // Jao_Afa以外では適用しない
                return true;
            }
            ProtectedRegion region = Main.getTopRegion(new Location(player.getWorld(), x, y, z));
            if (region == null) {
                // 誰も保護していない
                return false;
            }
            if (region.isOwner(localPlayer)) {
                // オーナー
                return true;
            }
            // メンバー
            return region.isMember(localPlayer);
        }

        @Override
        public <T extends BlockStateHolder<T>> boolean setBlock(BlockVector3 location, T block) throws WorldEditException {
            return canBuild(location.getBlockX(), location.getBlockY(), location.getBlockZ()) && super.setBlock(location, block);
        }
    });
}
Also used : LocalPlayer(com.sk89q.worldguard.LocalPlayer) Player(org.bukkit.entity.Player) AbstractDelegateExtent(com.sk89q.worldedit.extent.AbstractDelegateExtent) LocalPlayer(com.sk89q.worldguard.LocalPlayer) Actor(com.sk89q.worldedit.extension.platform.Actor) ProtectedRegion(com.sk89q.worldguard.protection.regions.ProtectedRegion) BlockVector3(com.sk89q.worldedit.math.BlockVector3) WorldEditException(com.sk89q.worldedit.WorldEditException) Location(org.bukkit.Location) Subscribe(com.sk89q.worldedit.util.eventbus.Subscribe)

Example 10 with WorldEditException

use of com.sk89q.worldedit.WorldEditException in project FunnyGuilds by FunnyGuilds.

the class WorldEdit7Hook method pasteSchematic.

@Override
public boolean pasteSchematic(File schematicFile, Location location, boolean withAir) {
    try {
        BlockVector3 pasteLocation = BlockVector3.at(location.getX(), location.getY(), location.getZ());
        World pasteWorld = BukkitAdapter.adapt(location.getWorld());
        Clipboard clipboard = ClipboardFormats.findByFile(schematicFile).getReader(new FileInputStream(schematicFile)).read();
        ClipboardHolder clipboardHolder = new ClipboardHolder(clipboard);
        EditSession editSession = WorldEdit.getInstance().newEditSession(pasteWorld);
        Operation operation = clipboardHolder.createPaste(editSession).to(pasteLocation).ignoreAirBlocks(!withAir).build();
        Operations.complete(operation);
        editSession.close();
        return true;
    } catch (IOException | WorldEditException e) {
        FunnyGuilds.getPluginLogger().error("Could not paste schematic: " + schematicFile.getAbsolutePath(), e);
        return false;
    }
}
Also used : ClipboardHolder(com.sk89q.worldedit.session.ClipboardHolder) Clipboard(com.sk89q.worldedit.extent.clipboard.Clipboard) EditSession(com.sk89q.worldedit.EditSession) Operation(com.sk89q.worldedit.function.operation.Operation) IOException(java.io.IOException) BlockVector3(com.sk89q.worldedit.math.BlockVector3) World(com.sk89q.worldedit.world.World) WorldEditException(com.sk89q.worldedit.WorldEditException) FileInputStream(java.io.FileInputStream)

Aggregations

WorldEditException (com.sk89q.worldedit.WorldEditException)18 BlockVector3 (com.sk89q.worldedit.math.BlockVector3)10 EditSession (com.sk89q.worldedit.EditSession)8 Operation (com.sk89q.worldedit.function.operation.Operation)8 ClipboardHolder (com.sk89q.worldedit.session.ClipboardHolder)8 IOException (java.io.IOException)8 Clipboard (com.sk89q.worldedit.extent.clipboard.Clipboard)7 Region (com.sk89q.worldedit.regions.Region)5 World (com.sk89q.worldedit.world.World)5 ClipboardReader (com.sk89q.worldedit.extent.clipboard.io.ClipboardReader)4 BukkitWorld (com.sk89q.worldedit.bukkit.BukkitWorld)3 Actor (com.sk89q.worldedit.extension.platform.Actor)3 ClipboardFormat (com.sk89q.worldedit.extent.clipboard.io.ClipboardFormat)3 CuboidRegion (com.sk89q.worldedit.regions.CuboidRegion)3 FileInputStream (java.io.FileInputStream)3 Location (org.bukkit.Location)3 Caption (com.fastasyncworldedit.core.configuration.Caption)2 ByteArrayTag (com.sk89q.jnbt.ByteArrayTag)2 CompoundTag (com.sk89q.jnbt.CompoundTag)2 IntTag (com.sk89q.jnbt.IntTag)2