[HELP] Commande blocs, téléportations et sélecteurs

Nekothika

Bucheron
25 Janvier 2016
20
1
16
Bonjour à tous et merci d'avoir cliqué, voici mon problème.

je suis en 1.8

Pour mon serveur je souhaite faire un QCM pour les nouveaux venus Par défaut dans le groupe Visiteur, en cliquant sur un bouton, ils seraient téléportés dans un QCM séparé en différentes pieces, dans chaque piece une question avec une bonne et une mauvaise réponse, s'il répond juste, il va dans la piece suivante et s'il répond mal, retour au spawn, pour l'instant, le QCM que j'ai mis en place fonctionne bien mais .. je ne sais pas comment faire au cas ou plusieurs joueurs viennent à faire le QCM en meme temps, dans chaque piece, les CB (Command Block) sont si éloignée les un des autres, que deux joueurs dans deux pieces différentes ne peuvent être affecté par les choix des autres. Mais comment faire pour que si un joueur se trouve dans le premier étage, pour qu'un autre cliquant sur le bouton aille dans l'etage 2 (les étages sont des copies sauf pour les coordonées dans les CB evidement) tant que le premier n'est pas sorti ? Et ainsi de suite, si les étage 1 et 2 sont occupés, ca doit envoyer le troisieme a l'etage 3 etc...

J'ai essayé de faire une sorte de "tapis roulant" qui déplacerait un bloc de redstone le long de différents CB, chacun amenant a un étage différent, mais arrivé a la fin du cycle,, et toujours entre le 7eme et 1er CB, il faut cliquer 2 fois sur le bouton :/

Enfin bref, merci de votre aide et si vous avez besoin d’être sur la map pour voir, envoyez moi un MP et je vous donnerai l'adresse du serveur
 
Dernière édition:

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Hum... Bon, je ne comprend pas trop ton problème :/
Voici ce que j'ai compris :
Tu as un QCM en plusieurs salles (une par question).
Dans chacune des salles se trouve une question avec une réponse fausse et une bonne réponse.
Ton problème est le suivant :
Tu ne veux pas que deux joueurs soient dans la même salles au même moment.
Voici ce que je peux te proposer si j'ai bien compris :
Dans le système de la bonne réponse, tu fais tout d'abord un test dans la salle suivante pour savoir si il y a joueur. Si il y en a un, tu lances un timer de 10 secondes pour le joueur qui bloque le circuit, au bout de 10 secondes, il est automatiquement tp au spawn et le joueur qui attendais à la salle suivante. Voici un schéma :
PG0Ukkw.png

je ne sais pas si c'est de ça que tu parlais, en tout cas, si tu as besoin de plus d'information pour les commandes, n'hésite pas ;)
 

Nekothika

Bucheron
25 Janvier 2016
20
1
16
C'est de ca que je parle, mais j'ai crée 7 étage différents pour justement éviter les temps d'attente (qui en plus grossirait drastiquement chaque piece, de plus je n'ai pas envie qu'un joueur doit recommencer le QCM a zero car l'autre joueur a mis x temps pour répondre. ^^"
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
7 étages avec la même question ? Dans ces cas là, tu tests la présence d'un joueur dans la salle 2.1 (niveau.étage), si il y en a un, tu tests la présence dans la salle 2.2, etc.
 

Nekothika

Bucheron
25 Janvier 2016
20
1
16
.1 et .2 représente étage 1 et étage 2 je suppose, alors dans ce cas, ca evite donc l'attente (sauf si les 7 salles #2 sont occupées mais j'en doute) et comment dois-je m"y prendre ? pour l'instant dans chaque CB se se trouve que /tp @p x y z
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Alors je vais te proposer deux solutions :
- L'un est de détecter dès que le joueur clic sur le bouton de démarrage du QCM si un joueur se trouve dans l'étage le plus bas. Si il y en a un, alors on détecte sur l'étage supérieur etc.
Le problème de cette astuce : Si le joueur quitte la jeu pendant le QCM, ça va mobiliser un étage pour rien.
- On fait la détection à chaque fin de questions.
Problème : Système beaucoup plus gros.

Je te laisse choisir le moyen que tu préfères.
Il me faudrait juste la version de ton serveur.
 

Nekothika

Bucheron
25 Janvier 2016
20
1
16
Je suis en 1.8

l'etage 1 est le plus bas en fait, je sais pas si ca a une importance, il se trouve pres de la bedrock et les etage suivant son au dessus.

Avant de choisir j'aimerais un résumé du "comment" de la solution 2, car pour la solution 1, je n'ai qu'a multiplier les étages xD

Voici pour l'instant ce qui est fait : http://prntscr.com/aul4uu

Chaque étage possède 6 salles, sur la gauche, c'est la meme chose sauf que j'ai remplacé tout les 98,98:1,98:2 par du 166 pour y voir plus clair tout en gardant la possibilité de //replace plus tard

En hauteur, je compte pas faire +, mais sur les coté, rien m'empeche de dupliquer les même 7 étages
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Hum... D'accord, je suis habitué à réfléchir avec les command blocks de la 1.9 donc ça va se compliquer un peu ^^"
Pour la solution 2, il faut détecter étage par étage la présence d'un joueur :

Si un joueur est détecter dans la salle 2.1 alors
détecter la présence d'un joueur dans la salle 2.2
Sinon, le téléporter dans la salle 2.1.

En gros, c'est ça.
Pour ce qui s'agit de la partie pratique, plusieurs moyen. Soit l'on passe par un armor stand qui s'occupe de la détection (plus simple, plus court, mais génération d'entité), soit on passe par une succession de testfor.
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
J'ai éditer mon message du dessus (je l'ai envoyé par erreur).
Je ne suis pas chez moi, donc je ne pourrai pas venir aujourd'hui sur ton serveur.