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 Problème commande bloc

Discussion dans 'Commands blocks & Redstone' créé par Bananos96, 9 Août 2017.

  1. Bananos96

    Bananos96 Nouveau

    Inscrit:
    9 Nov 2016
    Messages:
    3
    Points:
    0
    Sexe:
    Homme
    Bonjour,
    J'ai problème en commandes blocs. Mon but est de faire spawner une entité, lui ajouté un score, puis en faire spawner une autre... tout ça 11 fois. Chaque entité doit avoir un score bien précis. L'entité est spawner de manière aléatoire.
    Demandez pour plus de renseignement

    version: 1.12

    J'ai un autre problème de command block.
    Je fais un /summon falling_block.... (falling_block (1.12) = falling_sand (1.10)
    Je lui set le score "pont" à 1
    Je fais spawn un autre falling_block
    Je veux lui set le score "pont" à 2 sans que le premier se mette aussi à 2 et sans connaitre sa position....

    Comment je fais ?

    Bananos96
     
    #1 Bananos96, 9 Août 2017
    Dernière édition par un modérateur: 12 Août 2017
  2. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    tu peut essayer comme sa: /scoreboard players set @e[type=Falling_block,score_pont_min=1] pont 2
     
  3. Calambiel

    Calambiel Résident de l'End

    Inscrit:
    5 Août 2014
    Messages:
    6 595
    Points:
    229
  4. Touche158

    Touche158 Mineur

    Inscrit:
    26 Oct 2014
    Messages:
    455
    Points:
    91
    Sexe:
    Homme
    Au pire chaque entité summon a un nom différent (Block1, Block2, Block3 etc) et tu fais :
    Code (cpp):
    /scoreboard players set @e[type=falling_block,name=Block1] pont 1
    /scoreboard players set @e[type=falling_block,name=Block2] pont 2
    etc ..
    Cela ne servirait a rien car le score_min prend aussi le 1 donc les deux prendrait la valeur 2.
     
  5. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    ben si, le premier a le score a 1, mais le deuxième n'a pas de score et ne sera donc pas sélectionné par le score_min=1
     
  6. Touche158

    Touche158 Mineur

    Inscrit:
    26 Oct 2014
    Messages:
    455
    Points:
    91
    Sexe:
    Homme
    Oui donc du coup tu augmentes que le 1 et le deuxième n'a rien vu qu'il n'est pas sélectionné (vu qu'il n'a aucun score).
     
  7. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    sinon tu peut faire plus simple:
    1er entité, commande fait une seul foi:
    summon falling_block ~ ~ ~ {CustomName:exemple}


    puis 10 fois ces 2 la:
    scoreboard players add @e[type=falling_block,name=exemple] score 1
    execute @e[type=falling_block,name=exemple,score_score=1] ~ ~ ~ summon falling_block ~ ~ ~ {CustomName:exemple}

    t'aura chaque falling block avec un score entre 1 et 11
     
  8. Touche158

    Touche158 Mineur

    Inscrit:
    26 Oct 2014
    Messages:
    455
    Points:
    91
    Sexe:
    Homme
    C'est un peu ce que j'ai dit.
     
  9. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    non, toit t'a dit un nom différent pour chaque block, pour toi, il faut donc 22 commandes, moi il en faut juste 3
     
  10. Touche158

    Touche158 Mineur

    Inscrit:
    26 Oct 2014
    Messages:
    455
    Points:
    91
    Sexe:
    Homme
    Oui mais toi tu veux le faire dans l'ordre inverse qu'il veut c'est a dire que le premier sera 11 et le dernier sera 1.

    Sinon solution qui marche :
    Code (cpp):

    Tu spawn le premier bloc =>
    /summon falling_block <x> <y> <z> {Tags:["blocsuivant","base"],Block:"minecraft:<ton_block>",Data:0,Time:1}
    et
    /execute @e[tag=base] ~ ~ ~ scoreboard players add @s pont 1

    Puis tu fais une fonction ou un programme qui tourne en boucle avec =>
    /execute @e[tag=blocsuivant] ~ ~ ~ scoreboard players operation @s pont = @e[r=1] pont
    /execute @e[tag=blocsuivant] ~ ~ ~ scoreboard players add @s pont 1
    /execute @e[tag=blocsuivant,score_pont=11] ~ ~ ~ summon falling_block ~ ~ ~1 {Tags:["blocsuivant"],Block:"minecraft:<ton_block>",Data:0,Time:1,DropItem:0}
    /execute @e[tag=blocsuivant,score_pont=11] ~ ~ ~ scoreboard players tag @s remove blocsuivant
     
    #10 Touche158, 17 Août 2017
    Dernière édition: 17 Août 2017
  11. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    sinon tu te fait pas chier hein, tu peut juste faire

    summon falling_block ~ ~ ~ {CustomName:exemple,Tags:["base"]}

    et 10 fois
    scoreboard players set @e[tag=base] score 12
    scoreboard players tag @e[tag=base] remove base
    scoreboard players remove @e[type=falling_block,name=exemple] score 1
    execute @e[type=falling_block,name=exemple,score_score_min=11] ~ ~ ~ summon falling_block ~ ~ ~ {CustomName:exemple,Tags:["base"]}

    et bon, je suis pas sure que sa le dérange énormément que les score soit invérsé
     
  12. Touche158

    Touche158 Mineur

    Inscrit:
    26 Oct 2014
    Messages:
    455
    Points:
    91
    Sexe:
    Homme
    J'suis pas sur que ça le dérange effectivement mais je suis pas sur que tu comprenne vraiment ce que j'ai écris aussi (et / ou ce que tu as écris vu que ça ressemble vite fait a du copier coller modifié sans comprendre, après c'est peut être seulement un ressenti et que tu sais ce que tu fais) car la du coup tous les blocs vont avoir un score de 11, hors ils veut que tous les blocs soient notés différemment.
     
  13. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    ce que j'ai mis, c'est que je leur met 12 une fois et je leur enlève 1 a chaque fois, donc au bout de 10 fois, le 1er aura 1 et le dernier 11
     
  14. Hubiug

    Hubiug Explorateur

    Inscrit:
    8 Août 2017
    Messages:
    88
    Points:
    65
    sinon, t'a qu'a tester en jeux, et oui je me suis trompé dans mes commande, il faut faire une fois

    scoreboard players set @e[tag=base] score 12
    scoreboard players tag @e[tag=base] remove base
    scoreboard players remove @e[type=falling_block,name=exemple] score 1

    a la fin sinon tu te retrouve avec des score de 11 a 2 et un qui n'en a pas
     
  15. SmoMeat

    SmoMeat Nouveau

    Inscrit:
    17 Août 2017
    Messages:
    2
    Points:
    0
    Sexe:
    Homme
    Bonjour à toi,
    Je vais essayer d’apporter une solution à ton deuxième problème étant donné que je ne comprends point le premier.

    Premièrement, Hubiug ta solution est complètement débile et tu aurais mieux fait de vérifié ton mécanisme avant d’induire en erreur une personne innocente.

    Bon... Bananos96 si tu veux que ton système soit manuel, comme j'en comprends t'as juste à faire ton summon du falling_block de te mettre à coté, puis de faire :
    Code (cpp):

    /scoreboard players set @e[type=falling_block,r=0] <score> 1
     
    Tu changes bien évidement la valeur pour chaque block. Si tu veux t'assurer que les falling_block ont bien le bon score, fait
    Code (cpp):

    /scoreboard objectives setdisplay sidebar <score>
     
    Si tu as tout bien fait, tu devrais avoir les 11 UUID de tes falling_block avec chacun leur score.


    --


    Sinon, il y a un moyen automatisé de le faire. Lors de ton summon, donne un TAG :
    Code (cpp):

    /summon falling_block ~ ~1 ~ {Tags:["NotVerifed"],NoGravity:1b,Block:"minecraft:stone",Data:0,Time:1,DropItem:0}
     
    Et mets ces trois commandes en continu.
    Code (cpp):

    /execute @e[tag=NotVerifed] ~ ~ ~ /scoreboard players add #maxid <score> 1
    /execute @e[tag=NotVerifed] ~ ~ ~ /scoreboard players operation @e[tag=NotVerifed] <score> = #maxid <score>
    /scoreboard players tag @e[tag=NotVerifed,score_<score>_min=0] remove NotVerifed
     
    Voici une vidéo montrant le résultat :
    Si tu as d'autre question, je t'invite a te rendre sur mon discord : https://discord.gg/a37FJJF

    SmoMeat Poutineux.
     

Partager cette page