un petit besoin d'aide en command bloc

thalfeust

Aventurier
18 Août 2014
4
0
1
29
Bonjour à tous​

Voila je m’amuse à créer un petit compteur de kill streak pour mes amis à l'aide de Command blocs. En gros le compteur de kill streak est un scoreboard playerKillCount qui se remet à zéro quand la personne meurt. Bon jusque là rien de très impressionnant.
Cependant je souhaite que la sidebar n'affiche que le nombre de kills total et que le nombre de kill en court (durant la vie actuelle) soit représenté par le nombre de level du joueur. C'est sur ce dernier point que je bloque un peu. Si quelqu'un peu m’amener à comprendre comment réaliser cet effet je serais ravis de l'écouter.

Merci

PS: je joue en 1.7.10
 
Bonjour à tous

Voila je m’amuse à créer un petit compteur de kill streak pour mes amis à l'aide de Command blocs. En gros le compteur de kill streak est un scoreboard playerKillCount qui se remet à zéro quand la personne meurt. Bon jusque là rien de très impressionnant.
Cependant je souhaite que la sidebar n'affiche que le nombre de kills total et que le nombre de kill en court (durant la vie actuelle) soit représenté par le nombre de level du joueur. C'est sur ce dernier point que je bloque un peu. Si quelqu'un peu m’amener à comprendre comment réaliser cet effet je serais ravis de l'écouter.

Merci

PS: je joue en 1.7.10


Je vois bien que t'es nouveau donc je te le dis gentiment, la catégorie support... c'est fait pour posé des questions comme ça, donc ne poste pas de question dans général.
Alors premièrement jouer en 1.7 ne te facilitera pas du tout les choses... Mieux vaut aller en snapshot.
Bon premièrement tu supprime tout tes scoreboard playerKillCount et tu en recréer trois :
/scoreboard objective add KillTotal playerKillCount
et
/scoreboard objective add KillStreak playerKillCount
et
/scoreboard objective add Mort deathCount

Ensuite pour la sidebar (kill au total) tu fais juste un :
/scoreboard objective setdisplay sidebar KillTotal

Pour les kill streak tu fais une clock avec :
comme tu le sais déjà :
/scoreboard players set @a[score_Mort_min=1] KillStreak 0
Ensuite sur cette même clock il te faudra mettre :
Un command block par kill (donc par level d'xp donner) et en prévoir deux, tu saura pourquoi après.
/xp 1l @a[score_KillStreak_min=[COLOR=#ff0000]1[/COLOR],score_KillStreak=1,l=0,lm=0]
Ceci est l'exemple pour le 1er lvl (1er kill), mais je t'explique comment faire les autres, tu n'as que as recopier la commande dans d'autre commande block qui seront sur la même clock en changeant :
Les chiffres rouges : Le numéro du kill (le lvl d'xp aussi du coup), par exemple si tu fais la commande pour le 5eme kill tu écrira 5 a la place des chiffres rouges.
Les chiffres verts : Le numéro du kill -1, par exemple si tu fais la commande du 5eme kill tu écrira 4 à la place des chiffres verts (5 -1 = 4).

Voila, ensuite si tu es en 1.7 il te faudra utiliser le deuxieme command block que je t'ai dit de prévoir pour chaque kill :
/xp -1l @a[score_Mort_min=1,l=[COLOR=#ff0000]1[/COLOR],lm=1]
Voila encore l'exemple pour le premier kill, a toi de faire les autres (en tenant toujours compte du codage des chiffres rouges). Et puis fait la commande /gamerule keepInventory true
histoire que les joueurs garde leur stuff et surtout ne loot pas leur xp (l'xp leur est enlever grâce à la dernière commande que je t'ai montrer)

Voila j'espère t'avoir aidé si c'est un peu compliquer pour toi pause moi autant de question que tu veux, n'hésite surtout pas.
 
PREMIÈREMENT : Tu as raisons, je suis nouveau ici. Ainsi merci de m'avoir signalé mon erreur de lieu de topic, que j’essaierais de ne pas réitérer.
DEUXIÈMEMENT : Merci de m'aider pour mon problème je vais tester tout ça et surtout comprendre le tout.
En effet je débute dans le command bloc (une semaine), ainsi certains aspects de tes explications me sont difficilement compréhensibles (notamment les condition sur la commande /xp <>l). Quand j'aurais tout compris je re-posterais sur cette discussion.
ENCORE MERCI
 
PREMIÈREMENT : Tu as raisons, je suis nouveau ici. Ainsi merci de m'avoir signalé mon erreur de lieu de topic, que j’essaierais de ne pas réitérer.
DEUXIÈMEMENT : Merci de m'aider pour mon problème je vais tester tout ça et surtout comprendre le tout.
En effet je débute dans le command bloc (une semaine), ainsi certains aspects de tes explications me sont difficilement compréhensibles (notamment les condition sur la commande /xp <>l). Quand j'aurais tout compris je re-posterais sur cette discussion.
ENCORE MERCI


Ok si tu veux une explication précise sur quelque chose dis le moi.
 
HUM oui une petite explication serait utile.
J'aimerais comprendre ces lignes où tu écris (1).
 
Re, Bon je te conseil de laisser tomber ma première explication (à part pour le nombre de kill total de la sidebar, ça tu garde)
Sauf si tu as déjà fini le système, ce serait con de tout supprimer après tout ça ^^
Pour le kill streak, on va faire beaucoup plus simple.
Bon tu commences comme avant :
/scoreboard objective add Mort deathCount
/scoreboard objective add Kill playerKillCount

Ensuite une clock simple, alimentant plusieur command block (sur le même tics si possible) :
Un avec :
/scoreboard players set @a Mort 0
Un autre avec :
/xp -2147483648l @a[score_Mort_min=1]
Ensuite un avec :
/xp 1l @a[score_Kill_min=1]
Et enfin :
/scoreboard players set @a Kill 0

Bien sur n'oublie pas le /gamerule keepInventory true

Voila qui est fait, beaucoup plus simple n'est ce pas ? Bon ceci n'est pas de moi mais du Renegat, donc ne me remercie pas, remercie le (j'ai juste transformer son explication (disponible dans la conversation qu'il a créer) en commandes/ système).
J'espère que nous t'auront aidé et que tu ne t'ai pas trop casser la tête pour rien.
 
ME REVOILÀ

j'ai testé tout cela et je me suis rendu compte qu'il me fallait adapter le système selon mon cahier des charges.

Déjà pour les scoreboard je suis d'accord, cependant j'ai modifié la condition de remise à 0 de la variable KillStreak par
/scoreboard players remove @a[score_killStreak_min=1] killStreak 1
tout simplement parce-que si la personne fait un double kill très rapidement (plus rapidement que la clock) le deuxième kill n'est pas comptabilisé.

Bon le reste des modifications concerne mon cahier des charges. C'est à dire que le système laisse les levels après la mort jusqu’à ce que la personne sorte de sa base. En effet c'est seulement dans sa base qu'il peut consommer ses kill streaks.

VOILA VOILOU

merci de ton aide je vais surement reposter des discussions sur le forum afin de perfectionner mes systèmes.