Aller au contenu
  • 0

Skript pour ind'invidualiser deux joueurs dans une variable chacun


Question

Posté(e)

Bonjour, je cherche un moyen d'individualiser deux joueurs dans une variable chacun . Je vous explique le code : en gros, ce serais un 1v1 et il faudrait que par exemple je rejoins et bien cela me mette dans une variable et dès qu'un autre joueur exécute la commande il soit dans une variable différente . exemple :

command /1v1file:
	aliases: 1v1
	executable by: players
	trigger:
		loop all players:
			if {1v1.attente} is not set:
				set {1v1.attente} to true
				add 1 to {1v1.compte.%player%}
				( il faudrait que a ce moment là il y ait comme une variable {1v1.joueur1} qui soit le joueur et quand un second joueur rejoint cela creer cette variable {1v1.joueur2} )
				message "&7[&aPratice&7] &6%player% vient de rejoindre la file d'attente pour &fle Pratice &c(%{1v1.compte.%player%}%/2)" to loop-player
				set slot 8 of loop-player to bed named "&cQuitter la file d'attente"
				
				if {1v1.compte.%player%} is equal to 2:
					make player execute "/lancer1v1"

Merci d'avance . WarKay

2 réponses à cette question

Messages recommandés

  • 0
Posté(e) (modifié)

Bonsoir, de ce que je viens de voir c'est plus à mon sens une demande de Skript, car j'ai dû mal à me familiariser avec ton bout de code (Surtout concernant le loop qui ne mène à pas grand chose si ce n'est rien ^^)

Il serait aussi bon de connaître ta version de Skript ainsi que de Minecraft (/version => Spigot/Bukkit/PS | /version Skript)

Merci, bonne soirée

EDIT :

 

command /1v1file:
	aliases: 1v1
	executable by: players
	trigger:
		if {wait1v1::*} contains player: #On regarde si le joueur est pas déjà dans la liste d'attente.
			send "&cVous êtes déjà présent dans la file d'attente" to player
			stop #Si c'est le cas : stop
		else:#Si n'est pas présent dans la file
			if (size of {wait1v1::*}) is less than 1: #Si il n'y a personne dans la file...
				send "&bVous êtes désormais en file d'attente !"
				add player to {wait1v1::*}
			else: #Si il y a un joueur dans la file..
				add player to {wait1v1::*} #On ajoute le joueur à la file d'attente
				set {_against} to a random element out of {wait1v1::*} #Ici, on prends un joueur aléatoire de la file d'attente
				while {_against} is player: #Si le joueur aléatoirement choisis est le joueur inscrit, alors ça refait une boucle..
					set {_against} to a random element out of {wait1v1::*}
				send "&bVous allez affronter %{_against}%" to player #Petit message de courtoisie
				send "&bVous allez affronter %player%" to {_against}
				set {1v1.%player%} to {_against} #Cette variable là sortira donc le pseudo du joueur X -Celui choisis aléatoirement est définit plus haut comme "{_against}"
				set {1v1.%{_against}%} to player #Celle ci stockera l'exécuteur de la commande -Ou tout du moins l'exécuteur ayant eu une place directement-
				remove {_against} from {wait1v1::*} #On les retire de la liste d'attente
				remove player from {wait1v1::*} #On les retire de la liste d'attente
				(...) #Ici, la téléportation, etc etc


Voici un bout de ce que j'ai refaits avec ta base de développement, en détaillant / expliquant au mieux (Les textes écrits après les # sont des "commentaires" ils ne sont pas lut lors de l'exécution ; Tu as donc tes deux variables qui contiennent Joueur 1 / 2 et un bout de code un peu plus pratique 🙂
Skript testé et fonctionnel en Skript 2.3.6 |Spigot 1.13.2 

Modifié par ThibaudPst
Modification du message
  • 0
Posté(e)

Bonjour,

Le topic est inactif depuis plus de 7 jours. Je lock. En espérant que l'aide ci-dessus te soit utile.

Si tu souhaites rouvrir le topic, merci de me contacter en message privé.

Cordialement,

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.