天才一秒记住【第一中文网】地址:www.dyzww.cc
前面说过可以使用\/fill填充一个区域内的方块。但是如果只需要填充一个方块呢?那岂不是要把坐标输入两遍?minecraft给了我们一个简单的指令,可以放置一个方块,它就是:\/setblock。
\/setblock指令,是由set和block组成的。set前面讲过,是“设置”的意思,block就是方块的意思。
所以setblock的意思就是:设置方块,也就是放置方块。
\/setblock
作用:使用指定的方块替换一个方块
需要权限等级:Java-2,基岩-1
需要作弊:是
格式:
\/setblock <坐标><方块名>[方块数据值:Int整数][被覆盖方块处理方式:destroy|keep|replace]——Java1.13以下和基岩版
\/setblock <坐标><方块名>[方块状态][被覆盖方块处理方式:destroy|keep|replace]——Java1.11至Java1.12.2
\/setblock <坐标><方块名>[被覆盖方块处理方式:destroy|keep|replace]——Java1.12.2以上
举个非常简单的例子。假设你需要在你自己脚下放置一个下界传送门方块,那么你只需要执行:
\/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