Aller au contenu
  • 0

Cooldown qui ne fonctionne pas


Question

Posté(e)

Bonjours,

 

Je suis bloqué depuis quelque temps avec les cooldown c'est une horreur.

J'ai fais ceci :

 

command /timer [<number>]:
   permission: staff.cmd
   trigger:
       if arg 1 is set:
           set {time} to arg-1
           send "{@logo} Tu as régler le timer sur &7%arg-1% &aseconde(s)"
       else:
           send "{@logo} Commande : &7/timer <temps/s>"

on chat:
   if player don't have the permission "staff.cmd":
       set {_waited} to difference between {talk.%player%} and now
       if {_waited} is less than {time}:
           message "{@logo} Tu dois attendre &7%{time}% &aseconde(s) entre chaque message"
           cancel the event
       else:
           set {talk.%player%} to now

 

J'ai beau essayer je comprend pas pourquoi ça ne marche pas :/

4 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Quand j'envoie le message au joueur j'ai bien la valeur de la variable c'est juste que le cooldown marche pas (en gros je peux spam le chat)

  • 0
Posté(e)

En faite c'est tout simple il n'y a jamais de compairaison entre ta variable {time} et {_waited} psk {_waited} est définis comme un temps alors que {time} est définis comme un simple chiffre. Enfin je pense psk je ne voit que ca comme probleme.

 

J'ai réussi a le résoudre de 2 manière mais que j'aime pas trop toute les 2 mais si qqn trouve mieux ...

 

Voici les exemples:

(1) Entre le chiffre en option et rajoute le fait que ca soit en seconds dans ta comparaison:

[spoiler=TEST n°1]

options:
  logo:&8&l|&f&lTEST&8&l|&r
  time:5

on chat:
  if player don't have the permission "staff.cmd":
    set {_waited} to difference between {talk.%player%} and now
    if {_waited} < {@time} seconds:
      message "{@logo} Tu dois attendre &7%{time}% &aseconde(s) entre chaque message"
      cancel the event
    else:
      set {talk.%player%} to now

 

 

 

(2) Celui-ci est changeable en jeu:

Tu set ta variable a 0 min psk les minutes marche mais pas les seconds

et apres tu loop le nombre de fois l'arg-1 en ajoutant 1 seconds a chaque fois...

[spoiler=TEST n°2]

options:
  logo:&8&l|&f&lTEST&8&l|&r

command /timer [<int>]:
  permission: staff.cmd
  trigger:
    if arg 1 is set:
      set {time} to 0 minutes
      loop arg 1 times:
        add 1 seconds to {time}
      send "{@logo} Tu as réger le timer sur &7%{time}% &aseconde(s)"
    else:
      send "{@logo} Commande : &7/timer <temps/s>"

on chat:
  if player don't have the permission "staff.cmd":
    set {_waited} to difference between {talk.%player%} and now
    if {_waited} < {time}:
      message "{@logo} Tu dois attendre &7%{time}% &aseconde(s) entre chaque message"
      cancel the event
    else:
      set {talk.%player%} to now

 

 

PS: Si j'ai résolu ton probleme n'oublie pas les RÉSOLUE et le petit j'aime :eek:

  • J'aime 1
×
×
  • 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.