Aller au contenu

Messages recommandés

Posté(e)

Bonjour, bonsoir,

J'ai dernièrement fais un skript pour les grades avec le tab, le chat, on join, quit ect...

Mais j'aimerais pouvoir ajouter une permission à ce grade ex: Si le joueur est modérateur, il a la permission perm.sk

J'ai fais ce code pour les permissions:

command /setgrade [<player>] [<text>]:
   trigger:
       if arg 1 is not set:
           message "&cVeuillez définir un joueur !"
           stop
       else:
           if arg 2 is not set:
               message "&cVeuillez mettre un grade !"
           else:
               if arg 2 is "fondateur":
                   set {fondateur.%arg-1%} to true
                   set {admin.%arg-1%} to false
                   set {developpeur.%arg-1%} to false
                   set {modo.%arg-1%} to false
                   set {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to false
                   send "&2Vous êtes désormais &cFondateur !"
               else if arg 2 is "administrateur":
                   set {fondateur.%arg-1%} to false
                   set {admin.%arg-1%} to true
                   set {developpeur.%arg-1%} to false
                   set {modo.%arg-1%} to false
                   set {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to false
                   send "&2Vous êtes désormais &cAdministrateur !"
               else if arg 2 is "developpeur":
                   set {fondateur.%arg-1%} to false
                   set {admin.%arg-1%} to false
                   set {developpeur.%arg-1%} to true 
                   set {modo.%arg-1%} to false
                   set {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to false
                   send "&2Vous êtes désormais &cDéveloppeur !"
               else if arg 2 is "moderateur":
                   set {fondateur.%arg-1%} to false
                   set {admin.%arg-1%} to false
                   set {developpeur.%arg-1%} to false
                   set {modo.%arg-1%} to true
                   set {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to false
                   send "&2Vous êtes désormais &cModérateur !"
               else if arg 2 is "buildeur":
                   set {fondateur.%arg-1%} to false
                   set {admin.%arg-1%} to false
                   set {developpeur.%arg-1%} to false
                   set {modo.%arg-1%} to false
                   set {buildeur.%arg-1%} to true
                   set {joueur.%arg-1%} to false
                   send "&2Vous êtes désormais &cBuildeur !"
               else if arg 2 is "joueur":
                   set {fondateur.%arg-1%} to false
                   set {admin.%arg-1%} to false
                   set {developpeur.%arg-1%} to false
                   set {modo.%arg-1%} to false
                   set {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to true
                   send "&2Vous êtes désormais &cJoueur !"
               else:
                   message "&cCe grade n'éxiste pas !"
                   stop

.

 

Je n'ai pas mis le reste, je pense que c'est inutile...

 

Merci d'avance,

 

Cordialement,

Elywe9n

Posté(e)

Bonjour, Il me semble que tu peut indiquer plusieurs variables sur une ligne, ce qui raccourcirait grandement ton code .. tiens :

command /setgrade [<player>] [<text>]:
   trigger:
       if arg 1 is not set:
           message "&cVeuillez définir un joueur !"
           stop
       else:
           if arg 2 is not set:
               message "&cVeuillez mettre un grade !"
           else:
               if arg 2 is "fondateur":
                   set {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {fondateur.%arg-1%} to true
                   send "&2Vous êtes désormais &cFondateur !"
               else if arg 2 is "administrateur":
                   set {fondateur.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {admin.%arg-1%} to true
                   send "&2Vous êtes désormais &cAdministrateur !"
               else if arg 2 is "developpeur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {developpeur.%arg-1%} to true
                   send "&2Vous êtes désormais &cDéveloppeur !"
               else if arg 2 is "moderateur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {modo.%arg-1%} to true
                   send "&2Vous êtes désormais &cModérateur !"
               else if arg 2 is "buildeur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {joueur.%arg-1%} to false
                   set {buildeur.%arg-1%} to true
                   send "&2Vous êtes désormais &cBuildeur !"
               else if arg 2 is "joueur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to true
                   send "&2Vous êtes désormais &cJoueur !"
               else:
                   message "&cCe grade n'éxiste pas !"
                   stop

 

Et pour ajouter une permission :

 

add exemple.ranks to player's permissions

Posté(e)
Bonjour, Il me semble que tu peut indiquer plusieurs variables sur une ligne, ce qui raccourcirait grandement ton code .. tiens :

command /setgrade [<player>] [<text>]:
   trigger:
       if arg 1 is not set:
           message "&cVeuillez définir un joueur !"
           stop
       else:
           if arg 2 is not set:
               message "&cVeuillez mettre un grade !"
           else:
               if arg 2 is "fondateur":
                   set {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {fondateur.%arg-1%} to true
                   send "&2Vous êtes désormais &cFondateur !"
               else if arg 2 is "administrateur":
                   set {fondateur.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {admin.%arg-1%} to true
                   send "&2Vous êtes désormais &cAdministrateur !"
               else if arg 2 is "developpeur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {developpeur.%arg-1%} to true
                   send "&2Vous êtes désormais &cDéveloppeur !"
               else if arg 2 is "moderateur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {buildeur.%arg-1%} and {joueur.%arg-1%} to false
                   set {modo.%arg-1%} to true
                   send "&2Vous êtes désormais &cModérateur !"
               else if arg 2 is "buildeur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {joueur.%arg-1%} to false
                   set {buildeur.%arg-1%} to true
                   send "&2Vous êtes désormais &cBuildeur !"
               else if arg 2 is "joueur":
                   set {fondateur.%arg-1%} and {admin.%arg-1%} and {developpeur.%arg-1%} and {modo.%arg-1%} and {buildeur.%arg-1%} to false
                   set {joueur.%arg-1%} to true
                   send "&2Vous êtes désormais &cJoueur !"
               else:
                   message "&cCe grade n'éxiste pas !"
                   stop

 

Et pour ajouter une permission :

 

add exemple.ranks to player's permissions

Bonjour,

 

Quand j'ai ajouté ceci, il m'ont demandé de télécharger SkQuery group manager, j'ai cherché sur internet, et ils m'ont fait télécharger un fichier .sk. Quand je l'ai mis et que j'ai fais /setgrade (pseudo) modérateur, j'ai eu un message en disant cela:

An internal error occurred while attempting to perform this command

Mais, j'avais quand même mon prefix dans le chat, et quand j'ai fais la commande ou il y avait la permission, il m'ont dis que cela ne fonctionnait pas...

Posté(e)

Petite question HS:

 

Pourquoi tu ne crées pas juste une variable {grade.%player%} que tu modifies en fonction de chacun ?

Là tu stockes des variables inutilement

 

Exemple:

command /setgrade <player> <text>:
   trigger:
       player is op:
           set {grade.%arg 1%} to "%arg 2%"

 

Si tu mets Chevalier en arg 2, la variable désignant le grade du joueur ciblé sera {grade.%arg 1%} donc Chevalier

Posté(e)

Il a raison, et pour récupérer la valeur du grade tu peux faire if {grade.%arg-1%} is/isn't "ton grade". Parce que là tu set plein de variables qui vont alourdir le fichier.

Si tu rajoutes groupmanager ou pex ton skript ne sert plus à rien ducoup..

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