4 votes

Comment retarder une commande

J'ai essayé :

/tp @e[type=ArmorStand,T=100] ~ ~1 ~

Ensuite :

/tp @e[type=ArmorStand,Time=100] ~ ~1 ~

Je suis bloqué.

Je suis à la recherche d'une solution basée uniquement sur le blocage des commandes.

6voto

GamrCorps Points 274

Vous essayez donc de faire @e[T=100] y @e[Time=100] mais T y Time ne sont pas des arguments de sélecteur, c'est pourquoi je vais vous montrer comment créer un argument de minuterie personnalisé.


Cette solution ne fonctionne que sur Minecraft 1.9 et plus !

Cela est possible grâce aux objectifs du tableau de bord. Vous devrez faire ce qui suit pour chaque commande que vous souhaitez retarder . Notez que cela ne fonctionne également que pour les commandes exécutées sur des entités.


Comment faire :

  1. Créer un objectif de tableau de bord pour retenir les retards (j'utiliserai time à titre d'exemple)

    /scoreboard objectives add time dummy
  2. Créez une disposition de bloc de commande comme suit : Repeating > Chain > Conditional Chain

  3. Placez les commandes suivantes dans chaque bloc de commande :

    • Répéter le bloc de commande :

      /scoreboard players add @e[score_time_min=1] time 1
    • Bloc de commande en chaîne 1 : Placez ici votre commande différée. Par exemple :

      /tp @e[type=ArmorStand,score_time_min={delay}] ~ ~1 ~
    • Bloc de commande en chaîne 2 :

      /scoreboard players set @e[score_time_min={delay}] time 0
  4. Lancez le délai en exécutant la commande suivante :

    /scoreboard players set {entity} time 1

Quelques points à noter :

  • Remplacer {delay} avec le délai souhaité en ticks, plus un. Par exemple, si vous voulez un délai de 5 secondes, vous devez mettre 101 depuis 5sec * 20 tick/sec + 1 = 101 .
  • Remplacer {entity} avec le sélecteur de l'entité pour laquelle vous souhaitez exécuter la commande. Par exemple, @e[type=ArmorStand,name=Bob] .
  • La commande dans le deuxième bloc de commande est à votre charge. Sachez simplement que vous devez exécuter la commande avec {entity} ciblée et vous devez avoir score_time_min={delay} dans le sélecteur d'entité de cette commande.

Si vous voulez un exemple complet, voici les commandes des blocs de commande pour téléporter un ArmorStand par le nom de "Bob" à 5 blocs dans les airs 5 secondes après l'exécution de la commande de délai de démarrage (étape n°4 ci-dessus) :

/scoreboard players add @e[score_time_min=1] time 1
/tp @e[type=ArmorStand,name=Bob,score_time_min=101] ~ ~1 ~
/scoreboard players set @e[score_time_min=101] time 0

N'hésitez pas à commenter cet article si vous avez des questions ! J'essaierai d'y répondre le plus rapidement possible !

Pour plus d'informations sur la manière de formater les sélecteurs de cible et les arguments, voir la rubrique Wiki Minecraft .

-3voto

Selon que vous souhaitez un délai de quelques secondes ou de quelques minutes, vous pouvez utiliser une chaîne de répétiteurs.

-3voto

Tristan Keener Points 1

Si vous avez besoin de trop de répéteurs pour effectuer votre délai, remplissez simplement la zone de répéteurs dont vous avez besoin. Si cela prend trop de place, il faut faire avec.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X