Allow remove command to be used from console

This commit is contained in:
wizjany 2013-03-26 00:50:45 -04:00
parent 0e8508847e
commit 51515473bc
2 changed files with 12 additions and 2 deletions

View File

@ -1398,6 +1398,8 @@ public boolean handleCommand(LocalPlayer player, String[] split) {
} catch (CommandUsageException e) {
player.printError(e.getMessage());
player.printError(e.getUsage());
} catch (PlayerNeededException e) {
player.printError(e.getMessage());
} catch (WrappedCommandException e) {
throw e.getCause();
} catch (UnhandledCommandException e) {

View File

@ -450,6 +450,7 @@ public void or(int flag, boolean on, String permission) {
)
@CommandPermissions("worldedit.remove")
@Logging(PLACEMENT)
@Console
public void remove(CommandContext args, LocalSession session, LocalPlayer player,
EditSession editSession) throws WorldEditException {
@ -491,8 +492,15 @@ public void remove(CommandContext args, LocalSession session, LocalPlayer player
return;
}
Vector origin = session.getPlacementPosition(player);
int removed = player.getWorld().removeEntities(type, origin, radius);
int removed = 0;
if (player.isPlayer()) {
Vector origin = session.getPlacementPosition(player);
removed = player.getWorld().removeEntities(type, origin, radius);
} else {
for (LocalWorld world : we.getServer().getWorlds()) {
removed += world.removeEntities(type, new Vector(), radius);
}
}
player.print("Marked " + removed + " entit(ies) for removal.");
}