v15255116595
如题,我写了一段函数,其中有一段是execute if data block -1 66 -5 {Items:[{Slot: 0b, id: "minecraft:gold_ingot", Count:1b},{Slot: 2b, id: "minecraft:gold_ingot", Count:1b},{Slot: 3b, id: "minecraft:gold_ingot", Count:1b},{Slot: 4b, id: "minecraft:gold_ingot", Count:1b},{Slot: 5b, id: "minecraft:gold_ingot", Count:1b},{Slot: 6b, id: "minecraft:gold_ingot", Count:1b},{Slot: 7b, id: "minecraft:gold_ingot", Count:1b},{Slot: 8b, id: "minecraft:gold_ingot", Count:1b}]} run function saves:craft/-1_66_-5/craft/steel_armor
但是如果这样的话,即使第二格有物品也会检测成功然后被data remove全部清除,但是我想要的效果是让必须完全符合我这个合成表(合成的东西需要+NBT所以工作台好像不行),也就是说如果第二格(我没有让他放东西的地方)放了东西,那么检测就不能通过,请问怎么达到这种效果?3Q!(对了我试过{Slot:1b,id:"minecraft:air",Count:[-128-127b都试过了]},直接留空也是过了,都是直接检测失败)




顺便再问一下怎么修改水的颜色啊

无敌三脚猫
  1. execute unless data block -1 66 -5 {Items:[{Slot:1b}]} if data block -1 66 -5 {Items:[{Slot: 0b, id: "minecraft:gold_ingot", Count:1b},{Slot: 2b, id: "minecraft:gold_ingot", Count:1b},{Slot: 3b, id: "minecraft:gold_ingot", Count:1b},{Slot: 4b, id: "minecraft:gold_ingot", Count:1b},{Slot: 5b, id: "minecraft:gold_ingot", Count:1b},{Slot: 6b, id: "minecraft:gold_ingot", Count:1b},{Slot: 7b, id: "minecraft:gold_ingot", Count:1b},{Slot: 8b, id: "minecraft:gold_ingot", Count:1b}]} run function saves:craft/-1_66_-5/craft/steel_armor
复制代码