/fill 命令
来源:Commands/fill,英文修订 ID:3869244。
用指定方块填充一个区域的全部或一部分。Java 版所需权限等级为 2;基岩版为 1,需要启用作弊。
语法
Java 版:
fill <from> <to> <block> [outline|hollow|destroy|strict|replace|keep]
fill <from> <to> <block> replace <filter> [outline|hollow|destroy|strict]
基岩版:
fill <from: x y z> <to: x y z> <tileName: Block> <blockStates: block states> [oldBlockHandling: FillMode]
fill <from: x y z> <to: x y z> <tileName: Block> [oldBlockHandling: FillMode]
基岩版 replace 模式还有可选的替代语法:
fill <from: x y z> <to: x y z> <tileName: Block> <blockStates: block states> replace [replaceTileName: Block] [replaceBlockStates: block states]
fill <from: x y z> <to: x y z> <tileName: Block> replace [replaceTileName: Block] [replaceBlockStates: block states]
参数
<from>: block_pos、<to>: block_pos/基岩版 from: x y z、to: x y z(CommandPosition):填充区域两个相对顶角方块的坐标。由三个整数,或波浪号/插入符坐标组成。方块位置是方块西北下角点的坐标,因此各轴较小坐标在区域边界上,较大坐标距离另一侧边界一格。区域体积为 (xmax-xmin+1)*(ymax-ymin+1)*(zmax-zmin+1)。例如 0 0 0 0 0 0 包含 1 格;0 0 0 1 1 1 和 1 1 1 0 0 0 表示同一片含 8 格的区域。
<block>: block_state/tileName: Block:用来填充区域的方块。Java 版接受方块 ID,可附加状态和 NBT;基岩版为有效方块 ID。
blockStates: block states(基岩版,BlockStateCommandParam):放置方块使用的方块状态,用方括号中的键值对表示;空列表为 []。
Java 版 outline|hollow|destroy|strict|replace|keep/基岩版 oldBlockHandling: FillMode:如何处理方块变化,默认 replace。
destroy:用指定方块替换区域内所有方块(包括空气)。现有方块(包括类型未改变的方块)及其内部物品会掉落为实体,就像被未附魔的钻石锹或钻石镐挖掘一样。只能用剪刀采集的方块(如藤蔓)不掉落,液体也不掉落。hollow:只替换区域最外层,内部方块改为空气;内部方块自身不掉落,但其内含物会掉落。如果区域任一轴小于 3 格而没有内部方块,则行为与replace相同。keep:只替换区域内的空气方块。outline:只替换区域最外层,内部方块不受影响。如果任一轴小于 3 格而没有内部方块,则行为与replace相同。replace:替换区域内所有方块(包括空气),不使方块或内含物掉落实体。可选指定方块 ID 和数据值以限制替换对象。strict(Java 版):原样放置方块,不触发方块更新与形状更新。
<filter>: block_predicate/replaceTileName: Block:要被替换的方块 ID;未指定时替换区域内所有方块。Java 版接受方块 ID 或 # 前缀的方块标签,并可加状态及 NBT 条件;基岩版为有效方块 ID。
replaceBlockStates: block states(基岩版,BlockStateCommandParam):要被替换方块的方块状态,格式同 blockStates。
结果
命令不完整或参数指定错误时无法解析。任一指定位置未加载或位于世界之外、区域体积超过 max_block_modifications 游戏规则的值时失败。
hollow、keep、outline、replace 或 strict 模式没有改变任何方块时失败。destroy 模式在区域内没有方块改变时失败;来源还把指定方块为空气列为此模式下的失败条件。其他情况成功。
输出
Java 版失败时成功次数、success、result 均为 0。hollow、keep、outline、replace、destroy 成功时,成功次数与 success 为 1,result 为填充区域内改变的方块数量;原输出表未单列 strict。基岩版失败时成功次数为 0,成功时为 1。
示例
把区域内所有橙色带釉陶瓦替换为金块:
# Java 版
/fill 52 63 -1516 33 73 -1536 minecraft:gold_block replace minecraft:orange_glazed_terracotta
# 基岩版
/fill 52 63 -1516 33 73 -1536 gold_block [] replace orange_glazed_terracotta
把命令执行位置正下方 7×3×7 的区域填成水:
/fill ~-3 ~-3 ~-3 ~3 ~-1 ~3 water
在执行位置周围创建房屋大小的空心盒子,内部方块替换为空气:
# Java 版
/fill ~-3 ~ ~-4 ~3 ~4 ~4 stone hollow
# 基岩版,来源中的旧语法
/fill ~-3 ~ ~-4 ~3 ~4 ~4 stone 0 hollow
基岩版示例中的旧数据值 0 与本页现行语法不一致;此处保留原例,现行版本应按上方语法使用方块状态。
创建以执行位置为中心的实心石头立方体:
/fill ~-15 ~-15 ~-15 ~15 ~15 ~15 stone
把执行位置周围指定方块替换为朝南的含水海晶石砖楼梯:
/fill ~-1 ~ ~ ~1 ~ ~ minecraft:prismarine_brick_stairs[facing=south,waterlogged=true]
外部链接
- Microsoft Learn:
/fill命令,2024-07-17。
本文为 Minecraft Wiki 对应英文条目的中文翻译与改编,已按要求省略变更历史。原作者与贡献者见来源页及其历史;除另有说明外,按 CC BY-NC-SA 3.0 非商业、署名、相同方式共享。