Commande Titre

Redkaf

Bucheron
17 Mars 2020
16
0
11
24
Je voudrais créer une commande qui fait que lorsque ton fasse /overlay <nomdujoueur> <message> il ai un titre avec le message et si il n'est pas en ligne le sender recevrait "<player> is not online.
j'ai déjà créer une commande qui permet de savoir si la personne est en ligne.
 

Fichiers joints

  • Capture d’écran 2020-05-23 à 12.30.04.png
    Capture d’écran 2020-05-23 à 12.30.04.png
    56.8 KB · Affichages: 131

Redkaf

Bucheron
17 Mars 2020
16
0
11
24
C'est pas ce que je cherche je cherche un plugin avec comme command : /<commande> <nomdujoueur> <titre>
Sinon je cherche comment faire en codant si aucun plugin existe.
 

Redkaf

Bucheron
17 Mars 2020
16
0
11
24
Juste je ne comprends pas pourquoi j'ai un warning
 

Fichiers joints

  • Capture d’écran 2020-05-25 à 19.20.54.png
    Capture d’écran 2020-05-25 à 19.20.54.png
    57.3 KB · Affichages: 124

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 135
162
463
247
21
Mìlhüsa
Bonsoir,

En soit il suffit de passer ton curseur pour avoir le message d'avertissement.
En l’occurrence, la fonction Player#sendTitle(String, String) est dépréciée. Un élément annoté par @Deprecated est « un élément dont l'utilisation est déconseillée aux programmeurs, généralement parce qu'il est dangereux ou parce qu'il existe une meilleure alternative ».

Bukkit veut te forcer à utiliser la méthode Player#sendTitle(String, String, int, int, int) parce qu'enfaite, sinon ce seront les dernières durées d'apparition, de maintien et de disparition qui seront utilisés par le titre, et que donc le comportement de la fonction que tu utilises peut changer si jamais une autre source (plugin, op) changerait explicitement les durées avec /title @a times <fadeIn> <stay> <fadeOut>.

Bon dans ton cas puisque tu utilises Player#resetTitle avant, les durées sont réinitialisées aux valeurs par défaut, mais Eclipse n'a pas fait le rapprochement entre ces deux fonctions.


Après, petite erreur, tu utilises args[0] sans vérifier qu'il y ait besoin un argument. Si un joueur fait /overlay, ton plugin retournera une IndexOutOfBoundsException.

Enfin, faire un return false; indique à Bukkit que la commande n'est pas correctement tapée, et affichera l'aide de la commande. Fais un return true;, même si tu envoies un message d'erreur, parce que la syntaxe de la commande est correcte.
Renvoie false uniquement lorsque tu veux afficher l'aide, par ex. lorsque args.length != 3.

Cordialement,
ShE3py.
 
  • J'aime
Reactions: Karamouche