Détection item inventaire

  • Auteur de la discussion Auteur de la discussion FloxHunt
  • Date de début Date de début

FloxHunt

Mapmaker PVP PVE
29 Juillet 2013
338
32
85
32
Rouen
Salut les gens !!

Je suis en plein préparation d'une nouvelle map et j'aimerais installer un systeme de troc. Hors j'ai besoin de tester l'inventaire du joueur qui troque pour savoir si il a bien tous les éléments nécessaires à l'échange.

J'ai essayé plusieurs techniques ainsi que la fameuse commande /testfor @p {Inventory: ...} mais RIEN ne marche... Même certaines commandes toutes faites que j'ai pu trouver sur certains forums ne marchent pas.

Donc j'aimerais que vous m'aidiez.

Je récapitule. J'ai besoin d'une commande permettant de tester l'inventaire du joueur, pour savoir si il a assez d'un item pour pouvoir exercer une transaction. MAIS je ne veux pas que ce soit une commande centrée sur un slot de l'inventaire.

Merci à ceux qui me répondraient.
 
Oui mais ça ne tient pas compte de la notion de minimum.
Dans mon cas je veux qu'il y ai 3 lingots de fer minimum pour pouvoir échanger contre une pioche en fer.
Je veux que quand le joueur appuie sur le bouton, il y ai 3 fers qui partent et UNIQUEMENT si le joueur a 3 fers ou plus dans son inventaire.
 
Si les commandes que tu trouves sur internet ne fonctionnent pas, c'est que tu n'es probablement pas sur une version adéquate.
Il me semble que la plupart des testfor sont réservés aux joueurs Snapshot.

3 lingots de fer minimum pour pouvoir échanger contre une pioche en fer. Je veux que quand le joueur appuie sur le bouton, il y ai 3 fers qui partent et UNIQUEMENT si le joueur a 3 fers ou plus dans son inventaire.
Tu demandes quand même du lourd au niveau du conditionnement ^^
Au pire des cas tu peux utiliser un PNJ customisé, c'est plus simple que de jouer avec des boucles redstone et 24 000 conditions ;)

Par exemple là ton PNJ permet de vendre une pioche en Fer contre 3 lingot de fer, une épée en fer contre 2 lingots de fer, et 4 poissons cuits contre 4 poissons crus et 1 charbon. J'ai mis ça en exemple, tu peux supprimer les lignes ou les tags qui t'intéressent pas. ;)

Code:
/summon Villager ~ ~1 ~ {Profession:1,CustomName:Marchand,CustomNameVisible:0,Offers:{Recipes:[
{maxUses:10000000, buy:{id:265,Count:3},sell:{id:257,Count:3}},
{maxUses:10000000, buy:{id:265,Count:2},sell:{id:267,Count:3}},
{maxUses:10000000, buy:{id:349,Count:4},buyB:{id:263,Count:1},sell:{id:350,Count:4}},
]}}
 
Ouaip c'est ce que je vais faire je pense car je trouve bête que Mojang n'ai pas encore mit une commande plus simple pour tester l'inventaire sans que les slots ne soient comptés...

Merci quand même pour vos réponses les gens
 
FloxHunt , tu peux aussi placer 3 command_block avec le clear d'un fer par command_block. Puis tu mets une comparateur en sortie de chaques command_block , tu les relies chacun à un inverseur qui est relié au give de la pioche.
Tu crées une porte E avec la sortie la sortie juste avec le command_block du give suivie d'un inverseur et la sortie de redstone du bouton principal. La sortie de la porte E seras le give du nombre de fer que le clear à prit.
 
Il y a plein de choses qui sont assez restreintes et décevantes pour les mapmakers de Minecraft :/
(Je pense notamment au bordel infligés par les data limités, et du formatting code qui s’intègrent dans que dalle en Vanilla)
Notch avait jamais visé "loin" pour Minecraft en fixant les bases (rien que de penser à l'ancien terrain.png ^^ )
'fin bon voilà, bonne continuation. :)

La solution de luludatra fera surement l'affaire. ;)
 
FloxHunt , tu peux aussi placer 3 command_block avec le clear d'un fer par command_block. Puis tu mets une comparateur en sortie de chaques command_block , tu les relies chacun à un inverseur qui est relié au give de la pioche.
Tu crées une porte E avec la sortie la sortie juste avec le command_block du give suivie d'un inverseur et la sortie de redstone du bouton principal. La sortie de la porte E seras le give du nombre de fer que le clear à prit.


Ouais mais le problème c'est que le clear se fera quand même alors qu'il n'y aura pas assez de fer, le trade se fera donc sans qu'il y ai le nombre de fer nécessaire. =/
Lors de mes test quand je faisait un clear sur un seul lingot, le clear se faisait dans le vide et le courant passait quand même =/
Je pense sérieusement que c'est un truc qui aurait du être réglé depuis longtemps ça...