1 votes

TestForBlock commande

Je suis en train d'essayer de fabriquer une table de fabrication personnalisée en utilisant un dropper. J'utilise cette commande pour détecter une pelle qui est placée dans le dropper :

testforblock 193 58 -314 minecraft:dropper 0 {Items:[0:{id:minecraft:stone_shovel,Count:1b,Damage:0s,Slot:4b}]}

Et ça marche, ça détecte la pelle au milieu comme c'est supposé le faire. Donc la pelle est au milieu en ce moment, et le comparateur s'active. Si je laisse la pelle là, et que je mets un autre objet dans un emplacement différent, le comparateur de redstone s'active toujours. Je veux qu'il ne s'active que lorsqu'il y a 1 objet dans la table.

Mon idée est de détecter de l'air pour les 8 autres emplacements, mais cela ne fonctionne pas, est-ce que minecraft:air est invalide ? Comment faire pour que /testforblock détecte de l'air (emplacement vide) à l'intérieur du conteneur (dropper) ?

2voto

Skylinerw Points 12529

"air" n'est effectivement pas un élément de l'inventaire valide. Les emplacements sans objets n'existeront tout simplement pas du tout, donc vous ne pouvez pas les détecter directement via NBT.

Ce que vous devrez faire à la place est d'utiliser plusieurs commandes /testforblock : une pour détecter la pelle et d'autres pour détecter les emplacements contenant des objets. Vous ne permettriez qu'à un signal de passer si le premier réussit tandis que les autres échouent :

Doit réussir :

/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{id:"minecraft:stone_shovel",Count:1b,Damage:0s,Slot:4b}]}

Toutes doivent échouer :

/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:0b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:1b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:2b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:3b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:5b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:6b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:7b}]}
/testforblock 193 58 -314 minecraft:dropper -1 {Items:[{Slot:8b}]}

Ce que vous ne pouvez pas faire est de combiner toutes les commandes d'échec en une seule, car alors elle recherche un objet dans chaque un de ces emplacements plutôt que un quelconque.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X