Allow binding by data
This commit is contained in:
parent
c10520c010
commit
0775b55fbb
@ -84,8 +84,7 @@ public class BrushListener implements Listener {
|
||||
FawePlayer<Object> fp = FawePlayer.wrap(bukkitPlayer);
|
||||
com.sk89q.worldedit.entity.Player player = fp.getPlayer();
|
||||
LocalSession session = fp.getSession();
|
||||
int item = player.getItemInHand();
|
||||
Tool tool = session.getTool(item);
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool instanceof ResettableTool) {
|
||||
if (((ResettableTool) tool).reset()) {
|
||||
event.setCancelled(true);
|
||||
|
@ -32,7 +32,7 @@ public class VisualQueue {
|
||||
iter.remove();
|
||||
LocalSession session = fp.getSession();
|
||||
Player player = fp.getPlayer();
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
Brush brush;
|
||||
if (tool instanceof BrushTool) {
|
||||
BrushTool brushTool = (BrushTool) tool;
|
||||
|
@ -37,6 +37,7 @@ import com.sk89q.jchronic.Chronic;
|
||||
import com.sk89q.jchronic.Options;
|
||||
import com.sk89q.jchronic.utils.Span;
|
||||
import com.sk89q.jchronic.utils.Time;
|
||||
import com.sk89q.worldedit.blocks.BaseBlock;
|
||||
import com.sk89q.worldedit.command.tool.BlockTool;
|
||||
import com.sk89q.worldedit.command.tool.BrushTool;
|
||||
import com.sk89q.worldedit.command.tool.InvalidToolBindException;
|
||||
@ -959,7 +960,7 @@ public class LocalSession {
|
||||
@Deprecated
|
||||
@Nullable
|
||||
public Tool getTool(int item) {
|
||||
return tools.get(FaweCache.getCombined(item, 0));
|
||||
return getTool(item, 0);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@ -972,7 +973,13 @@ public class LocalSession {
|
||||
if (tools.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
return getTool(player.getItemInHand());
|
||||
try {
|
||||
BaseBlock block = player.getBlockInHand();
|
||||
return getTool(block.getId(), block.getType());
|
||||
} catch (WorldEditException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -985,20 +992,32 @@ public class LocalSession {
|
||||
* @throws InvalidToolBindException if the item can't be bound to that item
|
||||
*/
|
||||
public BrushTool getBrushTool(int item) throws InvalidToolBindException {
|
||||
return getBrushTool(item, null);
|
||||
return getBrushTool(item, 0, null, true);
|
||||
}
|
||||
|
||||
public BrushTool getBrushTool(int item, Player player) throws InvalidToolBindException {
|
||||
return getBrushTool(item, player, true);
|
||||
public BrushTool getBrushTool(Player player) throws InvalidToolBindException {
|
||||
return getBrushTool(player, true);
|
||||
}
|
||||
|
||||
public BrushTool getBrushTool(int item, Player player, boolean create) throws InvalidToolBindException {
|
||||
Tool tool = getTool(item);
|
||||
public BrushTool getBrushTool(Player player, boolean create) throws InvalidToolBindException {
|
||||
BaseBlock block;
|
||||
try {
|
||||
block = player.getBlockInHand();
|
||||
} catch (WorldEditException e) {
|
||||
e.printStackTrace();
|
||||
block = EditSession.nullBlock;
|
||||
}
|
||||
return getBrushTool(block.getId(), block.getData(), player, create);
|
||||
}
|
||||
|
||||
|
||||
public BrushTool getBrushTool(int id, int data, Player player, boolean create) throws InvalidToolBindException {
|
||||
Tool tool = getTool(id, data);
|
||||
|
||||
if ((tool == null || !(tool instanceof BrushTool))) {
|
||||
if (create) {
|
||||
tool = new BrushTool("worldedit.brush.sphere");
|
||||
setTool(item, tool, player);
|
||||
setTool(id, data, tool, player);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
@ -1016,12 +1035,18 @@ public class LocalSession {
|
||||
*/
|
||||
@Deprecated
|
||||
public void setTool(int item, @Nullable Tool tool) throws InvalidToolBindException {
|
||||
setTool(item, tool, null);
|
||||
setTool(item, 0, tool, null);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public void setTool(int item, @Nullable Tool tool, Player player) throws InvalidToolBindException {
|
||||
setTool(item, 0, tool, player);
|
||||
public void setTool(@Nullable Tool tool, Player player) throws InvalidToolBindException {
|
||||
BaseBlock item;
|
||||
try {
|
||||
item = player.getBlockInHand();
|
||||
} catch (WorldEditException e) {
|
||||
item = EditSession.nullBlock;
|
||||
e.printStackTrace();
|
||||
}
|
||||
setTool(item.getId(), item.getData(), tool, player);
|
||||
}
|
||||
|
||||
public void setTool(int id, int data, @Nullable Tool tool, Player player) throws InvalidToolBindException {
|
||||
|
@ -128,13 +128,13 @@ public class BrushCommands {
|
||||
min = 1
|
||||
)
|
||||
public void primary(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
int item = player.getItemInHand();
|
||||
BrushTool tool = session.getBrushTool(item, player, false);
|
||||
session.setTool(item, null);
|
||||
BaseBlock item = player.getBlockInHand();
|
||||
BrushTool tool = session.getBrushTool(player, false);
|
||||
session.setTool(item.getId(), item.getData(), null, player);
|
||||
String cmd = "brush " + args.getJoinedStrings(0);
|
||||
CommandEvent event = new CommandEvent(player, cmd);
|
||||
CommandManager.getInstance().handleCommandOnCurrentThread(event);
|
||||
BrushTool newTool = session.getBrushTool(item, player, false);
|
||||
BrushTool newTool = session.getBrushTool(item.getId(), item.getData(), player, false);
|
||||
if (newTool != null && tool != null) {
|
||||
newTool.setSecondary(tool.getSecondary());
|
||||
}
|
||||
@ -148,13 +148,13 @@ public class BrushCommands {
|
||||
min = 1
|
||||
)
|
||||
public void secondary(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
int item = player.getItemInHand();
|
||||
BrushTool tool = session.getBrushTool(item, player, false);
|
||||
session.setTool(item, null);
|
||||
BaseBlock item = player.getBlockInHand();
|
||||
BrushTool tool = session.getBrushTool(player, false);
|
||||
session.setTool(item.getId(), item.getData(), null, player);
|
||||
String cmd = "brush " + args.getJoinedStrings(0);
|
||||
CommandEvent event = new CommandEvent(player, cmd);
|
||||
CommandManager.getInstance().handleCommandOnCurrentThread(event);
|
||||
BrushTool newTool = session.getBrushTool(item, player, false);
|
||||
BrushTool newTool = session.getBrushTool(item.getId(), item.getData(), player, false);
|
||||
if (newTool != null && tool != null) {
|
||||
newTool.setPrimary(tool.getPrimary());
|
||||
}
|
||||
@ -168,8 +168,7 @@ public class BrushCommands {
|
||||
max = 1
|
||||
)
|
||||
public void visual(Player player, LocalSession session, @Optional("0") int mode) throws WorldEditException {
|
||||
int item = player.getItemInHand();
|
||||
BrushTool tool = session.getBrushTool(item, player, false);
|
||||
BrushTool tool = session.getBrushTool(player, false);
|
||||
if (tool == null) {
|
||||
BBC.BRUSH_NONE.send(player);
|
||||
return;
|
||||
@ -188,8 +187,7 @@ public class BrushCommands {
|
||||
max = 1
|
||||
)
|
||||
public void target(Player player, LocalSession session, @Optional("0") int mode) throws WorldEditException {
|
||||
int item = player.getItemInHand();
|
||||
BrushTool tool = session.getBrushTool(item, player, false);
|
||||
BrushTool tool = session.getBrushTool(player, false);
|
||||
if (tool == null) {
|
||||
BBC.BRUSH_NONE.send(player);
|
||||
return;
|
||||
@ -209,8 +207,7 @@ public class BrushCommands {
|
||||
max = -1
|
||||
)
|
||||
public void scroll(Player player, EditSession editSession, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
int item = player.getItemInHand();
|
||||
BrushTool tool = session.getBrushTool(item, player, false);
|
||||
BrushTool tool = session.getBrushTool(player, false);
|
||||
if (tool == null) {
|
||||
BBC.BRUSH_NONE.send(player);
|
||||
return;
|
||||
@ -352,7 +349,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.blendball")
|
||||
public void blendBallBrush(Player player, LocalSession session, @Optional("5") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new BlendBall(), "worldedit.brush.blendball", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_BLEND_BALL.f(radius));
|
||||
@ -369,7 +366,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.erode")
|
||||
public void erodeBrush(Player player, LocalSession session, @Optional("5") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new ErodeBrush(), "worldedit.brush.erode", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_ERODE.f(radius));
|
||||
@ -386,7 +383,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.pull")
|
||||
public void pullBrush(Player player, LocalSession session, @Optional("5") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new RaiseBrush(), "worldedit.brush.pull", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_ERODE.f(radius));
|
||||
@ -403,7 +400,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.sphere")
|
||||
public void circleBrush(Player player, LocalSession session, Pattern fill, @Optional("5") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setFill(fill);
|
||||
tool.setBrush(new CircleBrush(tool, player), "worldedit.brush.circle", player);
|
||||
@ -422,7 +419,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.recursive")
|
||||
public void recursiveBrush(Player player, LocalSession session, EditSession editSession, Pattern fill, @Optional("2") double radius, @Switch('d') boolean depthFirst) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new RecurseBrush(tool, depthFirst), "worldedit.brush.recursive", player);
|
||||
tool.setMask(new IdMask(editSession));
|
||||
@ -446,7 +443,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.line")
|
||||
public void lineBrush(Player player, LocalSession session, Pattern fill, @Optional("0") double radius, @Switch('h') boolean shell, @Switch('s') boolean select, @Switch('f') boolean flat) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setFill(fill);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new LineBrush(shell, select, flat), "worldedit.brush.line", player);
|
||||
@ -464,7 +461,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.spline")
|
||||
public void splineBrush(Player player, LocalSession session, Pattern fill, @Optional("25") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setFill(fill);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new SplineBrush(player, session, tool), "worldedit.brush.spline", player);
|
||||
@ -486,7 +483,7 @@ public class BrushCommands {
|
||||
public void sphereBrush(Player player, LocalSession session, Pattern fill, @Optional("2") double radius, @Switch('h') boolean hollow) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setFill(fill);
|
||||
tool.setSize(radius);
|
||||
|
||||
@ -524,7 +521,7 @@ public class BrushCommands {
|
||||
// public void testBrush(Player player, LocalSession session, Pattern fill, @Optional("10") double radius, @Optional("10") int count, @Optional("10") int distance) throws WorldEditException {
|
||||
// worldEdit.checkMaxBrushRadius(radius);
|
||||
//
|
||||
// BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
// BrushTool tool = session.getBrushTool(player);
|
||||
// tool.setFill(fill);
|
||||
// tool.setSize(radius);
|
||||
// tool.setBrush(new Test(count), "worldedit.brush.test");
|
||||
@ -548,7 +545,7 @@ public class BrushCommands {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
worldEdit.checkMaxBrushRadius(height);
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setFill(fill);
|
||||
tool.setSize(radius);
|
||||
|
||||
@ -582,7 +579,7 @@ public class BrushCommands {
|
||||
worldEdit.checkMaxBrushRadius(size.getBlockY());
|
||||
worldEdit.checkMaxBrushRadius(size.getBlockZ());
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setBrush(new ClipboardBrush(holder, ignoreAir, usingOrigin), "worldedit.brush.clipboard", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_CLIPBOARD.s());
|
||||
}
|
||||
@ -608,7 +605,7 @@ public class BrushCommands {
|
||||
FawePlayer fp = FawePlayer.wrap(player);
|
||||
FaweLimit limit = Settings.IMP.getLimit(fp);
|
||||
iterations = Math.min(limit.MAX_ITERATIONS, iterations);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new SmoothBrush(iterations, naturalBlocksOnly), "worldedit.brush.smooth", player);
|
||||
|
||||
@ -626,7 +623,7 @@ public class BrushCommands {
|
||||
public void extinguishBrush(Player player, LocalSession session, EditSession editSession, @Optional("5") double radius) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
Pattern fill = new BlockPattern(new BaseBlock(0));
|
||||
tool.setFill(fill);
|
||||
tool.setSize(radius);
|
||||
@ -652,7 +649,7 @@ public class BrushCommands {
|
||||
public void gravityBrush(Player player, LocalSession session, @Optional("5") double radius, @Switch('h') boolean fromMaxY) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new GravityBrush(fromMaxY, tool), "worldedit.brush.gravity", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_GRAVITY.f(radius));
|
||||
@ -734,7 +731,7 @@ public class BrushCommands {
|
||||
}
|
||||
}
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
if (flat) {
|
||||
try {
|
||||
@ -768,7 +765,7 @@ public class BrushCommands {
|
||||
@CommandPermissions("worldedit.brush.copy")
|
||||
public void copy(Player player, LocalSession session, @Optional("5") double radius, @Switch('r') boolean rotate) throws WorldEditException {
|
||||
worldEdit.checkMaxBrushRadius(radius);
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new CopyPastaBrush(tool, session, rotate), "worldedit.brush.copy", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_COPY.f(radius));
|
||||
@ -785,7 +782,7 @@ public class BrushCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.brush.command")
|
||||
public void command(Player player, LocalSession session, @Optional("5") double radius, CommandContext args) throws WorldEditException {
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
String cmd = args.getJoinedStrings(1);
|
||||
tool.setBrush(new CommandBrush(tool, cmd, radius), "worldedit.brush.copy", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_COMMAND.f(cmd));
|
||||
@ -830,7 +827,7 @@ public class BrushCommands {
|
||||
CreatureButcher flags = new CreatureButcher(player);
|
||||
flags.fromCommand(args);
|
||||
|
||||
BrushTool tool = session.getBrushTool(player.getItemInHand(), player);
|
||||
BrushTool tool = session.getBrushTool(player);
|
||||
tool.setSize(radius);
|
||||
tool.setBrush(new ButcherBrush(flags), "worldedit.brush.butcher", player);
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_BUTCHER.f(radius));
|
||||
|
@ -61,7 +61,7 @@ public class ToolCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.tool.inspect")
|
||||
public void inspectBrush(Player player, LocalSession session, @Optional("1") double radius) throws WorldEditException {
|
||||
session.setTool(player.getItemInHand(), new InspectBrush(), player);
|
||||
session.setTool(new InspectBrush(), player);
|
||||
BBC.TOOL_INSPECT.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ public class ToolCommands {
|
||||
max = 0
|
||||
)
|
||||
public void none(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
session.setTool(player.getItemInHand(), null, player);
|
||||
session.setTool(null, player);
|
||||
BBC.TOOL_NONE.send(player);
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ public class ToolCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.tool.info")
|
||||
public void info(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
session.setTool(player.getItemInHand(), new QueryTool(), player);
|
||||
session.setTool(new QueryTool(), player);
|
||||
BBC.TOOL_INFO.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -110,7 +110,7 @@ public class ToolCommands {
|
||||
return;
|
||||
}
|
||||
|
||||
session.setTool(player.getItemInHand(), new TreePlanter(new TreeGenerator(type)), player);
|
||||
session.setTool(new TreePlanter(new TreeGenerator(type)), player);
|
||||
BBC.TOOL_TREE.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -124,7 +124,7 @@ public class ToolCommands {
|
||||
@CommandPermissions("worldedit.tool.replacer")
|
||||
public void repl(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
BaseBlock targetBlock = we.getBlock(player, args.getString(0));
|
||||
session.setTool(player.getItemInHand(), new BlockReplacer(targetBlock), player);
|
||||
session.setTool(new BlockReplacer(targetBlock), player);
|
||||
BBC.TOOL_REPL.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -138,7 +138,7 @@ public class ToolCommands {
|
||||
@CommandPermissions("worldedit.tool.data-cycler")
|
||||
public void cycler(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
|
||||
session.setTool(player.getItemInHand(), new BlockDataCyler(), player);
|
||||
session.setTool(new BlockDataCyler(), player);
|
||||
BBC.TOOL_CYCLER.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -160,7 +160,7 @@ public class ToolCommands {
|
||||
}
|
||||
|
||||
Pattern pattern = we.getBlockPattern(player, args.getString(0));
|
||||
session.setTool(player.getItemInHand(), new FloodFillTool(range, pattern), player);
|
||||
session.setTool(new FloodFillTool(range, pattern), player);
|
||||
BBC.TOOL_FLOOD_FILL.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -173,7 +173,7 @@ public class ToolCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.tool.deltree")
|
||||
public void deltree(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
session.setTool(player.getItemInHand(), new FloatingTreeRemover(), player);
|
||||
session.setTool(new FloatingTreeRemover(), player);
|
||||
BBC.TOOL_DELTREE.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -186,7 +186,7 @@ public class ToolCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.tool.farwand")
|
||||
public void farwand(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
session.setTool(player.getItemInHand(), new DistanceWand(), player);
|
||||
session.setTool(new DistanceWand(), player);
|
||||
BBC.TOOL_FARWAND.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
}
|
||||
|
||||
@ -202,7 +202,7 @@ public class ToolCommands {
|
||||
|
||||
BaseBlock secondary = we.getBlock(player, args.getString(0));
|
||||
BaseBlock primary = we.getBlock(player, args.getString(1));
|
||||
session.setTool(player.getItemInHand(), new LongRangeBuildTool(primary, secondary), player);
|
||||
session.setTool(new LongRangeBuildTool(primary, secondary), player);
|
||||
BBC.TOOL_LRBUILD_BOUND.send(player, ItemType.toHeldName(player.getItemInHand()));
|
||||
BBC.TOOL_LRBUILD_INFO.send(player, ItemType.toName(secondary.getType()), ItemType.toName(primary.getType()));
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ public class ToolUtilCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.brush.options.mask")
|
||||
public void mask(Player player, LocalSession session, EditSession editSession, @Optional CommandContext context, @Switch('h') boolean offHand) throws WorldEditException {
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool == null) {
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_NONE.f());
|
||||
return;
|
||||
@ -109,7 +109,7 @@ public class ToolUtilCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.brush.options.mask")
|
||||
public void smask(Player player, LocalSession session, EditSession editSession, @Optional CommandContext context, @Switch('h') boolean offHand) throws WorldEditException {
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool == null) {
|
||||
player.print(BBC.getPrefix() + BBC.BRUSH_NONE.f());
|
||||
return;
|
||||
@ -149,7 +149,7 @@ public class ToolUtilCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.brush.options.transform")
|
||||
public void transform(Player player, LocalSession session, EditSession editSession, @Optional CommandContext context, @Switch('h') boolean offHand) throws WorldEditException {
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool == null) {
|
||||
return;
|
||||
}
|
||||
@ -188,7 +188,7 @@ public class ToolUtilCommands {
|
||||
)
|
||||
@CommandPermissions("worldedit.brush.options.material")
|
||||
public void material(Player player, LocalSession session, Pattern pattern, @Switch('h') boolean offHand) throws WorldEditException {
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool instanceof BrushTool) {
|
||||
BrushTool bt = (BrushTool) tool;
|
||||
if (offHand) {
|
||||
@ -210,7 +210,7 @@ public class ToolUtilCommands {
|
||||
@CommandPermissions("worldedit.brush.options.range")
|
||||
public void range(Player player, LocalSession session, CommandContext args) throws WorldEditException {
|
||||
int range = Math.max(0, Math.min(256, args.getInteger(0)));
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool instanceof BrushTool) {
|
||||
BrushTool bt = (BrushTool) tool;
|
||||
((BrushTool) tool).setRange(range);
|
||||
@ -231,7 +231,7 @@ public class ToolUtilCommands {
|
||||
int radius = args.getInteger(0);
|
||||
we.checkMaxBrushRadius(radius);
|
||||
|
||||
Tool tool = session.getTool(player.getItemInHand());
|
||||
Tool tool = session.getTool(player);
|
||||
if (tool instanceof BrushTool) {
|
||||
BrushTool bt = (BrushTool) tool;
|
||||
if (offHand) {
|
||||
|
@ -394,7 +394,7 @@ public class PlatformManager {
|
||||
return;
|
||||
}
|
||||
}
|
||||
final Tool tool = session.getTool(player.getItemInHand());
|
||||
final Tool tool = session.getTool(player);
|
||||
if (tool != null && tool instanceof DoubleActionBlockTool) {
|
||||
if (tool.canUse(player)) {
|
||||
FawePlayer<?> fp = FawePlayer.wrap(player);
|
||||
@ -431,7 +431,7 @@ public class PlatformManager {
|
||||
return;
|
||||
}
|
||||
|
||||
final Tool tool = session.getTool(player.getItemInHand());
|
||||
final Tool tool = session.getTool(player);
|
||||
if (tool != null && tool instanceof BlockTool) {
|
||||
if (tool.canUse(player)) {
|
||||
FawePlayer<?> fp = FawePlayer.wrap(player);
|
||||
@ -495,7 +495,7 @@ public class PlatformManager {
|
||||
|
||||
final LocalSession session = worldEdit.getSessionManager().get(player);
|
||||
|
||||
final Tool tool = session.getTool(player.getItemInHand());
|
||||
final Tool tool = session.getTool(player);
|
||||
if (tool != null && tool instanceof DoubleActionTraceTool) {
|
||||
if (tool.canUse(player)) {
|
||||
FawePlayer<?> fp = FawePlayer.wrap(player);
|
||||
@ -533,7 +533,7 @@ public class PlatformManager {
|
||||
|
||||
final LocalSession session = worldEdit.getSessionManager().get(player);
|
||||
|
||||
final Tool tool = session.getTool(player.getItemInHand());
|
||||
final Tool tool = session.getTool(player);
|
||||
if (tool != null && tool instanceof TraceTool) {
|
||||
if (tool.canUse(player)) {
|
||||
FawePlayer<?> fp = FawePlayer.wrap(player);
|
||||
|
Loading…
Reference in New Issue
Block a user