Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
fill
需要的权限等级

2[仅Java版]
1[仅基岩版]

限制条件

启用作弊[仅基岩版]

用特定方块填充一个区域的全部或部分。

语法[]

  • Java版
fill <from> <to> <block> [destroy|hollow|keep|outline|replace]
使用replace参数时的语法:
fill <from> <to> <block> replace [<filter>]
  • 基岩版
fill <from: x y z> <to: x y z> <tileName: Block> [tileData: int] [oldBlockHandling: FillMode]
fill <from: x y z> <to: x y z> <tileName: Block> [blockStates: block states] [oldBlockHandling: FillMode]

oldBlockHandling使用replace参数时的语法:

fill <from: x y z> <to: x y z> <tileName: Block> <tileData: int> replace [replaceTileName: Block] [replaceDataValue: int]
fill <from: x y z> <to: x y z> <tileName: Block> <blockStates: block states> replace [replaceTileName: Block] [replaceBlockStates: block states]

参数[]

JE<from>block_pos<to>block_pos
BEfrom: x y zCommandPositionto: x y zCommandPosition

定义填充区域的两组对角方块坐标。
必须为方块坐标,包括<x>、<y>和<z>,每个值都必须是整数或者含有波浪号与脱字号标记。在基岩版中,必须为三维的坐标,包括<x>、<y>和<z>,每个值都必须是浮点数或者含有波浪号与脱字号标记
构成边角的方块在此方块的坐标正方向上延伸。因此,各轴上较小的坐标将会正好贴合区域边界,但较大的坐标将会超过边界1方块,源区域的体积则为(x - x + 1) × (y - y + 1) × (z - z + 1)。例如:0 0 0 0 0 0的体积为1方块,0 0 0 1 1 11 1 1 0 0 0都指定同一块8方块大小的区域。

JE<block>block_state
BEtileName: BlockBlock

指定用于填充该区域的方块。
Java版中,必须为方块参数(不接受方块标签)。在基岩版中,必须是一个方块ID

BEtileData: intint

指定用于填充方块的方块数据。无效的数据值将回退为0。若未指定,默认值为0。
必须为32位整型数值。必须在0到65535间(含)。

BEblockStates: block statesBlockStateCommandParam

指定方块要使用的方块状态
必须是一个格式为["<键1>":<值1>,"<键2>":<值2>,...]的方块状态,例如:["old_leaf_type":"birch","persistent_bit":true]

JEdestroy|hollow|keep|outline|replace
BEoldBlockHandling: FillMode

  • destroy - 用指定方块替换填充区域内所有方块(包括空气),原有方块视为被无附魔的下界合金采掘而掉落对应的实体形式。(只能被剪刀采集的方块,如藤蔓,不会掉落;流体方块同理。)
  • hollow - 仅用指定方块替换填充区域外层的方块。内部方块被替换为空气。若被填充的区域没有内部(长、宽、高至少一个不足3方格)时,与replace效果相似。
  • keep - 仅用指定方块替换填充区域内的空气方块。
  • outline - 仅用指定方块替换填充区域外层的方块。内部方块不受影响。若被填充的区域没有内部(长、宽、高至少一个不足3方格)时,与replace效果相似。
  • replace - 用指定方块替换填充区域内所有方块(包括空气),而不以实体形式掉落被替换的方块和方块内容物。可选地,指定方块ID和数据值,用于限制被替换的方块类型(见下tileName: BlocktileData: int
若未指定,默认为replace

JE<filter>block_predicate
BEtileName: BlockBlock

指定将要替换的方块。若未指定,将替换填充区域内的所有方块。
必须为方块参数(接受方块的标签)。在基岩版中,必须为方块ID

BEreplaceBlockStates: block statesblock states

指定要替换的方块的方块状态。

BEtileData: intint

指定当寻找需复制的方块时要匹配的方块数据。(与0xFFFF逐位与后)无效的值将回退为0。若为-1或未指定,所有匹配tileName: Block的方块都将被复制。
必须为32位整型数值。 必须在-2147483648到2147483647间(含)。

效果[]

命令触发条件Java版基岩版
任意参数不正确 无法解析 无法解析
至少一个指定的坐标位于世界外或未被加载 执行失败 执行失败
选择区域方块数大于32768
tileData: int小于0或大于65535
/fill ... hollow
/fill ... keep
/fill ... outline
/fill ... replace ...
没有方块被更改
/fill ... destroy在原区域均为空气的情况下尝试填充空气
任意执行成功时将指定区域更改为指定方块

输出[]

命令版本条件成功次数/execute store success .../execute store result ...
任意Java版执行失败000
执行成功11填充区域内被更改的方块数
任意基岩版执行失败0N/AN/A
执行成功1N/AN/A

示例[]

  • /fill 52 63 -1516 33 73 -1536 minecraft:gold_block replace minecraft:orange_terracotta[仅Java版]
  • /fill 52 63 -1516 33 73 -1536 gold_block 0 replace concrete[仅基岩版]
  • /fill ~-3 ~-3 ~-3 ~3 ~-1 ~3 water
    • 将玩家脚下为顶面中心7×7×3的区域替换为水源方块。
  • /fill ~-3 ~ ~-4 ~3 ~4 ~4 minecraft:oak_planks hollow
    • 在玩家四周生成由橡木木板组成的一个普通房间大小的盒子,并将内部替换为空气。
  • /fill ~-15 ~-15 ~-15 ~15 ~15 ~15 stone
    • 以玩家为中心生成一个实心的石头立方体。
  • /fill ~-1 ~ ~ ~1 ~ ~ minecraft:prismarine_brick_stairs[facing=south,waterlogged=true][仅Java版]
    • 将玩家周围指定位置的方块替换为面向南方且含水的海晶石砖楼梯。

历史[]

Java版
1.814w03a加入了/fill命令。
1.1116w32a加入了方块状态的支持。
携带版Alpha
0.16.0build 1加入了/fill命令。
Advertisement