首页 男生 游戏竞技 Minecraft指令手册

第三十七章 testforblock、testforblocks-探测 下

Minecraft指令手册 你好MC 1761 2024-07-09 15:29

  我们现在学会了如何探测实体,那方块呢?

  使用/testforblock和/testforblocks。

  这两个指令只相差1个字母,但是功能却大径相庭。在英文中,blocks是blcok的复数。也就是说,/testforblock是探测单个方块,而/testforblock是探测多个方块。

  真有这么简单吗?

  /testforblock

  作用:探测指定位置是否为某种方块。

  需要权限等级:Java-2,基岩-1

  需要作弊:是

  格式:

  基岩版

  /testforblock <探测位置:坐标><方块ID:字符串>[数据值:整数]

  Java1.13之前

  /testforblock <探测位置:坐标><方块ID:字符串>[数据值:整数]

  /testforblock <探测位置:坐标><方块ID:字符串>[方块状态]

  很不幸的是,虽然Java版和基岩版都有加入这条指令,但是Java版中这条指令在1.13版本的第三个快照时被移除了。所以说:

  /testforblock in Java

  生于1.7.2版本13w37a

  死于1.13版本17w45a

  算了,正经点。

  举个例子,比如:

  /execute @a ~~~ testfor ~~-1 ~ minecraft:redstone_block

  就是探测每个玩家其脚底下是否是红石块,是则成功,否则失败。

  然后是/testforblocks。刚才说过这里多了s,也就是多个方块,那么是怎么探测的呢?

  先来个介绍:

  /testforblocks

  作用:探测指定区域是否与另外一个指定区域完全相同

  需要权限等级:Java-2,基岩-1

  需要作弊:是

  格式:

  /testforblocks <源区域起始坐标><源区域终止坐标><比较区域下西北角坐标>[<模式:masked|all>]

  比较时先通过/fill选择区域的方式确定源区域,再与要比较区域进行比较。只不过这个要比较区域的位置填写就挺蛋疼:你得找到要比较区域的下西北角(专业术语叫做区域基点)。

  哪里是下西北角呢?

  区域内XYZ三个值最小的地方。

  这两个区域的大小由第一个定,所以比较的区域就直接给一个角了。

  以后的/clone指令(复制指令)也是这种形式。

  举个例子:

  /testforblocks ~-1 ~-1 ~-1 ~1 ~-1 ~1 ~-1 ~2 ~-1

  作用是:检测执行者脚下3×3的区域是否和头顶3×3的区域完全一样

  /testforblocks还有两个比较模式:

  all和masked。

  all(默认模式)——比较全部。

  masked——忽略源区域的空气方块(即源区域的空气方块可以代替要比较区域的任何方块)

  这两章所讲的3条指令,要发挥全部作用就需要和红石比较器配合,不只是单单的用命令方块执行哦!

  历史

  Java

  1.7.2——加入了/testforblock

  1.8——加入了/testforblocks

  1.11——/testforblock支持方块状态

  1.13——因为execute if的出现,/testforblock和/testforblocks被移除。

  携带版Albr /ha

  0.16.0——加入了/testforblock和/testforblocks

目录
设置
手机
书架
书页
评论