Made //copy and //cut copy only the blocks contained in the selection.

This commit is contained in:
TomyLobo
2013-08-24 10:44:17 +02:00
parent 77219a8b3e
commit 8ce14dc982
2 changed files with 156 additions and 51 deletions

View File

@ -29,6 +29,7 @@ import com.sk89q.minecraft.util.commands.NestedCommand;
import com.sk89q.worldedit.*;
import com.sk89q.worldedit.blocks.BaseBlock;
import com.sk89q.worldedit.blocks.BlockID;
import com.sk89q.worldedit.regions.CuboidRegion;
import com.sk89q.worldedit.regions.Region;
/**
@ -66,7 +67,13 @@ public class ClipboardCommands {
CuboidClipboard clipboard = new CuboidClipboard(
max.subtract(min).add(Vector.ONE),
min, min.subtract(pos));
clipboard.copy(editSession);
if (region instanceof CuboidRegion) {
clipboard.copy(editSession);
} else {
clipboard.copy(editSession, region);
}
if (args.hasFlag('e')) {
for (LocalEntity entity : player.getWorld().getEntities(region)) {
clipboard.storeEntity(entity);
@ -109,7 +116,13 @@ public class ClipboardCommands {
CuboidClipboard clipboard = new CuboidClipboard(
max.subtract(min).add(Vector.ONE),
min, min.subtract(pos));
clipboard.copy(editSession);
if (region instanceof CuboidRegion) {
clipboard.copy(editSession);
} else {
clipboard.copy(editSession, region);
}
if (args.hasFlag('e')) {
LocalEntity[] entities = world.getEntities(region);
for (LocalEntity entity : entities) {
@ -119,7 +132,7 @@ public class ClipboardCommands {
}
session.setClipboard(clipboard);
editSession.setBlocks(session.getSelection(world), block);
editSession.setBlocks(region, block);
player.print("Block(s) cut.");
}