Aller au contenu
  • 0

Skript d'AFK automatique


Question

Posté(e)

Bonjour à tous,

 

Je débute dans le Skript et j'ai un petit problème avec une fonction fraîchement créé !

 

command /busy:
   permission: busy.use
   permission message: &cErreur : Vous n'avez pas la permission !
   trigger:
       if {afk.%player%} is true:
           set {afk.%player%} to false
           broadcast "&a%player% &fn'est plus &cAFK &f!"
           execute console command "stablist del %player%"
       else:
           set {afk.%player%} to true
           broadcast "&a%player% &fest désormais &cAFK &f!"
           execute console command "stablist setprefix %player% &4[AFK]&r"

on any movement:
   if player has permission "busy.use":
       if {afk.%player%} is true:
           set {afk.%player%} to false
           broadcast "&a%player% &fn'est plus &cAFK &f!"
           execute console command "stablist del %player%"
   else:
       if player has permission "busy.use":
           if {afk.%player%} is false:
               wait 10 seconds (Ici c'est pour mes tests)
               set {afk.%player%} to true
               broadcast "&a%player% &fest désormais &cAFK &f!"
               execute console command "stablist setprefix %player% &4[AFK]&r"

 

Donc actuellement tout fonctionne et pour décrire ceci :

- La commande /busy nous met en AFK

- Retaper la commande /busy nous enlève l'AFK (elle a un peu perdu de son interêt mais bref)

- Si on est AFK et que l'on bouge, on est plus AFK

 

Mon problème est la dernière fonction ou je souhaiterais qu'après un certains délai, l'AFK s'active de façon automatique, mais hélas il ne ce passe rien ^^

 

Merci d'avance pour votre aide !

9 réponses à cette question

Messages recommandés

  • 0
Posté(e)

as tu essayer de set la position du joueur toute les 10 min ou moins pour ensuite apres 15 secondes ou plus si le joueur est toujours a la meme position alors sa le met en afk , si tu n'y arrives pas je te le fait si tu le souhaite ;)

  • 0
Posté(e)
as tu essayer de set la position du joueur toute les 10 min ou moins pour ensuite apres 15 secondes ou plus si le joueur est toujours a la meme position alors sa le met en afk , si tu n'y arrives pas je te le fait si tu le souhaite ;)

Ne marchera pas.

  • 0
Posté(e)

je vien d'essayer regarde :

command /afk [<integer>] [<text>]:
   trigger:
       if player has permission "afk":
           if {afk.%player%} is not set:
               set {afk.%player%} to false
           if {afk.%player%} = false:
               set {afk.%player%} to true
               if arg 1 is not set:
                   if arg 2 is not set:
                       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7n'est plus disponible"
               if arg 1 is set:
                   if arg 2 is not set:
                       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7n'est plus disponible &bTemps &f: &7%arg 1%"
                       set {temps.afk.%player%} to arg 1
               if arg 1 is set:
                   if arg 2 is set:
                       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7n'est plus disponible%nl%&bTemps &f: &7%arg 1% &7min    &bRaison&f(&bs&f) : &7%arg 2%"
                       set {temps.afk.%player%} to arg 1
           else if {afk.%player%} = true:
               set {afk.%player%} to false
               broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7est maintenant disponible"

On any move:
   if {afk.%player%} = true:
       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7est maintenant disponible"
       set {afk.%player%} to false

On break:
   if {afk.%player%} = true:
       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7est maintenant disponible"
       set {afk.%player%} to false

On chat:
   if {afk.%player%} = true:
       broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%player% &7est maintenant disponible"
       set {afk.%player%} to false


On quit:
   if player has permission "afk":
       set {afk.%player%} to false

Every minutes:
   loop all players:
       if loop-players has permission "afk":
           if {afk.%loop-player%} = true:
               remove 1 from {temps.afk.%loop-player%}
               if {temps.afk.%loop-player%} = 0:
                   broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%loop-player% &7est maintenant disponible"
                   set {afk.%loop-player%} to false



Every 30 seconds:
   loop all players:
       if loop-player has permission "afk":
           set {location.afk.%loop-player%} to location at loop-player
           wait 3 minutes
           if {location.afk.%loop-player%} = location at loop-player:
               broadcast "&f&l[&b&lAFK&f&l] &7Le joueur &b%loop-player% &7n'est plus disponible"
               set {afk.%loop-player%} to true

  • 0
Posté(e)

Ou alors, plus simple normalement ça marche :

every 1 second:
   loop all players:
       add 1 to {afktime.%loop-player%}
       if {afktime.%loop-player%} = to 60: #tu peux remplacer 60 par le temps pour être afk
           set {afk.%loop-player%} to true
           #...

on any move:
   set {akftime.%player%} to 0

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