Aller au contenu

Messages recommandés

Posté(e) (modifié)

Version de Minecraft : 1.8.9 jusqu'à la 1.13
Version de Skript : 1.8.9

Type du skript : Définir un cooldown avant de pouvoir refaire la commande

Description du script :

Bonjour;Bonsoir

Je tiens à dire qu'avant de venir demandé de l'aide j'ai bien cherché sur pas mal de forum mais je n'ai pas trouvé ce qu'il me fallait, j'ai trouvé beaucoup de choses similaires mais pas 100% de ce qu'il me fallait.

Alors j'ai crée une commande /pub, cette commande sera disponible pour les Youtubeurs et Partenaire, le but de cette commande c'est de faire en sorte que les Youtubeurs ce fassent de la pub sur notre serveur.

Le Youtubeur devra exécuter la commande /pub suivi de son message, et donc ça le postera sous forme de broadcast qui pourra être vu par tous les connectés sur le serveur. 

Voici le début de mon Skript

command /pub <text>:
	permission: use.pub
	permission message: &c&l  Tu ne détiens pas le grade pour effectuer cette commande|| il te faut le grade &fYouT&cubeur ou &dPartenaire &e(/yt)
	trigger:
		broadcast "&c&l[&f&lYOUT&c&lUBE] &b&l%player% &f&l: &c➡ &a&l%arg 1%"

Et donc après que le Youtubeur es fait cette commande je souhaiterai qu'il puisse la ré-effectuer dans 24 heures, donc en gros un cooldown de 24h.

Le soucis c'est que je ne sais point comment faire aha.

 

Je vous remercie d'avance de l'aide que vous pourrez m'apporter :)

Cordialement

Modifié par Zarkano
Posté(e)

Bonjour,

on server start:
	delete {cooldown::*}

command /pub [<text>]:
	permission: use.pub
	permission message: &c&l ➡ Tu ne détiens pas le grade pour effectuer cette commande|| il te faut le grade &fYouT&cubeur ou &dPartenaire &e(/yt)
	trigger:
  		if arg-1 is set:
  			{cooldown::*} contain executor:
				broadcast "&c&l[&f&lYOUT&c&lUBE] &b&l%player% &f&l: &c➡ &a&l%arg 1%"
  				set {cooldown::%player%} to true
  			else:
  				send "&eVous devez patienter 24 heures avant de réexuter cette commande.
  		else:
  			send "&cUtilisation: /pub <Texte>"

Ca ne sera pas exactement 24 heures
Mais comme (normalement) les Serveurs redémarrent tout les jours, les youtubeurs devront faire 1 fois la commande toute les 24 heures, en gros
Il n'y a pas de réel cooldown ^^

Lorsque le Serveur démarre, ça va tout simplement retirer le cooldown de tout le monde

Posté(e) (modifié)

Il nous faudrait ta version de skript, s'il te plait ! /ver skript

Si tu as Skript 2.2-dev34 ou plus, alors tu peux simplement créer un cool down, de cette manière :

command /commande:
    cooldown: a day # 1 jour de cooldown
    cooldown storage: {commande::cooldown::%player%} # Variable ou le cooldown sera stocké (pour que si jamais le serveur redémarre ou skript se reload, le cooldown soit encore actif)
    cooldown message: Hey ! Désolé, mais c'est une pub par jour... Réessaye dans %remaining time% !
    cooldown bypass: commande.cooldown.bypass
	trigger:
		message "héhé"

 

Si tu as une version de skript antérieure, alors il fallait regarder dans les scripts de bases qui se créent lorsque tu lance skript pour la première fois. Regarde celui-ci :

command /cake:
	description: Recevoir un gâteau ! (tu peux la faire qu'une fois par jour)
	trigger:
		# Regarde le temps écoulé depuis que l'utilisateur a fait la commande pour la dernière fois
		set {_waited} to difference between {cake::%player%::lastused} and now
		# on regarde donc s'il a fait la commande dans les derniers 24h
		if {_waited} is less than 24 hours:
			message "Tu dois attendre %difference between 24 hours and {_waited}% avant de pouvoir refaire cette commande !"
			stop
			
		# Fait l'action de la commande
		give a cake to the player
		
		# Remet le cooldown à 0
		set {cake::%player%::lastused} to now

 

Modifié par noftaly
Posté(e)
Il y a 3 heures, KneaXy a dit :

Bonjour,


on server start:
	delete {cooldown::*}

command /pub [<text>]:
	permission: use.pub
	permission message: &c&l ➡ Tu ne détiens pas le grade pour effectuer cette commande|| il te faut le grade &fYouT&cubeur ou &dPartenaire &e(/yt)
	trigger:
  		if arg-1 is set:
  			{cooldown::*} contain executor:
				broadcast "&c&l[&f&lYOUT&c&lUBE] &b&l%player% &f&l: &c➡ &a&l%arg 1%"
  				set {cooldown::%player%} to true
  			else:
  				send "&eVous devez patienter 24 heures avant de réexuter cette commande.
  		else:
  			send "&cUtilisation: /pub <Texte>"

Ca ne sera pas exactement 24 heures
Mais comme (normalement) les Serveurs redémarrent tout les jours, les youtubeurs devront faire 1 fois la commande toute les 24 heures, en gros
Il n'y a pas de réel cooldown ^^

Lorsque le Serveur démarre, ça va tout simplement retirer le cooldown de tout le monde

Merci de ta réponse mais dans ton Skript le Cooldown de 24H il est indiqué ou pas ? Car oui on a le message " Tu ne pourra faire cette commande que dans 24h " mais dans Skript je ne vois pas le délai de 24H.

Posté(e)
Il y a 2 heures, noftaly a dit :

Il nous faudrait ta version de skript, s'il te plait ! /ver skript

Si tu as Skript 2.2-dev34 ou plus, alors tu peux simplement créer un cool down, de cette manière :


command /commande:
    cooldown: a day # 1 jour de cooldown
    cooldown storage: {commande::cooldown::%player%} # Variable ou le cooldown sera stocké (pour que si jamais le serveur redémarre ou skript se reload, le cooldown soit encore actif)
    cooldown message: Hey ! Désolé, mais c'est une pub par jour... Réessaye dans %remaining time% !
    cooldown bypass: commande.cooldown.bypass
	trigger:
		message "héhé"

 

Si tu as une version de skript antérieure, alors il fallait regarder dans les scripts de bases qui se créent lorsque tu lance skript pour la première fois. Regarde celui-ci :


command /cake:
	description: Recevoir un gâteau ! (tu peux la faire qu'une fois par jour)
	trigger:
		# Regarde le temps écoulé depuis que l'utilisateur a fait la commande pour la dernière fois
		set {_waited} to difference between {cake::%player%::lastused} and now
		# on regarde donc s'il a fait la commande dans les derniers 24h
		if {_waited} is less than 24 hours:
			message "Tu dois attendre %difference between 24 hours and {_waited}% avant de pouvoir refaire cette commande !"
			stop
			
		# Fait l'action de la commande
		give a cake to the player
		
		# Remet le cooldown à 0
		set {cake::%player%::lastused} to now

 

Bonjour

J'ai essayer le skript avec le /cake, j'ai tout remplacer et ça marche à merveille donc déjà je t'en remercie énormément. J'aurai aimer savoir si ce message pourrais être changé pour que l'heure et les minutes soit en Français ( le dernier message que tu vois sur moi skript ) " Tu dois attendre 23 hours and 59.78 minutes " j'aurai voulu le mettre en Français si possible 😄

 

2019-08-24_15.10.41.png

Posté(e)
Il y a 3 heures, Zarkano a dit :

Merci de ta réponse mais dans ton Skript le Cooldown de 24H il est indiqué ou pas ? Car oui on a le message " Tu ne pourra faire cette commande que dans 24h " mais dans Skript je ne vois pas le délai de 24H.

Derien ! Oui, le 24h c'est "a day"

Il y a 3 heures, Zarkano a dit :

Bonjour

J'ai essayer le skript avec le /cake, j'ai tout remplacer et ça marche à merveille donc déjà je t'en remercie énormément. J'aurai aimer savoir si ce message pourrais être changé pour que l'heure et les minutes soit en Français ( le dernier message que tu vois sur moi skript ) " Tu dois attendre 23 hours and 59.78 minutes " j'aurai voulu le mettre en Français si possible 😄

 

2019-08-24_15.10.41.png

Tu peux rajouter ça juste avant d'envoyer le message: replace all "hour" with "heure" in {_waited}

  • J'aime 1
Posté(e)
il y a 10 minutes, noftaly a dit :

Derien ! Oui, le 24h c'est "a day"

Tu peux rajouter ça juste avant d'envoyer le message: replace all "hour" with "heure" in {_waited}

Il me répondais pour le coup 😛 

Posté(e)
il y a une heure, KneaXy a dit :

Il me répondais pour le coup 😛 

Ah désolé, j'avais pas vu ton message 🤣 t'a du le poster pendant que j'écrivais le miens ^^

Posté(e)
Il y a 3 heures, noftaly a dit :

Ah désolé, j'avais pas vu ton message 🤣 t'a du le poster pendant que j'écrivais le miens ^^

Ouais 😄 

  • 1 mois après...
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.