刷子指令

基本信息

属性 值
来源类 com.sk89q.worldedit.command.BrushCommands
文件 src/main/java/com/sk89q/worldedit/command/BrushCommands.java
注册位置 CommandManager.java:173(/brush 组内)
文件行数 262(wc -l)
组内命令数 7(@Command)+ 7(非 @Command,显式注册)

刷子形状(BrushCommands,7 条)

指令 别名 说明 权限节点
/brush sphere s Choose the sphere brush worldedit.brush.sphere
/brush cylinder cyl、c Choose the cylinder brush worldedit.brush.cylinder
/brush clipboard copy Choose the clipboard brush worldedit.brush.clipboard
/brush smooth — Choose the terrain softener brush worldedit.brush.smooth
/brush ex extinguish Shortcut fire extinguisher brush worldedit.brush.ex
/brush gravity grav Gravity brush worldedit.brush.gravity
/brush butcher kill Butcher brush worldedit.brush.butcher

显式注册的具名刷子(7 条,非 @Command)

以下 7 条不带 @Command 注解,而是在 CommandManager.java:174-202 用 .register(adapt(new ShapedBrushCommand(...)), "<名字>") 逐条构造并注册到 /brush 组:

指令 说明(源码原文) 权限节点
/brush deform — worldedit.brush.deform
/brush set Set all blocks within region worldedit.brush.set
/brush paint — worldedit.brush.paint
/brush apply — worldedit.brush.apply
/brush forest — worldedit.brush.forest
/brush raise Raise one block worldedit.brush.raise
/brush lower Lower one block worldedit.brush.lower

/brush raise 与 /brush lower 由 ProvidedValue.create(new Deform(...), ...) 预置表达式生成(CommandManager.java:189-200),源码逐字如下:

指令 预置 Deform 表达式 源码中的描述字符串 权限节点
/brush raise new Deform("y-=1", Mode.RAW_COORD) "Raise one block" worldedit.brush.raise
/brush lower new Deform("y+=1", Mode.RAW_COORD) "Lower one block" worldedit.brush.lower

⚠️ 记录一处源码字面与命令名不一致的事实:raise 绑定的表达式是 y-=1,lower 绑定的却是 y+=1(CommandManager.java:192 与 :198)。此处仅按源码原文如实转录。该写法是否为上游刻意为之,本仓库内无法核实(仓库中无对应的测试或注释说明其意图),故不断言其为缺陷。

工作方式

刷子本身不修改世界——/brush <形状> 只是把当前会话的刷子类型切换为该形状,随后每次右键方块才由 EditSession 执行对应操作。刷子参数由 ToolUtilCommands 的 /mat、/size、/mask、/range 设置。

数值

刷子半径上限由配置 max-brush-radius(默认 10)限制。butcher 刷子的半径另受 butcher-default-radius / butcher-max-radius 约束。

相关条目