Rinitialiser un testfor

tomppouce

Aventurier
16 Juin 2013
5
0
1
26
Bonjour, j'ai un petit problème.
Je m'explique:
J'utilise la commande
testfor @p[team=bleu]
afin de détecter si le joueur le plus proche fais partie de l'équipe bleu. (Si oui la lumière s'allume) (Si non elle reste éteinte)
Mais le problème est que si la condition est rempli (ici être dans l'équipe bleu) elle ne se réinitialise pas.
Exemple: Joueur A = équipe bleu - Joueur B = équipe bleu
Joueur A appuie => Le courant s'active.
Puis Joueur B appuie => Courant reste allumé...
Donc si a la place de la lampe c'est un commande bloque avec un tp, le premier et tp mais pas le second.

sans_t16.png


Ps: La question est assez urgente étant donné que l'event est prévu dans peu de temps et c'est un problème au quelle je n'avait pas conscience.
 

tom72

Aventurier
17 Décembre 2013
15
1
3
31
Alors avec un testfor en général il faut utiliser une clock. Ce qui fait que le commandblock testera en permanence et dés que le comparateur s'allumera si la condition est remplie il s'éteindra tout de suite après, sauf si tu mets un rayon est que un joueur reste dans ce rayon.

Parce que avec ce que tu as fais c'est toi qui dit au commandblock quand tester et en gros tu lui dit de tester que une fois. Avec une clock il testera sans arrêt.
 

NervaL928

Redstonien, Mapmaker, codeur
31 Décembre 2013
50
5
3
26
Gers (32)
Ce que tu dois faire c'est pas un testfor, mais une simple commande tp. Si ton cmdBlock est situé en 100;64;100, tu rentres ça :
Code:
tp @p[x=100,y=64,z=100,r=2,team=Blue] x y z
En fait, dès que ce sera activé, ça téléportera le joueur le plus proche, parmi un rayon de 2 blocks autour du cmdBlock, et de la team "Blue"