Pages :: 1
Hello Minecraftien et Minecraftienne
J'ai besoin de crée des mobs modélisé par un ressource pack custom, je /summon donc des Silverfish (pour qu'ils attaquent les joueurs) avec un ArmorStand avec un bloc sur sa tête qui chevauche le SilverFish :
/summon Silverfish ~ ~1 ~ {ActiveEffects:[{Id:14,Amplifier:0,Duration:2147483647}],Passengers:[{id:ArmorStand,Invisible:1,ArmorItems:[{},{},{},{id:"minecraft:sandstone_stairs"}]}]}
Ainsi, il ne reste plus qu'a modélisé le bloc de l'ArmorStand, maintenant le problème est que lorsque l'on tue le SilverFish, l'ArmorStand se retrouve immobile sur le sol, y'aurais t'il un moyen de la /kill si et seulement si le SilverFish est mort ?
Merci a tout ceux qui me lirons, et je l'espère, me répondrons
Dernière modification par ElexXVII (24/08/2016 23:21:19)
Hors ligne
Command Blocks rule the world !
Je ne suis pas un expert en commandes mais je pense qu'avec un testfor @e[type=Silverfish,x=...,y=...,z=...,r=...]
Ou /execute x y z /testfor @e[type=Silverfish,r=...]
Ou quelque chose dans le genre devrait faire l'affaire par contre je ne sais pas si le tag [type=lenomdumob] fonctionne donc il faudra chercher un peu
Hors ligne
Oui ça fonctionne le [type=Silverfish], mais je voudrais que l'ArmorStand disparaisse seulement lorsque le Silverfish est mort, hors, s'il est mort je ne peux pas effectuer d'action sur le Silverfish :/
Hors ligne
Command Blocks rule the world !
Pourquoi ne pas utiliser le tag "OnGround" ?
Si il est à "1b", l'armor stand est au sol donc plus sur le silverfish qui est par conséquent mort ! Il suffit alors d'éxecuter une commande en boucle qui détruit tous les armors stand à terre.
Hors ligne
Je ne connaissais pas ce "OneGround", je vais faire mes petites recherches, Merci
Hors ligne
Command Blocks rule the world !
Je n'est pas réussi a faire fonctionne le "OnGround", mais j'ai tout de même trouvé une solution,(Pour ceux qui cherchent comme moi), la voici :
Je crée un Scoreboard : /scoreboard objectives add ground dummy
Creation d'un scoreboard "ground"
Ensuite avec un Command Block en mode "repetition" : /scoreboard players set @e[type=ArmorStand,nom=TestAuSol] ground 1
Tout les ArmorStand que j'utilise, nommés "TestAuSol", ont 1 en score
Puis deux Command Block en "chaine" derrière le premier avec respectivement :
/execute @e[type=ArmorStand,nom=TestAuSol] ~ ~ ~ detect ~ ~-1 ~ minecraft:air -1 /scoreboard players set @p ground 0
Tout les ArmorStand avec un bloc d'air en dessous d'eux ont un score de 0, les autres (ceux au sol), ont toujours un score de 1
Et
Commande a effectuer avec ce selecteur :/... @e[score_ground=1,type=ArmorStand,nom=TestAuSol] ....
En utilisant ce selecteur, on selectionne tout "ArmorStand", au nom choisi, ici "TestAuSol", avec un score de 1, c'est-à-dire, ceux qui ne sont pas en l'air
Voila, j'espère aidé quelqu'un ^^ un jour, et merci pour aides qui m'ont été apportées
Hors ligne
Command Blocks rule the world !
En réutilisant tes scorebooard, tu peux optimiser tes commandes avec deux command block en mode repeat :
dans l'un : /scoreboard players set @e[type=ArmorStand] ground 1 {OnGround:1b}
et dans l'autre : /kill @e[score_ground=1]
Hors ligne
et dans l'autre : /kill @e[score_ground=1]
Il faudrait plutôt écrire @e[score_ground_min=1] ou @e[score_gorund_min=1,score_ground=1] (le 1er servant à sélectionner toutes les entités ayant un score de "ground" minimum de 1, et le 2e un score de "ground" de exactement 1.
(Si on fait /kill @e[score_ground=1], les entités avec un score de 0 seront aussi concernées )
Hors ligne
J'aime les citrons.
Merci, ça simplifie , en effet ;)
Hors ligne
Command Blocks rule the world !
Pages :: 1