Salut à tous !
Je vais faire un tutoriel assez court mais qui peut toujours être utile !
Je vois beaucoup de personnes qui veulent bloquer certaines commandes de leur serveur comme le /pl etc...
Pour ça on utilise habituellement un code de ce style:
on command /pl:
if player doesn't have permission "admin":
cancel event
Ça marche très bien mais il faut faire ça sur toutes les commandes... Quand votre serveur à beaucoup de plugins et skripts c'est lonnnng.
Je vais vous montrer une petite astuce pour aller plus vite !
Vous aurez besoin de l'addon Tuske pour ceci (oui il ne sert pas que à faire des GUI)
C'est simple:
on command: #quand le joueur fait une commande
set {_perm} to permission of command command #on récupère la permission de la commande (Tuske)
if "%{_perm}%" isn't "<none>": #là on vérifie que la commande a bien une permission définie, je vais en parler plus tard
if player doesn't have permission "%{_perm}%": #si le joueur n'a pas la permission
cancel event #on annule l'évènement
send "&cCommande inconue !" #on dit que la commande n'existe pas
Essayez de faire /pl en ayant pas la permission, en théorie ça ne marchera pas !
MAIS (ouai faut pas rêver quand même) cette "méthode miracle" ne marche pas tout le temps !
Elle marche uniquement lorsque la commande bloquée est définie comme ceci:
command /kylo:
permission: ren
trigger:
send "3600"
Car là la permission est définie sur "ren" mais si la commande est définie comme ceci:
command /kylo:
trigger:
if player has permission "ren":
send "3600"
Aucune permission n'est définie pour la commande, il y a seulement une condition mais qui ne définie pas la permission de la commande par convention (en gros comme c'est une condition on peut pas récupérer la permission). Dans ce cas là la permission est "<none>" (car il n'y en a donc pas) et la "méthode miracle" ne marche pas :(.
Je vous ai montré en skript mais en java le même problème se pose.
Pour avoir fait quelques test, cette méthode marchera souvent sur des skripts mais pas tout le temps sur des plugins. Alors oui avec skript on peut directement modifier le "permission message" mais si on prend un skript dans les ressources c'est plus rapide de faire via ma méthode ;).
Bonne journée ! :p