跳转到内容

第二十三章 setblock-放置方块

2020年1月8日 19:53 716字
  前面说过可以使用 /fill 填充一个区域内的方块。但是如果只需要填充一个方块呢?那岂不是要把坐标输入两遍?Minecraft 给了我们一个简单的指令,可以放置一个方块,它就是:/setblock。
  /setblock 指令,是由 set 和 block 组成的。set 前面讲过,是“设置”的意思,block 就是方块的意思。
  所以 setblock 的意思就是:设置方块,也就是放置方块。
  /setblock
  作用
:使用指定的方块替换一个方块
  需要权限等级:Java-2,基岩-1
  需要作弊:是
  格式:
Java1.13 以下和基岩版
  • /setblock <坐标> <方块名> [方块数据值:Int整数] [被覆盖方块处理方式:destroy|keep|replace]
Java1.11 至 Java1.12.2
  • /setblock <坐标> <方块名> [方块状态] [被覆盖方块处理方式:destroy|keep|replace]
Java1.12.2 以上
  • /setblock <坐标> <方块名> [被覆盖方块处理方式:destroy|keep|replace]
  举个非常简单的例子。假设你需要在你自己脚下放置一个下界传送门方块,那么你只需要执行:

/setblock ~ ~-1 ~ nether_portal(Java 版)

/setblock ~ ~-1 ~ portal(基岩版)

  然后你就进入了下界(我们需要再深入些)。
  但如果我们在放置的时候同时也要让原本方块产生掉落物该怎么办?
  很简单。举个例子,假设我们需要在脚底放置钻石块同时破坏掉原本的方块,就可以:

/setblock ~ ~-1 ~ diamond_block 0 destroy(Java1.13 版本以下和基岩版)

/setblock ~ ~-1 ~ diamond_block destroy(Java1.12.2 版本以上)

  看,你脚底下的草方块变成了钻石块,还多出了个泥土!
  /setblock 的 destroy 处理方式和 /fill 的 destroy 一样,都是会对原方块进行破坏并产生掉落物。
  另外两个处理方式:keep 和 replace,我们都已经在 /fill 指令见过了,那么它们是否也是和 /fill 一样呢?
  replace 肯定一样。但实际上又不完全一样——虽然 /setblock 默认使用的处理方式也是 replace,但是 /setblock 的 replace 并没有“原方块是特定的方块才进行替换”的功能。
  keep 的作用和 /fill 的 keep 不能说基本一样,只能说完全一样,只是因为 /setblock 只替换一个方块,导致说法要改一下:
  如果原方块是空气,即替换,否则不替换。

历史

Java

版本
更新内容
1.7.2
加入了 /setblock。方块名参数支持数字和名称 ID。
1.8
方块名参数不再接受数字 ID。
1.11
加入了方块状态的支持。

携带版Alpha

版本
更新内容
0.16.0
加入 /setblock