/ Test pour au moins 10 articles spécifiques dans l'inventaire

C'est la commande que j'ai saisie dans le bloc de commande:
testfor @p {Inventory:[{id:minecraft:diamond,Count:10}]}

Mais cela ne semble pas fonctionner. Qu'est-ce que je fais mal?

Donc, deux choses. Tout d'abord, la balise de données ne correspond jamais, car il faut préciser le type de nombre entier pour le compte. L'utilisation de la commande suivante réparera ce problème:

 testfor @p {Inventory:[{id:minecraft:diamond,Count:10b}]} 

Notez le b après le 10. Cela indique que le type entier est un octet. Vous devez supposer que le spécificateur de type est nécessaire lorsque vous essayez de faire correspondre les valeurs entières dans les balises de données, même s'il existe des cas où il ne l'est pas.

Votre deuxième problème, probablement plus gros, est que vous ne vérifiez que s'il existe un emplacement d'inventaire spécifique qui détient exactement 10 diamants. Avoir dix machines à sous avec un diamant chacune? Échouer. Vous avez une pile entière de diamants? Échouer. Il s'agit d'un problème avec /testfor et, en réalité, de toutes les correspondances des données, mais puisque /testfor est utilisé principalement pour l'appariement des étiquettes de données, il finit par être un gros problème. Ne pas utiliser /testfor ! Surtout dans les versions antérieures à 1.9 du jeu. Je ne peux insister assez sur ce point. /testfor est presque complètement inutile avant 1.9, et ne gagne que peu d'utilité en 1.9 avec l'introduction de l'exécution conditionnelle.

Peut-être contre-intuitivement, vous voulez utiliser la commande /clear pour le faire. Vous devrez également utiliser la commande /stats pour enregistrer le résultat sur le tableau de bord. Vous pouvez généralement voir comment cela se fait dans cette réponse que j'ai écrite il n'y a pas si longtemps.