louyukai
如题我的游戏版本1.16.1
比较两个区域的方块是否完全一致,一致的话就发出红石信号或者执行指令

如果原版指令实在不行 插件也可以(不考虑mod)



村民黄金
https://www.bilibili.com/read/cv7511930/

无敌三脚猫
原版指令
  1. /execute if blocks 1 2 3 4 5 6 7 8 9 all run say 完全一致
复制代码
如果从(1,2,3)到(4,5,6)的所有方块与从(7,8,9)到(10,11,12)的所有方块相同,就执行指令/say 完全一致

ArmorRush
  1. /testforblocks 0 0 0 10 10 10 100 100 100
复制代码

检测0 0 0到10 10 10这个范围内的方块和100 100 100 到110 110 110的是否一样

louyukai
无敌三脚猫 发表于 2022-1-21 15:44
原版指令如果从(1,2,3)到(4,5,6)的所有方块与从(7,8,9)到(10,11,12)的所有方块相同,就执 ...

我试了下,不知道为什么即使完全一样也会失败,还有就是all后面的命令会变红


louyukai
ArmorRush 发表于 2022-1-21 16:31
检测0 0 0到10 10 10这个范围内的方块和100 100 100 到110 110 110的是否一样

不行,提示未知指令

无敌三脚猫
louyukai 发表于 2022-1-21 17:57
我试了下,不知道为什么即使完全一样也会失败,还有就是all后面的命令会变红

...

这里的3个坐标和/clone的3个坐标写法一样,前两个是区域一的对角坐标(随便哪个对角),第3个坐标是区域二的xyz最小的坐标
我用着完全没问题啊,刚刚才去1.16里面试了
你是哪个版本?

DreamVoid
本帖最后由 DreamVoid 于 2022-1-22 12:56 编辑
louyukai 发表于 2022-1-21 17:57
我试了下,不知道为什么即使完全一样也会失败,还有就是all后面的命令会变红

...

正确指令应该是
/execute if blocks -288 89 141 -289 89 140 -291 89 141 all run say 1

编辑:那我就不知了
https://minecraft.fandom.com/zh/ ... 0.E5.91.BD.E4.BB.A4

Ph-苯
execute if blocks 子命令
https://wiki.biligame.com/mc/%E5 ... .7Cunless.29_blocks

    语法
      execute (if|unless) blocks <start> <end> <destination> <scan mode> -> [execute]

    参数
        <start>、<end>:block_pos

            源区域(比较时参照的区域)的两个对角方块位置

        <destination>:block_pos

            对照区域的西北下角方块的坐标(即长方形区域内x y z坐标最小处)。
            格式均为<x> <y> <z>,可以使用相对坐标和局部坐标。参见clone。

        <scan mode>:可以是all或masked

            选择all将探测区域内的全部方块,选择masked将忽略源区域内空气方块所在的位置。

louyukai
无敌三脚猫 发表于 2022-1-21 18:22
这里的3个坐标和/clone的3个坐标写法一样,前两个是区域一的对角坐标(随便哪个对角),第3个坐标是区域 ...

1.16.1 Spigot

louyukai
Ph-苯 发表于 2022-1-22 18:10
execute if blocks 子命令
https://wiki.biligame.com/mc/%E5%91%BD%E4%BB%A4/execute#.28if.7Cunless.29_b ...

我看了下,按照5楼的用法应该没有错吧...可是不行耶

无敌三脚猫

我在1.16.5里试的,但按理说execute的这个语法从1.13以来就没有变过啊
你那边写run是错的……那总该有什么东西可以写吧,你那边在all后面按空格之后会显示什么?我这边显示的是



louyukai
本帖最后由 louyukai 于 2022-1-26 21:05 编辑
无敌三脚猫 发表于 2022-1-26 20:53
我在1.16.5里试的,但按理说execute的这个语法从1.13以来就没有变过啊
你那边写run是错的……那总该有什 ...



啊,现在可以正常执行了,这个错误的提示不知道为什么也没什么影响我就不去管他了
谢谢