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

Problèmes pour les command blocs

Discussion dans 'Mapping' créé par French_Redstoner, 18 Avr 2015.

  1. French_Redstoner

    Inscrit:
    6 Avr 2015
    Messages:
    10
    Points:
    10
    Sexe:
    Homme
    Bonjour,

    Je m'entraine un peu aux blocs de commande et là je cherche à faire un truc que je pensais simple :
    Summon deux bébés zombies avec deux noms "Bleu" et "Rouge". Puis je veux tester si près du zombie rouge il y a le zombie bleu, et si près du zombie bleu il y a le zombie rouge, donc en deux commandes.

    Pour l'instant j'ai fait le summon, et j'ai testé une commande qui ne fonctionne pas...

    /summon Zombie ~5 ~1 ~ {CustomName:"Bleu",CustomNameVisible:1,IsBaby:1,Equipment:[{},{id:leather_boots,Count:1,tag:{display:{color:2099455}}},{id:leather_leggings,Count:1,tag:{display:{color:2099455}}},{id:leather_chestplate,Count:1,tag:{display:{color:2099455}}},{id:leather_helmet,Count:1,tag:{display:{color:2099455}}}],PersistenceRequired:1,CanPickUpLoot:1b}

    /summon Zombie ~5 ~1 ~ {CustomName:"Rouge",CustomNameVisible:1,IsBaby:1,Equipment:[{},{id:leather_boots,Count:1,tag:{display:{color:16712965}}},{id:leather_leggings,Count:1,tag:{display:{color:16712965}}},{id:leather_chestplate,Count:1,tag:{display:{color:16712965}}},{id:leather_helmet,Count:1,tag:{display:{color:16712965}}}],PersistenceRequired:1,CanPickUpLoot:1b}

    Jusque là, rien de sorcier.
    Puis vient au tour du testfor.

    /execute @e[name=Rouge] ~ ~ ~ /testfor @e {CustomName:"Bleu"}
    Puis je met un comparateur derrière le command bloc.
    Mais il s'allume même quand il n'y a que le zombie bleu, alors que la commande execute est pour le zombie rouge...

    Help please :(
     
  2. tomaxed44

    tomaxed44 Mineur

    Inscrit:
    19 Mai 2013
    Messages:
    427
    Points:
    136
    Sexe:
    Homme
    ton testfor n'est pas bon, c'est
    /execute @e[name=Rouge] ~ ~ ~ /testfor @e[name=Bleu]
     
    • J'aime J'aime x 2
    • J'approuve J'approuve x 1
  3. French_Redstoner

    Inscrit:
    6 Avr 2015
    Messages:
    10
    Points:
    10
    Sexe:
    Homme
    Merci beaucoup ;) Saurais-tu comment faire en sorte que des mobs (ici des zombies), suivent un chemin précis sans aller n'importe où ?
     
  4. Aerosmite

    Aerosmite Mineur de Fer

    Inscrit:
    18 Nov 2014
    Messages:
    611
    Points:
    86
    Sexe:
    Homme
    J'ai jetté un petit coup d'œil à ton summon mais je n'ai pas vu d'erreur si j'ai le temps j'irais sur Sublim Text pour voir si tout est ok.
    Pour le testfor, tu devrais utiliser un double execute, car un testfor ne peut pas être exécuté par une entité.
    Essaye ça: execute @e[name=Rouge] ~ ~ ~ execute @e[name=Bleu,r=x] ~ ~ ~ setblock <x> <y> <z> minecraft:redstone_block
    Je teste si à x block (tu peux ajouter d'autres conditions) du zombie rouge il y a un zombie bleu. Si oui, il executera un setblock d'un block de redstone qui remplacera le rôle du comparateur.
     
  5. tomaxed44

    tomaxed44 Mineur

    Inscrit:
    19 Mai 2013
    Messages:
    427
    Points:
    136
    Sexe:
    Homme
    C'est très compliqué de faire ca, tout dépend du chemin que tu veut faire
     
  6. Calambiel

    Calambiel Résident de l'End

    Inscrit:
    5 Août 2014
    Messages:
    6 595
    Points:
    229
    Avec les stats on peut récolter les résultats du testfor sur une entité.
    Après c'est clair que ça complique pas mal la tâche alors qu'on peut faire beaucoup plus simple.

    Si tu ne veux pas utiliser l'IA des mobs il existe des tonnes de façons de faire un pathfinding avec des execute, c'est compliqué mais c'est faisable.
    L'exemple que je sors toujours car il est facile à comprendre est celui présenté par Dragnoz :
     
    • J'aime J'aime x 2
  7. French_Redstoner

    Inscrit:
    6 Avr 2015
    Messages:
    10
    Points:
    10
    Sexe:
    Homme
    Il y a un truc que je ne comprends pas...
    Je fais quelque chose du genre /execute @a[team=Bleu] ~ ~ ~ /testfor @e[name=Rouge,r=5] pour savoir si près d'un joueur bleu il y a un zombie rouge.

    Imaginons que nous sommes deux sur la map, un joueur l'est et l'autre non. Comment fais-je pour par exemple mettre un effet de poison sur la personne proche du zombie et pas à l'autre ?

    Merci.
     
  8. Tu fais un execute sur le zombie rouge qui donne l'effet poison à tous les joueurs bleus à proximité.
    Quelque chose comme : /execute @e[name=Rouge] ~ ~ ~ /effect @a[team=Bleu,r=5] 19 1 1
    Et en plus tu n'as besoin que d'un seul command block du coup. :3
     
    • J'approuve J'approuve x 1
  9. French_Redstoner

    Inscrit:
    6 Avr 2015
    Messages:
    10
    Points:
    10
    Sexe:
    Homme
    Merci à tous, j'ai opté pour un villageois qui ride un zombie, et qui, comme ils sont dans la même team, ne s'attaquent pas.
    Deux zombies différents avec chacun leur villageois, deux teams, et là ils s'attaquent.
    Puis je met un effet de potion de soin quand ils sont à r=1

    Maintenant le soucis, c'est que une fois le zombie mort, le villageois reste, car il a noIA, et tout et tout.
    Du coup je cherche un moyen de le buter une fois son zombie mort... Mais pour cela je dois détecter si le villageois est en train de ride son zombie, et je ne pense pas que cela soit faisable...

    Sinon j'ai pensé à tester si le zombie bleu avait un villageois ennemi près de lui mais pas de zombie ennemi, alors ça bute le villageois avec un /effect de instant damage, mais j'arrive pas à le traduire en commande...
     

Partager cette page