Zaphear Posté(e) le 17 novembre 2017 Posté(e) le 17 novembre 2017 Skript : 2.2 (Java 8) Add-Ons : Umbaska, skQuery, Skript, skRayFall, MundoSk Serveur : SpigotMC 1.8.8 J'aimerais avoir un skript avec une commande /clé et genre tout les 23h il peut refaire la commande Et le give de l'item je le mettrais moi même.
Healthpower Posté(e) le 17 novembre 2017 Posté(e) le 17 novembre 2017 Variables: {clé.%player%} = false command clé: trigger: if {clé.%player%} is false: set {clé.%player%} to true send "&aVous recevez 1 diamant !" to player give 1 diamond to player wait 23 hours set {clé.%player%} to false else: send "&cVous ne pouvez pas encore utiliser cette commande." to player
Zaphear Posté(e) le 18 novembre 2017 Auteur Posté(e) le 18 novembre 2017 Variables: {clé.%player%} = false command clé: trigger: if {clé.%player%} is false: set {clé.%player%} to true send "&aVous recevez 1 diamant !" to player give 1 diamond to player wait 23 hours set {clé.%player%} to false else: send "&cVous ne pouvez pas encore utiliser cette commande." to player J'y vais franc, tu peut mettre au send "&cVous ne pouvez pas encore utiliser cette commande." to player Dans la phrase le delai qu'il reste ?
Soufreur78 Posté(e) le 18 novembre 2017 Posté(e) le 18 novembre 2017 Variables: {clé.%player%} = false command clé: trigger: if {clé.%player%} is false: set {clé.%player%} to true send "&aVous recevez 1 diamant !" to player give 1 diamond to player wait 23 hours set {clé.%player%} to false else: send "&cVous ne pouvez pas encore utiliser cette commande." to player Et command /cle: trigger: if {cle.recup.%player%} is set: send "&cVeuillez patienter %{cle.recup.%player%}% seconde(s) avant de ré-utiliser cette commande." stop else: give stone to player send "&aTu as récupéré la clé !" set {cle.recup.%player%} to 86400 loop {cle.recup.%player%} times: #Un jour en seconde add -1 to {cle.recup.%player%} wait 1 second if {cle.recup.%player%} = 0: delete {cle.recup.%player%} Vous ne prenez pas en compte le fait que le serveur peut fermer et donc casser le temps d'attente. De plus ça va faire fonctionner le skript chaque seconde pendant 24 heures, le serveur va pas aimer si il y a plusieurs joueurs dans cette situation. Pour ce genre de chose on compare deux dates : command /clé: trigger: if {clé.%player%} is not set: set {clé.%player%} to now remove 23 hours from {clé.%player%} if difference between {clé.%player%} and now >= 23 hours: set {clé.%player%} to now send "&aVous recevez 1 diamant !" to player give 1 diamond to player else: set {_now} to "%difference between {clé.%player%} and now%" replace all "hours" with "heures" in {_now} replace all "hour" with "heure" in {_now} replace all "second" with "seconde" in {_now} replace all "seconds" with "secondes" in {_now} replace all "and" with "et" in {_now} send "&7&l[&6&lClé&7&l] &cVous avez déjà reçu votre récompense il y a seulement &e%{_now}%&c. Il faut attendre &e23 heures" to player
noftaly Posté(e) le 18 novembre 2017 Posté(e) le 18 novembre 2017 Et Vous ne prenez pas en compte le fait que le serveur peut fermer et donc casser le temps d'attente. De plus ça va faire fonctionner le skript chaque seconde pendant 24 heures, le serveur va pas aimer si il y a plusieurs joueurs dans cette situation. Pour ce genre de chose on compare deux dates : command /clé: trigger: if {clé.%player%} is not set: set {clé.%player%} to now remove 23 hours from {clé.%player%} if difference between {clé.%player%} and now >= 23 hours: set {clé.%player%} to now send "&aVous recevez 1 diamant !" to player give 1 diamond to player else: set {_now} to "%difference between {clé.%player%} and now%" replace all "hours" with "heures" in {_now} replace all "hour" with "heure" in {_now} replace all "second" with "seconde" in {_now} replace all "seconds" with "secondes" in {_now} replace all "and" with "et" in {_now} send "&7&l[&6&lClé&7&l] &cVous avez déjà reçu votre récompense il y a seulement &e%{_now}%&c. Il faut attendre &e23 heures" to player J'allais le dire xD Et aussi, un /reload ou un reload de ton script peut casser le délai
Zaphear Posté(e) le 18 novembre 2017 Auteur Posté(e) le 18 novembre 2017 Et Vous ne prenez pas en compte le fait que le serveur peut fermer et donc casser le temps d'attente. De plus ça va faire fonctionner le skript chaque seconde pendant 24 heures, le serveur va pas aimer si il y a plusieurs joueurs dans cette situation. Pour ce genre de chose on compare deux dates : command /clé: trigger: if {clé.%player%} is not set: set {clé.%player%} to now remove 23 hours from {clé.%player%} if difference between {clé.%player%} and now >= 23 hours: set {clé.%player%} to now send "&aVous recevez 1 diamant !" to player give 1 diamond to player else: set {_now} to "%difference between {clé.%player%} and now%" replace all "hours" with "heures" in {_now} replace all "hour" with "heure" in {_now} replace all "second" with "seconde" in {_now} replace all "seconds" with "secondes" in {_now} replace all "and" with "et" in {_now} send "&7&l[&6&lClé&7&l] &cVous avez déjà reçu votre récompense il y a seulement &e%{_now}%&c. Il faut attendre &e23 heures" to player Franchement merci !
Messages recommandés