北伐666
指令如下
execute if entity @a[nbt={Inventory:[{Slot:-106b,id:"minecraft:piston",tag:{gangplank:1b}}]}] if block ~ ~-1 ~ air run function common:tool/do/gangplank



阿仟
你是玩家,打指令的时候默认你为执行者,if的功能只有检测有没有,无法让被检测的对象成为执行者。所以你需要在后面加上一个at来选定执行者,另外,gangplank讲究

晴路卡
  1. execute as @a[nbt={Inventory:[{Slot:-106b,id:"minecraft:piston",tag:{gangplank:1b}}]}] at @s if block ~ ~-1 ~ air run function common:tool/do/gangplank
复制代码