Aller au contenu
Rio

inactif ✖ Demande skript /contrat

Messages recommandés

Version de Minecraft : 1.15. 2
Version de Skript : 2.5

Type du skript : skript sans Addons, qui utilise le chat pour envoyer des contrats 

Description du script :

Bonjour, je poste ici une demande de skript à qui voudra bien m'aider mdr, j'avais déjà poster un post similaire à celui ci mais c'était pour une aide en skript et non une demande de skript. 

Merci d'avance à ceux qui si aventureront ! 

Un skript de contrat qu'on peut envoyer à des joueurs avec du texte (en mode je donne une carotte à ce joueur et demain selon le contrat qu'on a établit il m'en rendra deux) 

 

/contrat help 

Infos

 

/contrat send <player> text du contrat 

J'envoie ducoup un contrat à quelqun et soit il accepte 

/contrat accept player 

Soit il refuse

/contrat decline player

Ensuite, si le contrat est acceptée, je peux le voir et les admins avec la perm peuvent également le voir lors d'un /contrat list

Ainsi je peux consulter mes 10 slots de contrats et en supprimer un si je le souhaite (une fois le contrat réalisé par exemple) avec /contrat remove 1 ou 2 ou 3 etc

 

J'ai pas de variable à donner ni quoi que ce soit car je compte abandonner le skript que j'ai déjà car il est pas assez optimiser donc je vous laisserai comme bon vous semble choisir vos variables. 

 

Exemple du /contrat list

->  contrat 1: <pseudo du joueur avec qui je réalise ce contrat>: texte du contrat 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Il y a 16 heures, Rio a dit :

Et bien que vous me le fassiez (svp) car j'ai déjà fait ce skript mais il ne me plaît pas car absolument pas opti.. Merci d'avance 🙂

Justement donne nous le code

Partager ce message


Lien à poster
Partager sur d’autres sites

Et bien, si vous insister mais ne vous fier pas à lui car, il ne représente plus le skript que je souhaite aujourd’hui, il n'y a pas le texte par exemple 🙂 mais si vous le voulez:

on first join:
	set {contrats.nombre.%player%} to 0

command /contrat [<text>] [<player>]:
	aliases: contrats
	permission message: &cVous n'avez pas accès à cette commande.
	permission: contrat.use
	trigger:
		if arg-1 is not set:
			send ""
			send "&e&lCommandes &6&lContrats"
			send "&e» &6/contrat send <player>"
			send "&e» &6/contrat accept <player>"
			send "&e» &6/contrat decline <player>"
			send "&e» &6/contrat remove <player>"
			send "&e» &6/contrat list"
			send ""
		if arg-1 is "help":
			send ""
			send "&e&lCommandes &6&lContrats"
			send "&e» &6/contrat send <player>"
			send "&e» &6/contrat accept <player>"
			send "&e» &6/contrat decline <player>"
			send "&e» &6/contrat remove <player>"
			send "&e» &6/contrat list"
			send ""
		if arg-1 is "send":
			if arg-2 is set:
				if arg-2 is not "%player%":
					if "%{contrats.list.%player%::*}%" contains "%arg-2%":
						send "&c» %arg-2% est déjà dans votre liste de contrats."
					else:
						if "%{contrats.attente.%player%::*}%" contains "%arg-2%":
							send "&e» Vous avez déjà envoyé une demande de contrat à %arg-2%."
						else:
							send "&a» Votre demande de contrat a bien été envoyé à %arg-2%." to player
							send "&e» %player% vous a envoyé une demande de contrat." to arg-2
							add "%arg-2%" to {contrats.attente.%player%::*}
				else:
					send "&c» Vous ne pouvez pas envoyer de demande de contrat à vous-même."
			else:
				send "&c» Vous devez préciser un joueur."
		if arg-1 is "accept":
			if arg-2 is set:
				if arg-2 is not "%player%":
					if "%{contrats.attente.%arg-2%::*}%" contains "%player%":
						send "&a» Vous avez accepté la demande de contrat de %arg-2%." to player
						send "&a» %player% a accepté votre demande de contrat." to arg-2
						remove "%player%" from {contrats.attente.%arg-2%::*}
						add "%arg-2%" to {contrats.list.%player%::*}
						add "%player%" to {contrats.list.%arg-2%::*}
						add 1 to {contrats.nombre.%player%}
						add 1 to {contrats.nombre.%arg-2%}
					else:
						send "&c» %arg-2% ne vous a pas envoyé de demande de contrat."
				else:
					send "&c» Vous ne pouvez pas établir de contrat avec vous-même."
			else:
				send "&c» Vous devez préciser un joueur."
		if arg-1 is "decline":
			if arg-2 is set:
				if arg-2 is not "%player%":
					if "%{contrats.attente.%arg-2%::*}%" contains "%player%":
						send "&a» Vous avez refusé la demande de contrat de %arg-2%." to player
						send "&a» %player% a refusé votre demande de contrat." to arg-2
						remove "%player%" from {contrats.attente.%arg-2%::*}
					else:
						send "&c» %arg-2% ne vous a pas envoyé de demande de contrat."
				else:
					send "&c» Vous ne pouvez pas établir de contrat avec vous-même."
			else:
				send "&c» Vous devez préciser un joueur."
		if arg-1 is "remove" or "delete":
			if arg-2 is set:
				if arg-2 is not "%player%":
					if "%{contrats.list.%player%::*}%" contains "%arg-2%":
						send "&a» Vous avez retiré %arg-2% de vos contrats." to player
						send "&a» %player% vous a retiré de ses contrats." to arg-2
						remove "%arg-2%" from {contrats.list.%player%::*}
						remove "%player%" from {contrats.list.%arg-2%::*}
						remove 1 from {contrats.nombre.%player%}
						remove 1 from {contrats.nombre.%arg-2%}
					else:
						send "&c» Aucun contrat n'existe entre %arg-2% et vous."
				else:
					send "&c» Vous n'avez aucun contrat établit avec vous-même."
			else:
				send "&c» Vous devez préciser un joueur."
		if arg-1 is "list":
			if arg-2 is not set:
				if {contrats.nombre.%player%} = 0:
					send "&c&o» Vous n'avez aucun contrat enregistré. Pour plus d'informations /contrat help."
				if {contrats.nombre.%player%} > 0:
					send "&e&lContrats &6&lEnregistrés"
					loop {contrats.list.%player%::*}:
						message "&e» &6%loop-value%"
			if arg-2 is set:
				if arg-2 is not "%player%":
					if {contrats.nombre.%arg-2%} = 0:
						send "&c&o» %arg-2% n'a aucun contrat enregistré. Pour plus d'informations /contrat help."
					if {contrats.nombre.%arg-2%} > 0:
						send "&e&lContrats &6&lEnregistrés &7&o(%arg-2%)"
						loop {contrats.list.%arg-2%::*}:
							message "&e» &6%loop-value%"
				else:
					if {contrats.nombre.%player%} = 0:
						send "&c&o» Vous n'avez aucun contrat enregistré. Pour plus d'informations /contrat help."
					if {contrats.nombre.%player%} > 0:
						send "&e&lContrats &6&lEnregistrés"
						loop {contrats.list.%player%::*}:
							message "&e» &6%loop-value%"
		if arg-1 is "reset":
			send "&a» Vous n'avez plus aucun contrats."
			set {contrats.nombre.%player%} to 0
			clear {contrats.list.%player%}
			clear {contrats.attente.%player%}

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour @Rio, je t'ai modifié quelques trucs dans ton skript qui n'est pas grand chose mais ça évitera quelques bugs.

- Suppresion de ta variable -> {contrats.nombre.%player%} et replacer par size of  {contrats.list.%player%::*}

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Cordialement @Px_MgeaFR

Partager ce message


Lien à poster
Partager sur d’autres sites
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.