1. Le forum de Minecraft-France va définitivement fermer ses portes. Celui-ci restera en lecture seule mais vous ne pourrez plus y apporter de nouveaux topics. Nous vous invitons à nous rejoindre sur le Discord de Minecraft-France qui permet de présenter vos projets, discuter avec la communauté etc.. Merci à tous d'avoir fait vivre ce forum de nombreuses années. Pour nous rejoindre sur Discord, Cliquez ici

Résolu testfor d'un item custom au sol

Discussion dans 'Mapping' créé par clownmechant, 24 Nov 2016.

Statut de la discussion:
N'est pas ouverte pour d'autres réponses.
  1. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    Bonjour,
    Je cherche a exécuter une série de commande lorsque un item custom tombe au sol.
    C'est une bannière de couleur rouge, renommée CTFdrouge ( j'ai aussi essayé en mettant un "lore" du même nom) qui a auparavant été givé à un joueur comme ceci :
    Code (cpp):
    /replaceitem entity @p[r=1] slot.armor.head minecraft:banner 1 0 {display:{Name:"CTFdrouge"},BlockEntityTag:{Base:1,Patterns:[]}}
    J'ai testé :
    Code (cpp):
    testfor @e[r=10,type=Item] {Item:{id:minecraft:banner}}
    qui marche pour toutes les bannières. Mais dès que j'essaie d'ajouter le name ou le lore précis dans le data tag ça foire :/

    Une idée de la syntaxe exact (j'en ai testé beaucoup, impossible de faire la liste ici ^^) ?
    Je suis en 1.10.2

    Merci d'avance
     
  2. Calambiel

    Calambiel Résident de l'End

    Inscrit:
    5 Août 2014
    Messages:
    6 595
    Points:
    229
    Ceci fonctionne pour moi :
    Code (cpp):
    testfor @e[r=10,type=Item] {Item:{id:minecraft:banner,tag:{display:{Name:"CTFdrouge"}}}}
     
    • J'aime J'aime x 2
  3. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    Encore une fois merci beaucoup ! ( oui oui je crois que c'est toi aussi qui m'avait aidé concernant les data tag d'un item dans un item frame ^^)
    Décidément, je suis fâché avec les tags ;)
     
  4. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    Arf, je vais encore embêter ^^ La même commande mais en version /kill ne prends pas en compte les dataTag mais tous les items dans le rayon d'action. En soi, après réflexion, ce n'est pas un problème pour ce que je fais, mais par pur curiosité et envie d'apprendre : est-ce une autre manière de syntaxe à utiliser pour la commande kill ?
     
  5. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    D'abord excusez moi pour le double post, j'ai remis en non résolu, je ne sais pas trop si je dois refaire un post ou continuer sur celui ci ...

    J'ai donc cet item que je peux repérer par rapport à un testfor. Par contre, impossible de faire un /execute ou un /kill dessus.

    Si je summon un item avec un custom name ( exemple de custom name : "drapeaurouge") je peux utiliser /execute @e[name=drapeaurouge] ou /kill @e[name=drapeaurouge] .

    MAIS si j'ai give ( ou replaceitem) un item avec un nom personnalisé, là, si l'item est au sol bien sur, le selecteur [name=drapeaurouge] ne fonctionne pas avec execute et kill et j'ai l'impression que les datatag ne sont pas accepté par ces deux commandes ...

    Y a-t-il une solution ?
     
  6. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    Je me réponds à moi même, j'ai donc trouvé une solution
    D'abord je créé un objectif de type dummy
    Code (cpp):
    scoreboard objectives add Killitem dummy
    ensuite je fais une clock qui check dès que l'item renommé est au sol et je lui file un score de 1
    Code (cpp):
    scoreboard players set @e[type=Item] Killitem 1 {Item:{tag:{display:{Name:"DrapeauRouge"}}}}
    enfin je peux faire mes kill ou mes execute sur cet item particulier ;
    Code (cpp):
    kill @e[type=Item,score_Killitem_min=1]
    Voili voilou. Si ça peut aider ;)
     
  7. Calambiel

    Calambiel Résident de l'End

    Inscrit:
    5 Août 2014
    Messages:
    6 595
    Points:
    229
    Les commandes fonctionnement correctement, un item en tant qu'entité et son contenu sont séparés, l'entité peut avoir un nom et l'objet un autre.
     
Statut de la discussion:
N'est pas ouverte pour d'autres réponses.

Partager cette page