Aller au contenu

Question

Posté(e)

Version de Minecraft : 1.16.4
Version de Skript : 2.5.3

Addons utilisés: aucun addons.

Type du skript : TicketFly avec bskyblock

Description du script :

Bonjour ou Bonsoir cher lecteur,

 

J'ai commencer à réaliser un skript qui lorsqu'on fait cliquer droit sur un papier nommé d'une certaine façon cela nous ajoute la permission "bskyblock.island.fly" pendant 1 heure.
J'ai réussi à ajouter la fonction qui dès lors que j'utilise un papier, il m'est retiré de mon inventaire.
J'ai fais un "if" qui check si la permission a déjà été donnée qui est censé "cancel event" si c'est le cas mais cela ne marche pas vraiment.
J'ai fais un autre "if" à l'intérieur de l'autre qui check si le gamemode du joueur est créatif et dans ce cas la il "cancel event".
J'ai ensuite fait un "else" que j'ai indenter au même niveau que le second "if" qui exécute les commandes suivantes:
image.png.cb3538b1998ba67a67a51b8e52a1a30b.png
Le problème que j'ai c'est que quand j'ai plus d'1 papiers je peux les spams clicks et en aucun cas il y en a qu'un seul qui s'utilise.
Je vous envoies mon skript.
Je n'ai pas d'erreur qui s'affiche dans la console ou de mon côté IG.

Merci beaucoup en avance de votre aide précieuse.

Bonne journée/soirée.
Cordialement,
PoLaN

ticket_fly.sk

4 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Salut !

Lorsqu'un joueur fait clique droit sur un papier, défini une variable comme "{TempFly::%player%}" sur n'importe quoi.

Ensuite, lorsqu'un joueur refait clique droit, vérifie si la variable est définie 🙂

N'oublies pas de la faire supprimer des que les 1h sont passés, tu peux faire sa avec un "wait 1 hour" ou avec une fonction.

Exemple :

# A mettre si tu comptes utiliser la fonction
# J'avais fais sa avant mais je me rappelle plus du code exact donc désolé pour les possibles erreurs :/
  
function Time(Sender: player, Time: text):
	set {Wait::%{_sender}%} to {_Time} parsed as a timespan
    wait {_Time}
	delete {TempFly::%{_Sender}%}

on click:
	if name of tool of player is "Fly 1H":
		if {TempFly::%player%} is not set:
			set {TempFly::%player%} to now
            # Ton code
              
            # Version sans fonction
            wait 1 hour                                    
            delete {TempFly::%player%}

			# Version avec fonction
            Time(player, "1 hour")
		else:
			send "Erreur : Attendez %difference between {TempFly::%player%} and now% avant de pouvoir réutiliser ce papier !" to player
            stop

 

  • 0
Posté(e)
Il y a 23 heures, PoLaN a dit :

J'ai oublier de répondre ici.
J'ai trouvé la solution en cherchant un peu.
Merci quand même de ton aide l'ami.

D'accord, je l'avais oublié ce message x)

Après avoir relu ce que je t'ai donnés, je me sens con car c'est terriblement mauvais :c

(J'ai bien mieux si tu veux et sa utilise pas de Wait)

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.