Aller au contenu
  • 0

Timespan en francais qui ne défile pas


Question

Posté(e)

Enfaite j'ai encore un problème.

Quand je suis mute pendant 50 secondes

et que je parle dans le chat ça bloque a 50 secondes et ça ne fait pas 49;48;47;46 ....

 

command /mute [<offlineplayer>] [<timespan>]:
description: Réduire au silence un joueur.
usage: /mute <joueur> <durée>
permission: sanction.mute
permission message: {@noperm}
aliases: emute, silence, esilence
trigger:
if arg 1 is not set:
json("%player%", "&4[&cMute&4] &7Commande demandée : &o/mute <joueur> <durée>||ttp:&7&oCliquez ici !||sgt:/mute")
stop
if arg 1 is set:
if arg 1 is not online:
send "&4[&cMute&4] &7%arg 1% n'est pas connecté !"
stop
else:
if arg 2 is not set:
json("%player%", "&4[&cMute&4] &7Commande demandée : &o/mute %arg 1% <durée>||ttp:&7&oCliquez ici !||sgt:/mute %arg 1%")
stop
If arg 2 is set:
set {mute.%arg 1%} to arg 2
set {time.ban.%arg 1%} to now
broadcast "&4[&cMute&4] &7%arg 1%&7 est désormais muet durant %arg 2% !"
send "&4[&cMute&4] &7Vous êtes désormais muet durant %arg 2% !" to arg 1
wait arg 2
execute console command "/unmute %arg 1%"



# ########## UNMUTE ########## #

command /unmute [<offlineplayer>]:
description: Accorder le droit de parler.
usage: /unmute <joueur>
permission: sanction.unmute
permission message: {@noperm}
aliases: demute
trigger:
if arg 1 is not set:
json("%player%", "&4[&cMute&4] &7Commande demandée : &o/unmute <joueur> <durée>||ttp:&7&oCliquez ici !||sgt:/unmute")
stop
if arg 1 is set:
clear {mute.%arg 1%}
send "&4[&cMute&4] &7%arg 1%&7 n'est plus muet !"
send "&4[&cMute&4] &7Vous n'êtes plus muet !" to arg 1

on chat:
if {mute.%player%} is set:
cancel event
set {_TempsFr} to "%{mute.%player%}%"
replace "second" with "seconde" in {_TempsFr}
replace "hour" with "heure" in {_TempsFr}
replace "day" with "jour" in {_TempsFr}
send "&4[&cMute&4] &7Vous êtes muet pendant encore %{_TempsFr}%"

10 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Le problème, c'est que la variable que tu lis contient juste la durée du mute, mais c'est tout.

Tu peux changer cette ligne :

set {_TempsFr} to "%{mute.%player%}%"
set {_TempsFr} to "%difference between now and {mute.%player%}%"

 

Mais je me pose une question : si le serveur s'arrête pendant que la ligne wait arg 2 est en cours d'exécution, comment est-ce que le joueur perd son mute après le redémarrage ?

  • 0
Posté(e)

Comme ça ?

car ça ne marche pas :/

 

command /mute [<offlineplayer>] [<timespan>]:
  description: Réduire au silence un joueur.
  usage: /mute <joueur> <durée>
  permission: sanction.mute
  permission message: {@noperm}
  aliases: emute, silence, esilence
  trigger:
    if arg 1 is not set:
      json("%player%", "&4[&cMute&4] &7Commande demandée : &o/mute <joueur> <durée>||ttp:&7&oCliquez ici !||sgt:/mute")
      stop
    if arg 1 is set:
      if arg 1 is not online:
        send "&4[&cMute&4] &7%arg 1% n'est pas connecté !"
        stop
      else:
        if arg 2 is not set:
          json("%player%", "&4[&cMute&4] &7Commande demandée : &o/mute %arg 1% <durée>||ttp:&7&oCliquez ici !||sgt:/mute %arg 1%")
          stop
        If arg 2 is set:
          set {mute.%arg 1%} to arg 2
          set {time.ban.%arg 1%} to now
          broadcast "&4[&cMute&4] &7%arg 1%&7 est désormais muet durant %arg 2% !"
          send "&4[&cMute&4] &7Vous êtes désormais muet durant %arg 2% !" to arg 1
          wait arg 2
          execute console command "/unmute %arg 1%"



# ##########  UNMUTE  ########## #

command /unmute [<offlineplayer>]:
  description: Accorder le droit de parler.
  usage: /unmute <joueur>
  permission: sanction.unmute
  permission message: {@noperm}
  aliases: demute
  trigger:
    if arg 1 is not set:
      json("%player%", "&4[&cMute&4] &7Commande demandée : &o/unmute <joueur> <durée>||ttp:&7&oCliquez ici !||sgt:/unmute")
      stop
    if arg 1 is set:
      clear {mute.%arg 1%}
      send "&4[&cMute&4] &7%arg 1%&7 n'est plus muet !"
      send "&4[&cMute&4] &7Vous n'êtes plus muet !" to arg 1

on chat:
  if {mute.%player%} is set:
    cancel event
    set {_TempsFr} to "%{mute.%player%}%"
    set {_TempsFr} to "%difference between now and {mute.%player%}%"
    replace "second" with "seconde" in {_TempsFr}
    replace "hour" with "heure" in {_TempsFr}
    replace "day" with "jour" in {_TempsFr}
    send "&4[&cMute&4] &7Vous êtes muet pendant encore %{_TempsFr}%"

  • 0
Posté(e)

ça m'affiche :

 

"[Mute] Vous êtes muet pendant encore <none>"

 

et ça ne respecte pas les 50 secondes quand j'execute la commande

 

"/mute ectaals 50 seconds"

  • 0
Posté(e)
Je ne comprend pas trop je suis un débutant et je sais pas doué :/

sinon tu pourrais me le faire directement avec le code ? :c

 

C'est simplement du debug. Si quelque chose cloche avec les variables, tu ajoutes dans ton code des messages qui te donnent la valeur des variables au moment où tu exécutes ton code. Comme ça, quand tu essayes, tu vois dans le tchat ce qu'il y a dans ces variables et potentiellement ce qui va pas.

 

on chat:
  if {mute.%player%} is set:
    cancel event
    broadcast "Now : %now% | {Mute.%player%} :  %{mute.%player%}% | Différence : %difference between now and {mute.%player%}%"
    set {_TempsFr} to "%difference between now and {mute.%player%}%"
    replace "second" with "seconde" in {_TempsFr}
    replace "hour" with "heure" in {_TempsFr}
    replace "day" with "jour" in {_TempsFr}
    send "&4[&cMute&4] &7Vous êtes muet pendant encore %{_TempsFr}%"

  • 0
Posté(e)
Rien ne marche :/

 

C'est vrai que des plugins de mute, y'en a pas mal. Mais sinon, comme je l'ai expliqué plus ou moins longuement, ajouter des broadcast dans du code ne le fait pas marcher, c'est censé donner des indications. ù_ù

×
×
  • 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.