use of com.fastasyncworldedit.core.command.tool.brush.BrushSettings in project FastAsyncWorldEdit by IntellectualSites.
the class ToolUtilCommands method smask.
@Command(name = "smask", aliases = { "/smask", "/sourcemask", "sourcemask" }, desc = "Set the brush source mask", descFooter = "Set the brush source mask")
@CommandPermissions({ "worldedit.brush.options.mask", "worldedit.mask.brush" })
public void smask(Player player, LocalSession session, EditSession editSession, @Arg(desc = "The destination mask", def = "") Mask maskArg, @Switch(name = 'h', desc = "Whether the offhand should be considered or not") boolean offHand, Arguments arguments) throws WorldEditException {
BrushTool tool = session.getBrushTool(player, false);
if (tool == null) {
player.print(Caption.of("fawe.worldedit.brush.brush.none"));
return;
}
if (maskArg == null) {
player.print(Caption.of("fawe.worldedit.brush.brush.source.mask.disabled"));
tool.setSourceMask(null);
return;
}
BrushSettings settings = offHand ? tool.getOffHand() : tool.getContext();
String lastArg = Iterables.getLast(CommandArgParser.spaceSplit(arguments.get())).getSubstring();
settings.addSetting(BrushSettings.SettingType.SOURCE_MASK, lastArg);
settings.setSourceMask(maskArg);
tool.update();
player.print(Caption.of("fawe.worldedit.brush.brush.source.mask"));
}
use of com.fastasyncworldedit.core.command.tool.brush.BrushSettings in project FastAsyncWorldEdit by IntellectualSites.
the class ToolUtilCommands method scroll.
@Command(name = "scroll", desc = "Toggle between different target modes")
@CommandPermissions("worldedit.brush.scroll")
public void scroll(Player player, EditSession editSession, LocalSession session, @Switch(name = 'h', desc = "Whether the offhand should be considered or not") boolean offHand, @Arg(desc = "Target Modes", def = "none") Scroll.Action mode, @Arg(desc = "The scroll action", variable = true) List<String> commandStr) throws WorldEditException {
BrushTool bt = session.getBrushTool(player, false);
if (bt == null) {
player.print(Caption.of("fawe.worldedit.brush.brush.none"));
return;
}
BrushSettings settings = offHand ? bt.getOffHand() : bt.getContext();
Scroll action = Scroll.fromArguments(bt, player, session, mode, commandStr, true);
settings.setScrollAction(action);
if (mode == Scroll.Action.NONE) {
player.print(Caption.of("fawe.worldedit.brush.brush.scroll.action.unset"));
} else if (action != null) {
String full = (mode.name().toLowerCase(Locale.ROOT) + " " + StringMan.join(commandStr, " ")).trim();
settings.addSetting(BrushSettings.SettingType.SCROLL_ACTION, full);
player.print(Caption.of("fawe.worldedit.brush.brush.scroll.action.set", mode));
}
bt.update();
}
use of com.fastasyncworldedit.core.command.tool.brush.BrushSettings in project FastAsyncWorldEdit by IntellectualSites.
the class ToolUtilCommands method material.
// FAWE end
@Command(name = "material", aliases = { "mat", "/material", "pattern" }, desc = "Set the brush material")
@CommandPermissions("worldedit.brush.options.material")
public void material(Player player, LocalSession session, @Arg(desc = "The pattern of blocks to use") Pattern pattern, // FAWE start - add offhand
@Switch(name = 'h', desc = "Whether the offhand should be considered or not") boolean offHand, Arguments arguments) throws WorldEditException {
BrushTool tool = session.getBrushTool(player, false);
if (tool == null) {
player.print(Caption.of("fawe.worldedit.brush.brush.none"));
return;
}
if (pattern == null) {
tool.setFill(null);
} else {
BrushSettings settings = offHand ? tool.getOffHand() : tool.getContext();
settings.setFill(pattern);
String lastArg = Iterables.getLast(CommandArgParser.spaceSplit(arguments.get())).getSubstring();
settings.addSetting(BrushSettings.SettingType.FILL, lastArg);
tool.update();
}
// FAWE end
player.print(Caption.of("worldedit.tool.material.set"));
}
use of com.fastasyncworldedit.core.command.tool.brush.BrushSettings in project FastAsyncWorldEdit by IntellectualSites.
the class BrushTool method increment.
@Override
public boolean increment(Player player, int amount) {
BrushSettings current = getContext();
Scroll tmp = current.getScrollAction();
if (tmp != null) {
tmp.setTool(this);
return tmp.increment(player, amount);
}
return false;
}
use of com.fastasyncworldedit.core.command.tool.brush.BrushSettings in project FastAsyncWorldEdit by IntellectualSites.
the class BrushCommands method cylinderBrush.
@Command(name = "cylinder", aliases = { "cyl", "c" }, desc = "Choose the cylinder brush")
@CommandPermissions("worldedit.brush.cylinder")
public void cylinderBrush(InjectedValueAccess context, @Arg(desc = "The pattern of blocks to set") Pattern pattern, @Arg(desc = "The radius of the cylinder", def = "2") Expression radius, @Arg(desc = "The height of the cylinder", def = "1") int height, // FAWE start - hcyl thickness
@Arg(desc = "The thickness of the cylinder. Requires -h switch be given. 0 creates a standard hollow cylinder.", def = "0") double thickness, // FAWE end
@Switch(name = 'h', desc = "Create hollow cylinders instead") boolean hollow) throws WorldEditException {
worldEdit.checkMaxBrushRadius(radius);
worldEdit.checkMaxBrushRadius(height);
BrushSettings settings;
if (hollow) {
// FAWE start - hcyl thickness
settings = set(context, new HollowCylinderBrush(height, thickness), "worldedit.brush.cylinder");
// FAWE end
} else {
settings = set(context, new CylinderBrush(height), "worldedit.brush.cylinder");
}
settings.setSize(radius).setFill(pattern);
}
Aggregations