Aller au contenu
  • 0

Aide pour un tempban


Question

Posté(e) (modifié)

Version de Minecraft : 1.15.2
Version de Skript : 2.4.1

Addons utilisés: TuSke, SkBee, SkQuery, Sk-Mirror, SkRayFall

Type du skript : Un script de ban 

Description du script :

Bonjour/bonsoir j'aimerais de l'aide pour mon script de ban. 

Mon problème est lorsque le joueur veut se connecter au serveur en étant tempban, je n'arrive pas à check si le joueur est tempban ou pas 😕

Pour l'instant j'ai fais que les seconds mais voilà le code de ma commande de tempban: 

 

Voilà le code pour le tempban

command /atempban [<offline player>] [<number>] [<text>] [<text>]:
    permission: staff.ban
    permission message: {@NoPermMsg}
    trigger:
        if arg-1 is not set:
            send "{@MissingArgs} /tempban [player] [time] [s/min/d/mo/y] [reason]"
            stop
        if arg-2 is not set:
            send "{@MissingArgs} /tempban [player] [time] [s/min/d/w/mo/y] [reason]"
            stop
        if arg-3 is not set:
            send "{@MissingArgs} /tempban [player] [time] [s/min/d/mo/y] [reason]"
            stop
        if arg-1 and arg-2 and arg-3 is set:
            if arg-4 is not set:
                if arg-3 is "s":                  
                    set {tempbanned::%arg-1%} to now
                    set {banner::%arg-1%} to "%sender%"
                    set {tbanned::%arg-1%} to "Yes"
                    set {banreason::%arg-1%} to "No reason"
                    set {bantime::%arg-1%} to "%arg-2% seconds" parsed as timespan
                    set {_time} to "%arg-2% second(s)"
                    kick arg-1 due to "{@ModPrefix} &cYou have been temporaly banned from this server%nl%&c   Reason: &6%{banreason::%arg-1%}%%nl%&cModerator: &6%{banner::%arg-1%}%%nl%&c  Time: %{_time}%"
                    stop

 

Voilà ensuite le code pour le join: 

if {tembanned::%player%} is set:
            set {_tcheck} to difference between {tempbanned::%player%} and now
            if {_tcheck} < {bantime::%player%}:
                set join message to ""
                kick player due to "{@ModPrefix} &cYou are temporaly banned from this server%nl%&c   Reason: &6%{banreason::%player%}%%nl%&cModerator: &6%{banner::%player%}%%nl%&c  Time: %{bantime::%player%}%"

 

En comptant sur votre aide merci d'avance 🙂

Modifié par KaZedKa

8 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Au lieu d'utiliser l'événement on join, il faut utiliser l'événement "on connect" qui intercepte la connexion du joueur, tu pourras retirer ton set join message également.

  • 0
Posté(e) (modifié)

D'accord je vais tester merci 

 

Edit: j'ai testé et ça ne fonctionne toujours pas 

 

Edit: je suis sacrément pas doué j'avais fais une faute de frappe et je viens seulement de la voir... Merci pour ton aide en tout cas 🙂

Modifié par KaZedKa
  • 0
Posté(e)

Hey, j'ai pas tester mais je trouve que ton tempban n'es pas très opti 😕 . Mais je ne vais pas juger ton travaille j'ai fait un skript je ne l'es pas test dit moi si sa marche.

command /atempban [<offline player>] [<number>] [<text>]:
    permission: staff.ban
    permission message: {@NoPermMsg}
    trigger:
        if arg 1 is not set:
            send "{@MissingArgs} /tempban [player] [time] [s/min/d/mo/y] [reason]" to player
            stop
        else:
            if arg 2 is not set:
                send "{@MissingArgs} /tempban %arg 1% [time] [s/min/d/w/mo/y] [reason]" to player
                stop
            else:
                if arg 3 is not set:
                    send "{@MissingArgs} /tempban %arg 1% %arg 2% [s/min/d/mo/y] [reason]" to player
                    stop
                else:
                    if arg 3 is "s":
                        set {tempbanned::%arg-1%} to true
                        set {banner::%arg-1%} to "%sender%"
                        set {tbanned::%arg-1%} to true
                        set {banreason::%arg-1%} to "No reason"
                        set {bantime::%arg-1%} to "%arg-2% seconds" parsed as timespan
                        set {_time} to "%arg-2% second(s)"
                        kick arg-1 due to "{@ModPrefix} &cYou have been temporaly banned from this server%nl%&c   Reason: &6%{banreason::%arg-1%}%%nl%&cModerator: &6%{banner::%arg-1%}%%nl%&c  Time: %{_time}%"
                        stop

on join:
    if {tembanned::%player%} is true
        set {_tcheck} to difference between {tempbanned::%player%} and now
        if {_tcheck} < {bantime::%player%}:
            kick player due to "{@ModPrefix} &cYou are temporaly banned from this server%nl%&c   Reason: &6%{banreason::%player%}%%nl%&cModerator: &6%{banner::%player%}%%nl%&c  Time: %{bantime::%player%}%"
            ## Apprès au cas s'ou
            set join message to ""

    else:
       set join message to " #Ton msg de join bg " 
 

  • 0
Posté(e)
Il y a 22 heures, SkriptTesteur a dit :

@KaZedKa Parfait, tu pourrais me dires si sa marches ?

J'ai pas testé mais y'a pas de raisons que ça marche pas je testerais demain si tu veux 

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.