Résolu Give

Luca_008

Architecte en herbe
21 Novembre 2016
150
20
125
23
Bonsoir, bonsoir,

Alors voilà j'ai besoin d'aide pour une commande simple, mais je ne suis pas doué en command blocs :c alors je suis sur mon serveur est j'aurai besoin d'une commande qui permet de donner une boussole a un joueur seulement si il en a pas deja une dans son inventaire, serait-ce possible? Je travaille en 1.9
 
Commence d'abord par créer un objectif en dummy que j'appellerai ici Compass
Dans un command block repeat :
Code:
/scoreboard players set @a Compass 0
À suivre, en chain :
Code:
/scoreboard players set @a Compass 1 {Inventory:[{id:minecraft:compass}]}
Puis, dans un command block repeat à part :
Code:
/give @a[score_Compass=0] compass
 
  • J'aime
Reactions: TheQg100
Pour ce faire, on a besoin d'un scoreboard que l'on sommera boussole:
Code:
/scoreboard objectives add compass stat.drop.minecraft.compass

On met le score à 0 pour tout le monde:
Code:
/scoreboard players set @a compass 0

Puis on va mettre un score de 1 au scoreboard boussole à un joueur s'il possède une boussole.
Code:
/scoreboard players set @a compass 1 {Inventory:[{id:"minecraft:compass"}]}

On donne une boussole à tout joueur possédant un score de 0 à l'objectif boussole:
Code:
/give @a[score_compass=0] minecraft:compass

Enfin, On supprime toute les boussoles des joueurs qui ont jeté leur boussole pour faire les malins ;)
Code:
/execute @e[score_compass_min=1,score_compass=1] ~ ~ ~ /kill @e[name=item.item.compass,r=3]


M'enfin c'est une sécurité mais on peux toujours tricher en la mettant dans un coffre ou autre.

EDIT: Cette fois c'est toi qui m'a devancé @Oromis , mais mon système possède une sécurité :)
 
Dernière édition:
  • J'aime
Reactions: Oromis et Luca_008
Commence d'abord par créer un objectif en dummy que j'appellerai ici Compass
Dans un command block repeat :
Code:
/scoreboard players set @a Compass 0
J'ai mal compris une étape ou bien? Car ça me dit : No objective was found by the name 'compass'
Mais merci de m'aider :p
 
Pour ce faire, on a besoin d'un scoreboard que l'on sommera boussole:
Code:
/scoreboard objectives add compass stat.drop.minecraft.compass

Puis on va mettre un score de 2 au scoreboard boussole à un joueur s'il possède une boussole.
Code:
/scoreboard players set @a compass 2 {Inventory:[{id:"minecraft:compass"}]}

On donne une boussole à tout joueur possédant un score de 1 à l'objectif boussole:
Code:
/give @a[score_compass=0] minecraft:compass

Enfin, On supprime toute les boussoles des joueurs qui ont jeté leur boussole pour faire les malins ;)
Code:
/execute @e[score_compass_min=1,score_compass=1] ~ ~ ~ /kill @e[name=item.item.compass,r=3]

M'enfin c'est une sécurité mais on peux toujours tricher en la mettant dans un coffre ou autre.

EDIT: Cette fois c'est toi qui m'a devancé @Oromis , mais mon système possède une sécurité :)
Toute cette config ce fait à partir de command bloc dans l'ordre dans le quel tu as cité les code?
 
Toute cette config ce fait à partir de command bloc dans l'ordre dans le quel tu as cité les code?

Mis à part pour le:
Code:
/scoreboard objectives add compass stat.drop.minecraft.compass
que tu peux juste exécuter dans le chat.

Tu mets la commande suivante dans un command block repeat et celles qui suivent dans des command block chain. Assure toi que les flèches sur la texture de tes command block pointe vers le command block suivant.
 
Mis à part pour le:
Code:
/scoreboard objectives add compass stat.drop.minecraft.compass
que tu peux juste exécuter dans le chat.

Tu mets la commande suivante dans un command block repeat et celles qui suivent dans des command block chain. Assure toi que les flèches sur la texture de tes command block pointe vers le command block suivant.
Si j'ai une boussole dans mon inv en effet ça m'augmente mon score de deux, mais si jen ai pas je n'en recois pas :/